arduino yÚn -...

25
ARDUINO YÚN

Upload: duonghuong

Post on 15-Feb-2019

231 views

Category:

Documents


0 download

TRANSCRIPT

ARDUINO YÚN

Caratteristiche HW

AVR Arduino Microcontroller ATmega32u4 Operating Voltage 5V Input Voltage 5V Digital I/O Pins 20 PWM Channels 7 Analog Input Channels 12 DC Current per I/O Pin 40 mA DC Current for 3.3V Pin 50 mA Flash Memory 32 KB (4 KB usati per il bootloader) SRAM 2.5 KB EEPROM 1 KB Clock Speed 16 MHz

Caratteristiche HW

Linux machine Processor Atheros AR9331 Architecture MIPS @400MHz Operating Voltage 3.3V Ethernet IEEE 802.3 10/100Mbit/s WiFi IEEE 802.11b/g/n USB Type-A 2.0 Host Card Reader Micro-SD only RAM 64 MB DDR2 Flash Memory 16 MB PoE compatible 802.3af card support (see the note below)

Arduino Yún

Arduino Yún è una scheda di prototipazione, della famiglia Arduino, caratterizzata dalla presenza di due chip di controllo: 1.  Un microcontrollore Atmel ATmega32U4, presente

anche nella scheda denominata Arduino Leonardo 2.  Un processore Atheros AR9331 che permette di

far girare una distribuzione Linux per sistemi embedded (OpenWrt-Yun) basata su OpenWrt.

Arduino Yún

La scheda prevede uno slot per Micro SD, un jack Ethernet ed un connettore di tipo USB-A Host. L’Arduino Yún è anche dotato di un modulo WiFi integrato per la connessione ad un router wireless, o per agire come access point. La scheda può essere alimentata solamente attraverso il connettore micro-USB o il pin Vin, inoltre, non include un regolatore di tensione a 5V: alimentando la scheda con più di 5V (ad es. attraverso il pin Vin) si rischia di danneggiarla.

Arduino Yún

Architettura

Indicatori di stato

Reset

3 diversi tasti di reset per: •  32U4 •  WiFi •  Linino

(AR9331)

Reset

¨  Per riavviare il chip 32U4 e quindi lo sketch installato servono 2 click sul tasto “32U4 RST”

¨  Per il WiFi (tasto “WLAN RST”), ci sono 3 diverse opzioni di reset: ¤ < 5s : Riavvio WiFi ¤ > 5s e < 30s : Riconfigurazione WiFi ¤ > 30s : Reset dell’OpenWrt-Yun allo stato iniziale

cancellando anche tutti i file installati e le configurazioni di rete.

¨  Con il tasto “YÚN RST” si riavvia il chip AR9331 e quindi l’OpenWrt-Yun

Configurazione rete via cavo

Quando si collega attraverso il cavo Ethernet un Arduino Yún ad una rete o ad un PC, l’Arduino tenterà la connessione automatica con DHCP. È comunque possibile impostare manualmente indirizzi IP statici per l’Arduino Yún.

Configurazione rete via cavo

I passi per l’impostazione manuale della configurazione di rete sono: 1.  Connettere Arduino Yún e PC:

a.  L’Arduino Yún al PC attraverso il cavo USB b.  L’Arduino Yún alla rete attraverso il cavo Ethernet

2.  Accedere alla console Linux: a.  Dall’IDE di Arduino (versione > 1.5.4) caricare lo sketch

File->Examples->Bridge->YunSerialTerminal

b.  Avviare il monitor seriale con parametri NewLine e 57600c.  Premere il tasto “Invio” dal PC

Configurazione rete via cavo

A questo punto è possibile leggere/impostare la configurazione di rete attraverso i comandi ifconfig e route. Es. 1) Lettura degli indirizzi IP delle interfacce di rete:

