O Atuador linear de trilho PA-18 é o nosso Atuador de comprimento fixo mais robusto e é comumente usado em marcenaria personalizada, automação residencial e robótica. Você pode controlar facilmente um Atuador com uma placa Arduino, e este artigo mostrará como construir e programar um Atuador linear controlado por Arduino que pode ser facilmente adaptado à sua aplicação!
Hardware necessário
Os seguintes itens de hardware são necessários para um Atuador linear controlado por Arduino, todos disponíveis na Progressive Automations:
- 1x Atuador linear de trilho PA-18
- 1x Arduino Uno
- 1x Ponte H MegaMoto Plus
- 1x Fonte de alimentação de 12 VCC
- 2x botões de pressão momentâneos
- Cabos jumper
Cabeamento do sistema
O Atuador usado nesta configuração requer uma tensão de entrada de 12 VCC e até 8 A de Corrente em Carga total. Esses valores são muito maiores do que um microcontrolador Arduino é capaz de fornecer e farão a fumaça ‘mágica’ sair do Arduino. Para evitar danificar o Arduino, utiliza-se a ponte H MegaMoto Plus. A ponte H atende aos requisitos de energia e pode ser usada facilmente para controlar um Atuador com um Arduino.
Neste sistema, há conexões do Arduino para a ponte H MegaMoto Plus e para os dois botões. Cada botão requer uma única entrada, escolhida entre os pinos GPIO disponíveis do Arduino. A ponte H tem quatro conexões com o Arduino, três saídas e uma entrada. Os pinos usados pela ponte H são predefinidos e não podem ser alterados.
Diagrama de blocos
O diagrama de blocos abaixo explica brevemente os requisitos de energia e as conexões. O Arduino funciona com uma alimentação de 5 V e a ponte H funciona com 12 V. Se você estiver usando duas fontes de alimentação separadas, é importante que os terras sejam compartilhados para evitar um cenário de terra flutuante.

Comandos Arduino
Você precisará instalar a IDE do Arduino em um computador desktop ou laptop. Tenha em mente que o cabeamento do seu sistema afetará seu código Arduino. Portanto, é importante conferir as conexões e compará-las com o código que você inseriu.
O comando pinMode do Arduino é usado para definir os pinos como entradas ou saídas. Para alterar qual sinal o Arduino está enviando para um pino específico, usam-se os comandos digitalWrite e analogWrite. Além disso, os comandos digitalRead e analogRead são usados quando o Arduino precisa verificar o sinal em um pino específico.
No programa abaixo, o comando digitalWrite é usado para habilitar ou desabilitar a ponte H e para configurar os pinos usados para os botões. O comando analogWrite é usado para definir o valor do sinal PWM no intervalo de 0 a 255 para a ponte H. O comando digitalRead é usado para verificar se os botões foram pressionados ou soltos. O comando analogRead é usado para medir a Corrente consumida pelo Motor do Atuador, o que verificará quando o Atuador estiver no fim do seu Recorrido.
Código Arduino
A seção a seguir apresenta as definições do programa, a configuração, o loop principal e as funções dos botões para um Atuador linear controlado por Arduino. É importante analisar o código linha a linha para entender como ele funciona. Esse entendimento permitirá que você faça ajustes conforme a sua aplicação.
Definições do programa
Esta seção do código é a configuração de conexão dos pinos. Verifique se suas conexões à placa Arduino correspondem aos números informados. Esses valores podem ser alterados caso você conecte componentes adicionais ao Arduino que exijam realocar as conexões de pinos.

Configuração do programa
Esta seção do código configura os pinos conectados como entrada ou saída. Os dois botões podem ser definidos como HIGH ou LOW dependendo de como você os conectou (pull-up ou pull-down). Embora o Arduino tenha resistores pull-up internos, talvez você queira adicionar um resistor externo para fazer o anti-repique dos botões e evitar disparos falsos.

Loop principal
O loop principal verifica constantemente se os botões foram pressionados e executa uma seção específica do código dependendo do resultado da função dos botões. Uma seção de máquina de estados está incluída para determinar o que o Atuador linear controlado por Arduino está fazendo e como deve reagir com base nas entradas (isto é, os botões).


Funções dos botões
Essas funções leem digitalmente o estado dos botões para controlar um Atuador usando um Arduino. Cada função de botão possui um loop de anti-repique dentro da instrução if principal para evitar disparos indevidos e o envio de sinal incorreto ao Arduino. O resultado dessas funções é um valor booleano. Por exemplo, se o botão de início for pressionado, o valor de startButton mudará para true. O valor booleano é então usado no loop principal para tomar outras decisões.

Considerações finais
A funcionalidade deste sistema vai além do que é mostrado neste artigo. O microcontrolador Arduino e a ponte H MegaMoto Plus podem ser usados para implementar rotinas de controle muito mais complexas. Esta configuração é capaz de controle de Velocidade variável utilizando o comando analogWrite para definir o sinal PWM. A Corrente do Motor do Atuador pode ser monitorada para ser usada em detecção de Carga e acionar comandos adicionais.
Além disso, sensores adicionais podem ser conectados para um Atuador linear avançado controlado por Arduino. Por exemplo, um sensor ultrassônico pode ser conectado para iniciar/parar o Motor quando você estiver a certa distância ou para acionar uma série de outras funcionalidades interessantes. As possibilidades são infinitas. No entanto, se os pinos do Arduino estiverem escassos, você pode optar por um modelo diferente de Arduino. Alternativamente, vários Arduinos podem ser encadeados para se comunicarem entre si e com diversos componentes. Contudo, esse caminho envolverá um bom nível de experiência em programação.
Para informações adicionais, envie-nos um e-mail para sales@progressiveautomations.com ou ligue para 1-800-676-6123.