SlideShare uma empresa Scribd logo
CONTROLANDO PHP COM
ARDUINO
EASY WAY
QUEM É VOCÊ, VINÍCIUS?
VINÍCIUS FEITOSA DA SILVA
- SOU UM CURIOSO
Microsoft 70-480
PSM I
ZCE
ARDUINO
CONTROLANDO ARDUINO COM PHP
ARDUINO - DEFINIÇÃO
▸ Arduino é uma plataforma eletrônica open-source de
prototipagem baseada em hardware e software flexíveis e
fáceis de usar.
▸ Fonte: http://engenheirando.com/arduino/o-que-e
CONTROLANDO ARDUINO COM PHP
ARDUINO - DEFINIÇÃO
▸ Arduino, palavra por vezes traduzida ao português como Arduíno, é
uma plataforma de prototipagem eletrônica de hardware livre e de
placa única, projetada com um microcontrolador Atmel AVR com
suporte de entrada/saída embutido, uma linguagem de programação
padrão, a qual tem origem em Wiring, e é essencialmente C/C++.
▸ O objetivo do projeto é criar ferramentas que são acessíveis, com
baixo custo, flexíveis e fáceis de se usar por artistas e amadores.
Principalmente para aqueles que não teriam alcance aos
controladores mais sofisticados e de ferramentas mais complicadas.
▸ Fonte: https://pt.wikipedia.org/wiki/Arduino
CONTROLANDO ARDUINO COM PHP
ARDUINO - DEFINIÇÃO
▸ Modelos

- Uno

- Mega

- Nano

- Outros…
▸ Componentes

- Microfone

- Sensor de umidade

- Sensor de temperatura

- Sensor de luminosidade

- etc…
CONTROLANDO ARDUINO COM PHP
ARDUINO - DEFINIÇÃO
▸ Pinos:

- Digitais 

- Analógicos
▸ Podem ser de:

- Entrada

- Saída

- Entrada e saída

- Entrada ou saída + PWM
[ PHPFC V / DarkMiraTour ] - Controlando Php com arduino - Easy Way
ARDUINO SOFTWARE (IDE)
CONTROLANDO ARDUINO COM PHP
ARDUINO - IDE
▸ "The open-source Arduino Software (IDE) makes it easy to
write code and upload it to the board. It runs on Windows,
Mac OS X, and Linux. The environment is written in Java and
based on Processing and other open-source software.”
▸ Fonte: https://www.arduino.cc/en/Main/Software
CONTROLANDO ARDUINO COM PHP
ARDUINO - IDE
▸ O Arduino possui uma IDE open-source própria para
desenvolvimento
▸ Atualmente está na sua versão 1.6.8
▸ Pode ser adquirida nesse link:
▸ https://www.arduino.cc/en/Main/Software
CONTROLANDO ARDUINO COM PHP
ARDUINO - IDE
CONTROLANDO ARDUINO COM PHP
ARDUINO - IDE
▸ A lógica de funcionamento para comunicação entre o
Software e o Hardware é codificada dentro desta IDE.
▸ A linguagem de programação utilizada por padrão é C++
com alguns ajustes
▸ A IDE permite selecionar qual o modelo de placa Arduino
que você está utilizando assim como qual a porta de quer
utilizar para se comunicar com o Arduino
CONTROLANDO ARDUINO COM PHP
ARDUINO - IDE
▸ O processo de criação e envio para o microprocessador do
Arduino na IDE passa pelas seguintes etapas:
▸ Seleção de placa Arduino
▸ Seleção de porta para comunicação
▸ Criação de código-fonte
▸ Compilação de código-fonte
▸ Envio de código compilado para o Microprocessador
(normalmente ATMEGA328P) da placa Arduino
CONTROLANDO ARDUINO COM PHP
ARDUINO - IDE
▸ A estrutura do código criado dentro desta IDE precisa seguir um certa estrutura
básica:

- void setup

- void loop
▸ Definições opcionais

- Declaração de variáveis com escopo global e local

- Declaração de funções

- Importação e utilização de bibliotecas
▸ Formas de comunicação

- Porta Serial

- Componentes wi-fi

- Componentes gsm

- Outros…
FRITZING
Fritzing
INOVAÇÃO COM ARDUINO
CONTROLANDO ARDUINO COM PHP
INOVAÇÃO COM ARDUINO
ARDUINO + PHP ?
CONTROLANDO ARDUINO COM PHP
É POSSÍVEL CONTROLAR O ARDUINO COM PHP?
CONTROLANDO ARDUINO COM PHP
SIM! DE VÁRIAS MANEIRAS!
▸ Basicamente o papel da aplicação PHP é definir o
comportamento que seu projeto Arduino terá, enviando ou
recebendo informações do Arduino.
▸ Esse controle de envio e recebimento de dados pode ser
feito de diversas formas. A forma que abordarei hoje será
feita através da porta USB.
CONTROLANDO ARDUINO COM PHP
DO QUE PRECISO, ENTÃO?
▸ Arduino
▸ PHP
▸ Permissão pra acessar a porta usb
▸ Configurar velocidade de comunicação com a porta usb

CONTROLANDO ARDUINO COM PHP
CONCEDENDO PERMISSÃO PARA ACESSO
▸ $ sudo chmod a+rw /dev/ttyUSB0
CONTROLANDO ARDUINO COM PHP
DEFININDO VELOCIDADE DE COMUNICAÇÃO COM A PORTA USB
▸ $ sudo stty 9600 < /dev/tty.usbmodem1411
CONTROLANDO ARDUINO COM PHP
FOPEN, FILE_PUT_CONTENTS E OUTROS…
▸ São métodos que normalmente são utilizados para leitura e
escrita em arquivos no php
▸ Também funciona para enviar informações para o Arduino
através da porta serial
CONTROLANDO ARDUINO COM PHP
PHP + ARDUINO - EXEMPLO 1
▸ <?php

$port = "/dev/ttyACM1";

$fp = fopen($port, 'w');

fwrite($port, “hello!”);

fclose($fp);
CONTROLANDO ARDUINO COM PHP
PHP + ARDUINO - EXEMPLO 2
▸ <?php

$port = fopen("/dev/ttyUSB0", "w");

fwrite($port, “estou enviando essa string”);

fclose($fp);
CONTROLANDO ARDUINO COM PHP
PHP + ARDUINO - EXEMPLO 3
▸ <?php

$portaParaConexao = "/dev/cu.usbmodem1411";

$valor = ($argv[1]) ? $argv[1] : $_REQUEST['valor'];

exec("sudo stty 9600 < /dev/cu.usbmodem1411");

file_put_contents($portaParaConexao, $valor);

die("123");
CONTROLANDO ARDUINO COM PHP
PHP + ARDUINO - EXEMPLO DE CÓDIGO PARA O ARDUINO
▸ int PINO_3 = 3;

void setup() { 

Serial.begin(9600);

pinMode(PINO_3, OUTPUT);

}

void loop() {

char valorRecebido;

valorRecebido = Serial.read();

// faça alguma coisa

}
CONTROLANDO ARDUINO COM PHP
PHP + ARDUINO - CÓDIGO PARA O ARDUINO
▸ Compilou
▸ Enviou
▸ Pronto!
CHAMANDO GARÇONS, PEDINDO A
CONTA E AVALIANDO ATENDIMENTO
COM ARDUINO?
Fonte: http://smart2gourmet.com.br
REGANDO PLANTAS
COM ARDUINO ?
CONTROLANDO ARDUINO COM PHP
REGANDO AS PLANTAS COM ARDUINO
▸ O problema
▸ 1 - Preguiça
▸ 2 - Tempo
▸ 3 - Por onde começar?
CONTROLANDO ARDUINO COM PHP
Cerejeira Silvestre - 4 anos de idade
CONTROLANDO ARDUINO COM PHP
REGANDO AS PLANTAS COM ARDUINO
▸ Componentes necessários

- Medidor de humidade do solo

- Protoboard

- Jumpers

- Motor para bombear água

