How to Control Your Linear Actuator with Solar Power

Cómo controlar su actuador lineal con energía solar

Josh Nigh
Josh Nigh
PA Engineer

En Progressive Automations, ofrecemos muchas opciones para controlar su actuador lineal . Desde soluciones simples como interruptores basculantes hasta nuestros controladores más avanzados, como la caja de control Wi-Fi PA-35 , tenemos muchas opciones plug-and-play. Sin embargo, a veces los requisitos del proyecto y las necesidades del cliente son un poco más exclusivos de lo que estas opciones pueden ofrecer. Aquí es donde los microcontroladores pueden ser realmente nuestros amigos. En este artículo, repasaremos cómo podemos cambiar la posición de un actuador según la cantidad de luz presente, brindándole una forma única y avanzada de control de actuador lineal.

¿Qué necesitarás?

Todo lo que necesitamos para este proyecto es un Arduino (en este caso un Arduino Uno ), una resistencia dependiente de la luz (también conocida como fotorresistor o LDR), una resistencia de 10k ohmios, un módulo de relé de 2 canales y, por supuesto, un solenoide.

[cta-contenido]

¡Echa un vistazo a nuestro Arduino Uno, que fue fundamental para este proyecto!

Haga clic aquí

Elegir su actuador lineal

En muchos casos, utilizaremos este tipo de disparador para aplicaciones en exteriores, como un actuador de puerta de gallinero con energía solar. Debe tener en cuenta en qué tipo de entorno funcionará su actuador y asegurarse de que tenga la clasificación IP correcta. Para ayudar con esto, puede encontrar nuestra guía de clasificación de IP aquí . También debemos asegurarnos de que encuentre la longitud de carrera y la fuerza nominal adecuadas para su actuador. Para obtener ayuda con esto, puede consultar una de nuestras muchas otras publicaciones de blog aquí . En esencia, el tipo de actuador que utilice depende totalmente de su aplicación y de la dureza del entorno en el que se encuentre.

Alambrado

El cableado de este actuador de energía solar.

El cableado para este proyecto de actuador con energía solar es el siguiente:

LDR a Arduino

  • Cable LDR 1 – Tierra
  • Cable LDR 2 – 5 V (a través de resistencia de 10 k)
  • Cable LDR 2 – Pin analógico 0

Módulo de relé a Arduino

  • VCC – 5V
  • Tierra – Tierra
  • IN1 – Pin 2
  • IN2 – Pin 3

Módulo de relé a fuente de alimentación y actuador

  • +12 V a NC1 (terminal normalmente cerrado en el relé uno)
  • -12 V a NO1 (terminal normalmente abierto en el relé uno)
  • NC1 a NC2
  • NO1 a NO2
  • COMÚN1 al cable 1 del actuador
  • COMÚN2 al cable 2 del actuador

Usando un módulo de relé de 2 canales, las instrucciones anteriores son cómo cablear este proyecto. Esta es una configuración muy simple y fácil de codificar, pero tiene sus limitaciones. Si desea agregar funciones como control de velocidad o retroalimentación de fuerza, puede considerar usar el escudo del controlador del motor MegaMoto . Más información sobre eso aquí.

Codificando su actuador alimentado por energía solar

La funcionalidad del código proporcionado debe ser lo más simple posible. Cuando haya luz, el actuador se retraerá. Cuando esté oscuro, el actuador se extenderá. Para evitar que el actuador se active involuntariamente (si alguien pasa y bloquea la luz, o si el sensor detecta un destello de luz), el cambio de oscuro a claro (o de claro a oscuro) debe durar al menos treinta segundos. . Este retraso se puede cambiar fácilmente cambiando el valor de "const int triggerDelay".

