author

JLSiles79

Inbox View Profile
2Comments

Tell us about yourself!

  • JLSiles79 commented on geo bruce's instructable Arduino Solar Tracker
    Arduino Solar Tracker

    Hi, thank you very much for the idea. I adapt it for 2 LDR: // (*) según el montaje se puede modificar#include <Servo.h> // include la libreria Servo.hServo horizontal; // se nombra el servo horizontalint LDRl = 1; // pin de la fotoresistencia leftint LDRr = 2; // (*) según el montaje se puede modificar#include <Servo.h> // include la libreria Servo.h Servo horizontal; // se nombra el servo horizontalint LDRl = 1; // pin de la fotoresistencia leftint LDRr = 2; // pin de la fotoresistencia rightint delayPot = 4; // pin del potenciometro 10k para la velocidadint tolPot = 5; // pin del potenciometro 10k toleranciaint paso = 2; // estos son los grados de cada movimiento (*)int serv…

    see more »

    Hi, thank you very much for the idea. I adapt it for 2 LDR: // (*) según el montaje se puede modificar#include <Servo.h> // include la libreria Servo.hServo horizontal; // se nombra el servo horizontalint LDRl = 1; // pin de la fotoresistencia leftint LDRr = 2; // (*) según el montaje se puede modificar#include <Servo.h> // include la libreria Servo.h Servo horizontal; // se nombra el servo horizontalint LDRl = 1; // pin de la fotoresistencia leftint LDRr = 2; // pin de la fotoresistencia rightint delayPot = 4; // pin del potenciometro 10k para la velocidadint tolPot = 5; // pin del potenciometro 10k toleranciaint paso = 2; // estos son los grados de cada movimiento (*)int servoh = 90; // posicion inicial del servovoid setup(){ Serial.begin(9600); horizontal.attach(9); //se define el pin del servo horizontal.write(servoh); delay(1000); horizontal.write(0); // this line helps to a inicial test delay(1000); // this line helps to a inicial test horizontal.write(180); // this line helps to a inicial test delay(1000); // this line helps to a inicial test horizontal.write(servoh); // this line helps to a inicial test delay(250); // this line helps to a inicial test}void loop() { int medidaLDRl = analogRead(LDRl); // medida LDR izquierdo (left) int medidaLDRr = analogRead(LDRr); // medida LDR derecho (right) int delaytime = analogRead(delayPot)/2 + 100; // potenciometro velocidad (*) int tol = (analogRead(tolPot)+10) / 10 + 10; // potenciometro tolerancia (*) int diffhoriz = medidaLDRl - medidaLDRr; // calcula la diferencia entre left and rigt if (diffhoriz < -1*tol || diffhoriz > tol) // check if the difference is in the tolerance else change horizontal angle { if (medidaLDRl > medidaLDRr) { servoh = servoh - paso; if (servoh < 0) { servoh = 0; } } else if (medidaLDRl < medidaLDRr) { servoh = servoh + paso; if (servoh > 180) { servoh = 180; } } else if (medidaLDRl == medidaLDRr) { // nothing } horizontal.write(servoh); } delay(delaytime);} // pin de la fotoresistencia rightint delayPot = 4; // pin del potenciometro 10k para la velocidadint tolPot = 5; // pin del potenciometro 10k toleranciaint paso = 2; // estos son los grados de cada movimiento (*)int servoh = 90; // posicion inicial del servovoid setup(){ Serial.begin(9600); horizontal.attach(9); //se define el pin del servo horizontal.write(servoh); delay(1000); horizontal.write(0); // this line helps to a inicial test delay(1000); // this line helps to a inicial test horizontal.write(180); // this line helps to a inicial test delay(1000); // this line helps to a inicial test horizontal.write(servoh); // this line helps to a inicial test delay(250); // this line helps to a inicial test}void loop() { int medidaLDRl = analogRead(LDRl); // medida LDR izquierdo (left) int medidaLDRr = analogRead(LDRr); // medida LDR derecho (right) int delaytime = analogRead(delayPot)/2 + 100; // potenciometro velocidad (*) int tol = (analogRead(tolPot)+10) / 10 + 10; // potenciometro tolerancia (*) int diffhoriz = medidaLDRl - medidaLDRr; // calcula la diferencia entre left and rigt if (diffhoriz < -1*tol || diffhoriz > tol) // check if the difference is in the tolerance else //change horizontal angle { if (medidaLDRl > medidaLDRr) { servoh = servoh - paso; if (servoh < 0) { servoh = 0; } } else if (medidaLDRl < medidaLDRr) { servoh = servoh + paso; if (servoh > 180) { servoh = 180; } } else if (medidaLDRl == medidaLDRr) { // nothing } horizontal.write(servoh); } delay(delaytime);}

    View Instructable »
  • JLSiles79 followed Digital Graphics, Beverages, Linux, Pie and 20 others channel