Go Down

Topic: Inseguitore solare con arduino info e aiuto (Read 886 times) previous topic - next topic

trabo

Sep 03, 2018, 09:42 am Last Edit: Sep 03, 2018, 10:22 am by trabo
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.

Code: [Select]
/*
* 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

fabpolli

#1
Sep 03, 2018, 09:59 am Last Edit: Sep 03, 2018, 10:00 am by fabpolli
Buongiorno,
essendo il tuo primo post nella sezione Italiana del forum, nel rispetto del nostro regolamento, ti chiedo cortesemente di presentarti QUI (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con MOLTA attenzione il su citato REGOLAMENTO ... Grazie. :)

trabo

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

gpb01

#3
Sep 03, 2018, 10:19 am Last Edit: Sep 03, 2018, 10:20 am by gpb01
>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. :)

Guglielmo

>fabpolli: ... aggiungi anche questa quando vedi il codice NON messo tra gli appositi tag. Grazie :)
Search is Your friend ... or I am Your enemy !


gpb01

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.

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
Search is Your friend ... or I am Your enemy !

ORSO2001

Quote
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

trabo

#7
Sep 03, 2018, 01:47 pm Last Edit: Sep 03, 2018, 01:48 pm by trabo
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

gpb01

#8
Sep 03, 2018, 01:55 pm Last Edit: Sep 03, 2018, 01:56 pm by gpb01
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
Search is Your friend ... or I am Your enemy !

trabo

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

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

trabo

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

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

trabo

#13
Sep 12, 2018, 09:23 am Last Edit: Sep 12, 2018, 09:26 am by trabo
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

trabo

#14
Sep 12, 2018, 04:24 pm Last Edit: Sep 12, 2018, 04:25 pm by trabo
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

Go Up