- Fonte de alimentação externa
CONTROLANDO ARDUINO COM PHP
DICAS PARA ESTUDOS
▸ https://multilogica-shop.com/Referencia
▸ http://playground.arduino.cc
▸ https://www.robocore.net
▸ http://labdegaragem.com
▸ http://www.paulotrentin.com.br
CONTROLANDO ARDUINO COM PHP
CONTATO
▸http://viniciusfesil.com.br
▸viniciusfesil@gmail.com
▸Twitter: @vinnyfs89
▸Instagram: @vinnyfs89
OBRIGADO!

Mais conteúdo relacionado

PDF
TDC2016 | Trilha PHP - Xdebug: Seus problemas acabaram!
PDF
Xdebug seus problemas acabaram - TDC - PHPeste
PDF
Processing e Arduino
PPTX
Introdução à Programacao em Processing
ODP
Funtoo escla
PPTX
18. arduino
PPT
Compus Party - processing e arduino
PDF
Oficina de IoT CPBS3
TDC2016 | Trilha PHP - Xdebug: Seus problemas acabaram!
Xdebug seus problemas acabaram - TDC - PHPeste
Processing e Arduino
Introdução à Programacao em Processing
Funtoo escla
18. arduino
Compus Party - processing e arduino
Oficina de IoT CPBS3

Mais procurados (7)

ODP
Funtoo Gnu/Linux: Customização ao extremo
PDF
Xdebug seus problemas acabaram - tdc floripa 2017
PDF
Oficina de IoT conhecendo ESP8266 #CPBR12
PDF
Linguagem c wellington telles - aula 02
PPTX
LEON3 e KIT ALTERA.
ODP
Software Livre, o caminho do futuro
PDF
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Funtoo Gnu/Linux: Customização ao extremo
Xdebug seus problemas acabaram - tdc floripa 2017
Oficina de IoT conhecendo ESP8266 #CPBR12
Linguagem c wellington telles - aula 02
LEON3 e KIT ALTERA.
Software Livre, o caminho do futuro
Hackeando um SmartBOX (com android) e instalando Linux & JAVA & OpenDevice
Anúncio

Semelhante a [ PHPFC V / DarkMiraTour ] - Controlando Php com arduino - Easy Way (20)

PDF
PHP-CLI em 7 passos
PPTX
Robótica e Sistemas interativos utilizando Arduino
PDF
Apresentação pós tic
PDF
Arduino - aula Teste - Ilha
PDF
Seguindo padrões: Codificando profissionalmente com PHP Sniffer
PDF
Workshop - Cotrole sua casa remotamente através da Internet
PDF
Curso C e C++ - Teoria PDF.pdf
ODP
Arduino
PDF
Slide - Introdução ao Arduino e Sensores.pdf
PDF
Introdução à plataforma Arduino
PDF
Minicurso arduino
PPT
Energia - MSP430
PDF
Docker na vida real
PDF
Como montar sua própria placa Arduino e compartilhar seus projetos de hardware
PDF
Programação Multiplataforma em Ambiente Web
PPT
Introdução ao arduino palestra
ODP
ArduinRio FSLDC
PPTX
Arduino - Introdução à Programação
PPTX
Placa Arduino
PPS
CURSO DE PHP PARA INICIANTES - AULA 1
PHP-CLI em 7 passos
Robótica e Sistemas interativos utilizando Arduino
Apresentação pós tic
Arduino - aula Teste - Ilha
Seguindo padrões: Codificando profissionalmente com PHP Sniffer
Workshop - Cotrole sua casa remotamente através da Internet
Curso C e C++ - Teoria PDF.pdf
Arduino
Slide - Introdução ao Arduino e Sensores.pdf
Introdução à plataforma Arduino
Minicurso arduino
Energia - MSP430
Docker na vida real
Como montar sua própria placa Arduino e compartilhar seus projetos de hardware
Programação Multiplataforma em Ambiente Web
Introdução ao arduino palestra
ArduinRio FSLDC
Arduino - Introdução à Programação
Placa Arduino
CURSO DE PHP PARA INICIANTES - AULA 1
Anúncio

