Pages: [1]   Go Down
Author Topic: programmare led per effetto accensione neon  (Read 1611 times)
0 Members and 1 Guest are viewing this topic.
venezia
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao a tutti sono nuovo del forum e' da un po che vi leggo io sono un modellista sto costruendo un rimorchiatore in scala per la motorizzazione riesco a gestire tutto con la radio pero sono arrivato all impianto di illuminazione e a questo punto volevo realizzare un effetto tipo accensione neon pero con una serie di 5 microled che installero' nel modello, per fare questo potrei programmare un codice con arduino e ora volevo sapere come posso realizzarlo,premetto che di elettronica non sono molto aferrato smiley-sad e quindi sono qui a chiedere un buon consiglio grazie.
Logged

Milano, Italy
Offline Offline
Faraday Member
**
Karma: 10
Posts: 3085
Sideralis Arduino!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ho appena scritto una routine simile per l'accensione di tubi simil neon, ecco il mio codice

Code:
long tempo=millis();

void loop(){
 
  if (millis()-tempo <= 500) {
    two();
    delay(random(1,100));
    blank();
  }
  else if (millis()-tempo <= 1000) {
    two();
    delay(random(1,500));
    blank();
  }

ovviamente bruttissimo perche' si trattava solo di un test, in questo caso diciamo che accende il led 2, per i primi 500 millisecondi lampeggia acceso/spento con una varianza di massimo 100 millisecondi e per un altro mezzo secondo lampeggia con una varianza fino a 500ms, fino ad accendersi stabilmente.

F
Logged

Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

venezia
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

grazie federico pero' quello che volevo sapere e' inanzitutto va bene per un applicaione cosi anche arduino nano? nel caso come devo collegare i led ? cioe lo schema che devo realizzare quale sarebbe?
scusate ma non ne so molto
grazie
Logged

Milano, Italy
Offline Offline
Faraday Member
**
Karma: 10
Posts: 3085
Sideralis Arduino!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Si va bene, ti basta collegare i led alle uscite di arduino interposti da una resistenza, da 1k ad esempio. Forse pero' prima e' meglio che fai anche qualche esperimento in merito! ^__^
Logged

Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 234
Posts: 20168
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao 1683al

Se non ho capito male cuoi simulare l'accensione di un tubo flurescente ai vapori di mercurio a bassa pressione. Nel senso divebta arancione incandescente ai terminale e poi lampeggia per qualche secondo e poi si accende un po fiacco e dopo 2 minuti é acceso forte con una luce bianco-fredda?

Ti consiglio di usare un Arduino mini perché costa di meno visto che non hai l' interfaccia USB. Quello devi comprare separatramente per programmarlo.

Per collegare i LED basta una resistenza per ogni led e puoi collegarlo direttamente alle uscite.
Devi mettere qualcosa davanti ai led per avere una distribuzione della luce non puntiforme ma lunga.

Ciao Uwe
 
 
Logged

venezia
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

vi ringrazio tutti molto utili le vostre risposte grazie ora procedero' per uwe:si lo pensavo anch'io di schermare i led per evitare un effetto puntiforme.
Logged

venezia
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao ho provato acaricare lo sketch ma mi da errore nello specifico ti allego la schermata


* problem.tiff (67.32 KB, 500x600 - viewed 68 times.)
Logged

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 234
Posts: 20168
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Qui messaggi che sono visibili dicono che le funzioni two e blank non sono state definite.
Ciao Uwe
Logged

venezia
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

e si infatti avevo capito pero' che consiglio mi date ? cosa dovrei scrivere?
ciao per finire il codice cosa manca??  smiley-confuse
grazie in partenza
Logged

Global Moderator
Italy
Online Online
Brattain Member
*****
Karma: 312
Posts: 21606
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusa ma riapri un thread dopo 1 anno e mezzo e speri anche che qualcuno si ricordi dei tuoi problemi?  smiley-yell
Vedendo l'immagine, manca mezzo programma. Mancano la dichiarazione di setup() così come il corpo delle funzioni che chiami (es. blank()).
Logged


venezia
Offline Offline
Newbie
*
Karma: 0
Posts: 6
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

hai ragione.
coamunque ho trovato un esempio dal programma e ho provato a modificare un po' i valori preimpostati e pare che ci sia riuscito nel mio intento e per quello ch emi serve sono abbastanza soddisfatto.
eco il codice per chi serve

 /*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.
 
  This example code is in the public domain.
 */
 
// Pin 13 has an LED connected on most Arduino boards.
// give it a name:
int led = 13;

// the setup routine runs once when you press reset:
void setup() {               
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);     
}

// the loop routine runs over and over again forever:
void loop() {
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(12);
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(75);               
   digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(12);   
 
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(75);     
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(12);
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(75);
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(90000000);             
}



ciao a tutti smiley e grazie
Logged

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 234
Posts: 20168
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Scusa ma riapri un thread dopo 1 anno e mezzo e speri anche che qualcuno si ricordi dei tuoi problemi?  smiley-yell
Vedendo l'immagine, manca mezzo programma. Mancano la dichiarazione di setup() così come il corpo delle funzioni che chiami (es. blank()).
Non é colpa sua, era Federico che gli ha consigliato il codice senza dare tutto il necessario che funzioni.

Ciao Uwe
Logged

Pages: [1]   Go Up
Jump to: