ARDUINO
WI-FI Shield
ultimo aggiornamento 30 marzo 2012


JLCPCB - 2$ per prototipi di PCB, di qualsiasi colore. Produzione in 24 ore!
L'Azienda di prototipi PCB più popolare, con oltre 700.000 clienti in tutto il mondo!
Recati presso la JLCPCB, riceverai regali e coupon gratuiti
presso Maker Faire Rome il 18-20 ottobre


Il WI-FI shield per Arduino qui presentato è prodotta dalla Futura Elettronica permette di accedere a una rete TCP/IP e ad Internet, ma non attraverso livelli hardware di tipo ethernet, bensì tramite connessioni wireless.
La comodità di questa tecnologia permette di non avere cavi da stendere e la piena libertà nel posizionamento dei diversi nodi delta rete wireless. Questa scheda prende spunto dalla scheda prodotta dalla AsyncLabs, che è una delle prime aziende a concentrarsi sulla tecnologia Wi-Fi.  Con esse ha piena compatibilità hardware sia con l'ether-net shield, sia con gli shield Wi-Fi.
Sullo shield è previsto inoltre uno slot per inserire memorie di tipo microSD.
Le dimensioni e la forma dello shield sono compatibili con le schede Arduino Duemilanove, e Arduino UNO
Per la comunicazione con il  controllore host principale (il processore Arduino) viene utilizzata la connessione SPI (velocità massima di 25 MHz); sono supportate sia le reti wireless del tipo infrastrutturato (BSS) che ad hoc (IBSS) ed a permesso il collegamento anche a reti sicure (sono supportate le crittografie WEP a 64 e a 128 bit, nonché WPA/ WPA2 TKIP, AES e PSK).
In riferimento allo schema elettrico, possiamo vedere che il modulo Microchip MRF24WB0MA (integrato U1) è collegato al bus SPI (Serial Peripheral Interface) tramite le linee SDO (Serial Data Output ), SCK (Serial Clock)e SDI (Serial Data Input), pin 32, 34 e 35, e che, in caso di necessità, può essere resettato tramite un pulsante (P1 nello schema).
Nello schema è visibile anche visibile lo slot per montare lo sempre più utilizzate e diffuse memorie SD (Secure Digital) , siglato SD1 nello schema schema elettrico), gestito da Arduino sempre attraverso la porta SPI; ciò permette di estrarre i dati e trasportarli in altri sistemi.
E anche presente un LED (siglato LD1) utilizzato per indicare se la connessione Wi-Fi è attiva o meno; la relativa gestione è realizzata tramite una porta hardware, che pertanto normalmente non potrà essere utilizzata da software. Nel caso in cui fosse necessaria proprio questa porta, è comunque presente un ponticello (indicato con LED) che, una volta aperto, scollega il LED rendendo nuovamente disponibile il pin di 1/O.
Infine, a completare l'hardware dello shield c'è una sezione di alimentazione dedicata alla logica, composta da un regolatore di tensione a 3,3 V tipo TC1262-3.3 indicato con U2; quanto ai 5V, vengono prelevati direttamente dalla scheda Arduino.

Nota: La descrizione è tratta dall'articolo scritto da Alessandro e Alessio Giusto e pubblicato sul numero 160 della Rivista Elettronica IN


OurPCB, your most reliable PCB and PCBA supplier.

Focusing on PCB Prototype and PCB Assembly Turnkey Services.

One-Stop Wire Harness & Cable Assemblies Solution

Foto dello Shield senza connettori

Descrizione

Il componente base dello shield Wi-Fi è un modulo Wi-Fi siglato MRF24WB0MA e prodotto dalla Microchip.  Il dispositivo e un Wi-Fi RF transceiver certificato IEEE 802.11, ha un data-rate compreso tra 1 e 2 Mbps, dispone di antenna interna con elettronica di adattamento integrata e ha un indirizzo MAC, (in inglese MAC address, dove MAC sta per Media Access Control), detto anche indirizzo fisico, indirizzo ethernet o indirizzo LAN, è un codice di 48 bit (6 byte) assegnato in modo univoco dal produttore ad ogni scheda di rete ethernet prodotta al mondo, tuttavia modificabile a livello software.  Il modulo lavora nella banda di frequenze 2.400-2.484 GHz.

Schema Elettrico

Sigla

Descrizione

R1÷R4  

4,7 kΏ (0805)

R5, R8, R10

1 kΏ (0805)

R6

4,7 kohm (0805)

R7,R9, R11

2,2 kΏ(0805)

R12  

330 Ώ (0805)

C1,C2  

220 μF 6,3 VL elettrolitico (D)

