Arduino Wireless Shield

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche

Description

WirelessProtoShield.jpg

Le shield Wireless shield permet à un Arduino d'établir une communication sans fil en utilisant un module "Wireless". Il est basé sur les célèbres modules Xbee de Digi (également disponible chez MCHobby) mais peut également être utilisé avec d'autre module disposant d'une interface compatible.

Le module sais communiquer sur une distance de 30m en exterieur et jusqu'a une distance de 90m en intérieur (en ligne directe sans obstacle).

Le shield peut être utilisé comme remplacement de la connexion série/usb ou vous pouvez le placer en mode de commande pour configurer le module pour configurer les nombreuses options de diffusions (broadcast) de maillage réseau (Mesh).

Le shield permet un accès direct au brochage du module XBee par l'intermédiaire de points de contact (procédé communément appelée "breaks out" en anglais). Il dispose également d'un régulateur de tension et de toute l'électronique nécessaire pour un fonctionnement optimal du module XBee/ZigBee.

Pour ne pas perdre d'espace inutilement, la surface restée libre est garnie comme une plaque de prototypage standard (c'est le "+ proto"). Finalement, les différents broches d'Arduino sont montées en Stacking Header (pour ajouter un autre shield au dessus du Wireless Shield) et accessible via des pastilles de prototypage (pour un raccordement facile sur la zone de prototypage)

Le shield dispose d'un interrupteur permettant au module Wireless (sans-fil) de communiquer avec le module de conversion usb-serie d'Arduino ou directement avec le microcontroleur Arduino.

schémas

Fichiers EAGLE: arduino_WirelessShield_Proto_v3-reference-design.zip

Schemas: arduino_WirelessShield_Proto_v3-schematic.pdf

Interrupteur USB / Série

Les broches importantes

En préalable, voici une description de quelques broches importante des modules Wireless tels que XBee.

DOUT :
La broche DOUT du module wireless (XBee par exemple) signifie "Data Out" en anglais. Cela correspond à la sortie des données du module XBee.
Même si cela semble évident, cette sortie de donnée du module Wireless doit être raccordée sur une broches d'entrée de données afin de pouvoir lire les données envoyée par le module XBee. Un exemple concret sera la broche RX (Réception de donnée) de votre Arduino.

DIN :
La broche DIN du module wireless signifie "Data In" en anglais. Cela correspond à l'entrée des données sur le module XBee.
Cette broche doit donc être raccordée sur la sortie de donnée d'un autre composant. Un exemple typique est la broche TX (sortie de donnée) d'un Arduino.

Pour résumer :
XBee DOUT <--> Arduino RX
XBee DIN <--> Arduino TX

Position Micro

WirelessShield SD switchMicro detail.jpg

Quand l'interrupteur est en position Micro, la broche DOUT du module Wireless est connecté sur la broche RX du microcontroleur; et DIN est connectée sur la broche TX du micro-controleur. Le module wireless va communiquer directement avec le micro-controleur.

Notez que les broches RX et TX du microcontroleurs sont toujours connectectées respectivement sur les broches TX et RX du convertisseur USB-vers-série de la carte Arduino. Les données envoyés depuis le microcontroleur seront transmissent au module Wireless (XBee) mais également vers l'ordinateur pas l'intermédiaire de la connexion USB.

Dans ce mode, le microcontroleur ne peut pas être programmé par l'intermédiaire de le connexion USB.

Position USB

WirelessShield SD switchUSB detail.jpg

Avec l'intérrupteur en position USB, la broche DOUT du module Wireless est connectée sur la broche RX (réception) du convertisseur USB-vers-série de la carte Arduino; et la broche DIN du module Wireless est connecté sur la broche TX (transmission) du convertisseur USB-vers-série.

Cela signifie que le module (ex: module XBee) communique directement avec l'ordinateur par l'intermédiaire du convertisseur USB-vers-Série. Dans ce cas de figure, le microcontroleur de la carte est ignoré (bypassé). Pour utiliser le shield dans ce mode, vous devez d'abord programmer le microcontroleur avec un sketch vide (comme présenté ci-dessous) (ou retirer le microcontroleur de la carte).

void setup() { }
void loop() { }

Mise en réseau

