Nota
Ciao, benvenuto nella community di SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts su Facebook! Approfondisci Raspberry Pi, Arduino ed ESP32 insieme ad altri appassionati.
Perché unirti a noi?
Supporto esperto: Risolvi problemi post-vendita e sfide tecniche con l’aiuto della nostra comunità e del nostro team.
Impara e condividi: Scambia suggerimenti e tutorial per migliorare le tue competenze.
Anteprime esclusive: Ottieni accesso anticipato agli annunci di nuovi prodotti e anteprime.
Sconti speciali: Approfitta di sconti esclusivi sui nostri prodotti più recenti.
Promozioni e omaggi festivi: Partecipa a omaggi e promozioni durante le festività.
👉 Pronto a esplorare e creare con noi? Clicca su [qui] e unisciti oggi stesso!
2.10 Palla Sensibile alla Luce¶
In questo progetto, utilizziamo un fotoresistore per far volare la palla sullo schermo verso l’alto. Posiziona la mano sopra il fotoresistore per controllare l’intensità della luce che riceve. Più la tua mano è vicina al fotoresistore, minore sarà il suo valore e più la palla volerà in alto sullo schermo; altrimenti cadrà. Quando la palla tocca la linea, emette un piacevole suono e un bagliore stellare scintillante.
Componenti Necessari¶
In questo progetto, avremo bisogno dei seguenti componenti.
È sicuramente conveniente acquistare un kit completo, ecco il link:
Nome |
ELEMENTI IN QUESTO KIT |
LINK |
|---|---|---|
ESP32 Starter Kit |
320+ |
Puoi anche acquistare i componenti separatamente dai link qui sotto.
INTRODUZIONE AI COMPONENTI |
LINK PER L’ACQUISTO |
|---|---|
Cosa Imparerai¶
Riempire la sprite con colori
Riconoscere il tocco tra le sprite
Costruire il Circuito¶
Un fotoresistore o fotocellula è un resistore variabile controllato dalla luce. La resistenza di un fotoresistore diminuisce con l’aumentare dell’intensità della luce incidente.
Costruisci il circuito seguendo lo schema seguente.
Collega un’estremità del fotoresistore a 5V, l’altra estremità al pin 35, e collega un resistore da 10K in serie con il GND a questa estremità.
Quando l’intensità della luce aumenta, la resistenza del fotoresistore diminuisce, la divisione della tensione del resistore da 10K aumenta e il valore ottenuto dal pin 35 diventa maggiore.
Programmazione¶
L’effetto che vogliamo ottenere è che più la tua mano è vicina al fotoresistore, più la sprite a forma di palla sullo schermo continuerà a salire; altrimenti cadrà sulla sprite a forma di ciotola. Se tocca la sprite Line mentre sale o scende, emetterà un suono musicale e spruzzerà sprite stellari in tutte le direzioni.
1. Selezionare sprite e sfondo
Elimina la sprite predefinita, seleziona le sprite Palla, Ciotola e Stella.
Sposta la sprite Ciotola al centro inferiore dello schermo e ingrandisci le sue dimensioni.
Poiché dobbiamo spostarla verso l’alto, imposta la direzione della sprite Palla su 0.
Imposta la dimensione e la direzione della sprite Stella su 180 perché dobbiamo farla cadere, oppure puoi cambiarla in un altro angolo.
Ora aggiungi lo sfondo Stelle.
2. Disegna una sprite Linea
Aggiungi una sprite Linea.
Vai alla pagina Costumi della sprite Linea, riduci leggermente la larghezza della linea rossa sulla tela, quindi copiala 5 volte e allinea le linee.
Ora riempi le linee con colori diversi. Scegli prima un colore che ti piace, quindi clicca sullo strumento Riempimento e sposta il mouse sulla linea per riempirla di colore.
Segui lo stesso metodo per cambiare il colore delle altre linee.
3. Scrivere lo script per la sprite Palla
Imposta la posizione iniziale della sprite Palla, poi quando il valore della luce è inferiore a 1500 (può essere qualsiasi altro valore, a seconda del tuo ambiente attuale), fai in modo che la Palla si muova verso l’alto.
Puoi fare in modo che la variabile light_value appaia sullo schermo per osservare il cambiamento dell’intensità della luce in qualsiasi momento.
Altrimenti, la sprite Palla cadrà e limiterà la sua coordinata Y a un minimo di -100. Questo può essere modificato per farla sembrare che cada sulla sprite Ciotola.
Quando la sprite Linea viene colpita, la coordinata Y corrente viene salvata nella variabile ball_coor e viene trasmesso un messaggio Bling.
4. Scrivere lo script per la sprite Stella
Quando lo script inizia, nascondi la sprite Stella. Quando viene ricevuto il messaggio Bling, clona la sprite Stella.
Quando la sprite Stella appare come clone, riproduci l’effetto sonoro e imposta le sue coordinate per sincronizzarle con la sprite Palla.
Crea l’effetto della sprite Stella che appare e regola come necessario.