sábado, 16 de novembro de 2013

Conclusão e agradecimentos

Ao longo desta jornada, foram muitas pessoas envolvidas neste projeto além dos membros do grupo e gostaríamos de fazer um agradecimento em especial a Professora Débora e ao Técnico do laboratório do campus de Campinas, Rafael que se prontificaram e nos ajudaram sempre que foi necessário.

Quando trabalhamos em grupo temos uma oportunidade dupla de conhecimento, neste caso o emprego das disciplinas no projeto e em segundo a oportunidade de aprimorar o trabalho coletivo. Por meio desta pratica, nós estudantes nos deparamos com diferentes percepções.

Trabalhando em equipe, exercitamos uma série de habilidades. Ao mesmo tempo que estudamos as disciplinas, aprendemos a escolher, avaliar e decidir. Neste tipo de tarefa, treinamos a capacidade de respeitar as opiniões, argumentar e dividir as tarefas, o que é essencial para o mercado de trabalho.

"O bom profissional sabe se comunicar, ouvir, respeitar e isso só se aprende fazendo."

Acreditamos no potencial deste programa inter multidisciplinar no qual aprendemos sem nos darmos conta que estas posturas de trabalho em equipe são fundamentais e serão exigidas no mercado de trabalho,
acreditamos também que existe espaço para melhorar, professores deixem de ser tímidos e participem mais! Dediquem um tempo maior da matéria a estes projetos, acompanhem, demonstrem interesse !! 
Façam com que nós alunos, a cada aula tenhamos a certeza de que escolhemos o curso certo e que seremos em um futuro próximo, excelentes profissionais e tudo isso graças a um bom trabalho que vocês podem fazer.

Ao envolvidos; André Matias, Eduardo Martins, Leandro Prado, Gilberto Dinis, Priscilio Almeida, Renato Luiz ficam expressos o sentimento de dever cumprido e de objetivo realizado.



Referências de pesquisa:
TOCCI, R.J. & WIDMER,N.S. Sistemas digitais: princípios e aplicações. 10a ed, Prentice-Hall, 2007
Cálculo do oscilador: http://www.talkingelectronics.com/pay/BEC-2/Page49.html
Datasheets dos respectivos componentes, obtidos na internet.

Aulas de Circuitos Digitais


Parte 3 – Fonte de Alimentação


Fonte de Alimentação
Para o projeto, foi utilizada uma fonte de configuração simples, porém usual e prático, inclusive recomendada pelo datasheet do principal componente utilizado nesta, no caso o 7805.
Foi utilizado um transformador com entrada 110+110 e saída 12V, e uma chave seletora de tensão na entrada, bem como um fusível de proteção. De acordo com cálculos efetuados, (mostrados em postagem anterior no blog) obtivemos o valor de 2200uF para o capacitor de filtro logo após a ponte retificadora, de acordo com a carga que o circuito representa. E conforme dito acima, de acordo com as recomendações do datasheet do 7805 (regulador de tensão – saída 5V), utilizou-se dois capacitores de desacoplamento, respectivamente na entrada e saída do componente, que funciona como um ‘filtro extra’ para a fonte como um todo, eliminando ruídos indesejáveis que, em maior grau, poderiam acarretar mau funcionamento no circuito. Finalmente, na saída da fonte, já regulada e estabilizada a 5VCC, é utilizado um LED piloto. 

Parte 2 – Contador de vagas em uso

Com relação a parte de contagem do número de vagas disponível, número este mostrado em um display de sete segmentos, o “coração” do circuito são quatro flip-flops (chamaremos aqui de FF, para simplificação) do tipo JK, dispostos na clássica configuração de contador crescente/decrescente e representados no esquema acima por U1 e U2. São auxiliados por  portas lógicas, como segue:
U3, U4.1 e U4.2 (74LS08 – quatro portas lógicas AND de duas entradas cada);
U5.1, U5.2 e U5.3 (74LS32 – quatro portas lógicas OR de duas entradas cada);
U7.4 (74LS02 – quatro portas lógicas NOR de duas entradas).
Os pulsos para a contagem provêm dos sensores de “passagem” (circuito semelhante aos sensores utilizados nas vagas do estacionamento, sendo um para entrada e outro para saída). Assim que um veículo estiver passando pela entrada ou saída, um nível alto é obtido na saída – pino 11 – da porta lógica U5.4 (74LS32). E assim que o mesmo passar definitivamente, um nível baixo na entrada de clock do primeiro FF, U1.1 (74LS76 – dois flip-flops JK com Preset e Clear) faz com que este FF mude de estado, incrementando ou decrementando a contagem.
O circuito prevê que caso um veículo saia do estacionamento, o número de vagas seja incrementado. E caso um veículo entre, o nº de vagas seja decrementado.
Como isso é feito?
Esta condição é determinada através de um circuito “Latch” (“memória”) construído com duas portas lógicas NOR (U7.1 e U7.2 – 74LS02), que mantém “memorizado” se um veículo passou “por último” na Entrada ou na Saída... “Pra quê?” Explicando: assim que o veículo tiver cruzado o sensor “de passagem” (desta forma mandando um pulso baixo para o primeiro flip-flop, como explicado acima), o contador já terá selecionado, por meio deste Latch, se irá incrementar ou decrementar. Por exemplo, no momento em que o veículo está saindo do estacionamento, a saída do Latch (pino 1 do U7.1) tornará em nível alto (contador irá incrementar). Assim que o veículo sair de vez, a contagem será feita, dessa forma, incrementando uma unidade no display.
Já se o veículo estiver na entrada, assim que ele passar por essa (cruzando o sensor de passagem e tornando o estado do Latch em nível baixo), o contador irá decrementar! Simples, não?
O uso deste Latch é necessário para o bom funcionamento do circuito porque não se deve selecionar o incremento/decremento ao mesmo tempo do pulso recebido pelo FF. Ou seja, o incremento (ou não) deve ser selecionado ANTES do FF (U1.1) receber o pulso.

O display, de cátodo comum, identificado no esquema como U9, é utilizado em conjunto com um decodificador para display de sete segmentos, no esquema identificado como U8 (74LS48), cujas entradas são ligadas às saídas Q (saída normal – não complementar) dos flip-flops.
Para fins de demonstração do circuito quando da apresentação deste e de sua função de contagem crescente/decrescente, foram implementadas duas chaves no circuito. Quando acionadas, ‘forçam’ o valor do display para “0”  ou “8” (vagas disponíveis), dependendo da chave pressionada. Para o funcionamento desta característica, são utilizados os pinos de PRESET e CLEAR dos flip-flops, fazendo com que o valor seja mostrado de imediato. Junto com as chaves, foi utilizada uma porta lógica AND – C.I. U4.3 (74LS08) para construir a lógica necessária para se obter os valores citados, bem como resistores de apoio para polarização dos pinos de entrada dos FFs.
Além desta característica, há também um “semáforo”, cuja luz verde permanece acesa enquanto há vagas disponíveis. Porém, quando não há, (display mostrando “0”), acende-se a luz vermelha. Esta característica é obtida com a aplicação de lógica digital, por meio do C.I. U6 - 74LS32, e do CI U7.3 74LS02. Interessante notar que foi utilizado nesta parte apenas um resistor limitador de corrente para os LEDS, já que como somente um LED fica aceso de cada vez, não há necessidade de um resistor para cada um, como às vezes é feito.

Finalmente, no canto superior esquerdo do esquema, estão as portas que “sobraram”, tendo seus terminais de entrada ligados ao negativo da alimentação, a fim de evitar instabilidades em seu funcionamento que, em certos casos, pode até levar a queima do C.I.

Resumindo, um circuito “enxuto” que, apesar da complexidade aparente, se mostrou bem funcional.

Descrição do funcionamento 

A partir de hoje, estaremos disponibilizando a descrição detalhada do estacionamento automatizado e seu funcionamento.

Parte 1 - Circuitos Sensores das vagas e Painel Indicador de vagas em uso

Este circuito permite que sejam identificadas individualmente qual das oito vagas do estacionamento está em uso. Além das vagas, é utilizado também na entrada e na saída do estacionamento, servindo neste caso como “sensor de passagem”, fazendo a contagem do número de vagas disponíveis (parte 2 - circuito contador).

O circuito funciona da seguinte forma: o LED IR (diodo emissor de luz infravermelho) é alinhado com o fototransistor (sensor, ou receptor), fazendo com que o mesmo conduza quando tiver recebendo a luz infravermelha do emissor, e entrando em corte quando um veículo estiver entre eles, ou seja, quando a vaga estiver em uso.
O transístor BC547B é usado como “drive” do fototransistor  pois a corrente obtida no sensor sem o uso do drive é muito pequena, impossibilitando seu uso prático. Assim, quando o fototransistor estiver em condução pela luz IR recebida, o BC547B, sendo um transistor NPN e na disposição circuital mostrada, terá o seu terminal de base ‘aterrado’ (ligado ao GND), e consequentemente entrará em corte, fazendo com que na saída (junção do coletor do transistor com o resistor de 47K) seja obtido um nível digital alto. E quando o fototransistor estiver em corte, ou seja, “vaga em uso”, tem-se uma tensão  positiva na base do BC547B, fazendo com que o mesmo entre em condução, e tenhamos na saída do circuito um nível lógico baixo.
Na figura a seguir temos os conjuntos sensores de cada vaga bem como os utilizados na entrada e saída, que, pode-se notar, são os mesmos, mas com propósitos diferentes no projeto.