Digitare il comando: ifconfig L’indirizzo IP per ogni interfaccia di rete, se disponibile, sarà contenuto nel campo inet addr Es. inet addr:192.168.1.145

Configurazione rete via cavo

Es. 2) Impostare l’indirizzo IP dell’interfaccia di rete eth1:

Digitare il comando:

ifconfig eth1 192.168.1.140 o per specificare anche la netmask, il comando: ifconfig eth1 192.168.1.140 netmask 255.255.255.0

Configurazione rete via cavo

Es. 3) Impostare il gateway dell’interfaccia di rete eth1: Digitare il comando:

route add default gw 192.168.1.1 metric 10 eth1

Configurazione Wi-Fi

1.  Connettere Arduino Yún e PC: a.  L’Arduino Yún al PC attraverso il cavo USB b.  Il PC all’Arduino Yún attraverso la rete Arduino Yún –

XXXXXXXXXXXX 2.  Accedere alla pagina di configurazione:

a.  con il browser visitare l’indirizzo http://arduino.local o l’indirizzo IP di default (192.168.240.1) o, l’indirizzo IP per l’interfaccia wireless letto attraverso la procedura di configurazione spiegata in precedenza per le connessioni via cavo.

Configurazione Wi-Fi

La password per accedere al pannello di configurazione è arduino. Dall’interfaccia grafica: ¨  Modificare il campo “YÚN NAME” in modo da differenziare

l’Arduino Yún in possesso dagli altri ¨  Specificare le impostazioni per l’accesso alla rete wireless

di interesse (es. LabArchitetture con pwd: aa2014_15) ¨  Settare il campo “REST API ACCESS” su OPEN ¨  Fare click su “Configure and Restart”

Accesso SSH

Una volta effettuata la connessione con Arduino Yún è possibile effettuare accesso SSH sulla scheda attraverso il comando: ssh root@IP_Arduino_Yún

oppure ssh root@Arduino_Yún_name.local

Password di default

WiFi ESSID: LabArchitetture PWD: aa2015_16 Arduino Yún

PWD: arduino

Libreria Bridge

La libreria Bridge ha lo scopo di semplificare la comunicazione (bidirezionale) tra il microcontrollore ATmega32U4 e l’AR9331. La libreria permette l’utilizzo dell’hardware collegato all’AR9331 (Interfaccia di rete wireless, ethernet e microSD) altrimenti non accessibile dal microcontrollore con bootloader Arduino.

Libreria Bridge - Classi

Bridge La classe Bridge permette di avviare l’interazione tra microcontrollore e Linux machine e offre metodi per la scrittura/lettura di dati in una struttura di tipo chiave/valore (mantenuta nella memoria RAM della Linux machine). Process La classe Process viene utilizzata per lanciare processi sulla Linux machine e prelevarne i risultati.

Libreria Bridge - Classi

Console Console serve per la communicazione con il network monitor nell'IDE di Arduino. Le sue funzionalità son molto simili a quelle della classe Serial. FileIO Rappresenta un'interfaccia al file system della Linux machine. Questa classe viene utilizzata per la lettura/scrittura di file sulla SD Card.

Libreria Bridge - Classi

HttpClient Crea un client HTTP nella Linux machine. Questa classe è un wrapper per i più comuni comandi cURL. Mailbox

Rappresenta un'interfaccia asincrona e senza sessione per la comunicazione tra il microcontrollore con bootloader Arduino e la Linux Machine

Libreria Bridge - Classi

YunClient Implementa un client HTTP. Questa classe prende spunto dalla classe EthernetClient utilizzata in altre versioni di Arduino. YunServer Implementa un server HTTP. Questa classe prende spunto dalla classe EthernetServer utilizzata in altre versioni di Arduino.

Riferimenti

¨  http://www.arduino.cc/en/Main/ArduinoBoardYun ¨  http://www.arduino.cc/en/Guide/ArduinoYun ¨  http://www.arduino.cc/en/Reference/

YunBridgeLibrary