quinta-feira, 3 de fevereiro de 2011

Circuitos Uteis

Os motores de corrente contínua, com tensões de alimentação entre 3 V e 12 V e correntes de até 1 A podem ser usados facilmente para movimentar braços mecânicos, elevadores, esteiras e até mesmo veículos de pequeno porte e robôs alimentados por bateria. Além da parte mecânica que pode exigir polias, correias ou caixas de redução, um problema que o projetista destes dispositivos encontra é o controle elétrico e eletrônico dos motores. Como o sentido de rotação do motor depende da polaridade da alimentação e a velocidade da tensão aplicada dentro da faixa permitida, o uso de circuitos eletrônicos não é difícil e para os que conhecem alguns componentes básicos, a montagem de controles é relativamente simples. Dou a seguir diversos circuitos que podem ser adaptados para funcionar como motores de 3 V a 12 V e que exijam correntes de até 1 A. Estes motores podem ser conseguidos de pequenos eletrodomésticos fora de uso (alimentados por pilhas e baterias) ou de brinquedos, principalmente, carrinhos que podem fornecer unidades de boa potência.

Circuito 1 - Controle simples de motor

Para acionar um motor a partir de um conjunto de pilhas, bateria ou fonte de alimentação, o circuito indicado é o mostrado na figura 1, onde a polaridade da ligação do motor vai determinar o seu sentido de rotação. O condensador é usado para amortecer as comutações das escovas do motor, tomando seu funcionamento mais suave e evitando a produção de impulsos no circuito alimentado. Este componente é especialmente importante quando a bateria usada alimenta outros circuitos ao mesmo tempo, pois sem o condensador, podem ocorrer interferências. Se o circuito usar um controle remoto, o condensador é muito importante, pois evita a irradiação de interferências. Valores entre 100 uF e 1000 uF com tensão de trabalho um pouco maior que a usada na alimentação podem ser usados, observando-se sua polaridade.


 


Circuito 2 - Inversão do sentido da rotação

Na figura 2 mostramos como deve ser ligada uma chave de 2 pólos x 2 posições ou HH para fazer a inversão do sentido de rotação de um pequeno motor de corrente contínua. Na mesma figura damos a identificação dos pólos desta chave que pode ser conseguida com facilidade em aparelhos fora de uso ou adquirida em casas especializadas. Observe que esta chave inverte o sentido da corrente que circula no motor. Como a corrente é invertida, o condensador depois da chave deve ser de poliéster, despolarizado, de 100 nF Para uma filtragem melhor com um condensador eletrolítico de 100 p a 1000 pF, sua ligação deve ser feita antes da chave. Este circuito é indicado para o caso em que se faz o controle de um braço mecânico ou de um robô e ele deve ter movimentos em dois sentidos. A chave pode ficar longe do sistema ligada por fios longos.





Circuito 3 - Controle de dois motores


Dois motores podem ser ativadas alternadamente com o circuito da figura 3. Com a chave na posição 2, o motor M1 é ativado e com a chave na posição 3 é a vez do motor M2 ser ativado. A chave de 1 pólo x 2 posições pode ser conseguida em aparelhos fora de uso ou ainda ser utilizada uma chave HH. No caso da chave HH, aproveitamos apenas metade como indicado na figura. Este circuito combinado com o da figura 2 possibilita o controle de dois motores com rotação nos dois sentidos, ou seja, podemos fazer qualquer um dos motores rodar no sentido desejado no momento em que quisermos.

 









Circuito 4 - Motor Pulsante


Este circuito é indicado para aplicações em que o motor não deva simplesmente rodar, mas dar um pequeno impulso em algum dispositivo pelo toque num interruptor de pressão. Conforme a figura 4, o que temos é um condensador de valor muito alto ligado em paralelo com o motor de corrente contínua. Quando damos um toque no interruptor de pressão, o condensador carrega e depois descarrega-se pelo motor, mantendo-o em funcionamento por alguns segundos, dependendo de sua corrente. Em lugar de S1 como interruptor comum de pressão podem ser usados sensores, como por exemplo, relés, red switches, micro- switches e outros dispositivos que produzam pulsos curtos de corrente.

 