Le Wireless Proto shield peut être utilisé avec différent modules utilisant le même brochage que les modules XBee.
Les instructions Modules XBee 802.15.4 ci-dessous (parfois aussi appelés "Serie 1" pour les distingués des modules Série 2, même si "Série 1" n'est pas ne nom officiel utilisé par Digi pour identifier cette gamme de produit) et la documentation XBee ZNet 2.5 ou Modules XBee ZB, tout deux connus comme des modules "Series 2", explique comment utiliser ces gammes de produit.

Fondamentalement, tous les modules disposent des même types de paramètres de configuration, mais diffèrent par la "fonction" qu'ils mettent en oeuvre et la topologie réseau qu'ils permettent de mettre en oeuvre (voir ce document de Digi International).

Seuls les modules d'une même famille peuvent communiquer ensemble.

Adressage

Avec l'utilisation des paramètres par défaut, tous les modules doivent être capables de communiquer ensembles.
Cela signifie que si vous prenez deux modules identiques, par défaut, ces derniers établiront automatiquement une communication sans fil et seront capables de dialoguer ensemble sans devoir modifier/configurer les paramètres XBee.

Au delà de deux modules ou pour l'établissement de plusieurs "réseaux"/connexions sans fil, il faudra passer par une étape de configuration.
Il y a plusieurs paramètres qui doivent être configurés correctement pour que deux modules puissent dialoguer ensemble au travers d'un connexion sans fils.

  1. Ils doivent être sur le même réseau, identifié par le paramètre ID (voir la section "Configuration" ci-dessous pour plus de détail).
  2. Les modules doivent être sur le même canal ("Channel" en Anglais), tel que configuré par le paramètre CH.
  3. Pour finir, l'adresse de destination du module détermine quel module et quel canal sur réseau recevra l'information qui sera transmise.
    L'adresse de destination est configurée via les deux paramètres DH et DL.

Les paramètres DH et DL de l'adresse de destination (voir ci-dessus) peuvent être configurés de façon multiple:

  • SI le DH d'un module est 0 et son DL < 0xFFFF (ex: 16 bits) ALORS les données émises par ce module seront reçues par tous les modules ayant une adresse 16 bits MY égale à la valeur de DL.
  • SI DH d'un module est 0 et son DL = 0xFFFF, ALORS les données émises par le module seront reçues par tous les modules.
  • SI DH est différent de 0 or DL > 0xFFFF, ALORS les données émises ne seront reçue que par le module ayant un numéro de série égal à l'adresse de destination mentionné par DH et DL (ex: celui ayant SH égal au DH du module émetteur et ayant son SL égal au DL du module émetteur).

Encore une fois, cette correspondance d'adresse n'arrivera qu'entre des modules partageant le même réseau et le même canal. Si deux modules sont sur des réseaux (ou des canaux) différents, ils ne pourront pas communiquer ensemble... qu'importe l'adresse.

Pour les modules de "Série 2", vous devez choisir quel firmware il faut installer sur le module afin de lui donner la fonctionnalité de Coordintateur (coordinator), Routeur (Router) ou de module terminal (End Device). La Serie 2 utilise uniquement SL (serial low) et SH (serial high) pour l'adressage.

Configuration

Here are some of the more useful parameters for configuring your Xbee module. For step-by-step instructions on reading and writing them using AT commands, see the:

Make sure to prepend AT to the parameter name when sending a command to the module (e.g. to read the ID parameter, you should send the command ATID).

Command Description Valeurs valides Valeur par défaut
ID The network ID of the XBee module. 0 - 0xFFFF 3332
CH The channel of the XBee module. 0x0B - 0x1A 0X0C
SH and SL The serial number of the XBee module (SH gives the high 32 bits, SL the low 32 bits).Read-only. 0 - 0xFFFFFFFF (for both SH and SL) different for each module
MY The 16-bit address of the module. 0 - 0xFFFF 0
DH and DL The destination address for wireless communication (DH is the high 32 bits, DL the low 32). 0 - 0xFFFFFFFF (for both DH and DL) 0 (for both DH and DL)
BD The baud rate used for serial communication with the Arduino board or computer. 0 (1200 bps)
1 (2400 bps)
2 (4800 bps)
3 (9600 bps)
4 (19200 bps)
5 (38400 bps)
6 (57600 bps)
7 (115200 bps)
3 (9600 baud)

Note: although the valid and default values in the table above are written with a prefix of "0x" (to indicate that they are hexadecimal numbers), the module will not include the "0x" when reporting the value of a parameter, and you should omit it when setting values.

Here are a couple more useful commands for configuring the XBee module (you'll need to prepend AT to these too).

Command Description
RE Restore factory default settings (note that like parameter changes, this is not permanent unless followed by the WR command).
WR Write newly configured parameter values to non-volatile (long-term) storage. Otherwise, they will only last until the module loses power.
CN Exit command mode now. (If you don't send any commands to the module for a few seconds, command mode will timeout and exit even without a CN command.)

For more details on configuring the XBee module, see the 802.15.4 modules product manual or the ZB modules product manual from Digi International.

Où Acheter

Le [Wireless Proto Shield] est disponible chez MCHobby.
MCHobby dispose également d'une gamme XBee.

source: Arduino.cc

Source de cet article (tout ou en partie) issue de Arduino.CC, voir article d'origine pour licence applicable (habituellement Creative Commons Attribution-ShareAlike 3.0). Crédit arduino.cc dont MCHobby est distributeur officiel des produits.

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.