Controladores de motores
Persianas motorizadas modernizadas
Resortes de gas
Monitoreo de la corriente de un actuador lineal

Este código de ejemplo utiliza MegaMoto Plus y un Arduino Uno para monitorear la corriente de un actuador lineal; sin embargo, pueden utilizarse productos similares como sustitutos.

/* Code to monitor the current amp draw of the actuator, and to cut power if it rises above a certain amount. Written by Progressive Automations August 19th, 2015 Hardware: - RobotPower MegaMoto control boards - Arduino Uno - 2 pushbuttons */ const int EnablePin = 8;
const int PWMPinA = 11;
const int PWMPinB = 3; / pins for Megamoto const int buttonLeft = 4;
const int buttonRight = 5;/buttons to move the motor const int CPin1 = A5; / motor feedback int leftlatch = LOW;
int rightlatch = LOW;/motor latches (used for code logic) int hitLimits = 0;/start at 0
int hitLimitsmax = 10;/values to know if travel limits were reached long lastfeedbacktime = 0; / must be long, else it overflows
int firstfeedbacktimedelay = 750; /first delay to ignore current spike
int feedbacktimedelay = 50; /delay between feedback cycles, how often you want the motor to be checked
long currentTimefeedback = 0; / must be long, else it overflows int debounceTime = 300; /amount to debounce buttons, lower values makes the buttons more sensitive
long lastButtonpress = 0; / timer for debouncing
long currentTimedebounce = 0; int CRaw = 0; / input value for current readings
int maxAmps = 0; / trip limit bool dontExtend = false;
bool firstRun = true;
bool fullyRetracted = false;/program logic void setup()
{ Serial.begin(9600); pinMode(EnablePin, OUTPUT); pinMode(PWMPinA, OUTPUT); pinMode(PWMPinB, OUTPUT);/Set motor outputs pinMode(buttonLeft, INPUT); pinMode(buttonRight, INPUT);/buttons digitalWrite(buttonLeft, HIGH); digitalWrite(buttonRight, HIGH);/enable internal pullups pinMode(CPin1, INPUT);/set feedback input currentTimedebounce = millis(); currentTimefeedback = 0;/Set initial times maxAmps = 15;/ SET MAX CURRENT HERE }/end setup void loop()
{ latchButtons();/check buttons, see if we need to move moveMotor();/check latches, move motor in or out }/end main loop void latchButtons()
{ if (digitalRead(buttonLeft)==LOW)/left is forwards { currentTimedebounce = millis() - lastButtonpress;/ check time since last press if (currentTimedebounce > debounceTime && dontExtend == false)/once you've tripped dontExtend, ignore all forwards presses { leftlatch = !leftlatch;/ if motor is moving, stop, if stopped, start moving firstRun = true;/ set firstRun flag to ignore current spike fullyRetracted = false; / once you move forwards, you are not fully retracted lastButtonpress = millis();/store time of last button press return; }/end if }/end btnLEFT if (digitalRead(buttonRight)==LOW)/right is backwards { currentTimedebounce = millis() - lastButtonpress;/ check time since last press if (currentTimedebounce > debounceTime) { rightlatch = !rightlatch;/ if motor is moving, stop, if stopped, start moving firstRun = true;/ set firstRun flag to ignore current spike lastButtonpress = millis();/store time of last button press return; }/end if }/end btnRIGHT
}/end latchButtons void moveMotor()
{ if (leftlatch == HIGH) motorForward(255); /speed = 0-255 if (leftlatch == LOW) motorStop(); if (rightlatch == HIGH) motorBack(255); /speed = 0-255 if (rightlatch == LOW) motorStop(); }/end moveMotor void motorForward(int speeed)
{ while (dontExtend == false && leftlatch == HIGH) { digitalWrite(EnablePin, HIGH); analogWrite(PWMPinA, speeed); analogWrite(PWMPinB, 0);/move motor if (firstRun == true) delay(firstfeedbacktimedelay); / bigger delay to ignore current spike else delay(feedbacktimedelay); /small delay to get to speed getFeedback(); firstRun = false; latchButtons();/check buttons again }/end while }/end motorForward void motorBack (int speeed)
{ while (rightlatch == HIGH) { digitalWrite(EnablePin, HIGH); analogWrite(PWMPinA, 0); analogWrite(PWMPinB, speeed);/move motor if (firstRun == true) delay(firstfeedbacktimedelay);/ bigger delay to ignore current spike else delay(feedbacktimedelay); /small delay to get to speed getFeedback(); firstRun = false; latchButtons();/check buttons again }/end while dontExtend = false;/allow motor to extend again, after it has been retracted }/end motorBack void motorStop()
{ analogWrite(PWMPinA, 0); analogWrite(PWMPinB, 0); digitalWrite(EnablePin, LOW); firstRun = true;/once the motor has stopped, reenable firstRun to account for startup current spikes }/end stopMotor void getFeedback()
{ CRaw = analogRead(CPin1); / Read current if (CRaw == 0 && hitLimits < hitLimitsmax) hitLimits = hitLimits + 1; else hitLimits = 0; / check to see if the motor is at the limits and the current has stopped if (hitLimits == hitLimitsmax && rightlatch == HIGH) { rightlatch = LOW; / stop motor fullyRetracted = true; }/end if else if (hitLimits == hitLimitsmax && leftlatch == HIGH) { leftlatch = LOW;/stop motor hitLimits = 0; }/end if if (CRaw > maxAmps) { dontExtend = true; leftlatch = LOW; /stop if feedback is over maximum }/end if lastfeedbacktime = millis();/store previous time for receiving feedback
}/end getFeedback
Control de múltiples actuadores con el shield MultiMoto para Arduino
Controlador de motor Wasp para controlar actuadores lineales
Uso de relés para controlar actuadores lineales
Controlar la temporización del movimiento de un actuador lineal
Extender y retraer continuamente un actuador lineal con motor de CC sin escobillas
Códigos de ejemplo del micro actuador servo PA-12
¿Dónde puedo encontrar más información sobre sus productos?

Contamos con hojas de datos, manuales de usuario, modelos 3D, diagramas de cableado y más en nuestras secciones de Recursos y Centro de aprendizaje .

¿Cómo puedo determinar qué actuador lineal de Progressive Automations es el más adecuado para mi aplicación?
¿Qué es el ciclo de trabajo y cómo se calcula?
¿Puedo usar sus actuadores para reemplazar el que ya tengo?
¿Qué significa carrera? ¿Cómo sé qué tamaño elegir?
¿Cómo sé qué fuerza nominal es la adecuada para mi aplicación?
¿Puedo usar mi propia fuente de alimentación para mis actuadores?
¿Cómo puedo sincronizar los actuadores para que se desplacen al mismo tiempo?
¿Por qué mi actuador lineal hace tanto ruido?
¿Puedo personalizar un actuador lineal según mis especificaciones?
¿Puedo sincronizar mis actuadores lineales?
¿Hay kits de actuadores lineales disponibles?
¿La temperatura afectará a mi actuador lineal?
¿Puedo integrar uno de sus actuadores en un mecanismo de terceros?
¿Cuál es la disposición de pines de mi actuador lineal?
¿Puedo obtener modelos CAD 3D para mi actuador lineal?
¿Qué opciones de caja de control hay para mi actuador?
¿Puedo usar sus cajas de control con un producto de terceros?
¿Venden cajas de control Wi-Fi?
¿Son compatibles todas sus cajas de control con todos sus actuadores lineales?
¿Puedo usar mi propia caja de control?
¿Tienen código de ejemplo que pueda usar?
No tengo una fuente de energía – ¿qué puedo hacer?
¿Puedo usar mi propia fuente de alimentación?
¿Tienen fuentes de alimentación de 220 VAC disponibles?
¿Puedo controlar las columnas de elevación con un controlador de terceros?
¿Puedo usar dos columnas de elevación LG-11 a la vez?
¿Con qué caja de control debo emparejar mis columnas de elevación?
¿Son personalizables sus elevadores de mesa/escritorio/TV?
¿Qué tamaños de TV pueden soportar sus elevadores de TV?
¿Cuál es la capacidad de carga de sus elevadores de mesa/escritorio?
¿Mi actuador lineal viene con soportes de montaje?
¿Dónde puedo encontrar una guía paso a paso para mi producto?
Seguí el diagrama de cableado, pero no funciona. ¿Qué debo hacer?
Diagrama de flujo para la selección de actuadores
¿Son compatibles las cajas de control FLTCON con mis actuadores?
¿Qué es el backdriving? -- ¿Qué significan las capacidades de carga dinámica y estática? -- ¿Qué es la carga lateral?
¿Cómo puedo hacer un pedido?

Los pedidos se pueden realizar de una de las siguientes formas:

En línea: utilice nuestro proceso de pedido en línea con opciones para pagar con tarjeta de crédito o PayPal.

Teléfono: 1-800 – 676 – 6123

Correo electrónico:sales@progressiveautomations.com

¿Ofrecen descuentos por volumen?
¿Qué métodos de pago aceptan?
¿En qué moneda están los precios?
¿Cómo sé si el producto que quiero está disponible?
¿Cuánto costará el envío y qué métodos de envío ofrecen?

Las tarifas de envío de Progressive Automations se calculan en función de una variedad de factores que incluyen, entre otros: ubicación, cantidades y el peso total de su pedido. Los artículos más pequeños se envían por paquetería, mientras que los artículos más grandes y los pedidos al por mayor se envían a través de un servicio de transporte de carga. Siempre nos esforzamos por ofrecer precios de envío competitivos para todos nuestros clientes.

Los métodos de envío están disponibles a través de pedidos en línea y por teléfono. Si desea recibir un costo de envío estimado de su pedido, puede hacerlo revisando su carrito de compras final.

¿Qué empresas de transporte utilizan?
¿Tendré que pagar algún arancel?
¿Cuál es su política de devoluciones?
¿Cuánto tarda la entrega?
¿Ofrecen envío gratis?
Quiero que el lado más largo de mi tablero quede a la izquierda. ¿Se puede instalar el bastidor de escritorio de pie en forma de L tanto a la izquierda como a la derecha?

Sí, el escritorio de pie en forma de L admite ambas orientaciones y puede instalarse0segfun tu preferencia. Aquded tienes un artedculo paso a paso que explica cf3mo esto es posible:a Manual del usuario FLT-05

bfCf3mo configuro las alturas me1xima/mednima de mi bastidor de escritorio de pie?

NOTA: Los pasos a continuacif3n pueden variar segfan el modelo de control remoto que tengas. Las siguientes instrucciones este1n hechas para el control RT-11 este1ndar. Para establecer la altura me1xima de tu bastidor, ve a la altura deseada y sigue los pasos a continuacif3n:

09
  1. Presiona M y vere1s [5 -] indicado en la pantalla
  2. 09
  3. Presiona el botf3n ARRIBA y notare1s que [5 -] parpadea
  4. 09
  5. Mante9n presionado el botf3n M hasta que veas [999] en la pantalla
  6. 09
  7. La altura me1xima ya se ha establecido

Para establecer la altura mednima de tu bastidor, ve a la altura deseada y sigue los pasos a continuacif3n:

09
  1. Presiona M y vere1s [5 -] indicado en la pantalla
  2. 09
  3. Presiona el botf3n ABAJO y notare1s que [5 -] parpadea
  4. 09
  5. Mante9n presionado el botf3n M hasta que veas [000] en la pantalla
  6. 09
  7. La altura mednima ya se ha establecido

Para restablecer los ledmites, sigue los pasos a continuacif3n:

09
  1. Presiona M y vere1s [5 -] indicado en la pantalla y sue9ltalo
  2. 09
  3. Mante9n presionado M hasta que veas [555]
  4. 09
  5. Los ledmites se han restablecido
Tengo que mantener presionados los botones del control para alcanzar mi altura preestablecida. bfSe puede hacer con una sola pulsacif3n?

NOTA: Los pasos a continuacif3n pueden variar segfan el modelo de control remoto que tengas. Las siguientes instrucciones este1n hechas para el control RT-11 este1ndar.

Si debes mantener presionados los botones del control para llegar a tu altura preestablecida, significa que tu caja de control este1 en modo momente1neo. Para cambiar tu control a modo no momente1neo, sigue los pasos a continuacif3n

09
  1. Asegfarate de que no haya nada debajo de tu escritorio, ya que debemos entrar en el procedimiento de restablecimiento
  2. 09
  3. Mante9n presionado el botf3n ABAJO hasta que la pantalla muestre [ASr]
  4. 09
  5. Una vez que aparezca [ASr], mante9n presionado [1] y podre1s ver dos valores:

    a. 10,1 = Modo no momente1neo
    b. 10,2 = Modo momente1neo

  6. Completa el procedimiento de restablecimiento manteniendo presionado el botf3n ABAJO hasta que tu escritorio de pie descienda y se eleve ligeramente.
bfCf3mo cambio la sensibilidad de deteccif3n de colisiones?

Nuestros escritorios de pie tienen 3 configuraciones para la deteccif3n de colisiones, y puedes ajustarlas segfan tu preferencia. Para continuar, sigue los pasos a continuacif3n:

  1. Asegfarate de que no haya nada debajo de tu escritorio ya que debemos entrar en el procedimiento de restablecimiento
  2. 09
  3. Mante9n presionado el botf3n ABAJO hasta que la pantalla muestre [ASr]
  4. Una vez que aparezca [ASr], mante9n presionado el botf3n ARRIBA [ ^ ] y podre1s ver tres valores:

    a. 10,5 = 11 libras
    b. 10,6 = 22 libras
    c. 10,7 = 33 libras

  5. Completa el procedimiento de restablecimiento manteniendo presionado el botf3n ABAJO hasta que tu escritorio de pie descienda y se eleve ligeramente.
bfMi control muestra un cf3digo de error en la pantalla? bfQue9 debo hacer?

Tenemos algunos pasos de solucif3n de problemas para que sigas si ves cualquiera de los siguientes cf3digos de error en los bastidores con cajas de control de la serie FLTCON:

Consulta el cf3digo de erroraaqued.

Si el problema que este1s experimentando persiste despue9s de seguir estos pasos, no dudes en comunicarte con nuestros ingenieros de producto te9cnico al 1-800-676-6123, o envedanos un correo electrf3nico a sales@progressiveautomations.com.