Circuito 5 - Reversão por relé


O circuito mostrado na figura 5 inverte o sentido de rotação de um motor, enquanto o interruptor S1 for pressionado. Veja que S1 pode ser um interruptor de pressão ou um sensor de qualquer tipo (red switch, chave de fim de curso, sensor de toque, ). O relé usado deve ter a mesma tensão usada na alimentação do motor neste circuito, mas nada impede que o relé seja alimentado por um circuito externo de controle. Se for necessário usar um condensador para amortecer os impulsos devido à comutação do motor, ele deve ser ligado em paralelo com a alimentação. Este circuito pode ser combinado com outros mostrados nesta pagina de modo a ser obtido um comportamento mais complexo do sistema.

 




Circuito 6 - Biestável de Controle


Com um toque no interruptor S1 o motor liga e assim permanece até que um toque no interruptor S2 o desligue. O circuito mostrado na figura 6 pode ser usado em muitas aplicações importantes de Robótica e Mecatrônica. Como os interruptores S1 e S2 podem ser sensores, tais como red switches, chaves de fim de curso ou outros sensores, as aplicações são ilimitadas. Basta dar um toque num interruptor por exemplo, e uma esteira se move para transportar um objeto até seu final. No final, o sensor S2 é ativado e a esteira pára de modo automático. O SCR não precisa de radiador de calor para motores até 500 mA. Acima disso, será conveniente usar uma pequena chapinha de metal para esta finalidade. O díodo D1 serve como filtro para evitar que impulsos gerados na comutação das bobinas do motor apareçam sobre o SCR, causando seu desligamento em momento indevido. Se houver tendência ao desligamento, mesmo com o díodo, um condensador eletrolítico de 100 uF a 1 000 uF deve ser ligado também em paralelo com este componente. Um ponto importante a ser observado neste circuito é que há uma queda de tensão da ordem de 2 V num SCR ligado. Isso quer dizer que a tensão de alimentação deve ser 2 V maior que a exigida pelo motor de modo a compensar esta perda. É por este motivo que a tensão mínima de entrada sugerida para estes circuitos é de 6 V.

 





Circuito 7 - Motor Acionado Por Luz


Um flash de luz dirigido ao LDR faz com que o SCR dispare e o motor seja acionado no circuito da figura 7. Para desligar, o que pode ser feito por um interruptor de pressão, chave de fim de curso, red switch ou outro tipo de sensor, é necessário ativar S2 A sensibilidade do circuito é ajustada em P1 Para maior diretividade e sensibilidade do LDR, evitando o acionamento pela luz ambiente, ele deve ser instalado num pequeno tubo opaco com uma lente convergente na sua frente. Se houver tendência ao desligamento errático pela comutação do motor, um condensador de 100 uF a 1000 uF deve ser ligado em paralelo com o motor. O SCR só precisará de um pequeno radiador de calor se o motor exigir correntes de mais de 500 mA. Este circuito pode controlar correntes de até 2 A. Deve ser lembrada a queda de tensão de 2 V produzida no SÇR em condução.

 





Circuito 8 - Motor Acionado por Sombra


A passagem de um objeto diante do LDR de modo a causar uma sombra momentânea aciona o motor, que assim permanecerá até que S1 seja ativado. O circuito mostrado na figura 8 usa como sensor um LDR ou foto resistor. Da mesma forma que no circuito anterior, P1 controla a sensibilidade. Para maior diretividade o LDR deve ser montado num tubinho opaco com uma lente a sua frente. Este circuito pode ser usado para detectar a colocação de um objeto diante de um braço mecânico acionando sua pinça de modo automático para prendê-lo. Numa esteira, a colocação de um objeto faz seu acionamento até o momento em que uma chave de fim de curso (S1) a desligue. Devemos lembrar a queda de tensão de 2 V no SCR em condução, compensando-a na alimentação.

 






Circuito 9 - Trava de Motor Por Relê


Ao deixar de haver corrente para alimentar o motor o relé desliga-se curto circuitando o motor que trava imediatamente

 





Circuito 10 - Sensores para Beams


Exemplo de como colocar uns pequenos sensores em um robot beam




