11/06/2018, 10:25
Buon giorno a tutti,
sono da poco nel mondo di Raspberry ma so già programmare con Arduino il che spero mi faciliti la cosa
Il mio modulo è il Raspberry Pi 3.
Vi spiego il mio progetto : si tratta di un gioco da tavolo (stile gioco dell'oca) con 4 percorsi ognuno composto da quasi 50 caselle; sotto ogni casella vorrei mettere dei REED (interruttori magnetici) normalmente aperti. Sotto le pedine invece inserirei dei magneti in modo che una volta posata una pedina sulla casella il REED si chiuda.
Ovviamente come avrete intuito i REED saranno per gruppo tutti in parallelo (quindi ci saranno 4 gruppi di 50 REED, e ogni gruppo avrà i 50 REED in parallelo in modo che in qualunque punto del percorso la pedina si fermerà farà quello che vi dirò dopo)
Ora la mia finalità è la seguente : utilizzando Raspberry e un display collegato in HDMI e mettendo diversi video nella micro SD, far sì che ogni qualvolta che una pedina si alza e si riposiziona ( aprendo quindi un REED e richiudendo un altro REED ) parta un video RANDOM tra tutti quelli inseriti nella micro SD.
Ovviamente essendo 4 gruppi avrò 4 GPIO occupate come INPUT.
Il problema è la programmazione del codice per fargli fare quello che voglio.
Ieri ho provato a mettere giù questo codice che ho provato con un solo REED su un GPIO giusto per provare, ma non mi funziona, quando avvicino la calamita al REED mi diventa il Display bianco e mi si blocca il RPi e sono costretto a staccare l'alimentazione.
So che questo è solo l'inizio,ma vi chiedo un aiuto tanto per capire questo e poi su come procedere.
Grazie
sono da poco nel mondo di Raspberry ma so già programmare con Arduino il che spero mi faciliti la cosa
Il mio modulo è il Raspberry Pi 3.
Vi spiego il mio progetto : si tratta di un gioco da tavolo (stile gioco dell'oca) con 4 percorsi ognuno composto da quasi 50 caselle; sotto ogni casella vorrei mettere dei REED (interruttori magnetici) normalmente aperti. Sotto le pedine invece inserirei dei magneti in modo che una volta posata una pedina sulla casella il REED si chiuda.
Ovviamente come avrete intuito i REED saranno per gruppo tutti in parallelo (quindi ci saranno 4 gruppi di 50 REED, e ogni gruppo avrà i 50 REED in parallelo in modo che in qualunque punto del percorso la pedina si fermerà farà quello che vi dirò dopo)
Ora la mia finalità è la seguente : utilizzando Raspberry e un display collegato in HDMI e mettendo diversi video nella micro SD, far sì che ogni qualvolta che una pedina si alza e si riposiziona ( aprendo quindi un REED e richiudendo un altro REED ) parta un video RANDOM tra tutti quelli inseriti nella micro SD.
Ovviamente essendo 4 gruppi avrò 4 GPIO occupate come INPUT.
Il problema è la programmazione del codice per fargli fare quello che voglio.
Ieri ho provato a mettere giù questo codice che ho provato con un solo REED su un GPIO giusto per provare, ma non mi funziona, quando avvicino la calamita al REED mi diventa il Display bianco e mi si blocca il RPi e sono costretto a staccare l'alimentazione.
So che questo è solo l'inizio,ma vi chiedo un aiuto tanto per capire questo e poi su come procedere.
Grazie
Codice:
# SE TENGO CHIUSO IL REED CON LA CALAMITA SI DOVREBBE AVVIARE UN VIDEO
# INSERITO NELLA CARTELLA
#buttonInput.py
import RPi.GPIO as GPIO
import os
from time import sleep
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
buttonPin = 17
GPIO.setup(buttonPin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
print("GPIO+ OMXPLAYER")
while True:
if (GPIO.input(17) == False) :
print("BUTTON PRESSED")
os.system('omxplayer -o hdmi pippo.mp4&')
sleep(15)