« Xbee, trottinette et Pure Data » : différence entre les versions

De fablabo
Aller à :navigation, rechercher
Guillaume (discussion | contributions)
Guillaume (discussion | contributions)
 
(33 versions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
{{Projet
{{Projet
<!--Header-->
|status=Experimental
|name = Xbee, trottinette et Pure Data
|image=Xbee-trotinette.JPG
|status =experimental
|description=contrôle de moteurs sans fil avec pure data
<!--Image-->
|license=GPL
|image=
|contributeurs=Guillaume
<!--General-->
|ingrédients=électronique, feraille, bois
|description = contrôle de moteurs sans fil avec pure data
|name=Xbee, trottinette et Pure Data
|license = GPL
|contributeurs = [[contributeur::Guillaume]]
|matériaux = [[materiau::électronique]], [[materiau::feraille]], [[materiau::bois]]
}}
}}
<p style="font-family: Times, serif; font-size:24pt; font-style:italic; font-variant: normal">pour le moment c'est pas très clair, juste des prises de notes<br />


réalisation en cours...


 
=Le Projet=
pour le moment c'est pas très clair, juste des prises de notes
 
 
 
 
==='''le projet'''===


déplacer des décors pour une vidéo ethno-fictionnesque et géometrique...
déplacer des décors pour une vidéo ethno-fictionnesque et géometrique...


====le contexte====
==le contexte==


résidence R & D au PAD à angers avec marie Lancelin et 8,7  
résidence R & D au PAD à angers avec marie Lancelin et 8,7  




==='''la première étape'''===
=la première étape=


déplacer un cube en bois ou n'importe quoi de façon linéaire (avant - arrière), sur une distance précise à une vitesse précise, dans un espace donné... pour se faire mapper de la vidéo,le tout sans fil...
déplacer un cube en bois ou n'importe quoi de façon linéaire (avant - arrière), sur une distance précise à une vitesse précise, dans un espace donné... pour se faire mapper de la vidéo,le tout sans fil...
Ligne 34 : Ligne 27 :




====matériel====
==matériel==


*2 xbee serie 1 avec antennes (portée entre 30 et 100m)
*2 xbee serie 1 avec antennes (portée entre 30 et 100m)
Ligne 40 : Ligne 33 :
*un support xbee en USB
*un support xbee en USB
*une trottinette électrique d'occaz
*une trottinette électrique d'occaz
*driver LLMD182000T
*driver LMD18200T


 
==budget==
=====budget=====
_xbee x2 : 44<br />
_xbee x2 : 44<br />
_ardui-nano : 22<br />
_ardui-nano : 22<br />
Ligne 56 : Ligne 48 :
-trottinette : moyen abordable d'avoir moteur CC, roue, transmission par courroie le tout sur batterie 24V, pour environ 60 dollars européens d'occaz et qui fonctionne basiquement.
-trottinette : moyen abordable d'avoir moteur CC, roue, transmission par courroie le tout sur batterie 24V, pour environ 60 dollars européens d'occaz et qui fonctionne basiquement.


====Configuration xbee====
==Configuration xbee point à point==


=====Communication point à point=====


*Pour le moment n'ayant que deux xbee, la configuration est assez simple
*Pour le moment n'ayant que deux modules, la configuration est assez simple.


La communication via port série doit être configurée avec des paramètres compatible entre arduino, pure data et xbee, <br />
La communication via port série doit être configurée avec des paramètres compatible entre arduino, pure data et xbee, <br />
-même baud rate
soit le même baud rate si lon garde les réglages d'usine
 
===Commandes pour configuration avec arduino===


=====Config des xbee mobiles=====
ici, les options de configurations en réceptions ou émissions pour le raccord a un arduino par exemple, via RX/TX...


  ATRE, IDAAAA, MY1, DL0, D02, D12, D22, IR50, IT1, BD7, WR\r
  ATRE, IDAAAA, MY1, DL0, D02, D12, D22, IR50, IT1, BD7, WR\r
Ligne 77 : Ligne 70 :
*D02 à D22 : activation des pin d'entrée
*D02 à D22 : activation des pin d'entrée
*IR50 : taux de raffraichissement 80ms (50 en hex)
*IR50 : taux de raffraichissement 80ms (50 en hex)
*IT1 : nb de sample par pacquet soit ici 1
*IT1 : nb de samples par paquets soit ici 1
*BD7 : baud rate de 115200 (le 7 quoi...) entre 0 et 7 (standard baud rates par défaut 3)
*BD7 : entre 0 et 7 (standard baud rates par défaut 3)
  0 = 1200 bps; 1 = 2400; 2 = 4800; 3 = 9600; 4 = 19200; 5 = 38400; 6 = 57600;  7 = 115200
  0 = 1200 bps; 1 = 2400; 2 = 4800; 3 = 9600; 4 = 19200; 5 = 38400; 6 = 57600;  7 = 115200


Ligne 89 : Ligne 82 :
  ATID, MY, DL, D0; D1, D2, IR, IT, BD\r
  ATID, MY, DL, D0; D1, D2, IR, IT, BD\r


=====config du xbee base=====
===Commandes pour configuration autonome===
 
Les modules RF permettent aussi de recevoir et/ou émettre des signaux analogiques ou numériques grâces a des convertisseurs analogiques/digitales.
 
*pin DIO0 a DIO4 (entrées/sorties digital/analogiques)
commande ATD0 a 4 puis
  0 = Disabled
  1 = (n/a) 
  2 = ADC ''Analog-to-digital converter''
  3 = DI ''Digital Input''
  4 = DO low  ''Digital Output''
  5 = DO high ''Digital Output''
 
 
par defaut 0
 
AD0/DIO0 (pin 20), AD1/DIO1 (pin 19), AD2/DIO2 (pin 18), AD3/DIO3 (pin 17), AD4/DIO4 (pin 11).
Les pin DIO5 a DIO7 ont un fonctionnement particulier (voir manuel)...
 
 
*pin P0 et P1 (PWM0 et PWM1 comme leurs nom l'indique)
 
commande ATP0 ou ATP1
  0 = Disabled
  1 = RSSI
  2 = PWM Output
 
 
par defaut : PWM0 = 1, PWM1 = 0 <br />
PWM0 (pin 6), PWM1 (pin 7)
 
commande ATM0 ou ATM1 (contrôle du taux de PWM en hexadécimal...)
M0 = 0 (0% PWM), 0x01FF (50% PWM), 0x03FF (100% PWM), etc.
 
pour appliquer la modification CN (Exit Command Mode) ou AC (Apply Changes)
 
Configuration Example
As an example for a simple A/D link, a pair of RF modules could be set as follows:
Remote Configuration
DL = 0x1234
MY = 0x5678
D0 = 2
D1 = 2
IR = 0x14
IT = 5
Base Configuration
DL = 0x5678
MY = 0x1234
P0 = 2
P1 = 2
IU = 1
IA = 0x5678 (or 0xFFFF)
These settings configure the remote module to sample AD0 and AD1 once each every 20 ms. It
then buffers 5 samples each before sending them back to the base module. The base should then
receive a 32-Byte transmission (20 Bytes data and 12 Bytes framing) every 100 ms.
 
 
===Informations===
 
VR : ''Firmware Version'' nous donne la version du microprogramme <br />
HV : ''Hardware version'' nous donne la version du module<br />
DB : nous donne la force du signal reçus en hexadécimal bien sûr (0x58 = -88 dBm)<br />
SC : nous donne la liste des cannaux <br />
 
 
===config du xbee===
 
 
===Les programmes de configurations===
 
*'''moltosenso Network Manager'''
Après quelques déboires avec X-CTU sous wine, il apparaît plus simple d'utiliser "moltosenso Network Manager Iron" gratuit mais prorio mais efficace et simple a mettre en route.
 
*Changer le répertoire de recherche des ports dans l'onglet Settings/Define ports path(s)
/dev/ttyUSB*;
 
*changer le baud rate a 57600 pour accorder l'ATMEGA avec le standard Firmata et Pure Data
 
*régler "Flow Control" à "None"
 
*puis cliquer sur "SCAN" et sur "OPEN PORT"
 
*cliquer sur "XBEE PRO blabla" qui apparait dans "Detected Device"
 
*cliqueter sur l'onglet "Node Settings" puis sur l'adresse du module et faire "Get All"
 
*modifier les paramètres et valider par "Set" puis "Write Permanently" sinon les paramètres ne seront pas enregistrés
 
 
*'''minicom''', terminal port série pour linux
 
_Tout d'abord installer minicom (il se trouve dans les paquets...)
apt-get minicom
 
_puis configurer la communication série avec xbee (le -s pour acceder aux settings, le -c pour avoir un peu de couleur)
minicom -s -c on
 
_configurer le baud rate choisis, sinon pas besoin de toucher la config usine <br />
 
_sortir de la configuration
minicom -c on
 
activer l'option "local Echo on/off" après avoir fait : "alt + A" puis "Z" puis "E" pour voir ce que l'on tape
 
active la communication pour 10s <br />
+++
 
si tout va bien xbee affichera OK <br />
 
+++OK
 
*'''Pure Data'''
 
grace au patch de [http://wiki.t-o-f.info/Arduino/Xbee#toc16 tof] que j'ai un peu modifier ici
 
 
 
===Les paramètres===
 
Module Base (relié par USB)
ID = 3332
DL = 0x5678 
MY = 0x1234
BD = 6
 
Modules Distants
ID = 3332
DL = 0x1234
MY = 0x5678
BD = 6


ATRE, IDAAAA, MY0, BD 7, WR\r


penser à changer le baud rate de terminal serie <br />
penser à changer le baud rate de terminal serie <br />




pour toutes les commandes cf p.24 du manuel
pour toutes les autres commandes cf p.24 du manuel


====Config via pd====
==Config via pd==


cf patch  
cf [[:File:xbee_blabla.pd | patch ]]
ATBD6 => 57600 bps that's it !!!


*cablage,connexions
*cablage connexions
  Arduino / Xbee
  Arduino / Xbee
  TX  /  Din
  TX  /  Din
  RX  /  Dout
  RX  /  Dout


====Driver Moteurs====
==Driver Moteurs==


*grillage d'un L298 trop de charge...
*grillage d'un L298 trop de charge...


*test du driver moteur LLMD182000T
*test du driver moteur LMD182000T


pont en H et tout ce qui faut d'intégrer pour faire tourner un moteur jusqu'à 3A et 6A en pointe <br />
pont en H et tout ce qui faut d'intégrer pour faire tourner un moteur jusqu'à 3A et 6A en pointe <br />
Ligne 122 : Ligne 245 :




====control moteur via xbee et pd====
==control moteur via xbee et pd==


voici patch qui réagis au cliqueti, au traque pade et à la space barre... <br />
voici un [[:File:transporteur.zip | patch]] qui réagis au cliqueti, au traque pade et à la space barre... <br />
pas super pratique mais ça marche au doigt et à l'oeil...
pas super pratique mais ça marche au doigt et à l'oeil...


===Retro-Future===
=Retro-Future=


====problèmes a résoudre====
==problèmes à résoudre==


*moteur à du mal a partir sauf a fond sinon pas assez de couple
*moteur à du mal a partir sauf a fond sinon pas assez de couple
Ligne 136 : Ligne 259 :




====a voir/tester====
==a voir/tester==


*intégrer une roue codeuse ou autre truc dans le genre pour gérer la distance parcourue, pas besoin d'une précision au milimètre
*intégrer une roue codeuse ou autre truc dans le genre pour gérer la distance parcourue, pas besoin d'une précision au milimètre