Desafio 76 - Projeto I05

Motor muda velocidade por comunicação serial

Com base no projeto I05 - Controlando um motor DC com Arduino, transistor e potenciômetro resolva os seguintes desafios:

 

1. Utilizando o recurso de comunicação serial entre o computador e o Arduino, altere o scketch do projeto original para criar um sistema onde você digita um valor (entre 0 e 255) e o motor DC altera a sua velocidade de acordo com o valor digitado. O valor de 0 a 255 deve ser definido em função do Arduino Uno que utiliza um microcontrolador ATmega328 com 8 bits de resolução para a modulação PWM. Portanto, com o valor 0 o motor fica parado e o com valor 255 o motor atinge a velocidade máxima.

Domine o PWM com Wagner Rambo - Embarcados

2. Substitua os 3 leds do projeto original por um led RGB. Utilizando também o PWM, controle o led RGB para alterar a sua cor do verde para o amarelo e do amarelo para o vermelho dependendo da velocidade do motor DC. Use como parâmetro os valores do projeto origianal (0 a 85 - verde, 85 a 170 amarelo e de 170 a 255 vermelho).

3.  Altere o item 1 do desafio fazendo com que pressionando a leta "A" a velocidade do motor reduzida até 0 (motor parado) e pressionando a letra "D" a velocidade do motor é aumentada até 255 (velocidade máxima).

Dicas e orientações

a) Para o desafio do item 1, utilize a comunicação serial entre o teclado e o Arduino. Veja o projeto abaixo que ajudará na programação:

b) Para o desafio do item 2, encontre nos projetos abaixo a melhor forma para alterar a cor do led RGB. Você poderá mudar a cor apenas para cada faixa de velocidade do motor, ou criar um forma gradativa de alteração da cor indo do verde para o amarelo e do amarelo para o vermelho. Use a sua criatividade. Veja os projetos abaixo que que ajudarão na montagem do led RGB e na programação:

c) Para o desafio 3, inicie acrescentando 2 botões (push button) fazendo com que o botão da esquerda diminua a velocidade e o da direita aumente a velocidade do motor DC. Como sugestão, use como incremento e decremento o valor de 10 para cada clique. Depois que o projeto estiver funcionando perfeitamente com os botões, adapte o código para que com a comunicação serial do computador para o Arduino, as teclas "A" e "D" possam substituir os botões.

Sugestão: Use os métodos Serial.readString() stream.setTimeout() para fazer a leitura das teclas.

Comentários

Compartilhe:

Doações

Contribua pra manter o site online :)

Inscreva-se no canal Squids

Você está preparado?

Squids Arduino News

Desafio 78 - Projeto I05 Controlando 2 motores - juntos e individualmente Com base no projeto I06 - Controlando um motor DC com L293D (Ponte H) e Arduino resolva os seguintes desafios: 1. A...

Básico - Projeto 91 Exibindo imagens bitmap em um Oled SSD1306 - bibliotecas Adafruit Objetivo Neste projeto vamos mostrar como exibir imagens bitmap em um display OLED SSD1306 com Arduino. Uti...

Intermediário - Projeto 06 Controle de velocidade e sentido de rotação de um motor DC Objetivo Neste tutorial vamos mostrar como criar um circuito para controlar a velocidade e o sentido de ro...

Desafio 77 - Projetos hub005 e hub007 Acessar leds com comunicação serial e manipulação direta de portas Com base nos projetos Hub 005 - Acender leds por comunicação serial - Arduino  e Hub 007...

Básico - Hub 007 Leds são acionados pelo teclado do computador   Sugerido por: Vinicius Medeiros Objetivo O projeto é composto por 3 leds, um verde, um amarelo e um vermelho. Ao digitar a ...

Outros artigos

Mais: Desafios Projetos Básicos Projetos Intermediários Básico

Topo