[ PHPFC V / DarkMiraTour ] - Controlando Php com arduino - Easy Way

  • 2. QUEM É VOCÊ, VINÍCIUS?
  • 3. VINÍCIUS FEITOSA DA SILVA - SOU UM CURIOSO Microsoft 70-480 PSM I ZCE
  • 5. CONTROLANDO ARDUINO COM PHP ARDUINO - DEFINIÇÃO ▸ Arduino é uma plataforma eletrônica open-source de prototipagem baseada em hardware e software flexíveis e fáceis de usar. ▸ Fonte: http://engenheirando.com/arduino/o-que-e
  • 6. CONTROLANDO ARDUINO COM PHP ARDUINO - DEFINIÇÃO ▸ Arduino, palavra por vezes traduzida ao português como Arduíno, é uma plataforma de prototipagem eletrônica de hardware livre e de placa única, projetada com um microcontrolador Atmel AVR com suporte de entrada/saída embutido, uma linguagem de programação padrão, a qual tem origem em Wiring, e é essencialmente C/C++. ▸ O objetivo do projeto é criar ferramentas que são acessíveis, com baixo custo, flexíveis e fáceis de se usar por artistas e amadores. Principalmente para aqueles que não teriam alcance aos controladores mais sofisticados e de ferramentas mais complicadas. ▸ Fonte: https://pt.wikipedia.org/wiki/Arduino
  • 7. CONTROLANDO ARDUINO COM PHP ARDUINO - DEFINIÇÃO ▸ Modelos
 - Uno
 - Mega
 - Nano
 - Outros… ▸ Componentes
 - Microfone
 - Sensor de umidade
 - Sensor de temperatura
 - Sensor de luminosidade
 - etc…
  • 8. CONTROLANDO ARDUINO COM PHP ARDUINO - DEFINIÇÃO ▸ Pinos:
 - Digitais 
 - Analógicos ▸ Podem ser de:
 - Entrada
 - Saída
 - Entrada e saída
 - Entrada ou saída + PWM
  • 11. CONTROLANDO ARDUINO COM PHP ARDUINO - IDE ▸ "The open-source Arduino Software (IDE) makes it easy to write code and upload it to the board. It runs on Windows, Mac OS X, and Linux. The environment is written in Java and based on Processing and other open-source software.” ▸ Fonte: https://www.arduino.cc/en/Main/Software
  • 12. CONTROLANDO ARDUINO COM PHP ARDUINO - IDE ▸ O Arduino possui uma IDE open-source própria para desenvolvimento ▸ Atualmente está na sua versão 1.6.8 ▸ Pode ser adquirida nesse link: ▸ https://www.arduino.cc/en/Main/Software
  • 13. CONTROLANDO ARDUINO COM PHP ARDUINO - IDE
  • 14. CONTROLANDO ARDUINO COM PHP ARDUINO - IDE ▸ A lógica de funcionamento para comunicação entre o Software e o Hardware é codificada dentro desta IDE. ▸ A linguagem de programação utilizada por padrão é C++ com alguns ajustes ▸ A IDE permite selecionar qual o modelo de placa Arduino que você está utilizando assim como qual a porta de quer utilizar para se comunicar com o Arduino
  • 15. CONTROLANDO ARDUINO COM PHP ARDUINO - IDE ▸ O processo de criação e envio para o microprocessador do Arduino na IDE passa pelas seguintes etapas: ▸ Seleção de placa Arduino ▸ Seleção de porta para comunicação ▸ Criação de código-fonte ▸ Compilação de código-fonte ▸ Envio de código compilado para o Microprocessador (normalmente ATMEGA328P) da placa Arduino
  • 16. CONTROLANDO ARDUINO COM PHP ARDUINO - IDE ▸ A estrutura do código criado dentro desta IDE precisa seguir um certa estrutura básica:
 - void setup
 - void loop ▸ Definições opcionais
 - Declaração de variáveis com escopo global e local
 - Declaração de funções
 - Importação e utilização de bibliotecas ▸ Formas de comunicação
 - Porta Serial
 - Componentes wi-fi
 - Componentes gsm
 - Outros…
  • 20. CONTROLANDO ARDUINO COM PHP INOVAÇÃO COM ARDUINO
  • 22. CONTROLANDO ARDUINO COM PHP É POSSÍVEL CONTROLAR O ARDUINO COM PHP?
  • 23. CONTROLANDO ARDUINO COM PHP SIM! DE VÁRIAS MANEIRAS! ▸ Basicamente o papel da aplicação PHP é definir o comportamento que seu projeto Arduino terá, enviando ou recebendo informações do Arduino. ▸ Esse controle de envio e recebimento de dados pode ser feito de diversas formas. A forma que abordarei hoje será feita através da porta USB.
  • 24. CONTROLANDO ARDUINO COM PHP DO QUE PRECISO, ENTÃO? ▸ Arduino ▸ PHP ▸ Permissão pra acessar a porta usb ▸ Configurar velocidade de comunicação com a porta usb

  • 25. CONTROLANDO ARDUINO COM PHP CONCEDENDO PERMISSÃO PARA ACESSO ▸ $ sudo chmod a+rw /dev/ttyUSB0
  • 26. CONTROLANDO ARDUINO COM PHP DEFININDO VELOCIDADE DE COMUNICAÇÃO COM A PORTA USB ▸ $ sudo stty 9600 < /dev/tty.usbmodem1411
  • 27. CONTROLANDO ARDUINO COM PHP FOPEN, FILE_PUT_CONTENTS E OUTROS… ▸ São métodos que normalmente são utilizados para leitura e escrita em arquivos no php ▸ Também funciona para enviar informações para o Arduino através da porta serial
  • 28. CONTROLANDO ARDUINO COM PHP PHP + ARDUINO - EXEMPLO 1 ▸ <?php
 $port = "/dev/ttyACM1";
 $fp = fopen($port, 'w');
 fwrite($port, “hello!”);
 fclose($fp);
  • 29. CONTROLANDO ARDUINO COM PHP PHP + ARDUINO - EXEMPLO 2 ▸ <?php
 $port = fopen("/dev/ttyUSB0", "w");
 fwrite($port, “estou enviando essa string”);
 fclose($fp);
  • 30. CONTROLANDO ARDUINO COM PHP PHP + ARDUINO - EXEMPLO 3 ▸ <?php
 $portaParaConexao = "/dev/cu.usbmodem1411";
 $valor = ($argv[1]) ? $argv[1] : $_REQUEST['valor'];
 exec("sudo stty 9600 < /dev/cu.usbmodem1411");
 file_put_contents($portaParaConexao, $valor);
 die("123");
  • 31. CONTROLANDO ARDUINO COM PHP PHP + ARDUINO - EXEMPLO DE CÓDIGO PARA O ARDUINO ▸ int PINO_3 = 3;
 void setup() { 
 Serial.begin(9600);
 pinMode(PINO_3, OUTPUT);
 }
 void loop() {
 char valorRecebido;
 valorRecebido = Serial.read();
 // faça alguma coisa
 }
  • 32. CONTROLANDO ARDUINO COM PHP PHP + ARDUINO - CÓDIGO PARA O ARDUINO ▸ Compilou ▸ Enviou ▸ Pronto!
  • 33. CHAMANDO GARÇONS, PEDINDO A CONTA E AVALIANDO ATENDIMENTO COM ARDUINO?
  • 36. CONTROLANDO ARDUINO COM PHP REGANDO AS PLANTAS COM ARDUINO ▸ O problema ▸ 1 - Preguiça ▸ 2 - Tempo ▸ 3 - Por onde começar?
  • 37. CONTROLANDO ARDUINO COM PHP Cerejeira Silvestre - 4 anos de idade
  • 38. CONTROLANDO ARDUINO COM PHP REGANDO AS PLANTAS COM ARDUINO ▸ Componentes necessários
 - Medidor de humidade do solo
 - Protoboard
 - Jumpers
 - Motor para bombear água
 - Fonte de alimentação externa
  • 39. CONTROLANDO ARDUINO COM PHP DICAS PARA ESTUDOS ▸ https://multilogica-shop.com/Referencia ▸ http://playground.arduino.cc ▸ https://www.robocore.net ▸ http://labdegaragem.com ▸ http://www.paulotrentin.com.br
  • 40. CONTROLANDO ARDUINO COM PHP CONTATO ▸http://viniciusfesil.com.br ▸viniciusfesil@gmail.com ▸Twitter: @vinnyfs89 ▸Instagram: @vinnyfs89