Inseguitore solare con arduino info e aiuto

Salve a tutti.
Ho iniziato da qualche giorno a ‘‘giocare’’ con il fantastico mondo di arduino.
Per me è un esperienza totalmente nuova.
Sono un perito elettronico con 6 anni di esperienza nel mondo dell’elettronica, vari tipi di saldatura, test di ogni tipo,realizzazione circuiti stampati e cosi’ via.
Ora per puro caso mi sono cimentato in un progetto trovato in rete, non so se posso postare il link.
Dove il realizzatore , riesce a controllare un servomotore con arduino e 2 semplici fotoresistenze.
Di materiale ho tutto.
Ho arduino 2009.
Vi posto il codice del programma.
Ora viene il problema, ho assemblato tutto, sia elettronicamente che meccanicamente, ho un servo motore semplice di basse pretese,
solo che non capisco come mai , invece di inseguire la luce, segue l’ombra.

/*
* Inseguitore solare - prima parte
*
* Autore: Mauro Alfieri
* web: www.mauroalfieri.it
* Tw: @mauroalfieri.it
*
*/

#include <Servo.h>

int sensorPin = A0;
int servoPin  = 9;

int sensorValue = 0;
int servoGrad = 90;
int tolleranza = 40;

Servo myservo;

void setup() {
 pinMode( sensorPin, INPUT);
 myservo.attach( servoPin );
 myservo.write( servoGrad );
}

void loop() {
 sensorValue = analogRead(sensorPin);
 if ( sensorValue < (512-tolleranza) )
 {
   if (servoGrad < 180) servoGrad++;
 }

 if ( sensorValue > (512+tolleranza) )
 {
   if (servoGrad > 0) servoGrad--;
 }

 myservo.write( servoGrad ); 

 delay(100);
}

L’autore è Mauro Alfieri e l’ho preso sul suo sito

Grazie a tutti

Buongiorno, essendo il tuo primo post nella sezione Italiana del forum, nel rispetto del nostro regolamento, ti chiedo cortesemente di presentarti QUI ([u]spiegando bene quali conoscenze hai di elettronica e di programmazione[/u] ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie. :)

Chiedo scusa, Ho fatto quanto chiesto, mi sono presentato nel migliore dei modi

>trabo: ti ricordo che in conformità al regolamento, punto 7, devi editare il tuo post (quindi NON scrivendo un nuovo post, ma utilizzando il bottone More → Modify che si trova in basso a destra del tuo post) e racchiudere il codice all’interno dei tag CODE (… sono quelli che in edit inserisce il bottone con icona fatta così: </>, tutto a sinistra).

In pratica, tutto il tuo codice dovrà trovarsi racchiuso tra due tag: [code] _il _tuo_ codice_ [/code] così da non venire interpretato e non dare adito alla formazione di caratteri indesiderati o cattiva formattazione del testo. Grazie. :slight_smile:

Guglielmo

>fabpolli: … aggiungi anche questa quando vedi il codice NON messo tra gli appositi tag. Grazie :slight_smile:

fatto

trabo: Ora per puro caso mi sono cimentato in un progetto trovato in rete, non so se posso postare il link.

Nessun problema, metti pure il link così diamo anche noi un'occhiata al progetto.

trabo: solo che non capisco come mai , invece di inseguire la luce, segue l'ombra.

Cioè? Evita la luce? Non è che i motori si muovono al contrario ?

Guglielmo

solo che non capisco come mai , invece di inseguire la luce, segue l'ombra.

un impianto solare eliofobico...non so se commercialmente avrebbe successo :D

Nel senso, che invece di muoversi quando punto la luce sulla fotoresistenza, si muove quando punto l'ombra. Quali parametri devo modificare per fargli fare l'opposto, non credo sia un problema di polarità del motore

ecco il link a livello di circuito dovrebbe essere tutto ok.

http://www.mauroalfieri.it/elettronica/inseguitore-solare-con-arduino.html

trabo: Nel senso, che invece di muoversi quando punto la luce sulla fotoresistenza, si muove quando punto l'ombra.

:o ... ma ... a me sembra abbastanza normale.

