
le Pi Co-op est une carte d’extension qui se branche directement sur l’en-tête GPIO et vous donne un accès immédiat à une puce de microcontrôleur Atmega328p. Essentiellement, cela vous donne un Arduino intégré! Il est également pré-soudé, ce qui signifie que vous n’avez pas besoin de savoir comment souder pour commencer.
Alan chez Dawn Robotics m’a envoyé un de ces tableaux par la poste et après quelques jours j’ai finalement trouvé le temps de l’utiliser. C’est un peu une critique décousue à cause de ce que j’utilise pour le tester, au fait.
Voici une liste des fonctionnalités:
- Microcontrôleur Atmega328p préprogrammé avec le chargeur de démarrage Arduino Uno.
- Convertisseur analogique-numérique (ADC) 10 bits 8 canaux.
- Peut être programmé directement à partir du Raspberry Pi à l’aide de l’IDE Arduino gratuit.
- UART à niveau décalé pour une communication rapide entre le Pi et Pi Co-op à un débit en bauds allant jusqu’à 115200bps.
- Broches Atmega328p divisées en en-têtes femelles pour un prototypage facile, il suffit de brancher des fils ou de se connecter à une maquette.
- La ligne d’alimentation incorpore le même type de fusible que celui utilisé sur le connecteur Pi MicroUSB (courant de maintien de 700 mA, courant de déclenchement de 1100 mA). Cela permet au Pi d’être alimenté en toute sécurité à partir d’une alimentation externe 5V connectée à la Pi Co-op.
- L’espacement standard de 2,54 mm entre tous les en-têtes permet de créer facilement des cartes d’extension à l’aide de bandes en cuivre.
Si vous ne comprenez aucune des parties suivantes de cette revue parce que vous n’êtes pas familier avec les Arduinos et les microcontrôleurs, il suffit de dire que c’est une excellente façon de démarrer avec des capteurs analogiques (c’est-à-dire non numériques).
Il est juste de dire que c’est le moyen le plus simple que j’ai trouvé d’utiliser un Arduino avec le Pi. Dawn Robotics vous donne un ensemble d’instructions pour vous mettre en route (ce qui implique l’installation d’un bon nombre de logiciels) et bientôt j’ai lancé le script d’exemple traditionnel ‘blink’. (Pour ceux d’entre vous qui ne savent pas ce que c’est – la plupart des Arduinos ont une LED intégrée connectée à la broche 13. Le script «clignotement» fait essentiellement clignoter la LED. C’est l’équivalent Arduino de «Hello World»). Je dois dire à ce stade que les instructions données sont simples, claires et qu’elles fonctionnent. Tout cela m’a pris environ 3/4 d’heure, dont la majeure partie a été passée à attendre l’installation du logiciel. Ceci est acceptable car une fois que vous avez installé Git et quelques bits et pièces Python, vous allez quand même contrôler l’Arduino à partir de Python sur le Pi. Une partie de l’installation du logiciel place quelque chose appelé Firmata sur la puce Arduino. Cela vous permet de communiquer avec la puce et de la contrôler via la ligne série.
La prochaine chose que j’ai faite a été de brancher un capteur analogique pour essayer d’obtenir des lectures. Pour cela, j’ai choisi un Capteur GSR (Galvanic Skin Response) que j’avais obtenu de Phenoptix. Le capteur GSR mesure la conductivité électrique de votre peau à partir de deux coussinets métalliques. Ils utilisent des capteurs GSR dans les détecteurs de mensonge, car lorsque vous transpirez, votre peau devient plus conductrice – il en va de même pour toute forte réponse émotionnelle. Ils sont également utilisés dans les études du sommeil pour enregistrer les états de rêve. En tous cas! Donc, après un peu de tripotage avec divers fils, j’ai branché les lignes 5V et Terre, puis j’ai branché la ligne de signal sur analogique 0. J’ai ensuite créé le script suivant sur le Pi:
import time
from PyMata.pymata import PyMata
# Sensor connected to analog pin 0
SENSOR=0
# Create an instance of PyMata.
SERIAL_PORT = "/dev/ttyS0"
firmata = PyMata( SERIAL_PORT, max_wait_time=5 )
# initialize the digital pin as an output.
firmata.set_pin_mode( SENSOR, firmata.INPUT, firmata.ANALOG )
time.sleep(1)
try:
# run in a loop over and over again forever:
while True:
reading = firmata.analog_read(SENSOR)
print (reading)
time.sleep( 0.05 ) # wait for a second
except KeyboardInterrupt:
# Catch exception raised by using Ctrl+C to quit
pass
# close the interface down cleanly
firmata.close()
Pour commencer, j’ai reçu des lectures au milieu des années 500, puis j’ai mis les capteurs de doigt et les lectures sont tombées au milieu des 400. Je l’ai essayé sur quelques personnes, avec des mains moites variables et des mains plus moites, plus la lecture était basse. J’ai également essayé de toucher les coussinets métalliques les uns aux autres et j’ai obtenu une lecture de zéro. J’en ai déduit que plus la réponse émotionnelle était élevée, et donc plus les mains étaient moites, plus la lecture était basse. Si vous l’utilisez comme détecteur de mensonge, vous devriez commencer par poser des questions de contrôle pour établir un niveau « normal », puis passer à des questions plus émotionnelles, ou des questions qui pourraient provoquer un mensonge! Vous devriez constater que les lectures diminuent pendant les mensonges.
Quoi qu’il en soit, revenons à la Pi Co-op. Il m’a fallu 30 minutes pour connecter le GSR et écrire le script – c’était vraiment aussi simple que de passer de l’exemple de clignotement à la lecture d’un capteur analogique.
Pour résumer. C’est un moyen très efficace et très simple d’ajouter des entrées, en particulier des entrées analogiques, à votre Pi. À moins de 20 £ livrés, c’est également moins cher que la plupart des alternatives disponibles. Il y a cependant quelques inconvénients dont je vais vous parler dans un souci d’équilibre. La coopérative ne vient pas avec lot de documentation, juste assez pour vous permettre de démarrer (et il bat certainement le Gertduino pour la facilité de lecture et de compréhension). Il existe des exemples de scripts inclus avec le code que vous téléchargez / installez, mais ils ne sont pas spécifiques à la coopérative, donc cela peut être un peu déroutant. La coopérative ne vient pas non plus avec un en-tête GPIO étendu, ce qui signifie que vous ne pouvez pas utiliser les broches GPIO pour autre chose. C’est vraiment dommage, car les seules broches utilisées sont les broches TX / RX. En incluant un en-tête GPIO étendu, cela aurait considérablement augmenté la convivialité. L’autre note négative est que les broches cassées ne correspondent pas au facteur de forme des blindages Arduino, mais là encore, il pourrait y avoir des problèmes de compatibilité avec cela et cela est compensé en rendant la coopération plus petite.
En termes de score, je vais devoir lui donner une note de 9/10 (il perd un point pour monopoliser le GPIO mais je ne peux pas me résoudre à ancrer un autre point pour la documentation car là est assez ici pour vous permettre de démarrer et je suis sûr que la communauté pourra vous fournir plus d’exemples au fil du temps.)
Vous pouvez acheter une coopérative pour 16,99 € (+ 2 € de livraison) chez Dawn Robotics.
Oh, voici une très bonne vidéo sur la coopérative!

-
OSEPP | Module de capteur à ultrasons | À partir de 5 ans | Fonctionne avec Arduino
-
Opatiny Lot de 2 sondes de pH haute sensibilité pour Arduino, compatibles avec Raspberry Pi, pour expérience et surveillance des données (noir)