Configuration entrées optocouplées

Fichier /etc/rc.local Editer le fichier avec la commande (ajouter en fin de fichier AVANT exit 0

sudo nano /etc/rc.local
#INPUTS
echo "24" > /sys/class/gpio/export &
sleep 2
echo in > /sys/class/gpio/gpio24/direction
echo "25" > /sys/class/gpio/export &
sleep 2
echo in > /sys/class/gpio/gpio25/direction
echo "26" > /sys/class/gpio/export &
sleep 2
echo in > /sys/class/gpio/gpio26/direction
echo "27" > /sys/class/gpio/export &
sleep 2
echo in > /sys/class/gpio/gpio27/direction

Essais des entrées optocouplées

<note important> :!: Pour la SVXCard version 1.0 (2015) : Le masse en entrée de l'optocoupleur est indépendante de la masse de la platine. Vous devez donc alimenter vos entrées à l'extérieure de la platine. Il vous faudra alors IMPERATIVEMENT brancher votre entrée sur la broche qui n'est pas au potentiel de +5V (carte).


Une seconde possibilité est d'utiliser le +5V distribué pour alimenter le contact externe. Dans ce cas, il vous faudra raccorder la pin 9 ou 10 du connecteurs J26 (sérigraphie OPTO INPUTS) au plan de masse. Dans ce cas, l'optocouplage n'est plus assurée puisque l'alimentation est fourni par la carte. </note>

Le code python suivant vous permet de vérifier les états de chacune des 4 entrées.

sudo nano test-input.py
| test-inputs.py
#!/usr/bin/python
import time
from RPi import GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(18, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(22, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(37, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.setup(13, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
 
while True:
    inputval1 = GPIO.input(18)
    inputval2 = GPIO.input(22)
    inputval3 = GPIO.input(37)
    inputval4 = GPIO.input(13)
    print "INPUT1="+str(inputval1) +  ",INPUT2="+str(inputval2) + ",INPUT3="+str(inputval3) +   ",INPUT4="+str(inputval4)
 
    time.sleep(1)

Les essais se lancent avec la commande

sudo python test-input.py

Voici le résultat des essais pour les voies de 1 à 4.

Pour sortie du programme : CTRL-C