Pular para o conteúdo principal

Controlando Motor DC com arduino e raspberry com interface web

Olá Humanos, este é um tutorial de domingo pra montrar um projetinho que fiz essa madrugada, a ideia inicial era simplesmente brincar com raspberry é arduino para controlar um motor DC simples.

Requisitos

+ Arduino Uno

Resultado de imagem para arduino  uno

+ Raspberry pi


 Resultado de imagem para raspberry pi b+

+ Shield motor

Resultado de imagem para shield motor arduino 

+ Motor DC 

  Resultado de imagem para Motor DC 5v

* Hardware

  Ok, nesse ponto vamos juntar as partes eletronicas, bem simples basta olhar o circuito basico abaixo.



* Codigo 

Primeira parte do codigo é no arduino trabalhando com a biblioteca AFMotor ela é bem simples de usar basta definir pinos dos motores,pwm e trez estados Release, Forward e backward.

#include <AFMotor.h>

AF_DCMotor motor(1); //Seleciona o motor 1
char letra;
void setup()
{
  Serial.begin(9600); 
}

void loop() {
  // put your main code here, to run repeatedly:
 letra = Serial.read();
 switch(letra){
  case 'l':
  delay(1000);
  motor.setSpeed(200); //Define a velocidade maxima
  motor.run(FORWARD); //Gira o motor sentido horario
  delay(1000);
  motor.setSpeed(0);
  motor.run(RELEASE); //Desliga o motor  break;
 
  case 'd':
  delay(1000);
  motor.setSpeed(200); //Define velocidade baixa
  motor.run(BACKWARD); //Gira o motor sentido anti-horario
  delay(1000);
  motor.setSpeed(0);
  motor.run(RELEASE); //Desliga o motor
  break;
 }
}


A Segunda parte do codigo é escrita diretamente no raspberry usando flask como microframework para a interface web, vamos criar as pastas de raiz e a pasta onde vamos salvar nos index.html.

tomate@porta:~# mkdir porta
tomate@porta:~# cd porta
tomate@porta:~/porta# mkdir templates
tomate@porta:~/porta# cd templates
tomate@porta:~/porta/templates# 

Ok com as pastas criadas vamos criar os arquivos

tomate@porta:~/porta/templates# nano index.html

codigo fonte do index.html--> http://pastebin.com/S9Y881uJ

CTRL+O para salvar
CTRL+X para sair

tomate@porta:~/porta/templates# cd ..
tomate@porta:~/porta# nano porta.py

codigo fonte de porta.py ---> http://pastebin.com/prTytP0y

CTRL+O para salvar
CTRL+X para sair

Para Subir o sistema agora basta digitar , com o arduino conectado na porta usb do seu raspberry claro.

tomate@porta:~/porta# python porta.py

 Ok, espero que seja util pra você é ate a proxima ^_^

Comentários

Postagens mais visitadas deste blog

Automatizando uma lampada com Bluetooth (Serie: Sem Fio)

Olá humanos, essa semana estive com uns guris da minha faculdade com muita dificuldade de trabalhar com o modulo bluetooth HC-06/05, tivemos uma apresentação dos projetos da minha turma e apresentei um robo explorador controlado via web, porem o que me motivou a escrever este post, foi o fato de uma equipe ter empacado, no quesito usar o modulo bluetooth durante a apresentação dessa equipe, eles falavam muito sobre como não conseguiram programar o bluetooth e nem a eletronica funcionava da forma como queriam, quando terminaram de apresentar fui até eles e disse que ajudaria eles, por que de fato é bem simples, então ajudei eles, em um simples test de ligar é desligar um led, controlado via bluetooth. Bom chega de papo, vamos ao que importa, o que é um bluetooth ? bluetooth e uma tecnologia de comunicação a curta distancia para transações simples, sendo envio de mensagens, ou envio de arquivos. Para este projeto você precisa dos seguintes ingredientes. Arduino UNO Modulo Blueto...

Redirecionamento de Porta usando ngrok (Port Forward with ngrok) SSH

Olá Humanos, estou no pensionato e aqui não tenho acesso ao roteador para fazer um redirencionamento de porta digno affs ¬__¬, sim pensei em Hackear rsrsrs, porem minha preguiça minha preguiça não deixa hauhauha, então encontrei uma ferramenta bem legal chamada ngrok que faz com que eu possa acessar remotamente meu servidor local para brincar com IoT. Instalação e ngrok  link: https://ngrok.com/ Para se cadastrar é bem simples basta logar com conta sua conta do git ou google depois faça download e na https://dashboard.ngrok.com/auth na aba auth pegue seu authtoken e valide no terminal # unzip ngrok-stable-linux-amd64.zip # ./ngrok authtoken <YOUR AUTHTOKEN> Instalando SSH no seu computador  Bom se você usa Ubuntu basta rodar  comando  # apt-get install openssh-server Para testar se o serviço digite  # service ssh status Iniciando SSH no Ngrok Rode o ngrok em protocolo tcp na porta 22  # ./ngrok tcp 22 ...

Scratch for Arduino Servo Motor Basic One(Controland Servo Motor com S4A)

Olá Humanos, aqui vamos brincar com arduino usando Scratch, neste pequeno teste vamos trabalhar com: /* 1 Arduino Uno */   /*  1 Micro Servo */ >>> print "Com este Circuito bem basico " >>> print  "Com o circuito montado inicie o Scratch for arduino e Programe o controle e movimentos dessa forma. " >>> exit()