C3,C4,C5  

100 nF multistrato (0805)

LD1

LED verde (0805)

U1

MRF24WB0MA/RM

U2

TC1262-3.3 (SOT-223)

SD1

Connettore μSD-Card(MICROSDSOCK2)

P1

Pulsante miniatura SMD

 

Strip maschio 2 poli + Jumper

 

Strip M/F 6 poli (2 pz.)

 

Strip M/F 8 poli (2 pz.)

 

Strip M/F 3 poli (2 pz.)

 

Circuito stampato

MRF24WB0MA/MRF24WB0MB 2.4 GHz, IEEE Std. 802.11b™ RF Transceiver Module

Piedinatura Datasheet Foto dell'integrato

Esempio utilizzo: WI-FI shield per Arduino


TC1262 - 500mA Fixed Output CMOS LDO


 
Piedinatura Datasheet Foto dell'integrato

Contenuto del blister

 Analisi software

Lo shield è compatibile con le librerie software WiShield fornite dalla AsyncLabs in grado di supportare varie modalità di funzionamento, quali APP_ WEBSERVER, APP_WEBCLIENT, APP_SOCKAPP, APP_UDPAPP e APP_WISERVER, corrispondenti rispettivamente a Web Server, Web Client, Socket, UDP e WiServer.
L’impostazione predefinita è APP_WEBSERVER, che funziona sulla maggior parte dei sistemi Arduino ma presenta diverse limitazioni, la principale delle quali è l’incapacità di funzionare simultaneamente sia come client che come server.
Una modalità alternativa sicuramente più interessante, maggiormente diffusa, utilizzata e consigliata, è la APP_WISERVER (libreria denominata “WiServer.h”) che permette ad un sistema Arduino equipaggiato con shield Wi-Fi di essere configurato e funzionare sia come Web Server sia come Web Client.
Nel primo caso sarà possibile servire richieste di connessione provenienti da web client esterni ed inviare delle pagine HTML in risposta; invece nel secondo ci si potrà collegare a un web server e,tramite la tecnologia request GET o POST, inviare richieste di esecuzione comandi e ricevere pagine HTML di risposta.
Per configurare la libreria WiShield scaricata come APP_WISERVER è necessario aprire il il <directory di arduino>\libraries\WiShield\apps-conf.h,
andare circa alla riga numero 39, commentare il “#define” di APP_WEBSERVER e rimuovere il commento al “#define” di APP_WISERVER.
La sezione di codice in esame deve risultare qualcosa come:
//#define APP_WEBSERVER
//#define APP_WEBCLIENT
//#define APP_SOCKAPP
//#define APP_UDPAPP
#define APP_WISERVER

 

Skatch e librerie
Su www.futurashop.it , direttamente nella scheda del prodotto (cod. WIFI_SHIELD), sono disponibili skatch d’esempio e librerie per l’utilizzo dello shield.

Pin

Symbol

Type

Description

1

GND

P

Massa

2

NC

NC

Non connesso

3

JTAGTDO

O

JTAG test data output

4

JTAGTCK

I: Constant(1)

JTAG clock input

5

JTAGTMS

I

JTAG mode input

6

JTAGTDI

I

JTAG test data input

7

RESET

I: Constant(1)

Module Reset input

8

NC

NC

Non connesso

9

RST

I

JTAG Reset input (optional; see Section 2.0)

10

GND

P

Massa

11

NC

NC

Non connesso

12

NC

NC

Non connesso

13

NC

NC

Non connesso

14

NC

NC

Non connesso

15

NC

NC

Non connesso

16

WP(2)

I

Write protect (this pin is used to enable FLASH update)

17

VDD

P

Power

18

GND

P

Massa

19

GND

P

Massa

20

HIBERNATE

I

Hibernate mode enable (high input will disable the module)

21

JTAGEN

I

JTAG test enable

22

NC

NC

Non connesso

23

CS

I

SPI Chip Select input

24

NC

NC

Non connesso

25

GND

P

Massa

26

DEBUGRX

I

Serial debug port input (see Section 2.0)

27

DEBUGTX

O

Serial debug port output (see Section 2.0)

28

GND

P

Massa

29

VDD

P

Power

30

GND

P

Massa

31

NC

NC

Non connesso

32

SDO

O

SPI data out

33

INT

O

Interrupt output (open drain – requires a pull-up)

34

SCK

I

SPI clock input

35

SDI

I

SPI data in

36

GND

P

Massa

Legenda:Pin type abbreviation: P = Power input, I = Input, O = Output, NC = Non connesso

 

Elenco revisioni
30/03/2012 Emissione preliminare