Go Down

Topic: Neofita chiede aiuto per progetto Arduino-acquario!! (Read 7281 times) previous topic - next topic

millennium-bug

Quindi non mi interessa collegare l'I2C ai pin A4 e A5?
Siccome ho visto solo video didattici inerenti al software di arduino uno, non cambia niente col 2009?

PaoloP

Scusa Millennium, ma sto seguendo 4000 discussioni e non mi ricordo le specifiche del tuo progetto.
Se hai ad esempio un RTC hardware certo che lo collegherai ai pin A4 e A5, così come un LCD i2c. Nella UNO R3 invece puoi collegarli indifferentemente ai pin SDA e SCD o A4 e A5 perché sono collegati tra di loro tramite le piste del PCB.
Riguardo all'altra differenza, il convertitore seriale-USB della 2009 monto il chip FTDI, quindi l'unica cosa da fare e installare il driver apposito che è diverso da quello della UNO che monta un'altro chip come convertitore.
Il chip montato è identico, cambiano solo le impostazioni dell'IDE per la verifica e l'upload: dovrai selezionare "Arduino Duemilanove /w AtMega 328".
Comunque puoi sempre prendere una UNO R3 e toglierti il pensiero.  :smiley-mr-green:

millennium-bug

Ok PaoloP, ti ringrazio infinitamente. Oggi effettuo l'acquisto e vediamo cosa ne esce :)

millennium-bug

Eccoci qua!!
Mi è appena arrivato

