Motor paso a paso + Arduino + seguidor Solar (EV) (9 / 11 paso)

Paso 9: código

Les dejo el código de control, espero que no me he perdido nada, porque el editor volvió mi todo jaja XD.

Seguidor Solar Motor de paso a paso por hectorhhg

#include //Integrating biblioteca para tratar Stepper.h motores

#include //Integrating biblioteca de math.h de diseño para las operaciones matemáticas básicas

Declaración de constantes

#define motorStephor 200 //steps para motor horizontal

#define motorStepver 200 //steps para el motor vertical

Digitales pins

#define motor1hor 6

#define motor2hor 7

#define motor1ver 8

#define motor2ver 9

Variables

int prom; Promedio de cuatro LDR

pyr int; Fotodiodo BPW34

int h = 60; Pasos ejecutados por el motor horizontal

int v = 5; Pasos ejecutados por el motor vertical

int ltsensor; Valor de la LDR izquierda superior

int rtsensor; Valor de la LDR derecho superior

int rdsensor; Valor de la parte inferior derecha LDR

int ldsensor; Valor de la parte inferior izquierda LDR

sen int = 50; Sensibilidad

int dil; Promedio conjunto de LDR izquierda

int dit; Promedio conjunto de top LDR

dir int; Promedio conjunto de derecho de la LDR

int lo hizo; Medio conjunto de la parte inferior de la LDR

int diff; Diferencia entre LDR por encima del fondo

int diff2; Diferencia entre LDR de izquierda a derecha

int pup; superior del interruptor

int pdown; interruptor de baja

Paso a paso horStep (motorStephor, motor1hor, motor2hor);

Paso a paso paso a paso verStep (motorStepver, motor1ver, motor2ver);

Inicialización del programa

void setup)

{

horStep.setSpeed (30); Motor horizontal de RPM

verStep.setSpeed (10); Motor vertical de RPM

Puerto serie

Serial.Begin(9600);

Configuración de pines

pinMode (pyr, entrada);

pinMode (ltsensor, entrada);

pinMode (rtsensor, entrada);

pinMode (ldsensor, entrada);

pinMode (rdsensor, entrada);

pinMode (pup, entrada);

pinMode (pdown, entrada);

}

void loop)

{

hacer

{

Pyr = analogRead(0); Lectura de entradas analógicas

ltsensor = analogRead (1) * 1.022; (constante es para calibrar la LDR)

rtsensor = analogRead (2) * 1.007;

ldsensor = analogRead(3);

rdsensor = analogRead (4) * 1.013;

perrito = digitalRead (3); Lectura de interruptores

pdown = digitalRead(4);

prom = (ltsensor + ldsensor + rtsensor + rdsensor) / 4; LDR promedio

DIT = (ltsensor + rtsensor) / 2; Sensores de promedio para arriba

= (ldsensor + rdsensor) / 2; Sensores de media hacia abajo

diff = (dit - lo); Diferencia entre el nivel de radiación

Delay (50);

Si ((pyr==0) & &(pup==HIGH) & & (prom < = 8) || (Pyr==0) & &(pdown==HIGH) & & (prom < = 8)) //If el valor de pyr es cero y la media de los sensores es igual o inferior a 8 y los interruptores tienen la gama de

MOV(); función de MOV

}

mientras que ((pyr == 0) & &(pup==HIGH) & & (prom < = 8) || (Pyr==0) & &(pdown==HIGH) & & (prom < = 8));

Si (-1 * sen > diff || diff > sen) //If la diferencia medida entre el sistema de sensores es mayor o menor que el valor de sensibilidad

{

if(DIT < DID) //If el valor medio de los sensores de arriba es más pequeño que los sensores de la parte inferior

{

Si (pdown == HIGH)

{

verStep.step (0); Parar motor vertical

Delay (10);

}

otra cosa

Si (pdown == LOW)

{

verStep.step (v); Girar motor arriba

Delay (50);

}

}

otra cosa if(dit > did) //If el valor medio de los sensores de la parte inferior es más pequeño que los anteriores sensores

{

Si (cachorro == HIGH)

{

verStep.step (0); Parar motor vertical

Delay (10);

}

else if (cachorro == LOW)

{

verStep.step (-v); Girar motor abajo

Delay (50);

}

}

otro //any otro caso

{

verStep.step (0); Parar motor vertical

Delay (10);

}

}

Delay (10);

Pyr = analogRead (0); Lecturas del sensor nuevo para posible cambio

ltsensor = analogRead (1) * 1.022;

rtsensor = analogRead (2) * 1.007;

ldsensor = analogRead(3);

rdsensor = analogRead (4) * 1.013;

DIL = (ltsensor + ldsensor) / 2; Sensores de media izquierda

DIR = (rtsensor + rdsensor) / 2; Derecha media sensores

diff2 = (dil - dir); Diferencia entre el nivel de radiación

Delay (50);

Si (-1 * sen > diff2 || diff2 > sen) //If la diferencia medida entre el sistema de sensores es mayor o menor que el valor de sensibilidad

{

if(DIL < dir) //If el promedio del sensor izquierdo es más pequeño que el sensor derecho

{

horStep.step (h); A la derecha motor

Delay (10);

}

otra cosa

if(DIL > dir) //If el promedio del sensor izquierdo es más grande que el sensor derecho

{

horStep.step (-h); Apague el motor izquierda

Delay (10);

}

otro //any otro caso

{

horStep.step (0); Parar motor horizontal

Delay (10);

}

}

Delay(10);

}

"función mov"

mov vacío)

{

Si (cachorro == HIGH)

{

verStep.step (72); Subir 72 pasos (son los pasos para cambiar de posición una vez ocultan el sol)

Delay (50);

}

else if (pdown == HIGH)

{

verStep.step-(72); Baje 72 pasos

Delay (50);

}

Delay (10);

}

Artículos Relacionados

Arduino seguidor Solar utilizando LEDs!

Arduino seguidor Solar utilizando LEDs!

Así que me encontré recientemente con un poco de información me había olvidado. LEDs de generan un poco de tensión bajo la iluminación de una gama de longitudes de onda. Tiempo para explotar esta peculiaridad para hacer un seguidor solar de DIY para
Seguidor Solar de Arduino DIY

Seguidor Solar de Arduino DIY

Hola NerdsSemana anterior vi una increíble instrcutable de seguidor solar agradable y simple de Geo Bruce.Así que, he pensado hacer mi propio y aquí está la salida.Se inspira en obra de Geo Bruce.Paso 1: Elementos necesarios Algunos temas será necesa
Seguidor-solar Solar con motores a paso + Arduino

Seguidor-solar Solar con motores a paso + Arduino

Con el enorme gusto de algunas personas les haya agradado mi primer instructivo: Deshidratador solar + Arduino les bendecido un nuevo proyecto realizar, se trata de las Naciones Unidas seguidor-solar solar, ningún pecado antes de mencionar mi inspira
Tierra Globo giratorio con Arduino o frambuesa Pi controlado por Motor paso a paso

Tierra Globo giratorio con Arduino o frambuesa Pi controlado por Motor paso a paso

Este instructivo describe cómo actualizar su globo a una versión motorizada. Parece increíblemente mejor en el estante que está girando lentamente, y cualquier manifestación con sus hijos (para explicar el ciclo día/noche o las estaciones) ganará int
Controlando un Motor paso a paso con un Arduino

Controlando un Motor paso a paso con un Arduino

Este tutorial le mostrará cómo funciona un motor de paso a paso que fue rescatado de una impresora antigua con un Arduino.Paso 1: ¿Qué es un Motor paso a paso? Un motor paso a paso consta de dos partes principales: un rotor y un estator. El rotor es
Control DC y paso a paso motores con módulos de controlador de Motor Dual L298N y Arduino

Control DC y paso a paso motores con módulos de controlador de Motor Dual L298N y Arduino

No tienes que gastar mucho dinero para el control de motores con Arduino o tablero compatible. Después de algunos caza alrededor de nosotros encontró un módulo de control del motor limpio basado en el L298N puente H IC que puede le permite controlar
Hardware de Arduino PWM para motor paso a paso

Hardware de Arduino PWM para motor paso a paso

con nuestro nuevo proyecto, JustAddSharks, estamos muy interesados en apoyar el desarrollo de software libre de control de Cortadoras Láser. Estamos más que felices para la gente modificar nuestras Cortadoras Láser, reemplazar el sistema de control c
CONTROL velocidad del MOTOR paso a paso con LABVIEW y ARDUINO

CONTROL velocidad del MOTOR paso a paso con LABVIEW y ARDUINO

Esto hice en Proteusu CONTROL paso a paso MOTOR velocidad con LABVIEW y ARDUINO...!!!! wolaaPaso 1: Este Tutorial es:> Usando Labview interfaz Arduino al PC vía puerto del USB.> Uso de Labview para enviar datos que describe la velocidad del Motor a
Manejar un Motor paso a paso con un Arduino y un controlador Stepstick/chip A4988

Manejar un Motor paso a paso con un Arduino y un controlador Stepstick/chip A4988

Hay varias maneras de hacer que un Motor paso a paso funciona, y la mejor manera depende de la aplicación, el motor y la electrónica disponible. Para el funcionamiento de un motor paso a paso desde un Arduino, estas son las principales maneras de ir1
SENSOR PIR con ARDUINO activar MOTOR paso a paso

SENSOR PIR con ARDUINO activar MOTOR paso a paso

ACTIVAR MOTOR PASO A PASO USANDO EL SENSOR DE MOVIMIENTOPaso 1: PIR con ARDUINO activado MOTOR paso a pasoHola esta instactable para rotar prólogo motor paso a paso y al revés cuando pir Lee algún movimiento.Paso 2: Parte requieren1-ARDUINO UNO2-PIR(
Motor paso a paso ARDUINO controlado con codificador giratorio y l293d o chip SN754410NE

Motor paso a paso ARDUINO controlado con codificador giratorio y l293d o chip SN754410NE

Motor paso a paso es muy útil para muchos proyectos de bricolaje. En la mayoría de los casos el microcontrolador puede controlar todos los movimientos de los pasos, pero en algunos casos puede que desee controlar manualmente el motor de pasos para es
Conductor del Motor paso a paso simple para proyectos Arduino CNC

Conductor del Motor paso a paso simple para proyectos Arduino CNC

Se trata de una simple unidad de puente H dual que hice algunas fichas que bajé eBay hace un tiempo. Utiliza un microcontrolador Pic para manejar las entradas de la dirección de paso para la lógica de la impulsión de la bobina. Usé las fotos más bara
Funcionamiento de un Motor paso a paso con un Arduino

Funcionamiento de un Motor paso a paso con un Arduino

Hola chicos,Este artículo sobre cómo manejar un Motor paso a paso con un Arduino. El motor de pasos de estos días utilizado en muchos dispositivos de electrónica como, sistema de enfoque automático de cámara, CD-ROM para el movimiento de la lente, la
Conectar el motor paso a paso para arduino

Conectar el motor paso a paso para arduino

Hola a todos. En este tutorial ayudará a conectar un motor unipolar paso a paso a tu arduino.Para hacer esto usted necesitará1 tablero de x Arduino -> en ebay aprox 10$1 x controlador paso a paso-> son baratos en ebay (basta con teclear en ebay: ULN