Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

87

Transcript of Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Page 1: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 2: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Arduino+Delphi MobileExiste um mundo lá fora esperando para ser controlado!

[Victory Fernandes]

Page 3: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Victory Fernandes• Eu amo Delphi desde 1998 • Embarcadero MVP; Evangelista Gnostice• CTO da TKS Software• Eng. Eletricista; Pós Docência; MSc. Medicina – Neurociência

Page 4: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

@victoryjorge

Page 5: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 6: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 7: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 8: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 9: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 10: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Já trabalhou com microcontroladores?

Page 11: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 12: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

mbed NXP LPC1768Equipamento médico portátil para acompanhamento do comprometimento motor em pacientes com doença de parkinson

Page 13: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 14: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

• Introdução IoT

www.arduino.cc Arduino Uno, Mega, DUO

Page 15: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

• Plataformas microcontroladas para prototipagem simples e flexível• Hardware e software open-source• Dimensão física e peso, recursos, consumo, aplicação?• 8bits, 32bits…• 16MHz, 95Mhz…• 32KB-512KB Flash; 2KB-32KB RAM…• 8051, PIC, AtMega, ARM…• Intel, Microchip, Atmel, Freescale, NXP…

Desmistificando Microcontroladores

Page 16: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Digital I/Os

Page 17: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

•Pinos numerados de 0 to 13

•0 (zero) = LOW = 0 Volts•1 (um) = HIGH = 5 Volts

•Corrente máxima de saída 20mA

Digital I/Os

Page 18: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Analog Input

Page 19: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

• Pinos numerados de A0 a A5

• Tensão de entrada de 0 a 5V é mapeada em um Byte• Valores binário de 0000-0000 a 1111-1111• Valores decimais de 0 a 255

• Permite leitura de sensores analógicos de temperatura, distância, luminosidade e etc...

Analog Input

Page 20: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

• RISC• Reduced Instruction Set Computer• 131 instruções Assembler; 1 instrução por ciclo

• A 16MHz quase 16x106 linhas de código por segundo!

ATMega328P

Page 21: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

•Memória EEPROM, uma vez gravada não há necessidade de energia para manter o conteúdo.

•Seu código C é armazenado aqui depois de fazer o download para o microcontrolador

Memória Flash - 32KB

Page 22: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

•Static Random Access Memory, mantém seu conteúdo desde que haja energia; Não é preciso refresh como no caso da DRAM.

•Aqui o microcontrolador executa seu programa... Sem energia? O status de execução e todas as variáveis é perdido!

Memória SRAM - 2KB

Page 23: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

•Electrically-Erasable Programmable Read-Only Memory

•Aqui podemos armazenar informações que não queremos perder após desligar a energia!

Memória EEPROM - 1KB

Page 24: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Existe muito mais…

SPI-Serial Peripherical Interface

I2C-inter-Integrated Circuit

Page 25: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Não é muito?

Page 26: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

E o que são shields?

Page 27: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

+ +

+ =

Page 28: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 29: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 30: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

www.shieldlist.org

Page 31: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

shieldlist.org

Page 32: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 33: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 34: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 35: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

GameDuinoSaida VGAAudio Stereo

NTSC e PAL

Video

Page 36: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Joystick

Joystick

Page 37: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

MP3

Som

VoiceBoxSerial to Voice

Page 38: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

LCD colorido Display 16x2

Display de 7 segmentos

Touch

Display

Page 39: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Controle de MotorPonte H – 1A

Controle de MotorPonte H – 2A

Motores

Page 40: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Ethernet

Wi-Fi

Rede

Page 41: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

microSD

SDCard logger

Armazenamento

Page 42: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

ZigBee

CanBus

Automação

Saídas a Relé

Page 43: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Protoboard

Monte seu circuito!

Placa perfurada

Page 44: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 45: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

• Introdução IoT

www.arduino.cc Arduino Mini, Micro, Nano…

Page 46: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Tamanho reduzido…

Page 47: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

www.arduino.cc Arduino Lilypad

Page 48: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Projetos Wearable…

Funcional Estética Diversão

Page 49: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

"Hello world”?

Page 50: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

"Hello world”?

Page 51: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

"Hello world”?

Page 52: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

"Hello world”?

Page 53: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

"Hello world”?

Page 54: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Robocore Padawanwww.robocore.net/loja/produtos/arduino-shield-padawan.html

RGB LED

Page 55: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

DFRobot accessory boardwww.dfrobot.com/index.php?route=product/product&path=35&product_id=1045

RGB LED

Page 56: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

“Hello World”?

LED pin 13

Page 57: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Delphi Android/iOS app

ON

OFF

UDP Server192.168.1.177:8888

’H’ ’H’ ’H’=On’L’ ’L’ ’L’=Off

Page 58: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Vamos construir um proposta de

protocolo genérico de controle?

Page 59: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 60: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Demo que acompanha o compilador do Arduino

Page 61: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Código original do demo…Configure aqui seu Arduino na rede!

Page 62: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Código adicionado ao exemplo original!

Page 63: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Código adicionado ao exemplo original!

Page 64: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

agora temos um código que aciona um pino quando recebe

a String ‘H’ ou ‘L’

Page 65: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 66: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 67: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 68: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

LED demo app…

Page 69: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Que a força esteja com vc!

Page 70: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

LED é 5 VDC…

Page 71: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Precisamos de 110/220 VAC…

Page 72: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino
Page 73: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Interruptor tradicional…

Page 74: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Relés

Page 75: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

1

2

3

4 5

1

23

4

5

Embobinamento + Corrente = Campo Magnético

Page 76: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Módulo relé… R$ 15,00www.robocore.net/loja/produtos/modulo-rele.html

Page 77: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Módulo relé… R$ 15,00www.dfrobot.com/index.php?route=product/product&search=relay&description=true&product_id=64

Page 78: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Circuito da lâmpada…

Page 79: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

App para acionamento da lâmpada…

Page 80: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Aplicação simples na vida real…

Page 81: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Robocore Padawanwww.robocore.net/loja/produtos/arduino-shield-padawan.html

Sensor Temperatura

Joystick

Potenciômetro

RGB LEDConector genérico suportaEntrada DigitalSaída Digital ou PWM

Display 7 segmentos

Sensor de Luz

Page 82: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

DFRobot accessory boardwww.dfrobot.com/index.php?route=product/product&path=35&product_id=1045

RGB LED

Joystick

Potenciômetro

ReléBuzzer

LCD Display

Pressão/Humidade

Page 83: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

E para interface com qualquer pino?

para ‘Digital’ ou ‘Analog’?

Page 84: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Strings suportadas…

‘dw04h’ = digital write pino 4 high‘dr02’ = digital read pino 02

‘aw03255’ = analog write pino 3 valor 255

‘ar02’ = analog read pino 2

Page 85: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

Código completo em C para Arduino…

Page 86: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino

@ [email protected]@victoryjorgewww.youtube.com/c/victoryfernandes

Page 87: Existe um mundo lá fora esperando para ser controlado: Delphi Mobile + Arduino