Comparatore numerico

docdoc: :D

Beh funzionalmente sarebbe utile che ognuno inserisca la sua offerta senza essere visto dagli altri, per cui se li metti tutti insieme sullo stesso tavolo la vedo difficile che nessuno non faccia il baro "sbirciando" quello che fanno gli altri... ;)

La "sede storica" è abbastanza spaziosa, e ad ogni modo avevo pensato ad una sorta di cabinet fatto in casa che posizionato davanti ad ogni postazione contenga solo il display, girevole, con una sorta di "paraocchi" sui lati.

docdoc: Oppure puoi fare UNA postazione con Arduino, sulla quale si alternano i giocatori digitando "segretamente" la propria offerta, che Arduino memorizza, e rivela alla fine.

Una alternativa economica sarebbe quella di avere solo il master con un Arduino e modulo Bluetooth, o un WeMos D1, ed i client farli come app Android. La contropartita è che dovresti fare un'app Android, ma se provi AppInventor del MIT forse lo puoi fare rapidamente....

Quindi da questo deduco che un solo arduino non può avere collegati (x) tastierini e gestire uno alla volta gli input.

L'idea dell'app non è male affatto, ma la vedo abbastanza complicata anche se mi affascina parecchio.

Dando un rapido sguardo ho trovato i wemos d1, i tastierini, scatolame vario, ma i display a 5 euro circa (ho gironzolato poco è vero) ma non li ho trovati.

Non sarebbe un dramma nemmeno farlo per tutti e 10. Ormai siamo gli stessi da 15 anni, ognuno pagherebbe il suo, e risparmiare anche un ora la sera dell'asta sembra poco ma "CE STAMO A FA VECCHIETTI" :) . Adesso siamo con le lavagnette che solo tra lo scrivere e il cancellare ve lo lascio immaginare, il giorno dopo a lavoro 10 Zombie

Buon week end, e grazie per i consigli

Invece di tastierino e lcd, puoi usare una cosa del genere: http://s.aliexpress.com/Q36ZRfyA

Qua invece i D1 Mini più economici che ho trovato: http://s.aliexpress.com/NvmQf2iU

Come diceva qualcuno, però, il problema è riuscire ad avere tutto tra le mani in un tempo decente, ordinando dalla Cina.

gidiosimonoi:
Quindi da questo deduco che un solo arduino non può avere collegati (x) tastierini e gestire uno alla volta gli input.

Beh no, non proprio. Sicuramente dipende intanto dalla lunghezza dei cavi: se basta diciamo 1 metro forse potrebbe andare, anche se non ho mai provato, ma se dovessero essere più lunghi avrei qualche dubbio che possa essere affidabile.

Ma, a parte le questioni elettriche, per il discorso se Arduino possa avere collegato “x” tastierini dipende da COME colleghi i tastierini, ossia quante uscite digitali occorrono. Ad esempio quel display 7 segmenti e 16 pulsanti che non conoscevo e che ti ha consigliato sukkopera, stando a quello che vedo nelle foto (non c’è descrizione…) dovrebbe usare il chip TM1637 quindi si collega con 5 fili di cui 3 sono per il controllo data, clock, strobe che suppongo debbano essere specifici di ogni display.
Non ho mai usato quei display quindi prendi l’informazione con le molle, ma credo che se ne devi collegare 10 ti servirebbero 30 pin digitali, per cui obbligatoriamente servirebbe un Mega.

E, sempre perché non ho mai usato quel chip e non ho trovato in giro esempi di connessioni multiple, non so se la sua gestione richieda un certo carico di CPU per ogni display gestito che per un solo display è sicuramente possibile, per 10 non so dirti…

Anche i display LCD avrebbero problemi: anche se puoi controllarli tramite interfaccia seriale I2C quindi con 2 soli fili (più 2 di alimentazione) in comune a tutti a patto che ogni display abbia il suo indirizzo, la limitazione è nel bus I2C che prevede massimo 8 indirizzi!

Secondo me un WeMos D1 con display LCD e tastierino per ogni postazione restano la soluzione migliore, anche se più costosa nel complesso, in quanto molto più semplice da realizzare, flessibile (puoi farli comunicare con broadcast UDP col server inventando un protocollino ad hoc, così non hai neanche la necessità di impostare l’indirizzo IP! Io ho fatto la stessa cosa per un ripetitore di telecomando WiFi…) e portabile (non hai bisogno di un “ragno” con 10 cavi verso i terminali, e puoi anche alimentarli ognuno con una pila 9V interna alla scatola stessa).

Per i materiali un consiglio: fatti un bel giretto su eBay, seleziona solo oggetti in Italia e venditori con tanti feedback e percentuale vicina al 100%, poi vedi se uno di questi ha tutti o quasi i materiali che cerchi (così risparmi sulla spedizione, ma significa anche che è ben fornito, qualche venditore che mi è capitato di trovare vendeva Arduino insieme a profumi e accessori per auto…). Quel paio che ti convince, mettiteli in bookmark e inizia a comprare da quelli.
Alcuni dei miei sono questi, se può servirti:
EBM Store
ElectroN
WallMall

L’idea dell’app non è male affatto, ma la vedo abbastanza complicata anche se mi affascina parecchio.

Beh con AppInventor non hai necessità di studiarti Android, hai un tool locale nel quale “visivamente” puoi costruire le istruzioni, e una app “companion” sul cellulare: progetti il programma, e tramite l’app la carichi come APK in Android!

Io l’ho fatta, anche se solo per test, per provare a comandare via bluetooth un Arduino con HC-06, ma penso che non sia molto più complesso farlo per il WiFi. Nel tuo caso poi dovrebbe semplicemente permettere di inserire un numero in una text box, e alla pressione del pulsante mandare il comando al server Arduino (o, meglio, WeMos D1).

Dando un rapido sguardo ho trovato i wemos d1, i tastierini, scatolame vario, ma i display a 5 euro circa (ho gironzolato poco è vero) ma non li ho trovati.

Beh ultimamente io ho sempre preso questi (4.80€):
Display SERIALE BLU16x2 - lcd retroilluminato IIC/I2C

SukkoPera:
Come diceva qualcuno, però, il problema è riuscire ad avere tutto tra le mani in un tempo decente, ordinando dalla Cina.

Quel “qualcuno” sono io… :smiley: Ho comprato dalla Cina 2 volte, costano molto meno, ma mai più. Gli oggetti ad arrivare arrivano pure, ma aspettare 1 mese e mezzo no, quando ho in mente un progetto sono impaziente di metterlo in pratica :wink: E poi se ho un problema, con un venditore italiano (ma personalmente anche da UK e Spagna) è tutto più facile, per dire uno shield Ethernet era difettoso e quando l’ho detto al venditore spagnolo, anche se formalmente avrei dovuto io pagare la spedizione per il rientro, mi ha detto di tenerlo e me ne avrebbe mandato un altro!

Risposte precise e soprattutto comprensibilissime. grazie pian piano sto documentandomi e capendo sempre più sia sul necessario per il mio progetto ma anche in generale.

Alcuni punti bui riguardo l’ultimo post di docdoc

Quindi con la web app del MIT che ho già sbirciato, posso creare una app android per far si che da 10 telefoni si invii ad ogni turno l’offerta d’asta, e convergere tutto in un solo wemos con display che mi riporta quale telefono ha inviato l’offerta maggiore.

Quello che non ho capito è se anche con questa modalità devono esserci 10 wemos e un arduino MASTER che gestisce la faccenda, oppure facendolo con i telefoni, basta 1 solo wemos

Con l'app ognuno vota col cellulare, e basta un WeMos centrale che raccoglie i voti e alla fine mostra il vincitore (consiglio sempre l'LCD perché può mostrare più caratteri)

docdoc: Con l'app ognuno vota col cellulare, e basta un WeMos centrale che raccoglie i voti e alla fine mostra il vincitore (consiglio sempre l'LCD perché può mistrare più caratteri)

beh ma è veramente la soluzione ideale allora. grazie

docdoc: :D

Una alternativa economica sarebbe quella di avere solo il master con un Arduino e modulo Bluetooth, o un WeMos D1, ed i client farli come app Android. La contropartita è che dovresti fare un'app Android, ma se provi AppInventor del MIT forse lo puoi fare rapidamente....

non l'avevo letta attentamente, la risposta era anche qui

A sto punto puoi usare un tablet o uno smartphone, i un portatile, anche per il display centrale.

Beh credo che più che altro voglia divertirsi a costruirlo con Arduino... ;)

A questo punto per maggiore semplicità al nostro amico consiglierei di usare un Arduino Uno e un modulo Bluetooth HC-06 invece del WeMos, e creare una semplice app con AppInventor che dialoga via Bluetooth!

SukkoPera: A sto punto puoi usare un tablet o uno smartphone, i un portatile, anche per il display centrale.

Scusami non ti ho capito

Beh, se "ti avanza" un tablet o un altro smartphone, puoi usarlo per fare il display centrale, senza coinvolgenere Arduino in alcun modo. Il tutto diventa una coppia di App android che dialogano tra di loro.

Vedi tu, dipende tutto da cosa hai disposizione, con cosa sei più pratico, ecc...

adesso ho capito. Quindi non con una app ma con due, una per l'inserimento dalle 10 postazioni, l'altro che riceve (a questo punto anche via BT), e esegue la comparazione.

Non è male nemmeno questa. mi piaceva comunque smanettare un po su arduino per cominciare a capire un po' come funziona e prendere confidenza, ma quest'ultima è di sicuro la più veloce, a patto di riuscire a barcamenarmi con AppInventor (che a prima occhiata non mi sembra troppo difficile)

grazie ancora vi tengo aggiornati sul procedere degli "esperimenti"

Ho visto che si è già arrivati alla risposta ma volevo fare una domanda comunque tecnica: se invece per ogni display 7 segmenti 4 cifre un chip di conversione i2c? Bisognerebbe capire quale sarebbe quello ideale. Mi sembra esistano già su eBay. Per i tastierini numerici invece servirebbe un multiplexer a 8 porte per leggere ciclicamente 8 tastierini (i pulsanti sono messi in parallelo e si usa un'unica porta analogica per leggerli) più due porte analogiche per leggere autonomamente i 2 tastierini finali. Dopodiché si lavorerebbe tutto di "libreria" via i2c (con gli indirizzi di ogni chip) e il massimo sarebbe avere un led che lampeggia sopra alla postazione per capire chi ha vinto, anche quelli gestiti da multiplexer o shift register con array di darlington se serve. Il problema sono le distanze. Via i2c non so se regge.

gidiosimonoi: quest'ultima è di sicuro la più veloce, a patto di riuscire a barcamenarmi con AppInventor (che a prima occhiata non mi sembra troppo difficile)

Secondo me se conosci il C/C++, per il server ossia quello che riceve le offerte, le accumula, e al termine mostra il vincitore, è più semplice realizzarlo con Arduino che con AppInventor, mentre per i "client" di chi deve fare le offerte è una app semplicissima (vedrei un textbox per definire l'utente e uno per digitare l'offerta, e un pulsante per inviare). Ovviamente se scegli questa strada qui possiamo consigliarti lato Arduino, se sarà tutta Android no... ;)

ricki158: ... e il massimo sarebbe avere un led che lampeggia sopra alla postazione per capire chi ha vinto, anche quelli gestiti da multiplexer o shift register con array di darlington se serve. Il problema sono le distanze. Via i2c non so se regge.

non osavo azzardarlo ma ci avevo pensato.

Se è per questo io avevo lavorato di fantasia immaginando diriuscire a inserire 10 utenti, con un budget iniziale. e ad ogni turno arduino che scala dal totale del vincitore l'ammontare dell'asta vinta...

ma mi ero fermato a quello che ho scritto per via della mia ignoranza, ma anche quella sarebbe una cosa che eviterebbe di calcolare ogni volta a mano tutte le quote.

(vero è che forse un po' del gusto di quella serata andrebbe a perdersi, però funzionalmente sarebbe ancora meglio)

Pensandoci meglio, i2c (o meglio un PCF8574) ha la possibilità di selezionare l’indirizzo con 3 ponticelli, quindi 2^3 = 8 combinazioni. Per cui comunque 8 postazioni.

Però se usi un MCP23017 con array di darlington sia per la cifra che per il segmento, riesci a fare due display da 4 cifre 7 segmenti. Quindi te ne bastano 5 ed hai abbastanza indirizzi disponibili. Metti una postazione di fronte l’altra, fai una basetta millefori dove metti le cifre, il led e gli array di darlington per gestire la parte di potenza, dopodiché al centro millefori con questo integrato, i componenti necessari, un dip switch a 3 vie, connettore per pila 9 volt, connessione in entrata e uscita per i2c.

Dopo ti resta da crearti la tua funzione per gestire questo integrato… ma non volevi imparare?

Io me lo immagino così. Sulla basetta centrale potresti metterci anche altro, ad ogni coppia di postazione, per prelevare il segnale da ogni tastierino numerico e accendere eventualmente il led.

Mi auto-quoto

A questo punto per maggiore semplicità al nostro amico consiglierei di usare un Arduino Uno e un modulo Bluetooth HC-06 invece del WeMos, e creare una semplice app con AppInventor che dialoga via Bluetooth!

Ripensandoci, credo di aver detto una cosa inesatta, ossia non credo che un HC-06 possa ricevere più connessioni contemporanee. Finora ho sempre fatto connessioni punto-punto e credo che una volta accoppiato un dispositivo non possa collegarne un altro. Confermate?

In tal caso tornerei alla soluzione WeMos e connessione WiFi ossia TCP-IP...

Devi avere più canali per connetterti a più moduli.

SukkoPera: A sto punto puoi usare un tablet o uno smartphone, i un portatile, anche per il display centrale.

mi riaggancio al post, anche se probabilmente vado leggermente offtopic, quindi scusatemi in anticipo.

Sentendo anche gli altri, ritengono sia molto più semplice e pratico (semplice è da vedere) l'utilizzo di app sia per i 10 client che per il "server" al 99% un tablet.

In questo mese e mezzo ho guardato diverse guide sul funzionamento dell'appinventor del MIT da voi suggeritomi, sulle variabili, e credo TEORICAMENTE di avere una sorta di schema da cui partire.

Ma a dire il vero ho ancora troppe zone buie, e non conosco troppe cose, quindi chiedo a voi giacchè me l'avete suggerito sperando mi aiutiate ancora una volta:

1) sapreste indicarmi una buona guida per quell'app inventor?

2) in alternativa sapreste aiutarmi voi? e con questo spero di non offendere nessuno che magari lo fa per lavoro, quindi in caso pagherei il disturbo.

grazie