VespaComputerDuino

ciao a tutti!

ho creato un nuovo posto invece di aggiornare il vecchio perche le modifiche al progetto sono state troppe e pertanto non rientra più nel Topic originario purtroppo!

Precedente Post

inizialmente era pensato per fungere da solo contagiri, ma causa display enorme da riempire e idee sempre nuove che saltavano fuori, si è evoluto fino a diventare quasi un vero Body Computer!

brevemente le funzioni: Giri motore, con sensore di hall sul volano, Km/h con sensore di hall sul cerchio posteriore, Temperatura liquido di raffreddamento motore, sensore temperatura scarico con sonda K e circuito esterno di accoppiamento, tensione batteria di servizio (a barre e a Volt! In più ho aggiunto ieri sera: Menù con gli ultimi massimi registrati di temperatura, giri, e Km/h. Fa partire la ventola del radiatore se si supera una temepratura preimpostata, e posso gestire la pompa del liquido con Automatico (secondo una temperatura impostata), sempre On oppure sempre Off!

e ogni volta che ci metto le mani, aggiungo delle funzioni! :-D

allego un piccolo video che ho fatto oggi delle funzioni in Demo! quindi non attaccate al motore per adesso! La sonda K è scollegata!

http://www.youtube.com/watch?v=_zhNNxcESJQ

che ve ne pare? suggerimenti?

in più, ho una cosa da chiedervi: Come risolvo l'evidente problema della ripetizione della pressione dei tasti?

ho usato la libreria Bounce del PlayGround, funziona, ma se tengo schiacciato il tasto parte subito una sequenza! spesso involontariamente!

ho provato a giocare con i tempi di Update, ma peggiora!

per ora mi fermo qui, altre info in seguito!

ciao!

Zeus :)

Sei un grande :) Bel lavoro ... ora però voglio vedere come lo monti visto il capolavoro di vespa che hai e che mi hai fatto vedere mi aspetto una bella cosa :)

Metti un delay fa la prima lettura e la seconda, nella maggior parte dei casi risolve:

if (digitalRead(TASTO)==HIGH/LOW) {
  delay(30);
  if (digitalRead(TASTO)==HIGH/LOW) {
    ....
  }
}

Oppure dopo il debounce attendi che il tasto sia stato rilasciato rilasciato. Forse puoi utilizzare il metodo update() di bounce che ritorna TRUE se è cambiato lo stato del pin.

QP

ho trovato pure questa libreria nel playground

http://arduino.cc/playground/Code/Buttons

magari provo pure questa, mi pare di aver capito che è differenziata tra ON OFF e Hold!

vi terrò aggiornati sugli sviluppi e poi il montaggio sul mezzo!

Il debounce con il delay funziona perfettamente, senza bisogno di appesantire il codice con librerie esterne.

Grande Leo72!!

con delay(50); ho risolto alla grande!! stabilissimo!!!

ora il menù è fluido e piacevole! grazie!!

credo che adesso mi dedicherò a fare un menù per impostare la temperatura di risposta della ventola con relativo salvataggio su EEPROM (ho imparato come si usa, è mooolto semplice!) come ho appena fatto per lo stato della pompa (Auto, On, Off!);

Attenzione al consumo di RAM: usando i display LCD si usano un sacco di stringhe col risultato che si esaurisce velocemente la memoria ;)

leo72:
Attenzione al consumo di RAM: usando i display LCD si usano un sacco di stringhe col risultato che si esaurisce velocemente la memoria :wink:

Anche se queste sono scritte in PROGMEM?

Con PROGMEM va benissimo

Grande ZEUS, avevo in mente anch'io di realizzare un sistema per raccogliere dati e visualizzarli sulla mia moto ma sono ancora nella fase di scelta dei sensori o modalità di rilevamento. per la temperatura del liquido di raffreddamento, quale soluzione e sensore hai utilizzato? sulla mia moto non ho un termometro per il liquido e quindi dovrei partire da zero. Grazie.

PS: non ti tranquillizzare; in seguito ti disturberò ancora con altre domande, e spero presto poterti aggiornare sul mio lavoro, una volta intrapreso.

LEO72

fin ora, dovrei esserci con la memoria! almeno, nulla rallenta o va di matto! indice di riferimento alquanto frivolo, ma funziona!

Ardalex: ho usato un normale lm35, tanto il suo range è più che sufficiente! se il liquido ti supera i 100°....hai già ben che cotto il motore!

magari appena ho tempo farò una descrizione dei vari sensori!

per le domande sono a disposizione, magari mi fai anche venire qualche idea in più!

z3us: LEO72

fin ora, dovrei esserci con la memoria! almeno, nulla rallenta o va di matto! indice di riferimento alquanto frivolo, ma funziona!

Sulla mia stazioncina meteo ho finito la memoria nonostante abbia messo tutte le stringhe con PROGMEM (sono decine e decine e decine... non so, forse 70/80) e lo sketch è 25 kB. Ma la SRAM è andata... quando inizio a navigare nel menu mi inizia a visualizzare caratteri a caso.. XD XD

nooo LEO, non ci arrivo minimamente a quei numeri? saranno al massimo 20!

ma che hai fatto, la stazione della NASA? ahaha!

poi metto il listato, anche se sono consapevole che riderete! è fatto in maniera molto elementare e avvolte con soluzioni poco asciutte!

ma adotto la politica dei Cinesi "Non importa come è fatto, basta che faccia il suo lavoro!"

ciao

Il problema è che ho cercato di integrare in un solo micro un sacco di roba, solo la gestione della SD per riversare i dati che salvo in una EEPROM esterna mi hanno portato via metà dello sketch, poi c'è tutta la logica di gestione, perché le cose se le faccio le faccio per bene ed il menu dà un sacco di info e di scelte all'utente... e pensa che non ci sta neanche tutto. La gestione dell'LCD è affidata ad un Tiny84.

si, fino ad un certo punto ho letto la tua discussione, e già era ingarbuggliata, poi ho un po allentato! a quanto pare sei arrivato a livelli esorbitanti!

immagino però, sempre su prototipo....non l'hai realizzata in definitiva vero?

io mi sono imposto che prima di natale realizzo il PCB e lo finisco. sennò continuo a mettere roba e modificarlo allìinfinito e non lo monterò mai sulla vespa!!

ah, giusto per quest'ultimo motivo volevo chiedere una cosa.

nel realizzare il pcb con un Atmega238, non mi converrebbe invece preparare uno "slot" per un arduino mini?

cioè, se devo mettere un chip, un quarzo e altre robette per farlo funzionare, spendo la stessa cifra a prendere un Mini e piazzarlo su un semplice PCB con i componenti esterni del mio progetto! Mi sembra di capire che lavora sempre a 5V e ha "quasi" tutto quello che possiede un Arduino Uno (tranne la connessione USB, ovviamente!)

che mi dite?

No, perché è ancora in fase evolutiva e finché non ho messo a posto tutte le cose, non faccio il PCB. I problemi da sistemare erano tanti, ad esempio solo da poche settimane l'alimentazione finalmente è a posto perché ho installato un regolatore switching in modalità steup-stepdown così non ho più problemi sugli sbalzi di tensione causati dal passaggio dal pannello solare alle batterie.

Poi nel frattempo ho tirato avanti altri progetti. Ad esempio, proprio ieri ho ordinato il PCB del mio rilevatore di fighe di gas, almeno un progetto su PCB voglio averlo, caspita XD

Adesso continuerò a lavorare sul pannellino ma ho già in mente un paio di progetti da realizzare. Ma anche qui andrò avanti per molti mesi dato che: le conoscenze elettroniche sono quelle che sono :sweat_smile:, il tempo è quello che è, i soldi son quelli che sono $)

z3us: ah, giusto per quest'ultimo motivo volevo chiedere una cosa.

nel realizzare il pcb con un Atmega238, non mi converrebbe invece preparare uno "slot" per un arduino mini?

cioè, se devo mettere un chip, un quarzo e altre robette per farlo funzionare, spendo la stessa cifra a prendere un Mini e piazzarlo su un semplice PCB con i componenti esterni del mio progetto! Mi sembra di capire che lavora sempre a 5V e ha "quasi" tutto quello che possiede un Arduino Uno (tranne la connessione USB, ovviamente!)

che mi dite?

Non credo che costi quanto un chip con 1 quarzo e 2 C. Quanto costa? Un Atmega328 diciamo che lo trovi tra 4,50 e 5 euri, sommaci il costo di un quarzo e dei suoi 2 condensatori, non arrivi a passare i 5,50€.

leo72:
… Ad esempio, proprio ieri ho ordinato il PCB del mio rilevatore di fighe …

Mooolto interessante!! Funziona bene? :grin: