23
Když Arduino potkalo Linux Adam Hořčica SUT, 29. 10. 2013

Když Arduino potkalo Linux

Embed Size (px)

DESCRIPTION

Přednáška pro http://sut.sh.cvut.cz/ (29. 10. 2013)

Citation preview

Page 1: Když Arduino potkalo Linux

Když Arduino potkalo Linux

Adam Hořčica SUT, 29. 10. 2013

Page 2: Když Arduino potkalo Linux

Co nás čeká…

#ifndef ARDUINO

• Co je Arduino #endif

• Co je Arduino Yún

• Co s ním

• Srovnání s konkurencí

• Co si vybrat

Page 3: Když Arduino potkalo Linux

Arduino

„Arduino is an open-source electronics

prototyping platform based on flexible,

easy-to-use hardware and software.“ – http://arduino.cc

Page 4: Když Arduino potkalo Linux

Platforma

HW

HW + SW + Komunita = Arduino

SW

Page 5: Když Arduino potkalo Linux

Arduino 云

• 2 v 1 – Arduino deska

– „Linuxová“ deska

• 2 procesory – MCU: ATmega 32U4

– CPU: SoC Atheros AR 9331

Page 6: Když Arduino potkalo Linux

MCU – „Arduino část“

• Arduino Leonardo

• 95% HW Arduino kompatibilní

– Nemá 2,1mm napájecí konektor

– Nemá 5V stabilizátor

• Vývoj v Arduino IDE

Page 7: Když Arduino potkalo Linux

CPU – „Linux část“

• Distribuce Linino (odvozená od Open WRT)

• 64 MB RAM, 16 MB Flash (½ dostupná)

• Ethernet (včetně PoE) a Wi-Fi konektivita

• USB host, micro SD

• Pokud nechcete, nemusíte o Linuxové části vůbec vědět

Page 8: Když Arduino potkalo Linux

http://arduino.cc/en/Main/ArduinoBoardYun

Page 9: Když Arduino potkalo Linux
Page 10: Když Arduino potkalo Linux

http://electronics4dogs.blogspot.cz/2013/09/arduino-yun-naked.html

Page 11: Když Arduino potkalo Linux

Bridge

• Knihovna <Bridge.h> na straně Arduina

• Program bridge.py na straně Linuxu

• Arduino při setup (){Bridge.begin()} spustí run-bridge (jako normální příkaz do konzole)

• Spustí se bridge.py a přes stdin/stdout komunikuje s MCU

Page 12: Když Arduino potkalo Linux

Co Bridge nabízí

1. Process 2. Console 3. FileIO 4. HttpClient 5. MailBox 6. YunClient 7. YunServer 8. Temboo 9. Spacebrew

HTTP: /arduino/…

REST: /data/… Asynchronní zprávy

~ Serial (SerialMonitor)

https://temboo.com/arduino

http://docs.spacebrew.cc/gettingstarted/

~ Knihovna <SD.h>

Page 13: Když Arduino potkalo Linux

Ukázka I. Wi-Fi: Arduino http://192.168.204.1/sd/

HTTP Teploměr

https://github.com/ah01/arduino-stuff/tree/master/sut/thermometer

Page 14: Když Arduino potkalo Linux

Ukázka II. Wi-Fi: Arduino http://192.168.204.1/arduino/[on/off]

Ovládání 230V zásuvky

https://github.com/ah01/arduino-stuff/tree/master/sut/socket

Page 15: Když Arduino potkalo Linux

Srovnání s…

• Arduino Yún

• Arduino Ethernet

• Raspebrry Pi

• BeagleBone Black

Co si vybrat?

Page 16: Když Arduino potkalo Linux

Arduino Yún

• To už znáte…

Cena: 1400 Kč bez DPH

Ceny z webu http://cz.rs-online.com k datu 29.10.2013.

Page 17: Když Arduino potkalo Linux

Arduino Ethernet

• Arduino kompatibilní

• Procesor ATmega328

• HW TCP/IP Stack (Wiznet W5100), PoE

• Jednoduché použití

• Malý výkon

Cena: 1500 Kč bez DPH

Page 18: Když Arduino potkalo Linux

Raspberry Pi

• Velký výkon

• Není Real-Time

• Nemá Wi-Fi (on board)

• Nepodporuje PoE

Cena: 750 Kč bez DPH

Cena RPi + Arduino Leonardo: 1250 Kč bez DPH

Page 19: Když Arduino potkalo Linux

BeagleBone Black

• Velký výkon

• Není Real-Time

• Velký počet GPIO pinů

• Nemá Wi-Fi (on board)

• Nepodporuje PoE

Cena: 950 Kč bez DPH

Page 20: Když Arduino potkalo Linux

• Kritéria:

– Výkon

– Real-Time

– Náročnost použití

– Cena

Záleží na konkrétní aplikaci…

Co si vybrat?

Page 21: Když Arduino potkalo Linux

Pro milovníky Open Source

Arduino IDE: • https://github.com/arduino/Arduino/tree/ide-1.5.x

Bridge.h:

• https://github.com/arduino/Arduino/tree/ide-1.5.x/libraries/Bridge

Bridge.py:

• https://github.com/arduino/YunBridge

Linino:

• https://github.com/arduino/linino

• https://github.com/arduino/YunWebUI

• http://linino.org/

Page 22: Když Arduino potkalo Linux

while (audience.questionAvailable()) {

answer();

}

goto bastlirna;

Adam Hořčica

mailto: [email protected] twitter: @horcicaa http://macgyver.sh.cvut.cz/

Page 23: Když Arduino potkalo Linux