• Nenhum resultado encontrado

Controlo de servomotores com o microcontrolador BX-24

N/A
N/A
Protected

Academic year: 2021

Share "Controlo de servomotores com o microcontrolador BX-24"

Copied!
6
0
0

Texto

(1)

Controlo de servomotores com o microcontrolador BX-24

Introdução

Este documento descreve como se podem controlar servomotores através do BX-24. É exemplificado o controlo de servomotores normais, assim como o controlo de servomotores modificados para rotação continua.

Principio de funcionamento dos servos

Os servomotores (ou servos), são motores especiais que têm incorporado um sistema interno de feedback para o controle da posição. Tipicamente, o eixo de um servo roda entre 0º e 90º, ou 0º e 180º. Os servos necessitam de ser alimentados por uma tensão que varia tipicamente entre 4,5 e 6,5 Volts. A corrente necessária para o funcionamento do servo é algo que varia muito de servo para servo.

A posição do servo é controlada por um trem de impulsos, com uma amplitude que varia tipicamente entre 1ms e 2ms (1 ms = 1/1000 segundos), e uma frequência de cerca de 50Hz.

A figura 1 ilustra a influência que a duração do sinal tem no movimento do servo.

Figura 1 – Movimentos do servo em função do sinal recebido.

Se o servo recebe impulsos de 1.5ms, a sua engrenagem de saída rodará até ficar estável no centro do intervalo de rotação nos 90º. Se receber impulsos de 1ms, rodará no sentido horário até atingir o limite do intervalo de rotação correspondente a 0º. Se receber impulsos de 2ms, rodará no sentido anti-horário até atingir o outro limite do intervalo de rotação correspondente a 180º. Impulsos

(2)

Um microcontrolador pode ser facilmente programado para gerar este trem de impulsos numa das suas portas de saída.

O sistema interno de feedback, que faz com que o servo rode para uma determinada posição em resposta a um determinado trem de impulsos, é constituído por um potenciómetro conectado à engrenagem do servo, que funciona como sensor de posição, e por um circuito electrónico de controlo. O circuito electrónico compra o valor do potenciómetro com a amplitude dos impulsos que recebe pela linha de controlo, activando o motor para corrigir qualquer diferença que exista entre ambos. Ao se tentar rodar a engrenagem do servo, o circuito de controlo detectará uma diferença entre o valor do potenciómetro e a amplitude dos impulsos e activará o motor para a tentar corrigir. Este processo é tão rápido que apenas se sente o servo a resistir à tentativa de alterar a sua posição de rotação. A informação que o servo recebe do potenciómetro designa-se por feedback ou

realimentação. A comparação entre o valor do potenciómetro e a amplitude dos

impulsos, e as correcções que origina, são as componentes de um processo de controlo designado por controlo em malha fechada.

Ligação de um servo ao BX-24

A figura 2 mostra o esquema típico da ligação de um servo ao BX-24. Notar que neste circuito o servo tem a sua própria fonte de energia, embora partilhe a massa com o BX-24.

Figura 2 – Esquema típico de ligação do servo ao BX-24

Ligação de servos à Board of Education

Quando se usar o BX-24 com a Board of Education, deve-se ter em conta que não existe uma correspondência directa em termos de número identificativo, entre os pinos da placa e as portas do BX-24, como acontece com o microcontrolador Basic Stamp da Parallax. Assim, o pino P0 da placa corresponde à porta 5 do BX-24, o pino P1 à porta 6, e assim sucessivamente. Isto quer dizer que quando quisermos controlar um servo ligado, por exemplo, ao conector do pino P12, devemos programar a porta 17 do microcontrolador. Ver o exemplo a seguir.

(3)

Figura 3 – Os 4 conectores da Board of Education para ligação de servos Notar que no caso destes pinos não serem usados para ligar servos, podem ser usados como pinos de entrada/saída de uso genérico.

Deve-se ter atenção às cores dos três cabos do servo de modo a orientar a ficha como indicado na figura anterior. Embora as cores dos cabos dos servos variem de fabricante para fabricante, normalmente o cabo de cor preta corresponde à massa, o cabo de cor vermelha corresponde à tensão positiva e a cor do cabo do sinal de controlo é normalmente branca, cor-de-laranja ou amarela.

A figura 4 mostra o circuito que é criado quando se liga um servo à porta do pino P12.

Figura 4 – Circuito correspondente ao pino P12

