• 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
a sensori air con ir hockey segnapunti

Air hockey con segnapunti a sensori IR
#11
Ciao! Grazie! Io nel frattempo son riuscito a collegare il LED e a far scorrere delle scritte. Adesso quando torno do un occhio a quello che mi hai postato!!!
Risposta
#12
(27/05/2019, 23:17)Zzed Ha scritto: Ho avuto qualche impegno in famiglia, ma non mi sono scordato.
Ecco qui una bozza di quello che potrebbe essere lo script Python di gestione.
Codice:
# importo le librerie
from gpiozero import DistanceSensor, Button
from time import sleep
from signal import pause


# --- impostazioni --- #
punteggio = [0,0]
vittoria = 10       #punteggio per vincere
gioco = "TRUE"               # TRUE = gioco attivo FALSE = gioco fermo
# -------------------- #

def goal(g):
   global punteggio
   global gioco
   print ("Goal!")
   # qui eventuale effetto sonoro goal
   punteggio[g] = (punteggio[g]+1)
   print (str(punteggio[0]) + "-" + str(punteggio[1]))
   sleep(5)
   # qui fischio di ripresa del gioco
   if punteggio[g] == vittoria:         #controlla se qualcuno ha vinto
       print ("Vittortia giocatore " + str(g+1))
       # qui eventuale effetto sono vittoria
       gioco = "FALSE"

def reset():
   global punteggio
   global gioco
   print ("Inizio Partrita!")
   punteggio = [0,0]
   gioco = "TRUE"
   sleep(2)
   # eventuale effetto sonoro inizio
   print (str(punteggio[0]) + "-" + str(punteggio[1]))

# main
sensoreA = DistanceSensor(echo=18, trigger=17)  #sensore porta A
sensoreB = DistanceSensor(echo=23, trigger=22)  #sensore porta B
reset = Button(27)   #pulsante reset partita

#quando sensore A interviene
sensoreA.when_in_range = goal(0)

#quando sensore B interviene
sensoreB.when_in_range = goal(1)

#quando premi il pulsante
reset.when_pressed = reset()

pause()
Ho messo un ritardo di 5 secondi dopo ogni goal per avere il tempo di riposizionare il disco e fare in modo che il programma non continui a contare goal perché vede il disco in buca. E' però perfettibile.
I vari print dei messaggi possono essere sostituiti da scritte scorrevoli sul display,  volendo si può aggiungere qualche effetto sonoro o LED (ad esempio illuminando la porta dove viene segnato il goal).

oggi us la breadboard per connettere 1 sensore. Dopo ti aggiorno. grazie!
Risposta
  


Vai al forum:


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