Programmer l’Arduino avec python (ICN)

L’objectif est de piloter une carte arduino, à partir d’un programme en python s’exécutant dans l’ordinateur.
La carte arduino est programmée de manière à dialoguer avec une librairie python:

  • dans la carte arduino, le programme arduinoPy.ino est préalablement installé. Si ce n’est pas le cas, il s’installe simplement avec l’IDE «Arduino»
  • dans votre répertoire de travail, vous disposez de la librairie pyduino.py

Carte d'extensionPlan de la carte

Librairie python

pyduino.py

Ce fichier est à copier dans le même dossier que votre programme.
Vous ne devez pas le modifier, sauf si vous modifiez également le fichier « arduinoPy.ino » fourni plus bas.

Utilisation de la librairie

Exemple

from pyduino import *
import time

a = Arduino('/dev/ttyACM1')
time.sleep(3)
pos = 100
for i in range(0,1000):
   if i%2 == 0:    
        a.S0(1)
        a.S1(0)
   else:
        a.S0(0)
        a.S1(1)
   if i%3 == 0:
        a.S2(1)
        a.S3(0)
   else:
        pos = 100 - pos
        a.M2(pos)
        a.S2(0)
        a.S3(1)
   v  = a.E0() + 2*a.E1()
   print(' '+ repr(v) + '; A1 = ' + repr(a.A(1)) + '; A6 = '
            + repr(a.A(6)))
   a.M1(60*v)
   a.M0(60*v)
   time.sleep(0.1)

TP de mise en œuvre de la carte d’extension avec python

Firmware Arduino

arduinoPy.ino

Pour être pris en compte par le logiciel arduino, ce fichier est à placer dans un dossier arduinoPy.