- Arduino ( alla fine ho deciso di prendere l' uno così da tenermi al passo coi tempi :D )
- Bread board
- Cavetti
- Screw Shield

Sto vedendo un pò di programmarlo come voglio io e inizio con una domanda ultra ultra neofita:

Ma tra i pin pwm dell'arduino e quelli del driver, mica ci vogliono resistori o altro?!?

PaoloP

Si. Per limitare la corrente in uscita.
Almeno che tu non sappia se nell'integrato del driver è già presente.
Riesci a leggere la sigla su chip?

millennium-bug

#35
Apr 26, 2013, 04:02 pm Last Edit: Apr 26, 2013, 04:10 pm by millennium-bug Reason: 1
Perdona l'ignoranza, quale sarebbe il chip?




PaoloP

Era U1... ma non serve più.  XD
La resistenza c'è già..  :smiley-roll-blue:

E' Rpwm

:smiley-mr-green: :smiley-mr-green: :smiley-mr-green:

millennium-bug

Yeaaah ti ringrazio.
...quante brutte figure sto facendo su questo forum...come sono ignorante mammamia :D

millennium-bug

#38
Apr 26, 2013, 07:24 pm Last Edit: Apr 27, 2013, 12:59 pm by millennium-bug Reason: 1
Ok Adesso avrei bisogno della vostra pazienza.
Sto cercando di programmare l'arduino per fargli accendere e spegnere i led, attraverso i driver) come abbiamo detto.
Mi aiutereste?

Prima di tutto: basta che collego i pin ai driver, o devo portare anche un cavo collegato al pin GND?

Guardando tra gli esempi che si trovano nel  software dell'arduino ho trovato questo:
Code: [Select]
*/
/*
Fade

This example shows how to fade an LED on pin 9
using the analogWrite() function.

This example code is in the public domain.

int led = 9;           // the pin that the LED is attached to
int brightness = 0;    // how bright the LED is
int fadeAmount = 5;    // how many points to fade the LED by

// the setup routine runs once when you press reset:
void setup()  {
 // declare pin 9 to be an output:
 pinMode(led, OUTPUT);
}

// the loop routine runs over and over again forever:
void loop()  {
 // set the brightness of pin 9:
 analogWrite(led, brightness);    

 // change the brightness for next time through the loop:
 brightness = brightness + fadeAmount;

 // reverse the direction of the fading at the ends of the fade:
 if (brightness == 0 || brightness == 255) {
   fadeAmount = -fadeAmount ;
 }    
 // wait for 30 milliseconds to see the dimming effect    
 delay(30);                            
}



Devo solo capire come aggiungere le altre porte e come far sì che il fade sia più lento e che dopo che i led collegati ad un driver sono alla massima intensità, passino 8 ore dopo che riprendano a spegnersi...

millennium-bug

#39
Apr 27, 2013, 10:53 am Last Edit: Apr 27, 2013, 12:56 pm by millennium-bug Reason: 1
Allora per il momento sono riuscito a fare questo ( le luci si spengono di botto ma almeno alternate, perchè non ho capito come funziona il FADE):

Code: [Select]
void setup() {                
 // initialize the digital pin as an output.
 pinMode(3, OUTPUT);
 pinMode(5, OUTPUT);
 pinMode(6, OUTPUT);
 pinMode(9, OUTPUT);
 pinMode(10, OUTPUT);
 pinMode(11, OUTPUT);
}


void loop() {
 digitalWrite(3, HIGH);      //   blu 1               13,00
 delay(300000);               // Wait for 5 min
 digitalWrite(5, HIGH);     / /   blu 2               13,05
 delay(3300000);            // Wait for 55 min
 digitalWrite(6, HIGH);     //   white 1             14,00
 delay(300000);               // wait for 5 min
 digitalWrite(9, HIGH);     //   white 2             14,05
 delay(300000);              // wait for 5 min
 digitalWrite(10, HIGH);   //   white 3             14,10
 delay(300000);           // wait for 5 min
 digitalWrite(11, HIGH);   //   white 4             14,15
 delay(27900000);         // Wait for 7h - 45 min
 digitalWrite(6, LOW);      //     OFF               22,00
 delay(300000);           // wait for 5 min
 digitalWrite(9, LOW);        //                       22,05
 delay(300000);           // wait for 5 min
 digitalWrite(10, LOW);      //                       22,10
 delay(300000);           // wait for 5 min
 digitalWrite(11, LOW);      //                       22,15
 delay(3600000);          // Wait for 1 hour
 digitalWrite(3, LOW);    //    Blue OFF           23,15
 delay(300000);           // Wait for 5 min        
 digitalWrite(5, LOW);       //                        23,20
 delay(900000);           // Wait for 15 min       23,35
}


millennium-bug

Ho collegato l'arduino alla bread board e sembra che così come ho impostato vada bene.
Ho solo un problema:

Il primo led si accende, e rimane acceso, ma ogni tanto si spegne assieme al piccolo led (giallo, ma che nei video che ho visto è verde) che sta sulla scheda, tra il pin 13 e il GND...cosa c'è che non va?
...e questa cosa sembra faccia ripartire il loop che ho creato, da zero...

PaoloP

Ricorda di scrivere il codice con gli appositi tag CODE: pulsante # nell'editor, sopra le faccine.

Se stai provando con singoli led e non con i driver, ricordati la resistenza per ciascuno.

Ad esempio:


Per fare le prove usa dei delay molto più piccoli.
Sul forum trovi molti esempi di codice per alba e tramonto tra cui quello di RiciWeb: Ardu Aquarium Controller nella sezione Megatopic.

millennium-bug

#42
Apr 27, 2013, 12:50 pm Last Edit: Apr 27, 2013, 12:57 pm by millennium-bug Reason: 1
PaoloP ti ringrazio perchè mi rispondi sempre e perchè hai pazienza con me che purtroppo sono nuovo in questo mondo ma anche in quello dell'elettrotecnica più elementare.
Ho inserito come mi hai detto il codice nel tag CODE ;)

Detto questo, delle prove con delay più piccoli (di qualche secondo) le ho fatte e funzionava, rimane però sempre questo piccolo led giallo acceso, è normale? Non deve essere verde?


Se stai provando con singoli led e non con i driver, ricordati la resistenza per ciascuno.


In effetti non sto usando resistenze, perchè non ne ho, però uso led potenti che sembrano reggere...fa lo stesso? Appena posso oviamente vado a comprarle.


Sul forum trovi molti esempi di codice per alba e tramonto tra cui quello di RiciWeb: Ardu Aquarium Controller nella sezione Megatopic.


Sto cercando di "decifrarlo" ma siccome lui ha controllato molte più cose, mi perdo nei progetti... :(

PaoloP

Il led regge, il pin di Arduino no.
Se eroga una corrente maggiore di 40mA si brucia.
La resistenza non è utile, è necessaria.

Credo che il colore del led dipenda dalla scheda.
Non mi pare ci siano in giro schede con led bicolore.

millennium-bug

#44
Apr 27, 2013, 01:33 pm Last Edit: Apr 27, 2013, 01:37 pm by millennium-bug Reason: 1
Doh ok!!
Spero di non aver bruciato niente...

3 domande:

1) Che resistenze devo comprare?

2) Agli attacchi PWM dei driver deve arrivare solo il cavo elettrico del pin dell'arduino, o deve arrivarci anche quello del GND?

3) Che trasformatore devo attaccare all'arduino? Io ne ho uno che ho messo a 5v  basta questo, o devo accertarmi di qualche altro valore?

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy