Já não se fala mais em projeto. Fala-se em assinatura do projeto.
Marcadores: Engenharia , engenheiro , profissional
Se tem uma coisa que me tira do serio é a mediocridade de alguns acadêmicos de engenharia de resumir a sua formação em apenas assinar projetos.
O Ênio Padilha escreveu um texto explicando bem isso, vale apena da uma lida.
Arduino + Python + FIRMATA
Marcadores: Arduino , firmata , python
No post anterior “Arduino + MATLAB” eu mostrei com efetuar a conexão do MATLAB com o Arduino, dessa fez vou mostra como fazer a mesma coisa com o Python.
A teoria é a mesma descrita no POST Arduino + MATLAB, a diferença é que iremos utilizar um firmware que implementa um protocolo genérico de comunicação chamado FIRMATA.
Segue abaixo o diagrama da integração:
Sem perca de tempo vamos ao que interessa:
Pressuponho que você já tenha o Python e a biblioteca PySerial instalado e funcionando em sua maquina.
- Na IDE do Arduino abra a scketch que se encontra em: File->Scketchbook -> Examples -> Library-Firmata –> StandardFirmata
- Grave esta scketch no Arduino, e verifique qual porta serial está sendo utilizada em: Tools -> Serial Port. Pode fechar esta IDE logo na sequência.
- 2. Faça download da biblioteca python-firmata em: http://github.com/lupeke/python-firmata e efetue a instalação da seguinte forma:
[sourcecode language="python"]python setup.py install [/sourcecode]
3. Abaixo segue um programa de exemplo, como também a disposição dos pinos na placa do Arduino:
[sourcecode language="python"]
#Piscando led com python
#importando a biblioteca FIRMATA
from firmata import *
#conectando ao arduino
a = Arduino('COM1', baudrate=57600)
#especificando o modo que o pino 13 irá trabalhar
a.pin_mode(13, firmata.OUTPUT)
#Delay de 2 segundos
a.delay(2)
while True:
#Colocando 1 na saida digital 13, neste caso 5 volts
a.digital_write(13, firmata.HIGH)
a.delay(2)
#Colocando 0 na saida digital 13, neste caso 0 volts
a.digital_write(13, firmata.LOW)
a.delay(2)
[/sourcecode]
Arduino + MATLAB
Como acadêmico de um curso de engenharia, utilizo muito o MATLAB para simulação matemática.
- Deixa ser chato Hamilton conta logo como comunicar o MATLAB com o ARDUINO. Tá bom vamos lá!!!
Mas primeiro um pouco de teoria.
Como foi visto no post “O que é Arduino” o mesmo é uma placa de fácil manipulação e programação, mas podemos usar o Arduino também como uma interface de comunicação entre o PC.
Em muitos projetos não é necessário que o Arduino trabalhe como um processador independente, mas como um dispositivo intermediário através do qual há a conexão de sensores, leds, motores, etc a um computador. Nesta configuração, a placa e o PC ficam conectados e se comunicam através da porta USB/serial. Um aplicativo executado no PC (que no nosso caso será a classe arduino.m instanciado) interage com outros aparelhos conectados à placa.
Para que essa interação seja feita é necessário adicionar o firmware adiosrv.pde que fará o papel de informar os status e as ações do Arduino. Abaixo segue um diagrama de como isso funciona.
Vamos agora para pratica:
- Faça o download do arduino-matlab em http://www.mathworks.com/academia/arduino-software/arduino-matlab.html, após o download pegue o arquivo adiosvr.pde que encontra-se dentro da pasta adiosvr e grave no Arduino via IDE de programação. Caso não saiba como fazer isso, assista o vídeo do post “O que é Arduino” .
- Abra o MATLAB, adicione o arquivo arduino.m no WORKSPACE, a partir desse momento o MATLAB já esta pronto para se comunicar com o Arduino.
- Dentro do arquivo que foi baixado arduino-matlab contém diversos exemplos mas segue abaixo um exemplo de utilização de escrita e leitura digital e analógica, como também a disposição dos pinos na placa do Arduino.
[sourcecode language="matlab"]
% conectando ao arduino
a=arduino('COM5')
% especificando os modos que os pinos 4, 13 e 5 iram trabalhar
a.pinMode(2,'input');
a.pinMode(13,'output');
a.pinMode(9,'output');
% Efetuando uma leitura digital no pino 4
dv=a.digitalRead(4)
% escrevendo o que tem na variavel dv (0 or 1) no pino 13
a.digitalWrite(13,dv)
% lendo a entrada analógica no pino 5 (NB: não é o pino 5 digital)
av=a.analogRead(5)
% normalizando av de 0:1023 para 0:255
av=(av/1023)*255
% escrevendo a saida av no pino 9 (pwm)
a.analogWrite(9,av)
% fechando a seção
delete(a)
[/sourcecode]
Segue abaixo imagens de outro código executado no command do MATLAB junto com o hardware.
Para mais informações segue um PDF feito pelo Giampiero Campa mostrando mais detalhadamente com usar essa ferramenta: http://www.mathworks.cn/matlabcentral/fileexchange/27843-arduino-io-package-slides-and-examples
Segue também um target para utilizar junto com o SIMULINK: http://www.mathworks.com/academia/arduino-software/arduino-simulink.html
O que é Arduino?
Para não precisar reinventar a roda, segue o link do blog projeto39 com um texto explicando o que é o Arduino.
Se você está começando agora no mundo do Arduino não deixe de ler esse artigo.
http://projeto39.wordpress.com/o-arduino/
OU assista o video abaixo.
Simulador Ladder - LDMICRO
Marcadores: Engenharia , ladder microcontrolador engenharia , Programação
A pedido de amigos, vai uma dica de como treinar os conhecimentos adquirido na cadeira de Informática Industrial. A linguagem LADDER nasceu na necessidade de facilitar a programação em ambientes industriais, remetendo para uma linguagem de alto nível e fácil de ser utilizada. No entanto existe um programa, LDMICRO de Jonathan Westhues, que permite a programação LADDER de microcontroladores, que viabiliza o estudo e implementação de controles de baixíssimo custo.
Este software é muito versátil, não requer instalação (basta executar o arquivo ldmicro.exe em ambiente windows ou emulador compatível), e é de livre distribuição.
Abaixo segue link para o download do LDMICRO, manual e alguns exemplos.
Software -> http://www.cq.cx/dl/ldmicro.exe
Manual -> http://www.mecatronica.org.br/disciplinas/programacao/019/LDMICRO_TUTORIAL.pdf
Exemplos -> http://www.mecatronica.org.br/disciplinas/cuscopic/artigos/ladder/exemplos.zip
Informações do hardware (Linux)
Marcadores: Dicas , Dicas linux
Quer saber informações do seu hardware sem precisar desligar o computador via seu linux, abaixo segue a dica:
# dmidecode
- [K]ubuntu (16)
- adsl (1)
- apt-get (1)
- Arduino (5)
- arduino matlab (1)
- Artigos (13)
- Assembly (1)
- C/C++ (5)
- cups (1)
- Dicas (14)
- Dicas linux (37)
- Dicas Windows (7)
- Diversos (10)
- editor (1)
- eletricidade (1)
- eletrônica (1)
- Engenharia (9)
- engenheiro (1)
- firmata (1)
- grub (1)
- GTK (3)
- imagens (1)
- impressão (3)
- informática (1)
- javascript (1)
- ladder microcontrolador engenharia (1)
- linux (28)
- Microcontrolador (1)
- navegador (2)
- PIC (1)
- profissional (1)
- Programação (7)
- programação matlab (3)
- python (1)
- QT (2)
- revista (1)
- Sem categoria (4)
- Sistemas Digitais (1)
- Tecnologia (1)
- ubuntu (13)
- virtualização (1)
- vírus (1)
- voip (1)
- wikipedia (2)
- Windows (6)
- Windows XP (4)