Quell'affare normalmente è fatto per tenere in luce i pannelli solari (... o quello che vuoi tu) e quindi ... quando le fotoresistenze sono all'ombra, muovono i motori per cercare il sole e quando lo trovano ... si fermano !

Guglielmo

Sembra ho risolto, invertendo < con >, ora funziona , è uno spettacolo

Suggerimenti: Puoi mettere le 2 fotoresistenze ognuna a 45° (in complessivo 90° tra una e l' altra) (errore nella foto del tutorial) oppure mettere entrambe le LDR in piano e un separatore (piccolo pezzo di cartone o simile) in mezzo che mette in ombra una delle fotocelle se non sono orientate verso il sole. Seconda possibilitá: calcolare la posizone del sole e muovere i servo di consequenza.

Ciao Uwe

uwefed: Suggerimenti: Puoi mettere le 2 fotoresistenze ognuna a 45° (in complessivo 90° tra una e l' altra) (errore nella foto del tutorial) oppure mettere entrambe le LDR in piano e un separatore (piccolo pezzo di cartone o simile) in mezzo che mette in ombra una delle fotocelle se non sono orientate verso il sole. Seconda possibilitá: calcolare la posizone del sole e muovere i servo di consequenza.

Ciao Uwe

Grazie mille per il consiglio, infatti ho sistemato le 2 fotoresistenze in piano, con un separatore per generare ombra. Ora in rete ho acquistato un servo motore che gira di 360 gradi, come dovrei modificare questo programma? cambiare le impostazioni da 180 a 360? Mi è arrivato oggi, ma inserendolo , non effettua gli stessi movimenti dell'altro.

Ho preso questo in quanto ha gli ingranaggi in ferro.

Grazie

Spesso se un servo viene descritto 360° é inteso che é modificato per una rotazione continua (il pilotaggio lo fa ruotare in una o l' altra direzione) non un posizionameno di 360° in funzione del pilotaggio.

è opportuno modificare un Servo in questo modo perché ha giá tutto incorporato per usarlo come motore per un robottino: Elettronica di pilotaggio e di potenza, motore e ingranaggio demoltiplicatore.

Ciao Uwe

uwefed: Spesso se un servo viene descritto 360° é inteso che é modificato per una rotazione continua (il pilotaggio lo fa ruotare in una o l' altra direzione) non un posizionameno di 360° in funzione del pilotaggio.

è opportuno modificare un Servo in questo modo perché ha giá tutto incorporato per usarlo come motore per un robottino: Elettronica di pilotaggio e di potenza, motore e ingranaggio demoltiplicatore.

Ciao Uwe

Veramente molto gentile. Quindi in poche parole, cosi come è non è utilizzabile, ho notato infatti che collegandolo ad arduino, come l'altro, gira all'infinito, Ho notato che questo servo, sotto ha un potenziometro

uwefed: Spesso se un servo viene descritto 360° é inteso che é modificato per una rotazione continua (il pilotaggio lo fa ruotare in una o l' altra direzione) non un posizionameno di 360° in funzione del pilotaggio.

è opportuno modificare un Servo in questo modo perché ha giá tutto incorporato per usarlo come motore per un robottino: Elettronica di pilotaggio e di potenza, motore e ingranaggio demoltiplicatore.

Ciao Uwe

Ho trovato questa guida,potrebbe andare con il servo che ho acquistato? https://arduinoelettronica.com/2012/02/29/isarduino-micro-robot-inseguitore-solare-con-arduino/

Grazie

trabo: Grazie mille per il consiglio, infatti ho sistemato le 2 fotoresistenze in piano, con un separatore per generare ombra. Ora in rete ho acquistato un servo motore che gira di 360 gradi, come dovrei modificare questo programma? cambiare le impostazioni da 180 a 360? Mi è arrivato oggi, ma inserendolo , non effettua gli stessi movimenti dell'altro.

Ho preso questo in quanto ha gli ingranaggi in ferro.

Grazie

Ciao a tutti! Potresti postare alcune foto su come hai assemblato il tutto e su come hai creato le zone d'ombra sulle fotocellule?

Grazie mille