Experimentando
o timer1 Um pouco de teoria Os servos são dispositivos muito empregados no fascinante mundo da robótica educacional e mecatrônica. O fato é que de todos os elementos capazes de converter energia elétrica em "movimento mecânico", o servo é o que permite uma maior gama de aplicações. Podemos emprega-los na construção de braços mecânicos, usa-los como simples caixas de redução para locomoção de pequenos robôs, tratamento e controle de alavancas, entre outras. Sua simplicidade de operação aliada as suas características mecânicas, permite seu emprego na “microrobótica” para fins didáticos com muita facilidade. Na figura abaixo você pode ver a estrutura de um servo básico. Ele é constituído de um motor, um dispositivo de realimentação e um sensor de posição (geralmente um potenciômetro). É o dispositivo de realimentação que permite que a “alavanca” seja colocada na posição desejada, de acordo com a "resposta" do sensor de posição. Assim um servo permite transformar sinais elétricos em movimentos proporcionais. Isso porque existe uma “proporcionalidade” entre os sinais que são levados ao servo e a posição da alavanca.
De
acordo com a largura do pulso (sinal) recebido o servo
irá posicionar sua “alavanca” para um lado ou para o
outro. Estes pulsos têm largura predeterminada que
variam de 1ms a 2ms aproximadamente, com espaçamentos de
20ms (dependendo do fabricante). Sendo assim, podemos
posicionar sua alavanca simplesmente variando a largura
do pulso (sinal) enviado. Nota: É importante conhecer o servo a ser empregado em um determinado projeto para o seu sucesso e uma consulta ao fabricante poderá ajudar neste sentido. Muitos projetos podem simplesmente não funcionar adequadamente pela simples troca de um servo, previamente indicado. Para essa experiência você precisará ligar a
placa um servo para aeromodelo Futaba S3003 ou similar
como MG995, MG996R, etc. Micro servos como MG90S ou
outros também podem ser utilizados nessa
experiência sem nenhum problema. Abra o jumper JP1 da placa (controle do
relé) e mantenha fechados os jumpers JP2 e JP3
(controle dos pull-ups para as chaves S1 a S4 e GND
para os LEDs LED2 a LED5, respectivamente). Utilizando 3 fios tipo jumper macho/fêmea de
20cm conecte o servo aos pontos RB7 (pulso/sinal), +5V
(+) e GND (-). Abaixo a figura mostra os conectores
dos servos de acordo com cada fabricante e a posição
dos pontos de conexão. No geral temos o fio na cor
branca ou laranja para sinal/pulso, vermelho para +Vcc
e preto ou marrom para GND. Obs.: Na placa PE-PIC16F628A o +5VDC
e GND para conexões externas estão em JP4 com 2
pontos à direita para +5VDC e 2 pontos à esquerda
para GND (cuidado para não inverter!!!).
O
controle do servo é feito através do Timer 1 do
microcontrolador. Ele foi configurado como temporizador
com "estouro", gerando uma INT a cada 20ms. Esse é
exatamente o tempo entre os pulsos enviados para um
servo. Sempre que uma INT é gerada a função move_servo()
é chamada recebendo como parâmetro o tempo desejado para
o pulso (que irá alterar a posição da alavanca do
servo). O timer 1 também controla a frequência do piscar
do LED5, que é maior, através de um contador (o
incremento até um valor predeterminado deste garante o
tempo desejado). A leitura das chaves é feita através da
função principal. O programa foi ricamente comentado
para facilitar o seu entendimento. Após
gravar o microcontrolador PIC o servo será posicionado no centro.
Pressionando a chave S1 a alavanca do servo será movida
para sua posição totalmente a esquerda. Ao pressionar a
chave S2 a alavanca se moverá para o centro e ao
pressionar a chave S3 a alavanca será posicionada
totalmente a direita. Divirta-se
modificando o programa para obter novas posições e
diferentes tipos de controles!!! Downloads
|
Copyright deste conteúdo reservado para Márcio José Soares e protegido pela Lei de Direitos Autorais LEI N° 9.610, de 19 de Fevereiro de 1998. É estritamente proibida a reprodução total ou parcial do conteúdo desta página em outros pontos da internet, livros ou outros tipos de publicações comerciais ou não, sem a prévia autorização por escrito do autor. |