A Esteira Arduino com Driver Controlador é um produto desenvolvido com o intuito de possibilitar a elaboração de protótipos dos mais diversificados, podendo ser aplicada como elemento de menor escala em projetos industriais e como elemento de controle de fluxo para projetos makers.
Em projetos anteriores a Esteira já havia sido utilizada como elemento de controle de itens através da utilização de um Sensor Ultrassônico e um display apenas, visando proporcionar um projeto mais completo de maior aplicabilidade algumas alterações foram feitas.
O primeiro Projeto de Esteira Arduino você encontra através do seguinte link:
Esteira Arduino: Projeto Robótico para Controle do Fluxo de Produtos
Através do presente projeto será possível controlar o motor, inserir interrupções a cada passagem de item e exibir a quantidade de itens através do display I2C, posteriormente será possível controlar também a velocidade do motor e demais comandos através do mesmo.
Alterações no Projeto Esteira Arduino
Visando melhorar o projeto e as suas funcionalidades, desde o modelo anterior desenvolvido para este mesmo blog, algumas alterações foram desenvolvidas e consequentemente alguns produtos foram adicionados.
As melhorias envolvem o sistema de alimentação, o sistema de visualização de dados e o sistema de controle do motor DC. Com estas mudanças incrementaram-se algumas funções e possibilitou-se o desenvolvimento de diversas outras.
Sistema de Alimentação da Esteira Arduino
O sistema de alimentação utilizado anteriormente contava com a necessidade de fontes de alimentação isoladas para o Arduino e para o Motor DC, uma vez que o Arduino era alimentado através de cabos USB e o Motor era alimentado através de uma fonte de alimentação externa e até mesmo um adaptador P4.
No atual projeto, centralizaremos todo o funcionamento da Esteira Arduino para Controle de Fluxo em um Extensor de Portas de Alimentação, através deste iremos realizar a Alimentação do Arduino, do motor e dos sensores e módulos utilizados no projeto.
Com estas melhorias, diminui-se a quantia de produtos e possibilitou uma maior autonomia a esteira, excluindo a necessidade de um computador e uma porta USB para alimentação do microcontrolador e consequente funcionamento.
Sistema de Visualização de Dados da Esteira Arduino
O sistema de visualização de dados foi atualizado para melhorar a sua instalação e utilização junto aos demais componentes, na versão anterior utilizava-se um Display LCD 16×2 diretamente conectado ao Arduino, agora para reduzir as conexões e ampliar as possibilidades integrou-se ao display um adaptador I2C.
Caso deseje maiores informações quanto a diferença no sistema de funcionamento de cada um destes modelos, você encontra através do seguinte artigo:
A principal diferença, porém baseia-se no sistema de desenvolvimento do código e no seu esquema de conexão uma vez que utiliza-se de apenas 4 fios, dois para alimentação e dois para comunicação e ainda dispensa a utilização de potenciômetros.
Sistema de Controle para Motor DC da Esteira Arduino
Um dos grandes avanços entre s projetos é a inclusão de um Driver Controlador para Motor DC, um módulo que possibilitou um controle amis preciso da esteira e possibilitou também possíveis interrupções e demais comandos.
O sistema de funcionamento do Driver é bastante simples, ao contar com apenas um pino de sinal ele possibilita o controle PWM de velocidade e a alteração de estado HIGH e LOW do motor, porém não possibilita a inversão do sentido de rotação.
Para melhor compreensão do sistema de funcionamento do drive, segue abaixo uma imagem com indicações de conexão:
Como vemos acima, temos dois bornes para a conexão do motor DC, os pinos V+ e V-, os quais podem ser invertidos manualmente para alterar o sentido de rotação do motor caso seja preciso. Ao lado, os outros dois bornes são utilizados para a alimentação do motor antes da conversão feita pelo Driver (Vin é a abreviação V input, ou seja, tensão de entrada) e vão conectados ao Extensor de Portas de Alimentação.
Junto ao módulo existem também três pinos específicos para controle através do Arduino, os pinos VCC e GND são responsáveis pela alimentação e vão conectados também junto ao Extensor de Portas de Alimentação enquanto que o pino SIG é o pino digital e vai conectado diretamente ao Arduino.
Produtos Utilizados na Esteira Arduino com Driver Controlador
Abaixo você encontra a listagem de todos os produtos utilizados no decorrer do desenvolvimento do projeto, permitindo que possa comprar apenas os itens que ainda não tiver de forma avulsa. Caso queira adquirir um kit com todas as peças já inclusas, pode optar pela Esteira Arduino em MDF Completa.
– Placa Uno R3 + Cabo USB para Arduino;
– Esteira Arduino em MDF para Projetos;
– Sensor Ultrassônico de Distância HC-SR04;
– Driver Controlador para motor DC – IRF520;
– Display LCD 16×2 I2C com Fundo Verde;
– Extensor de Portas 0 a 6V 10 Saídas com Jack P4 – EPX10;
– Motor DC 3-6V 80RPM com Caixa de Redução e Eixo Duplo 120:1;
– 11 Jumper Premium para Protoboard Macho-Fêmea 20 cm;
– 6 Jumper Premium para Protoboard Fêmea-Fêmea 20 cm;
– Fonte de Alimentação Chaveada 5VDC 1A.
Vídeo de Demonstração Esteira Arduino
Esquema de Ligação da Esteira Arduino com Driver Controlador
O esquema de ligação da Esteira Arduino com Driver Controlador torna-se parcialmente complexo uma vez que utiliza diversos pinos de alimentação, porém a utilização de um display I2C diminui esta complexibilidade e proporciona junto ao Extensor de Pinos para Alimentação uma experiência bastante tranquila.
Normalmente nos obrigamos a utilizar uma protoboard para expandirmos a alimentação do Arduino mas nos limitamos pela corrente do mdesmo, que mostra-se insuficiente para projetos que utilizam motores DC e Servos motores, porém ao utilizar o Extensor comercializado pela Usinainfo solucionamos este nosso problema e possibilitamos a utilização de uma única fonte de alimentação para o nosso projeto.
Código de Funcionamento da Esteira Arduino com Driver Controlador
O código de funcionamento da Esteira Arduino com Driver Controlador é bastante simples quando comparado a muitos outros procedimentos, o código abaixo conta com todas as variáveis necessárias assim como possui as principais variáveis comentadas para auxiliar na sua compreensão.
Para o desenvolvimento do projeto e para que possamos carregar o código junto ao Arduino precisamos de três bibliotecas, uma delas, a Wire.h já vem instalada originalmente junto ao software Arduino, a biblioteca LiquidCrystal_I2C.h por sua já é bem bastante conhecida por quem acompanha os artigos que posto continuamente, porém caso ainda não tenha ainda, segue local para download:
LiquidCrystal_I2C.h – DOWNLOAD AQUI.
A terceira biblioteca utilizada e a responsável por auxiliar no funcionamento do sensor ultrassônico é a NewPing.h, através desta e das demais mencionadas acima seremos capazes de realizar o perfeito funcionamento da esteira.
NewPing.h – DOWNLOAD AQUI.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
/******************************************************************************************************* ------------------------------------ Autor: Gustavo R Stroschon ----------------------------------------- ------------------------------------ Data: 09/03/2020 ---------------------------------------------------- Função do programa: Verificar a quantia de objetos que passa pela esteira através do sensor ultrassônico. *******************************************************************************************************/ #include <Wire.h> #include <LiquidCrystal_I2C.h> #include <NewPing.h> #define trigger_pin 9 #define echo_pin 8 #define max_distance 20 #define distance_good 10 #define pin_motor A0 #define pwm_value 200 LiquidCrystal_I2C lcd(0x27, 16, 2); // configura o display NewPing sonar(trigger_pin, echo_pin, max_distance); // configura o sensor ultrasonico // inicializaçao variaveis int counter = 0; int last_counter = 0; bool flag = 0; void setup() { Serial.begin(9600); lcd.begin(16,2); // inicia a comunicaçao com o lcd lcd.backlight();// liga aluz de fundo do lcd lcd.setCursor(0, 0); lcd.print("USINAINFO"); lcd.setCursor(0, 1); lcd.print("Objetos : "); lcd.setCursor(14, 1); lcd.print("0"); // configuraçoes dos pinos pinMode(trigger_pin, OUTPUT); pinMode(echo_pin, INPUT); pinMode(pin_motor, OUTPUT); } void loop() { int distancia = sonar.convert_cm(sonar.ping_median(10)); // faz um calculo para obter a media da distancia Serial.println(distancia); if (distancia <= distance_good && distancia != 0) { // se a distancia for menor que a distancia ideal e nao for um 0 ... if (flag == 0) { // verifica se antes ja havia sido identificado um objeto digitalWrite(pin_motor, LOW); // desliga o motor flag = 1; // indica que encontrou um objeto counter++; // incrementa a variavel que guarda o numero de objetos contados delay(500); } } else { flag = 0; } digitalWrite(pin_motor, HIGH); // liga o motor if (counter != last_counter) { // verifica se o número da contagem é o mesmo da anterior last_counter = counter; lcd.setCursor(0, 1); lcd.print("Objetos : "); lcd.setCursor(14, 1); lcd.print(counter); } } |
Após carregar o código junto ao Arduino, a Esteira e os demais componentes estarão prontos para realizar a contagem de itens que irão passar pelo sensor ultrassônico e consequentemente exibir este valor através do display I2C. Sempre que um objeto for identificado, o motor irá parar por um período de meio segundo e após isto continuar seu funcionamento até que outro objeto seja identificado.
Conclusão
O presente projeto possui uma funcionalidade bastante simples, porém demonstra que processos industriais os quais consideramos tão complexos, por vezes podem ser desenvolvidos e replicados de forma a desmistificar nossos pensamentos. Aqui, simulamos o funcionamento de uma esteira com sensores de presença, a qual apresenta uma resposta mecânica e de comutação a cada objeto verificado.
Além dos processos já instalados junto a Esteira Arduino, muitos outros podem ser incluídos como a possibilidade de parada total após a passagem de n produtos, a velocidade da esteira variar de acordo com a quantia de produtos verificados, lembrando que através do Driver incluído neste projeto podemos controlar a velocidade, a parada e o movimento do Motor, exceto o seu sentido de rotação.
Não esqueça de deixar o seu comentário dizendo do que achou deste projeto, deixe sua sugestão para melhorias do mesmo e as dúvidas que tiver durante o seu desenvolvimento. Espero que tenham gostado e lhes seja útil.
Boa noite, programei conforme o exemplo de vocês, mas aparece muitos erros, poderiam me ajudar?
Olá Fernando! Este projeto necessita da instalação de três bibliotecas para o seu funcionamento, verificou se todas estão devidamente em funcionamento? Além disto, sugiro verificar se a Placa Arduino selecionada nas configurações corresponde ao modelo que está utilizando e se a Porta COM também está devidamente selecionada.
ola.
No meu caso vou fazer 1 esteira pouquinho maior.
posso substituir o motor por 1 motor de maior voltagem? tipo 12v X 1A, 2A, …?
SERÁ QUE O MOSFET SUPORTA?
Parabens pelo belo projeto amigo
Tudo bem cesar?
Você pode ver a página do driver em nosso site. Sem dissipador ele suporta no máximo 1A, com saída de até 24V para os motores. Então um 12V 1A seria possível. Mas pode esquentar ainda, ideal seria a instalação de um dissipador adequado.
Link do produto com ficha técnica: https://www.usinainfo.com.br/driver-para-motor/driver-controlador-para-motor-dc-irf520–2726.html