Apesar de, como dito acima, os níveis de tensão obtidos na saída deste circuito serem “digitais” (no caso específico do nosso projeto, as tensões foram bem próximas do ideal, ou seja, de 0 ou 5V, de acordo com o nível lógico utilizado), há algo importante nesta parte a se considerar: a saída deste circuito nem sempre fornece um nível de tensão totalmente digital, ou seja, há em algum momento uma transição que pode causar instabilidade no funcionamento do circuito. Isso acontece pois estamos obtendo um sinal de uma fonte ‘analógica’ e transmitindo para um receptor digital, ainda que consideremos que o transistor está atuando em sua região de corte/saturação, ou seja, teoricamente em níveis ‘digitais’.
Assim, na saída de cada circuito sensor das vagas foi usado uma porta lógica inversora com função Schmitt-Trigger, cujo símbolo é mostrado com a seguir: 

Brevemente explicando: circuito lógico com função Schmitt trigger é utilizado para fazer com que uma forma de onda, ou um nível de tensão qualquer se torne uma forma de onda quadrada, ou um nível digital bem definido, sem ruídos ou imperfeições. Ele é bastante utilizado em aplicações onde o sinal de entrada não é um sinal ou nível de tensão perfeitos, o que, como foi dito, pode causar mau funcionamento nos circuitos digitais nele ligados.
Assim, como havia necessidade de um circuito para “regularizar” o nível de sinal da saída, optou-se pelo C.I 74LS14. Existem portas lógicas com esta mesma função, porém, preferiu-se utilizar inversores, em especial pelo fato de o C.I. Aplicado no projeto possuir seis portas lógicas. No projeto foram utilizadas 11 portas. Normalmente os C.Is de portas lógicas possuem apenas quatro, ou seja, precisaríamos de pelo menos 3 componentes, ao invés dos dois que foram utilizados. Traduzindo: economia!

Feito isso, após o sinal ser devidamente regularizado, é aplicado na entrada do multiplexador.
Multiplexador, em poucas palavras, é como se fosse uma chave, onde, através de bits seletores, eu seleciono qual das entradas será ligada à saída.

Agora, pense um pouco: considerando que temos oito circuitos e, consequentemente, oito saídas, tente imaginar agora um estacionamento com um número bem maior de vagas, a enorme quantidade de fios necessários para se ligar as saídas do circuito até o painel!
A ideia da aplicação de um circuito multiplexador/demultiplexador no projeto é mostrar que podemos transmitir um número razoavelmente grande de informações por meio de um número reduzido de condutores.
Assim utilizando o multiplexador no projeto, foi possível reduzir a quantidade de fios, desconsiderando os de alimentação, de oito para apenas quatro!
Vale lembrar que o multiplexador não trabalha sozinho, ou seja, da mesma forma que a informação está sendo enviada por multiplexação, quando esta chegar ao seu “destino”, há que se utilizar um demultiplexador para obter a informação “de volta”. O circuito de multiplexação/demultiplexação (também chamado de mux/demux) feito para o projeto é mostrado na figura a seguir.

Outro detalhe a considerar é que para o circuito mux/demux executar sua função é necessário um “seletor”, no caso um contador para sequenciar as entradas do mux e as saídas do demux. Assim, foi implementado o Circuito Integrado 74LS93 (contador binário), configurado para contar até 8 (de 0 a 7). Contudo, para este contador realizar a contagem, é necessário um trem de pulsos (clock). Este foi obtido aplicando-se uma configuração de oscilador em um dos inversores do C.I. 74LS14. Para se gerar o clock, os valores dos componentes utilizados foram obtidos através da seguinte fórmula:

                                      F = 1,2 x 106
                                               R x C
onde:
         F – freqüência em Hertz;
         R – valor do resistor (ohms);
         C – valor do capacitor, em uF.
Assim, obtivemos pelos cálculos o valor de 100 nF para o capacitor e de 470KΩ para o resistor, com os quais temos uma freqüência em torno de 25 Hertz.
Porque 25 Hz?
Estimando uma atualização de três vezes por segundo, que é geralmente o tempo de atualização de mostradores, vezes as 8 saídas do contador 74LS93 (ou seja, do Painel das vagas em uso), teríamos 24 Hz. Porém a frequência obtida com os valores dos componentes citados é bem próxima e são valores muito comuns, bem fáceis de se encontrar no varejo.

Continuando, o C.I. 74LS93 realiza, por meio do clock recebido do oscilador descrito, a contagem de 0 a 7 (em binário – 3 bits); e por meio do circuito mux/demux e dos LEDs conectados à saída do demux (que estão no Painel Indicador de vagas em uso), de acordo com o estado da entrada (obtido pelos circuitos sensores, individualmente de cada vaga), o LED acenderá, ou não, dependendo se a vaga estiver em uso ou não.


domingo, 10 de novembro de 2013