• 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
apertura porta script garage ed luce accensione

[Studio] Script apertura porta ed accensione luce garage
#1
Sad 
Ciao,

premetto di non essere ancora in possesso del pi, quindi in attesa che mi arrivi (mi sa che ne dovrò prendere altri) ho iniziato a metter mano un pochino a Phyton.

L'intento è di creare una casa demotica, almeno in parte, partendo appunto dal garage.
Il progetto prevedo l'apertura, tramite modulo relay, della porta garage e dopo un determinato tempo (120sec), l'accensione automatica del neon.
Poi la chiusura automatica della porta garage e lo spegnimento del neon.

Ho buttato giù un codice in Phyton, qualcuno esperto mi spiega cosa ho sbagliato? e come integrarlo magari ad una interfaccia Web?


Ve ne sono infinitamente grato

codice:


import RPi.GPIO as GPIO

import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.OUT)
GPIO.setup(4, GPIO.OUT)
while True:
    if (GPIO.output(17,GPIO.HIGH)):
        time.sleep(120)
        GPIO.output(4,GPIO.HIGH)
        time.sleep(60)
        GPIO.output(17,GPIO.LOW)
        time.sleep(30)
        GPIO.output(4,GPIO.LOW)
Risposta
#2
Io e i gpio non ci conosciamo ancora benissimo ma ti posso dire che dando un occhio sembrerebbe che tu:
-accendi pin 17
-aspetti 120 secondi
-accendi pin 4
-aspetti 60 secondi
-spegni pin 17
-aspetti 30 secondi
-spegni pin 4

Fino a qui, a parte i tempi, se tu collegassi porta al 17 e neon al 4 potrebbe andare.
Ma sopra? (La setmode è giusta?)
Scrivendo 'while True:' ti crea un loop infinito. Dovresti basarti sull'entrata di un dato....per es quando una telecamera vede che sta arrivando la tua macchina fai partire tutta la lista di azioni (apri porta, aspetta, accendi luce eccecc)


Inviato dal mio m2 note utilizzando Tapatalk
Il mio software non ha mai bugs. Include soltanto funzionalità casuali.


Risposta
#3
(11/01/2016, 06:57)GabrieleToselli Ha scritto: Io e i gpio non ci conosciamo ancora benissimo ma ti posso dire che dando un occhio sembrerebbe che tu:
-accendi pin 17
-aspetti 120 secondi
-accendi pin 4
-aspetti 60 secondi
-spegni pin 17
-aspetti 30 secondi
-spegni pin 4

Fino a qui, a parte i tempi, se tu collegassi porta al 17 e neon al 4 potrebbe andare.
Ma sopra? (La setmode è giusta?)
Scrivendo 'while True:' ti crea un loop infinito. Dovresti basarti sull'entrata di un dato....per es quando una telecamera vede che sta arrivando la tua macchina fai partire tutta la lista di azioni (apri porta, aspetta, accendi luce eccecc)


Inviato dal mio m2 note utilizzando Tapatalk

Intanto grazie per la risposta.
Mi consigli allora di lasciare tutto com'è e togliere il "while true"? Attualmente non prevedo di inserirlo a seguito di un'altra azione! Però è un buon esercizio per iniziare ad imparare.
Inoltre la script lo vorrei far attivare da remoto, e quindi da telefono! Magari creare un web server ! Spero di riuscirci.
Risposta
#4
Potresti fare una pagina con un bottone. Quando clicchi il bottone fà quella serie di azione.
Togli il while true e togli l'if in questo modo:
Codice:
import RPi.GPIO as GPIO

import time
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.OUT)
GPIO.setup(4, GPIO.OUT)

GPIO.output(17,GPIO.HIGH)
time.sleep(120)
GPIO.output(4,GPIO.HIGH)
time.sleep(60)
GPIO.output(17,GPIO.LOW)
time.sleep(30)
GPIO.output(4,GPIO.LOW)
Per la pagina web usa shell_exec che esegue lo script py
Ovviamente sul raspi devi mettere nginx+php5 (guarda la guida sul nostro sito)
Ciao! gab

Inviato dal mio m2 note utilizzando Tapatalk
Il mio software non ha mai bugs. Include soltanto funzionalità casuali.


Risposta
#5
Ok, proverò.... però, Gab, come lo hai scritto tu, il "while True:" ci sta ancora.... ovviamente lo tolgo!?!?!

Grazie
Risposta
#6
sisi toglilo
Risposta
#7
Si, scrivere da scuola purtroppo comporta qualche errorino Sad
Il mio software non ha mai bugs. Include soltanto funzionalità casuali.


Risposta
#8
Sei un grande! Grazie mille
Risposta
  


Vai al forum:


Navigazione: 2 Ospite(i)
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect