Un primo progetto semplice cosa prendere ?

Ciao a tutti sono Paolo,
come scritto i presentazione sono digiuno di elettronica e, al contrario, mi sono ingozzato di programmazione.
Volevo realizzare un primo progetto (forse semplice). Dovrebbe essere una 20ina di led, ciascuno con un sensore di prossimità abbinato, un buzzer e un doppio segnapunti. Pensate come ad un bersaglio ma con i led da colpire distribuiti su una superfice di 2 mq. In modo casuale si accende un solo led per un tempo e se lo si colpisce emette il buzz ed incrementa il punteggio "verde", altrimenti se non viene colpito oppure si colpisce in ritardo o un altro spento incrementa il segnapunti rosso.
Cosa dovrei prendere ? Ho letto vari confronti delle schede. Penso non Arduino uno perchè ha poche uscite i/o. Forse il mega ? Oppure è troppo.
Come collegare led e sensori di prossimità "distanti" dalla scheda ?
Quali componenti dovrei prendere ?

Grazie a tutti.

Dipende che LED usi ... se usi dei LED indirizzabili (neoPixel ovvero WS2812 oppure APA102), ti bastano uno o due pin per controllarli tutti ... piuttosto ... come pensi di rilevare se è stato colpito un LED (... e, per di più, quello giusto) ?

Guglielmo

Ciao, grazie della risposta. Pensavo di rilevare il colpo mettendo vicino a ciascun led un sensore di prossimità. Non mi serve che venga colpito al millimetro, basta che ci si avvicini.
Per essere più preciso pensa alle sagome del tiro a segno e i led distribuiti in maniera non regolare sulla sagoma, ciascuno con un sensore di prossimità e da colpire con le pistole da bambini Nerf.

Qualche altro contributo grazie ? E' fattibile quello che vorrei realizzare ? Da quale modello di Arduino dovrei partire ? Per i sensori di presenza meglio quelli IR oppure di altro tipo ?
Grazie ancora.
Paolo

Forse se chiarisci meglio cosa sono:

possiamo trovare qualche soluzione. Perdonami, ma dato l'età ormai avanzata non ho bambini dal un bel po' di tempo (ed ho avuto solo una bambina che non giocava con le pistole! :grinning:). Cosa sparano di preciso? Acqua? Qualcosa che si appicica?
Una foto forse aiuterebbe a chiarire (perlomeno per me...).

Ciao, Ale.

Ciao,
allora per i sensori di presenza IR sono quelli ottici a InfraRosso, altrimenti (ho letto) quelli capacitivi, induttivi, magnetici.
I Nerf sono dei proiettili di gomma piuma con una punta in plastica.
Questi:

per intenderci.

Quindi mi pare di capire che colpiscono, ma non rimangono attaccati.
Non credo che nessuno dei sensori che hai citato sia adatto a percepire la presenza del dardo, forse l'unica sarebbe una griglia di barriere a fotocellula, diventa un incubo allinearle tutte ma potrebbe funzionare.

Ciao, Ale.

Si, colpiscono, non restano attaccati. Perchè secondo te non sono adatti ? Forse per il breve tempo in cui passano davanti all'infrarosso non lo rileva ?

mah ... secondo me, FORSE, la cosa sarebbe fattibile con dei "Sensori di pressione a film sottile" delle dovute dimensioni e sensibilità (occorre rilevare l'impatto del dardo) ma comunque è cosa piuttosto complessa ... :roll_eyes:

Guglielmo

Invece quelli ottici che problemi potrebbero avere ? Li preferirei nel caso che invece dei dardi si usasse con le mani a toccare i led che si accendono.

Progetto non semplicissimo
Specialmente se sei digiuno di elettronica

Come te la cavi con i piccoli lavoretti meccanici?

E conosci il multiplexing ?

Se sì potrebbe esserci una via

Altrimenti la vedo dura

Per i lavoretti meccanici non c'è problema.
Ma no; non conosco il multiplexing. Conosco il multiplexing e il demultiplexing per i protocolli di rete ma è altra cosa.

Ti spiego il principio dell'idea

Se monti i led su un supporto piuttosto lasco puoi fare che il dardo colpendolo lo sposti momentaneamente, staccandosi e quindi spegnendolo

Se in quel momento misuri la tensione sul led sai se è spento o acceso

I problemi accessori sono

  1. sapere quando misurare la tensione
  2. limitare i collegamenti
  3. collegare il display

Ma sono risovibili con il multiplex

Ti conviene studiare il multiplex con arduino
E solo dopo riprendere questo progetto

Di sensori ad infrarossi ne conosco di 2 tipi: ricevitori per telecomando, che si aspettano un segnale modulato ad una determinata frequenza, e non mi sembra il nostro caso, o i cosidetti 'pir', che sostanzialmente leggono l'emissione di calore, (anzi, per la maggioranza dei casi la variazione della fonte di calore), che vengono usati ad esempio per accendere automaticamente le luci quando passa qualcuno, e anche per questi non vedo l'uso nel tuo caso.
Data la leggerezza del materiale usato per i dardi non so se la soluzione proposta da Guglielmo potrebbe funzionare, andrebbe provata...

Ciao, Ale.

Io invece avevo questa idea, che idealmente è più semplice. Ma probabilmente nasconde delle complessità per me che sono digiuno.
n Led ciascuno collegato ad una entrata. n sensori di prossimità posti vicino ad ogni led ciascuno collegato ad una entrata. E con un sw del genere:

void setup() {
  // Configura i pin LED come output
  for (int i = 0; i < 20; i++) {
    pinMode(ledPins[i], OUTPUT);
  }

  // Configura i pin sensori come input
  for (int i = 0; i < 20; i++) {
    pinMode(sensorPins[i], INPUT);
  }
}

void loop() {
  // Loop per accendere una luce random
  int randomLed = random(0, 19);
  digitalWrite(ledPins[randomLed], HIGH); // Accende un LED casuale
  int t_inizio=mills();
  int colpitoV=0;
  while(mills()-t_inizio<=1000)
 {
 // Verifica se un sensore è attivato
  for (int i = 0; i < 20; i++) 
 {
    if (digitalRead(sensorPins[i]) == HIGH) 
      colpitoV=1;
 }
}
  if(colpitoV) contatoreVerde++; // Sensore colpito
    else 
       contatoreRosso++; // Sensore lisciato

  digitalWrite(ledPins[randomLed], LOW); // Spegne il LED
}

Anche per quelli ottici si possono distinguere 2 categorie: quelli a rifrazione, che leggono la luce inviata dall'emettitore riflessa dall'oggetto, ma in genere sono associati ad un catarifrangente che rifletta bene la luce emessa, oppure quelli a barriera, dove emettitore e ricevitore sono sulla stessa linea ma distanziati, e l'oggetto interrompe il fascio (che era quello che avevo proposto), che sono comunemente usati ad esempio nei cancelli motorizzati. Il limite è che ogni coppia copre una sola linea piuttosto sottile.
Non esperienza ne conoscenza dei sensori cosiddetti TOF, che usano i droni per evitare gli ostacoli, quindi non ti so dire se sarebbero usabili, magari qualcuno che ne sa di più può dirci qualcosa a riguardo.
Interessante anche soluzione di C1P8, anche se non credo sia facile da realizzare in pratica.

Ciao, Ale.

Io pensavo a questi:

Sensore IR

oppure a sensori capacitivi o induttivi modificando i dardi con un pezzo di metallo dentro.
Potrebbe funzionare ?

Una capsula piezo con uno Zener da 4,7V in parallelo.

Ma cosa te lo fa pensare?

Segui il mio ragionamento:

Il circuito base è
Uscita-> resistenza-> led-> massa

Questo significa che la tensione dopo la resistenza può essere alta solo se l'uscita è alta E il led scollegato

Se il led fosse collegato la tensione sarebbe quella di gradino, circa 1.5 volt

Adesso colleghi un ingresso digitale alla resistenza, 1.5 è basso

Quindi ingresso alto solo per led 'acceso' e colpito

Adesso contare i piedini
20 led e 20 uscite e 20 ingressi

Basta multiplare i led e li accendiamo con solo 5x5 10 piedini a dare 25 led
E aggiungendo 5 ingressi multiplati assieme ai led si fa tutto con 15 piedini

Aggiungici la seriale e tre pin per un display tm16xx e hai fatto tutto su un uno

Apposta ho chiesto se conosce il multiplex su arduino

Il ragionamento l'ho capito, ed infatti ho detto che è un ottima soluzione, non vedo molto bene come realizzare il contatto 'incerto' del led, sono curioso di sapere a quale soluzione pratica hai pensato.

Ciao, Ale.