Voltímetro para RX

Este circuito foi feito para trabalhar com uma bateria de 9V alcalina, mas pode ser modificado para trabalhar de 4,5 a 25V. Se subir 10V mude o potenciómetro para 2K. Para voltagem acima de 12V deve experimentar diferentes tipos de valores de R1, R2 e C1. Não confunda a tensão de alimentação do pino 3 com a de entrada no pino 5. A que estamos a falar é a de alimentação do pino 3. Coloque um voltímetro digital entre os pinos 4 (Divisor de baixa) e 6 (Divisor de alta) ajuste P1 para 1.20V. Então ligue uma fonte de alimentação de 4.6V na entrada de RX (pino 5) e ajuste P2 para somente o led vermelho ficar ligado. Desligue a fonte de alimentação e ligue o pack de baterias do receptor completamente carregado. Os leds 9 e 10 devem ficar ligados, se assim não for deverá ajustar em P2 e não esquecer que estará a desajustar a carga mínima, que foi feita com a fonte de alimentação.





terça-feira, 1 de fevereiro de 2011

Programador AVR

Foi utilizado o esquema de Jerry MENG por razões de compatibilidade com o software ele é a adaptação lógica das instruções dadas no manual do AT90S1200 para a programação do mesmo em modo série: encontramos a entrada das instruções (MOSI), e a saída de dados (MISO), o relógio que gere a partilha de dados e instruções (SCK) ; a isso tudo tem de adicionar a entrada RESET, que permite passar em modo programação, e XTAL1 que da o ritmo de funcionamento ao microprocessador; o sinal enviado a XTAL1 dispensa-nos de acrescentar o habitual cristal e os dois condensadores no programador.



Esquema do programador



As saídas D0, D1, D2 e D7 servem para alimentar o circuito, que assim não necessita de alimentação exterior devido ao seu baixo consumo mesmo durante a programação: Uma versão anterior utilizava diodos no lugar das resistências mas devido ao baixo valor da corrente a quedo de tensão produzida pelas resistências não é significativa; atenção é indispensável utilizar resistências, não se pode ligar directamente as saídas, porque se o programador fosse ligado antes de o software de programação correr, o estado dos bits não seria fixado e poderia haver conflitos entre as saídas que tem níveis lógicos diferentes (não se pode ligar junto uma saída a '0' com uma saída a '1' !) ; as resistências servem para limitar a potencia da tensão e o Jerry diz que no caso do AT90S1200, uma saída é suficiente para alimentar o circuito, neste caso ela pode ser ligada directamente sem resistências mas eu não optei por essa solução , mas estão livres de experimentar ...
 

Há que assinalar que a programação em modo série não permite de programar o fusível RCEN (R-C Enable). Esta funcionalidade não esta activa por defeito, quando activa, dispensa-nos de introduzir um cristal nas montagens, a frequência de relógio e gerada por um circuito RC interno ( ela varia entre 0,3 e 1,6 MHz) consoante a tensão e a temperatura, esse bit deve estar activo para um programador em modo paralelo, mas isso não nos vai interessar no caso da realização da caixinha, por isso isto é dado só para informação....

Integração do circuito numa ficha DB25

vista interior
 

 


A parte superior da ficha tem de ser furada para por o suporte 20 pinos de IC, um bocado de esponja fui posto entre a placa e a ficha, depois é só soldar o suporte 20 pinos a placa..
 

detalhe do circuito :

 



A fotografia em cima mostra que tem de ligar alguns fios, faça-o com o esquema eléctrico debaixo dos olhos. Aqui só foram utilizadas três resistências de 220 Ohm, pode sempre por as quatro mas não é indispensável.. A ficha DB25 é uma ficha macho ( a saída no PC é fêmea).
 

Vista da montagem acabada :

  





Descrição do software :
O software de programação esta escrito em C++ Builder 3.0, e funciona em Windows 95 e 98 ; para uma utilização em Windows NT, 2000 ou XP, tem de instalar o driver UserPort (ver mais a frente).O seu funcionamento e bastante intuitivo, ele possui dois buffers, um para a memória FLASH (O programa), o outro para a memória EEPROM ; o conteúdo de cada buffer pode ser carregado de um ficheiro, ou gravado num ficheiro, que terá o formato Intel HEXA o mais clássico (dados em 8 bits, endereços em 16 bits) ; o comando "Lire" carrega para o buffer escolhido (FLASH ou EEPROM) com os valores ( se o bit de protecção nº2 não estiver activo).
 

 



O GUI do programa esta representado aqui em cima ; diversos comandos são acessíveis ou pelos botões ou pelos menus (e atalhos de teclado associados). Começar por carregar do ficheiro HEX o conteúdo do do buffer FLASH (e eventualmente o do buffer da EEPROM), depois clique no botão [Configuração] para fazer aparecer a janela aqui em baixo :
 

 



Em primeiro, escolher a porta paralela activa (em geral LPT1), depois escolher o tempo do impulso "Duração do impulso de programação" ; num computador antigo de tipo Pentium 200 MMX (se alguém tem um museu de informática :-) ), o valor mínimo (TEMPO:1000) chega ; se ocorrerem erros de programação com PC's mais rápidos, pode por o processo de programação mais lento, para isso aumente o valor de "TEMPO" ; saiba que normalmente a programação completa dura mais o menos vinte segundos ; com um Pentium IV 1,7 GHz, para este caso por o valor do "TEMPO" a 5000. Pode em seguida escolher a diversas tarefas a realizar durante a sequência de programação : pode ser uma sequência completa (activar as opções todas), ou um simples apagamento, uma comparação, etc. ; e evidente que uma programação da AT sem a apagar primeiro, não faria sentido ; mas pode-se re-programar a AT sem a apagar totalmente, se nenhum bit de protecção não foi activado, a opção "Desactivar bit de protecção nº1" proíbe a modificação da FLASH e da EEPROM, mas autoriza a leitura; a opção "Desactivar bit de protecção n°2" proíbe a releitura, neste caso os valores lidos são :
 



para a FLASH : 0000 0101 0202 0303 0404 0505 0606 0707, etc.


para a EEPROM : 00 01 02 03 04 05 06 07, etc.


A activação do bit 2 sozinho não parece ter efeito.
 

Volte em seguida ao programa e lance a sequência de programação em carregando em "Programação": Também pode ler o "Device Code", um grupo de três octets que identifica o fabricante e o modelo da AT.
 

----------------------------------------------------------------------------------------------------------------------


Download do programa :



Qualquer problema é só me deixar recado com o email que envio os arquivos, abraços tony

O ficheiro AVR12.ZIP tem o tamanho de 242KB ; uma vez descomprimido dá o programa AVR12.EXE (510KB), versão 1.2, para Windows 95 ou 98 (e NT/2000/XP com os drivers específicos).
 


Clique para começar o download de
 avr12.zip 

Clique para começar o download de
 avr12_pt.zip em português!
Exclusivo #Robotica @PtNet


Alteração no programa :
 

O 11-12-2001, novidades da versão 1.2 :
- Tomada em conta de ficheiros HEX fornecidos por o AVRSTUDIO 3.52.
- Salvaguarda de todos de todos os parâmetros no registo do Windows e não no ficheiro 'AVR_WIN.CFG' que já não é necessário ; o tempo fica assim guardado mesmo em caso de mudança de pasta; os parâmetros salvaguardados são as 7 escolha de opções, os nomes e caminhos do ultimo ficheiro aberto ou gravado, a porta paralela utilizada e a posição da janela.


Instalação do driver para Windows NT, 2000 ou XP :
 
O acesso directo a porta paralela não é possível em Windows NT, 2000 e XP e traduz-se por a aparição de uma mensagem de erro de tipo "Privileged instruction". Para isso é necessário instalar o driver UserPort.

Seguir rigorosamente estes passos para a instalação do driver (senão na funciona) :

1º Descarregar o ficheiro 'userport.zip' (33KB)

2º Copie o ficheiro userport.sys na pasta seguinte :
- para Windows NT/2000 "C:WinNTsystem32drivers"
- para Windows XP "C:Windowssystem32drivers"

3º Execute o programa userport.exe ; ele vai actualizar a base de registos do Windows.