Projeto Elevador Arduino – Um sistema de automação com controle PWM

O Projeto Elevador Arduino foi desenvolvido com o intuito de explorar as funcionalidades do Elevador MDF, um produto interessante para quem deseja desenvolver as suas habilidades em programação e desenvolvimentos mecânicos. A sua montagem é bastante simplificada e o seu código possui alguns desafios bastante interessantes para os que desejam desenvolvê-lo.

Elevador Arduino Completo para Automação

Elevador Arduino Completo para Automação

Neste projeto, desenvolve-se o esquema de ligação e código de um elevador que tem como intuito reconhecer um dado andar solicitado e deslocar-se até este, um projeto que necessita de funções simultâneas entre motor, sensor de posição e botões de localização.

Como sensor base para o reconhecimento de posição do Projeto Elevador Arduino, utilizou-se um Módulo Reed Switch que em conjunto com um imã de neodímio fixado no case de deslocamento tinha a função de identificar o andar em que se encontrava e interagir com os demais componentes do projeto.

 

Teste Prático do Elevador Arduino

Driver Duplo Ponte H para Motor DC

A base de funcionamento do Projeto Elevador Arduino é o Motor DC responsável por deslocar o case para cima e para baixo, porém como sabemos, este não pode ser conectado diretamente ao Arduino e para auxiliar em procedimentos como controle de velocidade e inversão de direção está normalmente associados a Drivers como o modelos L9110s.

Pinos do Driver Duplo Ponte H utilizado no Projeto Elevador Arduino

Pinos do Driver Duplo Ponte H utilizado no Projeto Elevador Arduino

A conexão dos motores é extremamente simples, como não possuem uma polaridade estabelecida de instalação, podem ser conectados da melhor maneira à qual se adaptam ao projeto. Lembrando que a troca de polos resulta apenas na inversão da direção de movimento do motor.

Quanto aos pinos de alimentação, estes podem estar associados aos 5V do Arduino, porém como a corrente dos motores geralmente é maior que a fornecida pelo microcontrolador, é necessária a inclusão de uma fonte de alimentação externa. Podendo ser alimentado com 5V, os motores utilizam a mesma tensão necessária para alimentação através do pino Vin, um recurso que iremos utilizar.

Esquema elétrico para alimentação do Arduino, Módulo L9110s e Motor DC

Esquema elétrico para alimentação do Arduino, Módulo L9110s e Motor DC

Como vemos, o esquema de ligação do módulo de alimentação é bastante simples, porém algumas observações podem ser consideradas, no desenvolvimento do projeto foram soldados ao Jack P4 positivo (VCC) e negativo (GND) um jumper fêmea para alimentação do módulo e um jumper macho para alimentação do Arduino, veja:

Jumpers soldados ao Jack P4 para Alimentação dos Módulos

Jumpers soldados ao Jack P4 para Alimentação dos Módulos

Quanto aos pinos de controle do Drive Utilizado no Projeto Elevador Arduino, estes podem ser atribuídos a qualquer pino PWM do microcontrolador de acordo com o projeto que esteja sendo desenvolvido.

 

Comunicação PWM

A Modulação por Largura de Pulso é a tradução da sigla PWM (Pulse Width Modulation) é uma técnica que possibilita ao Arduino uma saída analógica através de meios digitais, bastante utilizado para o controle de intensidade de LEDs e também controle de rotação de motores DC.

Os pinos digitais do Arduino fornecem uma senoidal de onda quadrada com 5V em nível HIGH (alto) e 0V em nível LOW (baixo), o que torna impossível a redução de tensão para valores entre seus mínimos e máximos através dos pinos digitais, desta maneira é necessário alterar o tempo entre os níveis de onda do pino para obter tal controle, ou seja, se alternarmos o estado de funcionamento rápido o suficiente, a velocidade do motor será alterada, por exemplo.

O ciclo de trabalho da comunicação PWM é definido pela porcentagem de tempo em que o sinal está em HIGH, ou seja, para um ciclo de trabalho de 50%, a senoidal ficará meio segundo em nível alto e meio segundo em nível baixo. Na imagem abaixo vemos através do exemplo de 40% as inscrições “T on” e “T off”, que representam consequentemente Tempo ligado e Tempo desligado.

Gráfico do ciclo de trabalho de uma senoidal com controle PWM

Gráfico do ciclo de trabalho de uma senoidal com controle PWM

Para facilitar o funcionamento dos pinos digitais como elementos de controle PWM, o Arduino possui uma função incorporada, a “analogWrite ();” que aceita valores entre 0 e 255 para determinar a porcentagem de funcionamento da onda, de uma maneira simplificada:

Em projetos com motores também é utilizado um tipo diferenciado de função para delimitação da velocidade, é a vSpeed, presente no desenvolvimento do presente projeto, os valores atribuídos a mesma por sua vez, seguem o mesmo padrão citado acima.

Diferentes modelos de Arduino possuem diferentes pinos específicos para controle PWM, no Arduino UNO, por exemplo, os pinos que suportam este controle são os 3, 5, 6, 9, 10 e 11 e estão representados por um “~” antes do numeral. A frequência de saída dos pinos PWM é normalmente de 490Hz, com exceção dos pinos 5 e 6 que possuem uma frequência de aproximadamente 980Hz.

Arduino UNO com seus respectivos pinos PWM

Arduino UNO com seus respectivos pinos PWM

Desta maneira, ao desenvolvermos projetos que necessitam de controle PWM, sempre devemos atribuir estes equipamentos aos pinos demonstrados na imagem acima, caso contrário as funções desejadas não serão executadas de acordo com as necessidades do projeto.

 

Produtos Utilizados no Projeto Elevador Arduino

– 1 Arduino Uno R3 + Cabo USB;

– 1 Estrutura em MDF para Elevador com Arduino EA50;

– 1 Fonte de Alimentação Chaveada 5VDC 1A;

– 1 Driver Duplo Ponte H de motor DC ou Passo L9110s;

– 4 Módulo Sensor Magnético para Arduino;

– 4 Chave Push Button PBS-102 104 Preta NF 1A;

– 1 Jack P4 Plástico (2,1×5,5mm) para Paineis e Chassis;

– 1 Motor DC 3-6V 80RPM com Caixa de Redução 120:1;

– 1,5 Metros de Cabo flexível TiaFlex 5m – 0,14mm²;

– 0,5 Metros de Fio de Nylon 0,25mm;

– 1 Protoboard 50 Pontos para Montagem de Projetos;

– 1 Imã De Neodímio N50 Super Forte 10mm X 4mm;

– 8 Parafuso M3 x 6mm Metálico;

– 2 Parafuso Philips M3 x 25mm Metálico;

– 2 Porca M3 x 2,4mm Metálica;

– 26 Jumper Premium para Protoboard Macho-Fêmea 20 cm;

– 2 Jumper Premium para Protoboard Macho-Macho 30 cm.

 

Esquema de Ligação do Projeto Elevador Arduino

Para o Projeto Elevador Arduino, a quantia de equipamentos destaca-se uma vez que cada andar precisa de um elemento de indicação e um sensor de posição, a quantia de pinos utilizados do Arduino quase atinge o seu máximo, porém com exceção dos pinos do motor que necessitam serem conectados em lugares com suporte PWM, os demais equipamentos podem ser posicionados de acordo com o projeto.

Projeto Elevador Arduino com Central de Distribuição de Energia

Projeto Elevador Arduino com Central de Distribuição de Energia

Mesmo com uma quantia elevada de equipamentos e pinos utilizados pelo Arduino, o esquema de ligação não apresenta grandes dificuldades, fazendo-se necessária apenas a utilização de uma protoboard para uma central de distribuição de energia responsável por alimentar os Módulos Reed Switch e diminuir a necessidade de jumpers extensos.

Esquema de Ligação do Projeto Elevador Arduino

Esquema de Ligação do Projeto Elevador Arduino

Como vimos, os botões possuem seus pinos de referencia GND todos interligados e com apenas um fio saindo ao final, isto elimina a necessidade de outra protoboard e facilita a organização do projeto.

Outro detalhe bastante importante quanto a utilização deste botão, é que para sua utilização seria necessária a utilização de um resistor Pull Up, com o mesmo propósito anterior porém, utilizamos a função interna do Arduino que possibilita através de código eliminar a necessidade dos resistores.

 

Dicas para instalação de Componentes

Ao tratar-se de um produto com diversos equipamentos e com distâncias e limitações parcialmente visíveis, existem algumas dicas que podemos dar para facilitar a instalação e o funcionamento adequado do nosso projeto, além de melhor a sua parte estética.

Uma das principais facilidades que podem ser desenvolvidas neste projeto está na instalação dos botões para indicação de andar, para eliminar a necessidade de instalar um botão para cada um dos seus pinos, podemos realizar a soldagem de todos os pinos comuns e utilizar apenas uma porta do Arduino, para os pinos de sinal porém, é necessária a atribuição de jumpers individuais, veja:

Exemplo de ligação para os botões Indicadores de Andar

Exemplo de ligação para os botões Indicadores de Andar

Um fator que vale destacar é quanto a ligação dos Módulos Reed Switch mais elevados, infelizmente não ancontra-se Jumpers Premium em tamanho suficiente para satisfazer as necessidades, então recomenda-se utilizar dois dos modelos Macho-Fêmea em uma espécie de extensão, como podemos observar na imagem abaixo e salientar também o posicionamento e utilização da central de distribuição de energia via protoboard.

Exemplo de emenda utilizada para extensão de Jumper Macho-Fêmea

Exemplo de emenda utilizada para extensão de Jumper Macho-Fêmea

Outras dicas podem ser úteis quanto a organização dos cabos, abaixo do Arduino no seu case de fixação, temos disponível um orifício que pode ser utilizado para a passagem de fios, pode-se atribuir abraçadeiras para agrupamento de cabos como podemos ver na imagem acima e também realizar a passagem do fio do motor atrás do Módulo Reed Switch como visto na mesma imagem. A organização é a chave para o desenvolvimento de um projeto com acabamento de qualidade.

 

Código de Funcionamento do Projeto Elevador Arduino

Uma facilidade que encontramos no Projeto Elevador Arduino é a capacidade de executar todas as suas funções sem a necessidade de bibliotecas, todos os seus comandos são comandos padrões do Software Arduino. A linguagem utilizada é basante simples e de fácil compreensão, veja:

As variáveis e funções do Projeto Elevador Arduino dificilmente sofrem alteração uma vez que suas ações são fixas e continuadas, porém para quem deseja, é possível realizar a alteração da velocidade do motor através  da seguinte definição:

Ao alterar no início este valor, todos os locais com definição de velocidade serão ajustados automaticamente para o valor expresso. Vale ter cuidado com velocidades muito baixas que podem ser insuficiente uma vez que o motor está atribuído a uma carga com torque parcialmente elevado.

 

Conclusão

O projeto é facilmente desenvolvido, alguns fatores quanto a instalação dos seus componentes podem ser um pouco confusos uma vez que são diversos conectores envolvidos, porém o código está pronto para uso e com todas as funções prontas, não sendo necessário qualquer tipo de alteração.

Com uma finalidade didática e totalmente interativa, o Projeto Elevador Arduino mostra-se bastante interessante uma vez que para os que aceitarem o desafio, a programação possui uma lógica bastante complexa para realizar corretamente todas as suas funções, excelente para desenvolver os conhecimentos prévios.

Além disto, o Elevador Arduino é um projeto que possibilita diversas outras melhorias, como a inclusão de displays, LEDs, Buzzers e até mesmo dispositivos de reprodução MP3 como o que encontramos no seguinte projeto:

www.usinainfo.com.br/blog/projeto-arduino-com-mp3-arduino-dfplayer-mini-em-um-elevador-com-sistema-de-audio-indicador-de-andar/

Existem muitas melhorias para incrementar no Projeto Elevador Arduino, vai da criatividade de quem estiver realizando o projeto, se você montou este elevador, teve alguma dificuldade ou tem alguma dica para os demais, não se esqueça de comentar e deixar sua opinião logo abaixo.

Categorias
Arduino

Mecânico de Manutenção com Experiência em Sistemas Embarcados, Automação e Desenvolvimento de Projetos; Graduado nos Cursos de Matemática - URI e Física - UFFS.
Sem Comentários

Deixe seu Comentário

*

*

Sobre nós

Hoje a Usinainfo é um dos maiores ecommerces de Ferramentas, Peças para Eletrônica, Componentes Eletrônicos, Sensores e Arduino do Brasil, contando com uma grande diversidade de produtos na linha de eletrônica.

Sugestões

Artigos Relacionados