Unendo Arduino, un LED RGB e AutoIt...

« Older   Newer »
  Share  
CAT_IMG Posted on 20/11/2011, 18:52     +1   -1

So implementare gli object

Group:
Admin
Posts:
1,215
Reputazione:
+150

Status:


Tutto quello che leggete è rilasciato secondo licenza Creative Commons BY-NC-SA.

Ebbene, non avevo niente da fare e mi è saltata in testa questa cosa.

Arrivato a casa, trovo un pacco sulla scrivania. Sono arrivati i LED che ho ordinato! :D

Prendo l'alimentatore, la breadboard, apro il cassetto delle resistenze, li provo uno a uno (sono maniacale...).

Ok, e ora?
Accendo il computer, accendo Arduino, accendo il cervello.

Creo un programma che modifichi l'intensità di un LED RGB, magari con dei carinissimi slider.

Scrivo il firmware per Arduino, scrivo il programma in AutoIt, penso: "carino!".

Ecco come funziona:
Colleghiamo il LED ai pin 3, 5, 6 di Arduino. Come potete vedere il mio LED è ad anodo comune.

rgb1yz
rgb2

Da queste immagini di possono capire tre cose:
1) catodo blu -> pin3, catodo verde -> pin5, catodo rosso -> 6, anodo -> +5v
2) bisogna calcolare e mettere delle resistenze tra i catodi e i pin del microcontrollore
3) non sono bravo a disegnare gli schemi

Perché proprio i pin 3, 5 e 6?
Beh, vedete, quei PIN supportano il Pulse Width Modulation, non chiedetemi di tradurlo, posso però dirvi che permette di mandare a 1 e poi a 0 un determinato pin, in modo continuo, svariate volte al secondo.

Se sei riuscito a leggere almeno fino a qui, fammelo sapere in qualche modo.

Accendi e spegni un LED, no? Proprio così: più a lungo lo tieni spento meno ci sembrerà intensa la luce (non speravate di vedere il LED che si spegneva e si accendeva davvero, no?).

Spieghiamoci meglio:

ddp

In questa immagine notiamo delle linee, delle freccie, un sacco di roba incomprensibile.

