Re: [OpenplacOS] Modules Xbee |
[ Thread Index | Date Index | More lists.tuxfamily.org/openplacos Archives ]
très intéressant, merci pour le report.quand tu parle de port série coté PC, tu a un module USB/Xbee ?
Le 4 décembre 2012 14:30, rom .. <lsdark73@xxxxxxxxx> a écrit :
Salut,
Ca fait un moment que je me dis qu'il faut que je vous fasse un retour sur les Xbee, alors c'est parti..
Je vous livre mes impressions générales un peu en vrac..
Donc voilà les Xbee sont des petits modules de communication sans fil qui offrent diverses possibilités.
On les trouve actuellement en 2 version, Séries 1 et Séries 2.
Je vais parler des series 1, qui sont de l'avis général plus simples à mettre en oeuvre.
On trouve ces modules à une vingtaine d'euros sur le net., ils ont une plus ou moins longue portée suivant la version et l'antenne. Pour un usage à la maison, le modèle de base suffit largement.
L'utilisation basique est de créer une liaison série (UART) sans fil. Il suffit juste de relier les RX et TX et ca roule tout seul. On peut avoir plusieurs noeuds sur le même port série.
Ca pause évidemment des problèmes pour savoir à qui on parle.
Chaque Xbee a une adresse de réseau (PANID), une adresse 16bits et une 64 bits.
Là ca devient intéressant car on peut choisir à qui on parle. En reprogrammant le xbee côté Pc, on peut parler uniquement à un noeud, toujours sur le même port série (/dev/ttyUSB0 par ex).
Le gros problème c'est qu'il faut passer le Xbee en mode AT par une séquence '+++' et passer une commande pour changer l'adresse destination "ATDH123456\r" et ça prend du temps.. En pratique utiliser un arduino passer à un autre sur un autre noeud et l'utiliser prend bien 5-6s ! D'où des latences énormes quand on change constamment de noeud pour lire une valeur, actionner une sortie..
Le firmware peut egalement être paramètré pour utiliser un mode API
dans ce mode il faut construire des frames qui seront adressées directement : gain de temps énorme. La diificulté vient alors de construire les frames avec entête, adressage, taille des données, et les données elle mêmes, à découper..
Il existe une lib côté arduino qui a l'air assez complète. Pour ruby, il y a une lib qui pemet d'utiliser le xbee en commandes AT (lent) et aussi le mode API, mais le dernier commit date, avec comme message "it works ! enfin, sometimes.."
Du coup mes tests se sont limités au mode AT, et c'est très lent..
Un autre point intéressant est que les modules xbee intègrent des pins d'E/S et qu'on peut donc les utiliser pour nos sensors/actuators directement sans besoin d'arduino. Là aussi le mode API est très avantageux, on peut paramétrer le xbee pour échantillonner à intervales réguliers et envoyer les données en frames API. Et d'autres possibilités encore..
Voilà du coup j'ai bloqué pas mal de temps à comprendre le fonctionnement, avancé, à faire communiquer des arduinos avec le pc..
Maintenant je vais essayer de faire un driver pour opos, je vais en discuter dans un autre fil.
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |