- Contenu
- Les bibliothèques : où les trouver ?
- Communication Raspberry-Arduino avec bus I2C
- Communication Raspberry-Arduino ou Raspberry-Carte moteur MD25 avec bus Sériel
- Archives
Ce Wiki regorge de liens vers de la documentation et des tutoriels pour faire communiquer une Arduino et une Raspberry Pi.
Les bibliothèques : où les trouver ?¶
Pour l'Arduino : http://playground.arduino.cc/Main/LibraryList\#Comm
Les bibliothèques Arduino : la sélection d'e-gab (ce qui pourrait être intéressant pour le robot )
Pour la Raspberry Pi (Applications et bibliothèques) : http://playground.arduino.cc/Main/InterfacingWithSoftware
Les bibliothèques Raspberry Pi : la sélection d'e-gab
Autres liens¶
http://robotsbigdata.com/ Des biblios pour Arduino
http://www.raspberrypi-spy.co.uk/ Pleins de choses concernant la Raspberry Pi
Communication Raspberry-Arduino avec bus I2C¶
Nous (sbentz et tbenhnini) avons choisi le bus I2C pour faire communiquer Raspi et Arduino.
On a réussi à transférer des mesures (= des floats) et des ordres (= des int)...
...mais...
. les floats sont chiants à transférer
. les floats devaient être compris entre -100 et +100
. le floats reçu par la Raspi n'était pas égal au float envoyé par l'Arduino : si sa partie décimale était non nulle, il y avait une erreur relative de 10^-7
warning. Possible problème de tension entre la RasPi (3.3V) et l'arduino (5V) (Uno, Nano et Mega = 5V)
tip. Des solutions simples existent avec quelques résistances http://playground.arduino.cc/Main/I2CBi-directionalLevelShifter
Tutoriels¶
Raspberry-Pi - Arduino par l'intermédiaire d'un bus I2C Au S7, on (sbentz et tbenhnini) s'en est inspiré pour faire communiquer Arduino-Raspi et coder https://github.com/E-gab-ECM/Link\_Raspberry-Arduino
http://mchobby.be/wiki/index.php?title=ArduPi-I2C
Tuto de Julien Enselme ! : La communication série avec arduino (et Python)
http://www.jujens.eu/posts/2014/May/05/Communication-serie/
Raspberry Pi – Arduino – Lier les deux via le bus I2C
http://www.pihomeserver.fr/2013/08/13/raspberry-pi-home-server-arduino-lier-les-deux-via-bus-i2c/
Arduino Serial communication
http://www.oxgadgets.com/2011/07/arduino-serial-communication.html
Documentation¶
Arduino lit octet par octet, cf fonction read()
Arduino peut interpréter l'octet comme nombre (type int) ou string (type char)
Connecteurs I2C de l'Arduino : où sont-ils ?
Regarder la page de Wire Library (cf lien ci-dessous)
Regarder la page officielle de la carte (Uno pour l'exemple) : https://www.arduino.cc/en/Main/ArduinoBoardNano
Wire Library (I2C)
https://www.arduino.cc/en/Reference/Wire
Wikipedia I2C
wikipedia>I²C
Communication Raspberry-Arduino ou Raspberry-Carte moteur MD25 avec bus Sériel¶
warning. Toujours faire attention au 3.3V de la Raspi, ajoutez des résistances si nécessaire
tip. pour résoudre le problème, cf http://blog.oscarliang.net/raspberry-pi-and-arduino-connected-serial-gpio/
Raspberry Pi¶
Bibliothèque python : pySerial https://pypi.python.org/pypi/pyserial
Documentation de pySerial : http://pythonhosted.org/pyserial/
Tutos¶
Lecture/Ecriture sur le port série de la Raspi:
http://www.instructables.com/id/Read-and-write-from-serial-port-with-Raspberry-Pi/
Carte commande MD25 (utilisée pour l'asservissement des moteurs du grand robot)¶
Documentation:
http://www.robot-electronics.co.uk/htm/md25tech.htm
notice. Comme indiqué il y a les deux modes I2C ou Serial de disponible pour la carte commande. Au choix.. mais le mode série est beaucoup plus clair.
Arduino¶
Bibliothèque officielle Arduino¶
notice. Elle s'appelle SoftwareSerial. A l'époque (2013) elle était appelée NewSoftSerial.
Documentation
http://arduiniana.org/libraries/NewSoftSerial/
https://www.arduino.cc/en/Reference/Serial
A savoir
Le port Seriel (pins 0 et 1) est lié au port USB. Ce sont les mêmes. On ne peut pas connecter son PC par le port USB et la RasPi aux pins 0 et 1. Cependant, il semble qu'on peut tout de même téléverser ;) (cf le tuto)
L'Arduino Mega a 3 autres ports sériels : Seriel3 (pins 14 et 15), Seriel2 (16,17) et Seriel3 (18,19).
La biblio Arduino (SoftwareSerial) permet d'utiliser d'autres pins.
Tutos
http://codeandlife.com/2012/07/29/arduino-and-raspberry-pi-serial-communication/
Archives¶
Mis à jour par Sylvain Bentz il y a presque 9 ans · 89 révisions