La linea bianca in alto indica 5 volt, quella in basso 0 volt (massa o ground), la linea gialla indica il pin di Arduino che eroga 5 volt (in realtà la linea gialla dovrebbe essere sovrapposta a quella bianca, che ho messo un po' più in basso per una, si spera, più semplice comprensione), la linea rossa indica un pin PWM.

Potete notare che quando il pin è a livello logico 1 (o HIGH o +5V, come preferite), non c'è differenza di potenziale (infatti tutti e due i pin del LED saranno a 5V, 5 meno 5 = 0 = niente corrente.

Nell'istante in cui il PIN va a 0 (colonne evidenziate in grigio), potete notare che invece la linea gialla è distante da quella rossa, è distante per l'esattezza 5 volt (la freccia blu), e si crea appunto una ddp (differenza di potenziale) di 5 volt.

Il LED si accende. Poi la ddp sparisce, il LED si spegne, poi si riaccende e si rispegne, e continua così.

Ma come ho già detto noi non lo notiamo, notiamo solo una perdita di intensità.

Tutto questo casino per dirvi che con quel LED e questo programma posso ottenere una luce di qualsiasi colore, dato che mischiando rosso, giallo e blu ottengo tonalità differenti.

Vi posterò presto i source e un video dimostrativo.

Source allegati, video.

Edited by ‡ (dd) - 21/7/2012, 19:00

Download attachment
rbgdriver.zip ( Number of downloads: 124 )

 
Top
I.Ren
CAT_IMG Posted on 20/11/2011, 18:58     +1   -1




bravo, anche se io l'elettronica tanto la odio quanto non la capisco : D

ad ogni modo la mia domanda è: autoit per arduino? wtf? io mi ricordavo solo c, c++ e un altro paio di linguaggi al massimo, ma non c'era autoit di mezzo o_o l'hanno aggiunto?
 
Top
*Sym98*
CAT_IMG Posted on 20/11/2011, 19:02     +1   -1




Mi piacerebbe molto riuscire a fare queste cose, in particolare realizzare un robottino. Anche se ho ancora molto da imparare, e penso che lo farò (se lo farò) quando avrò un pò di tempo libero.

CITAZIONE (ƒritzer @ 20/11/2011, 18:52) 
Se sei riuscito a leggere almeno fino a qui, fammelo sapere in qualche modo.

Ci sono riuscito, ma non ci ho capito molto. :asd:

Edited by *Sym98* - 20/11/2011, 19:04
 
Top
CAT_IMG Posted on 20/11/2011, 19:06     +1   -1

So implementare gli object

Group:
Admin
Posts:
1,215
Reputazione:
+150

Status:


CITAZIONE (I.Ren @ 20/11/2011, 18:58) 
bravo, anche se io l'elettronica tanto la odio quanto non la capisco : D

ad ogni modo la mia domanda è: autoit per arduino? wtf? io mi ricordavo solo c, c++ e un altro paio di linguaggi al massimo, ma non c'era autoit di mezzo o_o l'hanno aggiunto?

AutoIt rimane fermo dov'è, cioè sul computer.
Il linguaggio per qualunque controllore è sempre lo stesso, il linguaggio macchina. Che poi ci sono compilatori per il linguaggio C++ o per l'Assembly, o per il BASIC o il Pascal è un altro discorso.

Su Arduino non ci sono finestre da spostare, perché aggiungere AutoIt (che tra l'altro è chiuso e di scripting)?

Penso tu abbia frainteso il mio post: AutoIt comunica tramite porta seriale con il firmware (scritto in C++) di Arduino...

CITAZIONE (*Sym98* @ 20/11/2011, 19:02) 
Mi piacerebbe molto riuscire a fare queste cose, in particolare realizzare un robottino. Anche se ho ancora molto da imparare, e penso che lo farò (se lo farò) quando avrò un pò di tempo libero.

CITAZIONE (ƒritzer @ 20/11/2011, 18:52) 
Se sei riuscito a leggere almeno fino a qui, fammelo sapere in qualche modo.

Ci sono riuscito, ma non ci ho capito molto. :asd:


Per quanto riguarda Arduino e Autoit, anche io pensavo che non fosse supportato...

Hahaha grazie per il tentativo ;)

Costruire robot è faticoso e dispendioso. Io ad esempio sto cercando di costruire un robot a quattro ruote ("macchinina" per dirlo in modo semplice), basata su Arduino e una Fonera modificata, partendo da una macchinina già fatta (così non devo costruire il telaio, progettare un driver per i motori, costruire lo sterzo...), ma mi mancano i soldi e sono fermo.

Se hai bisogno di aiuto chiedi.
 
Top
*Sym98*
CAT_IMG Posted on 20/11/2011, 19:09     +1   -1




Io invece vorrei provare a costruire un robot con due ruote, due motori, una ruota pivottante, due sensori per farlo orientare e, ovviamente, il telaio.
Per quanto riguarda i soldi, quelli mancano a tutti. xD
 
Top
CAT_IMG Posted on 20/11/2011, 19:18     +1   -1

So implementare gli object

Group:
Admin
Posts:
1,215
Reputazione:
+150

Status:


CITAZIONE (*Sym98* @ 20/11/2011, 19:09) 
Io invece vorrei provare a costruire un robot con due ruote, due motori, una ruota pivottante, due sensori per farlo orientare e, ovviamente, il telaio.
Per quanto riguarda i soldi, quelli mancano a tutti. xD

Mi fai un disegnino? (sul serio!)
 
Top
*Sym98*
CAT_IMG Posted on 20/11/2011, 19:22     +1   -1




C'è tutto qui.
 
Top
CAT_IMG Posted on 20/11/2011, 19:32     +1   -1

So implementare gli object

Group:
Admin
Posts:
1,215
Reputazione:
+150

Status:


CITAZIONE (*Sym98* @ 20/11/2011, 19:22) 
C'è tutto qui.

Penso che questo si possa costruire con qualche decina di euro... Per il mio robot se ne vanno 90€ solo per la Fonera...
 
Top
*Sym98*
CAT_IMG Posted on 20/11/2011, 19:33     +1   -1




Si, anche se quello che mi preoccupa sono i sensori.
Lì c'è scritto che costano molto, e da quello che ho capito crearli deve essere piuttosto complicato. Tu sai più o meno quanto potrebbero costare?
 
Top
CAT_IMG Posted on 20/11/2011, 19:39     +1   -1

So implementare gli object

Group:
Admin
Posts:
1,215
Reputazione:
+150

Status:


CITAZIONE (*Sym98* @ 20/11/2011, 19:33) 
Si, anche se quello che mi preoccupa sono i sensori.
Lì c'è scritto che costano molto, e da quello che ho capito crearli deve essere piuttosto complicato. Tu sai più o meno quanto potrebbero costare?

Puoi usare dei finecorsa come questi, o se vuoi andare sul sicuro prendi questi.
 
Top
I.Ren
CAT_IMG Posted on 20/11/2011, 19:59     +1   -1




CITAZIONE (ƒritzer @ 20/11/2011, 19:06) 
CITAZIONE (I.Ren @ 20/11/2011, 18:58) 
bravo, anche se io l'elettronica tanto la odio quanto non la capisco : D

ad ogni modo la mia domanda è: autoit per arduino? wtf? io mi ricordavo solo c, c++ e un altro paio di linguaggi al massimo, ma non c'era autoit di mezzo o_o l'hanno aggiunto?

AutoIt rimane fermo dov'è, cioè sul computer.
Il linguaggio per qualunque controllore è sempre lo stesso, il linguaggio macchina. Che poi ci sono compilatori per il linguaggio C++ o per l'Assembly, o per il BASIC o il Pascal è un altro discorso.

Su Arduino non ci sono finestre da spostare, perché aggiungere AutoIt (che tra l'altro è chiuso e di scripting)?

Penso tu abbia frainteso il mio post: AutoIt comunica tramite porta seriale con il firmware (scritto in C++) di Arduino...

CITAZIONE (*Sym98* @ 20/11/2011, 19:02) 
Mi piacerebbe molto riuscire a fare queste cose, in particolare realizzare un robottino. Anche se ho ancora molto da imparare, e penso che lo farò (se lo farò) quando avrò un pò di tempo libero.

CITAZIONE (ƒritzer @ 20/11/2011, 18:52) 
Se sei riuscito a leggere almeno fino a qui, fammelo sapere in qualche modo.

Ci sono riuscito, ma non ci ho capito molto. :asd:


Per quanto riguarda Arduino e Autoit, anche io pensavo che non fosse supportato...

Hahaha grazie per il tentativo ;)

Costruire robot è faticoso e dispendioso. Io ad esempio sto cercando di costruire un robot a quattro ruote ("macchinina" per dirlo in modo semplice), basata su Arduino e una Fonera modificata, partendo da una macchinina già fatta (così non devo costruire il telaio, progettare un driver per i motori, costruire lo sterzo...), ma mi mancano i soldi e sono fermo.

Se hai bisogno di aiuto chiedi.

ahh ecco avevo capito male, pensavo che programmassi arduino in autoit
 
Top
CAT_IMG Posted on 20/11/2011, 20:01     +1   -1

So implementare gli object

Group:
Admin
Posts:
1,215
Reputazione:
+150

Status:


CITAZIONE (I.Ren @ 20/11/2011, 19:59) 
CITAZIONE (ƒritzer @ 20/11/2011, 19:06) 
CITAZIONE (I.Ren @ 20/11/2011, 18:58) 
bravo, anche se io l'elettronica tanto la odio quanto non la capisco : D

ad ogni modo la mia domanda è: autoit per arduino? wtf? io mi ricordavo solo c, c++ e un altro paio di linguaggi al massimo, ma non c'era autoit di mezzo o_o l'hanno aggiunto?

AutoIt rimane fermo dov'è, cioè sul computer.
Il linguaggio per qualunque controllore è sempre lo stesso, il linguaggio macchina. Che poi ci sono compilatori per il linguaggio C++ o per l'Assembly, o per il BASIC o il Pascal è un altro discorso.

Su Arduino non ci sono finestre da spostare, perché aggiungere AutoIt (che tra l'altro è chiuso e di scripting)?

Penso tu abbia frainteso il mio post: AutoIt comunica tramite porta seriale con il firmware (scritto in C++) di Arduino...

CITAZIONE (*Sym98* @ 20/11/2011, 19:02) 
Mi piacerebbe molto riuscire a fare queste cose, in particolare realizzare un robottino. Anche se ho ancora molto da imparare, e penso che lo farò (se lo farò) quando avrò un pò di tempo libero.

CITAZIONE (ƒritzer @ 20/11/2011, 18:52) 
Se sei riuscito a leggere almeno fino a qui, fammelo sapere in qualche modo.

Ci sono riuscito, ma non ci ho capito molto. :asd:


Per quanto riguarda Arduino e Autoit, anche io pensavo che non fosse supportato...

Hahaha grazie per il tentativo ;)

Costruire robot è faticoso e dispendioso. Io ad esempio sto cercando di costruire un robot a quattro ruote ("macchinina" per dirlo in modo semplice), basata su Arduino e una Fonera modificata, partendo da una macchinina già fatta (così non devo costruire il telaio, progettare un driver per i motori, costruire lo sterzo...), ma mi mancano i soldi e sono fermo.

Se hai bisogno di aiuto chiedi.

ahh ecco avevo capito male, pensavo che programmassi arduino in autoit

No XD adesso aggiungo sources e video...
 
Top
*Sym98*
CAT_IMG Posted on 20/11/2011, 20:03     +1   -1




CITAZIONE (ƒritzer @ 20/11/2011, 19:39) 
CITAZIONE (*Sym98* @ 20/11/2011, 19:33) 
Si, anche se quello che mi preoccupa sono i sensori.
Lì c'è scritto che costano molto, e da quello che ho capito crearli deve essere piuttosto complicato. Tu sai più o meno quanto potrebbero costare?

Puoi usare dei finecorsa come questi, o se vuoi andare sul sicuro prendi questi.

Grazie. :)
 
Top
»Master
CAT_IMG Posted on 20/11/2011, 20:05     +1   -1




bravo bravo ^^
ho capito piuttosto bene dai, però non ho ancora capito come fai la interfaccia tra autoit e il firmware del arduino asd
 
Top
CAT_IMG Posted on 20/11/2011, 20:10     +1   -1

So implementare gli object

Group:
Admin
Posts:
1,215
Reputazione:
+150

Status:


CITAZIONE (*Sym98* @ 20/11/2011, 20:03)
CITAZIONE (ƒritzer @ 20/11/2011, 19:39) 
Puoi usare dei finecorsa come questi, o se vuoi andare sul sicuro prendi questi.

Grazie. :)

Figurati :D

CITAZIONE (»Master @ 20/11/2011, 20:05)
bravo bravo ^^
ho capito piuttosto bene dai, però non ho ancora capito come fai la interfaccia tra autoit e il firmware del arduino asd

Comunicazione seriale.
 
Top
27 replies since 20/11/2011, 18:52   966 views
  Share