GPIO di Potenza per RPi, A10, ARDUINO ecc

Per avere un GPIO in grado di pilotare carichi alimentati a 230Vac come lampade, motori o altro si può ricorrere a questo dispositivo:

 OPTO22 SOLID STATE RELE’ MODEL 240D25-17.

Il dispositivo presenta un paio di morsetti di comando che per le caratteristiche dichiarate possono essere DIRETTAMENTE collegati ad un GPIO di un RPi o di un ARDUINO.

L’altra coppia di morsetti corrisponde ad un interruttore che viene messo in serie al carico di potenza da pilotare.

opto22

Come ulteriore caratteristica riporto il fatto che l’interruttore si chiude in corrispondenza dello ZERO CROSS della tensione alternata eliminando sovracorrenti iniziali.

Nel mio caso viene utilizzato per pilotare un faretto di illuminazione del mio giardino secondo programmazione inserita in crontab oppure pilotando il GPIO da WEB

Dal lato software ecco una traccia del lavoro svolto:

  1. ho installato lighttpd mediante il solito apt-get install lighttpd
  2. ho creato il gruppo “gpio” mediante il comando groupadd gpio
  3. ho editato il file /etc/group per abbinare al gruppo gpio l’utente nobody e l’utente www-data
    gpio:x:1003:nobody,www-data
    l’utente www-data è l’utente creato da lighttpd e gli script eseguiti da lighttpd lo fanno con i diritti di questo utente.
  4. ho modificato /etc/rc.local aggiungendo le righe che servono per avere al termine del boot di sistema il gpio di mio interesse disponibile come output e assegnandolo al gruppo gpio:
    # Eseguo export del gpio58_pe1
    # nota : vale con il file .fex modificato da me
    echo 'EXPORT GPIO58_pe1'
    echo 58 > /sys/class/gpio/export
    # Definisco pe1 come output
    echo 'SET DIRECTION'
    echo out > /sys/class/gpio/gpio58_pe1/direction
    # Assegno i giusti permessi al gpio
    chown root:gpio /sys/class/gpio/gpio58_pe1/value
    chmod 664 /sys/class/gpio/gpio58_pe1/value
    

    In questo modo ad ogni riavvio del sistema riconfiguro il gpio come desidero e in particolare faccio in modo che l’utente www-data, appartenendo al gruppo gpio, può scrivere uno 0 o un 1 sul campo value determinando una azione fisica del pin.

  5. continua….

’73 de IZ4AKO

 

2 commenti su “GPIO di Potenza per RPi, A10, ARDUINO ecc”

  1. Si Leo,
    considera che il dispositivo in questione ha internamente una resistenza da 1k sulla parte di comando per cui la richiesta di corrente da prelevare al GPIO è dell’ordine di qualche milliAmpere. Inoltre per carichi fino a 100W non ho ravvisato la necessità di aggiungere un dissipatore. Per RPi c’è il mondo di app via web e ultimamente Enrico sta sperimentando con script su TELEGRAM, nota app per smartphone di messaggistica istantanea.

Rispondi a iz4ako Annulla risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *