ULN2803A regroupe sur un même circuit intégré 7 transistors Darlington, ce qui permet d’alimenter un moteur avec un courant beaucoup plus intense que ce que peut tolérer un microcontrôleur comme l’@rduino.
Commençons par une mise au point importante: l’ULN2003 fonctionne très bien pour des moteurs pas à pas unipolaires (ceux qui sont munis de 5 ou 6 fils), mais il n’est pas du tout conçu pour piloter des moteurs pas à pas bipolaires (ceux qui ne comportent que 4 fils). Pour un moteur bipolaire, il faudra utiliser un autre circuit intégré, comme par exemple le L293D ou le L297. Si j’avais su ça avant, je n’aurais pas perdu quelques heures à tenter sans succès de faire tourner un moteur bipolaire avec ce module!
Quatre connecteurs situés du côté gauche de la carte permettent de brancher les sorties numériques de l’@rduino. Si vous désirez utiliser les exemples fournis avec l’environnement de programmation @rduino, vous branchez la sortie 8 de l’@rduino à l’entrée “IN1”, la sortie 9 à “IN2, la sortie 10 à “IN3”, et la sortie 11 à “IN4”.
Les connecteurs situés dans le bas de la carte, juste en dessous de l’ULN2003 servent à brancher la source de tension qui alimentera le moteur: pas question d’utiliser la sortie 5 volts de l’@rduino car le moteur risquerait de demander beaucoup trop de courant! On suggère ici de 5 à 12 volts, même si l’ULN2803 peut en principe tolérer jusqu’à 30 V (en dépassant 12 V, je suppose qu’on risquerait de griller les LEDs indicatrices présentes sur la carte).
Il ne reste plus qu’à brancher le moteur, ce qui n’est pas tout à fait évident si votre moteur provient d’une vieille imprimante et que vous ne disposez d’aucune documentation à son sujet. Au moyen d’un multimètre, vous pourrez probablement identifier le fil qui est commun aux deux bobines: c’est celui qui présente la plus faible résistance électrique par rapport aux autres fils.