Pular para o conteúdo principal

Python com Arduino(PyFirmata)


Olá Humanos, esse post é sobre um teste que estou fazendo usando pyfirmata, para controlar o arduino, neste exemplo vou usar um arduino e um servo motor.

Requisitos:
Arduino Uno
ServoMotor

O que é pyfirmata ? 


bom pyfirmata e uma lib pra trabalhar diretamente com arduino baseada em firmware de uma "firmata" standard no arduino.

Instalando firmata Standard no arduino.

No IDE do arduino versão 1.6.8 em Arquivo ----> Exemplos ----> Firmata
faça o upload de StandarFirmata.ino

Bem simples neh ?

Instalando PyFirmata no Linux  Mint( roda em qualquer Linux )

Inicialmente instale o pacote pip

$ sudo apt-get install python-pip

instale lib pyfirmata

$ sudo pip install pyfirmata

Upload Standard Firmata no Arduino (Roda em Qualquer PC)

No IDE do arduino abra menu Arquivo ---> Exemplos -----> Firmata ----> StandardFirmata


Verifique e Upload no Seu Arduino.

Blink test ^_^

Abra seu editor preferido para programarmos em python usando a lib pyfirmata 



Entendendo o Código 


from pyfirmata import Arduino, util  # importa classe PyFirmata e time
import time                            

board = Arduino('/dev/ttyACM0')  # em board criamos uma instancia usando a porta onde nosso arduino esta

def delay(second):  # função delay igual temos no arduino
  time.sleep(second)   

def blink(second):  # função blink usada para piscar led
 # board --> porta digital --> pino 13 write -> 1 Ligado
  board.digital[13].write(1)  
  delay(second)
 # board --> porta digital --> pino 13 write -> 0 desligado
  board.digital[13].write(0)
  delay(second)

x = 0 
while x < 10:
 x = x + 1 
 print x
 blink(1)


End !!  ^__^

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()