From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
el 05-14-2017 10:57 PM
Hola a todos, busco a alguien que sea tan amable de ayudarme a programar en labview soy nuevo es ese programa, mi duda es de como programar servomotores para que se muevan ciertos grads en cierto tiempo, tengo un proyecto en el cual utilizo 3 servomotores, de hecho ya lo hice en arduino, pero mi profesor también me lo pidió en labview, esos 3 servomotores debe de estar sincronizados primero se mueve uno, después otro y al final el ultimo, los primeros dos se mueven a 90 grados y el ultimo se mueve con un for que le meti al código en arduino, el cual se mueve n90 grados hacia un lado y 90 hacia el otro, el ultimo no se mueve por tiempos se mueve con una condición. Bueno explicando un poco mi proyecto consiste en un probador de baterías, dependiendo de que tanto voltaje tenga una pila el 3 servomotor osea el ultimo se va a mover a la izuierda o derecha, eso depende del voltaje de la pila, los dos primeros solo son para dirigir a la pila y que lleguen al ultimo servo, voy adjuntar una imagen para que chequen de lo que les comento, y osea mi proyecto ya funciona con el código arduino, pero tengo que programar exactamente lo mismo pero en labview, tambien les adjuntare el codigo en arduino y bueno esa seria mi pregunta, como controlar los servos por tiempos y solo ciertos angulos, y claro si también me podrían ayudar a crear como condiciones para el ultimo servo
#include <Servo.h> Servo servo; Servo servo1; Servo servo2; // Pines para los LEDs #define LEDVERDE 5 #define LEDAMARILLO 6 #define LEDROJO 3 #define ANALOGPILA 0 // Variables int analogValor = 0; float voltaje = 0; float corriente; int ledDelay =600; // Umbrales int pos = 0; float maximo = 1.7; float medio = 1.4; float minimo = 0.1; float parado = 0; void setup() { //Iniciamos el monitor serie servo1.attach(2,771,1750); servo2.attach(7,771,1750); servo.attach(4); Serial.begin(9600); } void loop() { // Leemos el valor de la entrada analógica servo1.write(90); delay(2000); servo1.write(0); delay(2000); servo1.write(90); delay(2000); servo2.write(0); delay(1000); servo2.write(90); delay(1000); servo2.write(0); delay(1000); analogValor = analogRead(ANALOGPILA); // Obtenemos el voltaje voltaje = 0.0048*analogValor; corriente = voltaje/10; Serial.println("Voltaje: "); Serial.println(voltaje); Serial.println("Corriente : "); Serial.println(corriente ); if(voltaje <= maximo && voltaje >= medio) { for (pos = 90; pos <= 180; pos +=3) { servo.write(pos); delay(75); } } if(voltaje < medio && voltaje > minimo) { for (pos = 90; pos >= 0; pos -=3) { servo.write(pos); delay(75); } } servo.write(90); delay(800); }
el 05-15-2017 12:26 PM
Hola alverabraham,
Te invito a revisar los siguientes sitios web, en donde encontrarás información y ejemplos de otros usuarios que han utilizado LabVIEW con Arduino para controlar servomotores:
Si quieres aprender a utilizar LabVIEW desde cero, te recomiendo realizar los ejercicios que se encuentran en el sitio: http://www.learnNI.com/
Espero te sean de utilidad, mucho éxito con tu proyecto!
Un saludo!