Étape 4: Contrôler la vitesse du moteur et turn on/off a LED (en option)
Une fois que nous allons utiliser un pont en H, le L293-D pour la commande de moteur, nous devons décider si, en plus de la direction, nous souhaitons également contrôle direction.
Ici deux possibilités :
- Vitesse fixe : connexion de pont en H activer broches (1 et 9) à + 5V (pleine vitesse) ou toute autre valeur proportionnelle à l’aide d’un diviseur de tension avec 2 résistances
- Activez les broches 1 et 9 connecté à Raspberry Pi GPIO.18
Habituellement, vous pouvez maintenir la vitesse constante, mais nous allons explorer comment le contrôler. Pour cela, un signal PWM doit être utilisé. Nous allons créer un groupe de scripts, tout comme nous l’avons fait avec les "directions" (les valeurs doivent être testés pour votre moteur spécifique) :
sudo nano nospeed.cgi
#! / bin/bash
GPIO pwm 1 0
.
sudo nano lowspeed.cgi
#! / bin/bash
GPIO pwm 1 250
.
sudo nano regularspeed.cgi
#! / bin/bash
GPIO pwm 1 512
.
sudo noano highspeed.cgi
#! / bin/bash
GPIO pwm 1 1023
.
Une fois les scripts créés vous devez accorder les autorisations pour être exécutée, même comme l’a fait avec forward.cgi
sudo chmod 755 nospeed.cgi
sudo chmod 755 lowspeed.cgi
sudo chmod 755 regularspeed.cgi
sudo chmod 755 highspeed.cgi
Maintenant, il est seulement exécuter des tests pour vérifier que tout fonctionne :
. / lowspeedcgi
./regularspeed.cgi
./HighSpeed.cgi
. / nospeedcgi
Dans mon cas, au stade, j’ai un voyant connecté à GPIO.18, que je puisse voir par l’intensité de son brillant, que la commande fonctionne.
Dernière, mais non des moindres, nous allons avoir un script supplémentaire pour contrôler une sortie numérique, afin de mettre en marche ou éteint un feu, par exemple. Nous allons utiliser le GPIO.10 pour cela :
sudo nano llighton.cgi
#! / bin/bash
GPIO -g écrire 10 1
.
sudo nano llightoff.cgi
#! / bin/bash
GPIO -g écrire 10 0
.
sudo chmod 755 lighton.cgi
sudo chmod 755 lightoff.cgi
Même comme avant si vous décidez d’utiliser ces GPIO supplémentaires, vous devez modifier le script/etc/rc.local :
sudo nano /etc/rc.local
…
mode de GPIO -g 5 out
GPIO mode de g - 6 out
mode de GPIO -g 13 out
mode de GPIO -g 19 out
mode de GPIO g - 10 out
GPIO mode 1 pwm
Exit 0
Il est bon d’avoir le gpio mode 1 pwm comme la ligne de la liste avant la sortie 0