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

:!: 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.

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