La cantidad de luz presente se determina leyendo el voltaje que va al pin analógico 0. Cuanta más luz haya, menos resistencia tendrá nuestra resistencia dependiente de la luz. Dado que estamos usando una resistencia pullup, esto significará que el voltaje disminuirá a medida que el ambiente se vuelva más brillante. Arduino lee esto como un valor entre 0 y 1028. Si desea cambiar el valor en el que cambiará el estado del actuador, simplemente cambie el valor de "umbral int constante" (establecido en 650 de forma predeterminada).

Este código cumplirá su propósito tal como está, pero lo bueno de proyectos como estos es que siempre hay margen de mejora. ¡No dude en modificar este código para adaptarlo mejor a su aplicación de actuador lineal con energía solar! Algunos ejemplos de funciones adicionales que podrían agregarse a este código son: un tiempo de espera para evitar que el actuador continúe moviéndose si no alcanza el interruptor de límite dentro de un cierto período de tiempo; detección de colisiones mediante monitoreo de consumo de corriente (requeriría un conductor MegaMoto en lugar de relés); o una función que permitiría configurar el actuador en varias posiciones según la cantidad de luz (no solo hacia arriba o hacia abajo).

[cta-contenido]

Las aplicaciones en exteriores se benefician de este tipo de disparador. ¡Eche un vistazo a los actuadores altamente protegidos que tenemos!

Haga clic aquí

 /*El hardware necesario para este proyecto es un Arduino, una resistencia dependiente de la luz (LDR), una resistencia de 10K y un módulo de relé de 5V de 2 canales.
 Su propósito es controlar la extensión y retracción de un actuador en función de la cantidad de luz presente.

 Escrito por Automatizaciones Progresivas 02/12/2020
 */

 #define relé1 2 //relé usado para extender el actuador
 #define relé2 3 //relé utilizado para retraer el actuador
 int ldr; //lectura analógica de una resistencia dependiente de la luz
 int countOpen = 0;//cuenta cuánto tiempo el sensor recibe luz
 int countClose = 0;//cuenta cuánto tiempo el sensor no recibe luz
 const int triggerDelay = 3000;//número de segundos x 100 para esperar después de que la iluminación cambie antes de activar el actuador
 umbral int constante = 650;// 
configuración nula() {
 Serie.begin(9600);
 pinMode(relé1,SALIDA);
 pinMode(relé2,SALIDA);
 escritura digital (relé1, ALTO);
 escritura digital (relé2, ALTO);
 }

 bucle vacío() {
 comprobarSensor();
 }

 sensor de verificación nulo()
 {
 ldr = lectura analógica(0);
 Serie.println(ldr);
 if(ldr > umbral)//si la lectura es mayor que el umbral, comience a contar
 {
 countOpen++;//cuenta cuánto tiempo el sensor no recibe luz
 retraso(10);
 }
 demás
 {
 countOpen = 0;//restablecer el recuento a cero si la declaración no es verdadera
 }
 if(countOpen > triggerDelay)// espera x segundos antes de activar el actuador
 {
 extender();//extender el actuador
 }

 if(ldr <umbral)//si la lectura es menor que el umbral, comience a contar
 {
 countClose++;//cuenta cuánto tiempo el sensor recibe luz
 retraso(10);
 }
 demás
 {
 contarCerrar = 0;
 }
 if(countClose > triggerDelay)// espera x segundos antes de activar el actuador
 {
 retraer();
 }

 }

 extensión nula()
 {
 escritura digital (relé1, BAJO);
 escritura digital (relé2, ALTO);
 }

 retracción nula()
 {
 escritura digital (relé2, BAJO);
 escritura digital (relé1, ALTO);
 }

Conclusión

¡Ahí lo tienes! Nuestra metodología respalda el uso de un sensor de luz de actuador lineal para controlar su actuador mediante energía solar. Sabemos que no todas las aplicaciones son iguales, por lo que es posible que tenga algunas consultas sobre este proyecto o algunas modificaciones que desee realizar por parte de nuestro equipo de ingenieros. Eso no es problema: simplemente envíenos un correo electrónico a sales@progressiveautomations.com o llámenos sin costo al 1-800-676-6123.