A figura 5 mostra um servo Hitec HS-300, ligado a uma Board of Education da Parallax, equipada com um microcontrolador BX-24. O servo foi ligado ao pino 12 da placa (porta 17 do BX-24), através de um dos 4 conectores especiais para servos, existentes na Board of Education. O servo é alimentado directamente a partir da fonte de energia da placa, a qual também alimenta o microcontrolador através do regulador de tenção.

(4)

Figura 5 – Ligação do servo à Board of Education

Programa para controlo do servo

O programa 1 assume as ligações descritas na secção anterior. Quando executado, o programa move o servo para a sua posição intermédia.

Programa 1 – Controlo de um servo

Sub Main()

Const Porta_Servo As Byte = 17 Do

'Gerar um impulso de 1.5ms Call PulseOut(Porta_Servo, 0.0015, 1)

'Esperar 20ms para conseguir uma frequencia de 50 Hz. Call Delay(0.02)

Loop End Sub

A função PulseOut é a responsável pela geração do impulso. O primeiro parâmetro indica a porta que será usada, o segundo parâmetro indica a duração do impulso em segundos e o terceiro parâmetro indica o nível lógico do impulso, 0 ou 1.

Assim, no programa anterior está a ser enviado um trem de impulsos via porta 17 do BX-24, com uma amplitude de 1.5ms (segundo parâmetro igual a 0.0015), o

(5)

elimina a realimentação depende da marca e modelo do servo. Ver os tutoriais sobre modificação de servos.

No que diz respeito ao controlo dos servos modificados, este é feito de uma maneira muito semelhante à descrita para servos normais. Enquanto que num servo normal a amplitude dos impulsos correspondia à posição de rotação desejada, no caso de um servo modificado correspondem à sua velocidade e sentido de rotação. Assim, uma amplitude de 1ms fará o servo modificado rodar no sentido horário à velocidade máxima, enquanto que uma amplitude de 2ms fará o servo rodar no sentido anti-horário também à velocidade máxima. No caso de um servo modificado bem calibrado, uma amplitude de 1.5ms fará com que o servo se mantenha em repouso.

A figura 6 mostra dois servos modificados ligados aos pinos P12 e P13 da Board of Education (portas 17 e 18 do BX-24).

Figura 6 – Ligação dos dois servos à Board of Education O programa 2 exemplifica o controlo dos 2 servos da figura.

Programa 2 – Controlo de 2 servos modificados Sub Main()

Const Servo_Direita As Byte = 17 Const Servo_Esquerda As Byte = 18 Do

'O servo da direita roda no sentido anti-horario com 'velocidade maxima

Call PulseOut(Servo_Direita, 0.001, 1)

'O servo da esquerda roda no sentido horario com 'velocidade maxima

(6)

Para que uma roda acoplada ao servo da esquerda rode para a frente, o servo tem que rodar no sentido anti-horário. Isto é, tem que receber um trem de impulsos com uma amplitude entre 1.5ms e 2ms. Para que uma roda acoplada ao servo da direita rode também para a frente, o servo tem que rodar no sentido horário. Isto é, tem que receber um trem de impulsos com uma amplitude entre 1.5ms e 1ms. O que foi dito no parágrafo anterior é válido para servos posicionados tal como mostrado na figura 6, para servos posicionados de outra maneira poderá ser necessário alterar o sentido de rotação dos mesmos.

Referências

Documentos relacionados

Pode acontecer que outros já fizeram a mesma operação, com a mesma maneira de fazer, ou já viram em outro lugar, mas verão que estou fazendo e fotografando da minha maneira, e

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

A dose inicial recomendada de filgrastim é de 1,0 MUI (10 mcg)/kg/dia, por infusão intravenosa (foram utilizadas diversas durações: cerca de 30 minutos, 4 horas ou 24

Local de realização da avaliação: Centro de Aperfeiçoamento dos Profissionais da Educação - EAPE , endereço : SGAS 907 - Brasília/DF. Estamos à disposição

De seguida, vamos adaptar a nossa demonstrac¸ ˜ao da f ´ormula de M ¨untz, partindo de outras transformadas aritm ´eticas diferentes da transformada de M ¨obius, para dedu-

Note on the occurrence of the crebeater seal, Lobodon carcinophagus (Hombron & Jacquinot, 1842) (Mammalia: Pinnipedia), in Rio de Janeiro State, Brazil.. On May 12, 2003,

6 Consideraremos que a narrativa de Lewis Carroll oscila ficcionalmente entre o maravilhoso e o fantástico, chegando mesmo a sugerir-se com aspectos do estranho,

O desenvolvimento das interações entre os próprios alunos e entre estes e as professoras, juntamente com o reconhecimento da singularidade dos conhecimentos