sto cercando di fare un semplice crepuscolare con arduino.
In pratica per il momento faccio accendere un led giusto per provare.
Il problema è quando avvio il programma perché quando qqscurisco il fotodiodo il led si siaccende ma dopo poco si spegne per poi riccendersi,in pratica ali inizio i valori sono alti e giustamente si accende il led poi per qualche3 strano motivo inizia a leggere i valori piu bassi fino allo 0 che si spegne il led per poi ripartire con i valori alti e ricomincia il ciclo, e non capisco perche lo faccia nonostante il fotodiodo sia oscurato.
i contatti sono messi cosi;
Codice dello sketch;
[*]
- Codice: Seleziona tutto
// VARIABILI & COSTANTI ↓
// Tempo intervallo lettura dati FotoDiodo
const unsigned long interval_a = 5000;
unsigned long previousMillis_a = 0;
/************************************* PIEDINATURA ***********************************************************************/
//N° Pin della BASE TRANSISTOR
const byte pin_B_Tr = 6;
// N° dell Pin Analogico dell' FotoDiodo + limite fotodiodo.
const byte pin_Fd = A0;
const int Limite_Fd = 45;
int valLumen = 0;
/************************************************************************************************************************/
void setup() {
Serial.begin ( 9600 );
pinMode ( pin_B_Tr, OUTPUT );
}
/**************************************************************************************************************************/
void Lettura_Fd () {
valLumen = analogRead ( pin_Fd ); // 0 - 1023
Serial.print ( " Sensore Crepuscolare : " );
Serial.print ( valLumen, DEC );
Serial.println (" ☼ ");
}
/**************************************** F I N E dei V O I D **************************************************************/
void loop () {
unsigned long currentMillis = millis();
/******* Richiamo per F O T O D I O D O eseguito solo ogni intervallo di 5000 milisecondi *******************/
// Lettura FotoDiodo
if ( millis() - previousMillis_a >= interval_a )
{
Lettura_Fd ();
previousMillis_a = currentMillis;
}
if ( Limite_Fd < valLumen ) // Sono stati invertiti per far funionare i led
{
digitalWrite ( pin_B_Tr, LOW );
}
else
{
digitalWrite ( pin_B_Tr, HIGH );
}
} // void loop
/****************************************** F I N E ****************************************************************/
[/*]

Elettrotecnica e non solo (admin)
Un gatto tra gli elettroni (IsidoroKZ)
Esperienza e simulazioni (g.schgor)
Moleskine di un idraulico (RenzoDF)
Il Blog di ElectroYou (webmaster)
Idee microcontrollate (TardoFreak)
PICcoli grandi PICMicro (Paolino)
Il blog elettrico di carloc (carloc)
DirtEYblooog (dirtydeeds)
Di tutto... un po' (jordan20)
AK47 (lillo)
Esperienze elettroniche (marco438)
Telecomunicazioni musicali (clavicordo)
Automazione ed Elettronica (gustavo)
Direttive per la sicurezza (ErnestoCappelletti)
EYnfo dall'Alaska (mir)
Apriamo il quadro! (attilio)
H7-25 (asdf)
Passione Elettrica (massimob)
Elettroni a spasso (guidob)
Bloguerra (guerra)













