• Benvenuti su RaspberryItaly!
Benvenuto ospite! Login Login con Facebook Registrati Login with Facebook


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Tags
spegnimento pulsante

Pulsante spegnimento
#1
Salve a tutti
ho trovato questa guida per creare un pulsante per spegnere in modo sicuro il raspberry

QUI

Vorrei avere delle delucidazioni

Un pin del pulsante andrà collegato al pin gpio da 3.3 Volts, e fino a qui nessun problema.
Un piedino della R2 va collegato alla gpio IN, e qui iniziano i problemi.

a quale pin della gpio corrisponde?
anche guardano la discussione di gab.tosa00 non ci ho capito molto QUI

Grazie a tutti
 
Risposta
#2
Allora teoricamente va bene un qualsiasi GPIO, però guardando la guida devi collegarlo al GPiO 17


Inviato dal mio iPhone utilizzando Tapatalk

E attento a non fare confusione, non al pin 17, ma al GPIO 17


Inviato dal mio iPhone utilizzando Tapatalk
http://bobvann.noip.me
Hai un Raspberry Pi?
(SI)   complimenti, ottima scelta Wink
(NO) compralo al più presto Wink
 
Risposta
#3
Alla grande.... Era proprio lì il dubbio... Non sapevo se era il pin o il gpio 17....
Grazie tantissimo

Inviato dal mio Nexus 5 utilizzando Tapatalk
 
Risposta
#4
Figurati è sempre un piacere aiutare gli altri Smile


Inviato dal mio iPhone utilizzando Tapatalk
http://bobvann.noip.me
Hai un Raspberry Pi?
(SI)   complimenti, ottima scelta Wink
(NO) compralo al più presto Wink
 
Risposta
#5
(03-21-2015, 11:33 AM)Ikarus Ha scritto: Salve a tutti
ho trovato questa guida per creare un pulsante per spegnere in modo sicuro il raspberry

QUI

Vorrei avere delle delucidazioni

Un pin del pulsante andrà collegato al pin gpio da 3.3 Volts, e fino a qui nessun problema.
Un piedino della R2 va collegato alla gpio IN, e qui iniziano i problemi.

a quale pin della gpio corrisponde?
anche guardano la discussione di gab.tosa00 non ci ho capito molto QUI

Grazie a tutti

ciao interesserebbe anche a me il sistema per fare lo spegnimento.... dato che sono un po ignorante non ho capito bene  la scrittura di comando... io devo copiare:
import RPi.GPIO as GPIO

import time
import os
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.IN)
while True:
if (GPIO.input(17)):
os.system("sudo shutdown -h now")
break
time.sleep(1)

su python 2 o su phiton 3 ?  la guida dice che devo creare un file di testo e poi aprirlo con python quindi apro office write copio la stringa salvo dopo di che sul file destro apri con phyton x  e ho finito?
grazie
 
Risposta
#6
ci sono riuscito.... ma adesso ad ogni riavvio devo riaprire il python per spegnerlo.... non c'è modo di fare un autorun
 
Risposta
#7
Certo, vedi qui
 
Risposta
#8
(01-30-2016, 01:53 PM)Zzed Ha scritto: Certo,  vedi qui

fatto... grazie.... ho riscontrato un problema.... ho copiato la stringa di comando in text editor ho salvato dopo di che lo apro con python 2  clicco su run module (F5) premo il pulsantino harware ed il rasbberry si spegne dopo di che al passaggio run module quando si apre la shell faccio file salva gli dò il nome off.py .... chiudo tutto apro il file off.py e npon funziona più il tasto hardware come mai? grazie
 
Risposta
#9
Io ho trovato QUESTA GUIDA che mi pare abbastanza completa perchè spiega anche come avviare autmaticamente lo script dopo il boot (funziona con Raspbian Jessie e con Ubuntu-Mate).
Lo script l'ho leggermente modificato per cambiare i pin GPIO in base alle mie esigenze (ho altri dispositivi connessi e non volevo che ci fossero interferenze)

Codice:
# Importazione librerie #
import RPi.GPIO as GPIO
import time
import os

# Disabilita messaggi di avviso #
GPIO.setwarnings(False)

# Impostazione pin attivo #
GPIO.setmode(GPIO.BCM)
GPIO.setup(25,GPIO.IN)

# Impostazione pin led segnalazione #
GPIO.setup(24, GPIO.OUT)
# Led spento #
GPIO.output(24, False)

# Settaggio iniziale stato pulsante #
button_previous = 1
button_current = 1
brojac = 0
flag_pressed = 0

# Funzione led acceso #
def LedOn():
 GPIO.output(24, True)
 time.sleep(1)

# Funzione led intermittente #
def LedBlink():
 GPIO.output(24, True)
 time.sleep(0.5)
 GPIO.output(24, False)
 time.sleep(0.25)
 GPIO.output(24, True)
 time.sleep(0.5)
 GPIO.output(24, False)
 time.sleep(0.25)
 GPIO.output(24, True)
 time.sleep(0.5)
 GPIO.output(24, False)
 time.sleep(0.25)

# Ciclo infinito riconoscimento stato pulsante #
while True:
 button_current = GPIO.input(25);
 flag_pressed = button_previous + button_current

 if (not(flag_pressed)):
   brojac += 1
 else:
   brojac = 0

# Pulsante premuto < 3 sec.= riavvio #
 if (button_current and (not button_previous)):
   # Led lampeggiante #
   LedBlink()
   # Riavvio sistema #
   os.system("sudo shutdown -r now")

# Pulsante premuto > 3 sec.= arresto #
 if ((not flag_pressed) and  brojac >= 100):
   # Led acceso #
   LedOn()
   # Arresto sistema #
   os.system("sudo shutdown -h now")
   break

# Attesa 30 msec. prima di riavviare controllo #
 button_previous = button_current
 time.sleep(0.03)

Sicuramente il codice può essere migliorato (io sono un principiante).
Ho anche realizzato un piccolo circuito elettronico per assemblare il pulsante sul GPIO del Raspberry



Allegati Anteprime
       
 
Risposta
  


Vai al forum:


Navigazione:
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect