Cursos intensivos 2018..

bairesrobotics@gmail.com





Comunicacion Social
Boletin de novedades
BairesRobotics
Reciba gratis las novedades del blog en su correo electrónico de una manera sencilla y comoda. Recuerde revisar la carpeta de correo no deseado ya que algunos servicios de e-mail marcan el mensaje de confirmacion como spam.
BairesRobotics en tu eMail


Debes revisar tu correo para activarlo.





Pagar

Arduino CursoLa tarjeta entrenadora Arduino (ArduKit) es una placa de bajo costo que se conecta directamente con los controladores Arduino UNO o Arduino Mega2560. Gracias a sus sencillos periféricos y variedad de conectores se convierte en el complemento ideal para realizar los primeros programas y proyectos basados en la plataforma ARDUINO, apta para todos los públicos. Opcionalmente a esta tarjeta se le puede conectar un motor DC de bajo consumo (menos de 40mA), el cual se conecta a las salidas (PWM) D3 y D5. Con ellas se puede controlar velocidad y sentido de giro. Mas Info...
Arduino CursoCurso de programación Arduino, características, usos y aplicaciones. Ya que el objetivo principal de Arduino es interactuar con el mundo físico, se incluyen en este curso los conocimientos y recursos necesarios para actuar en el mundo real y recoger información de éste. Además, se impartirán nociones básicas de electrónica necesarias para...

Más Info Curso Arduino Regular...

Descarga ejemplos y programas Arduino...

Servo Motor ControlUn servomotor es un motor de corriente continua acoplado a una serie de engranajes con un circuito electrónico para controlar la dirección de rotación, así como la posición del eje del motor. Los servomotores permiten la ubicación precisa angular de su eje de salida y se utilizan en robótica, vehiculos teledirigidos, aviones y barcos para controlar el movimiento de sus diversas partes.
En esta sesión de laboratorio, lo primero que vamos a explorar es en que consiste un servomotor y cómo funciona y, a continuación se ilustra la manera de interactuar con un microcontrolador PIC 16F628A.

Teoría
Un servomotor (o servo) es una pequeña caja que contiene un motor de corriente continua, un eje de salida (brazo del servo) que está conectado al motor a través de una serie de engranajes, y un circuito electrónico para controlar la posición del eje. El objetivo de utilizar un servo es lograr un posicionamiento preciso angular de un objeto.

Con el fin de lograr la función del servo, la información de posición instantánea del eje de salida se realimenta al circuito de control usando un transductor. Una forma muy sencilla de hacerlo es colocando un potenciómetro al eje de salida o en alguna parte del tren de engranajes. La electrónica de control compara la señal de realimentación (que contiene la posición actual del eje) desde el potenciómetro a la señal de entrada de control (que contiene la información de la posición deseada del eje), y cualquier diferencia entre los valores reales y deseados (conocido como una señal de error) se amplifica y se utiliza para accionar el motor de corriente continua en una dirección necesaria para reducir o eliminar el error. El error es cero cuando el eje de salida llega a la posición deseada. El diagrama de bloques de funcionamiento de un servomotor típico se muestra a continuación.

La entrada de control a un servo es un ancho de pulso modulado (PWM), generalmente a partir de una frecuencia de 50 Hz. Esto significa que el pulso debe repetirse cada 20 ms. El ancho del pulso determina la posición angular del eje de salida. Un circuito electrónico dentro del servo-convierte la señal PWM a un voltaje de salida proporcional que se compara con la tensión de realimentación del potenciómetro. Si existe una diferencia entre los dos, el circuito de control acciona el motor en una dirección apropiada hasta que la diferencia se hace cero. Un valor típico de ancho de pulso esta entre 1,0 a 2,0 milisegundos (ms). Para un servo estándar, una ancho de pulso entre 1,0 ms a 1,5 ms, el servo gira en sentido horario (CW), entre 1,5 ms a 2,0 ms hace que gire en sentido antihorario (CCW), y un ancho de pulso de 1,5 ms el servomotor para en el centro. Sin embargo, estos valores pueden variar dependiendo de la marca y marca del motor. Se recomienda leer la hoja de datos del servo para encontrar los verdaderos valores de los anchos de los pulsos necesarios para posicionar el servo en diferentes ángulos.

La mayoría de los servos giran 180°. Sin embargo. hay algunos que podrían rotar 360​​° o más. Los servos se utilizan ampliamente como las articulaciones en movimientos en brazos robóticos para su posicionamiento angular preciso. También tienen aplicaciones en juguetes de radio control (RC). Por ejemplo, en los autos de RC se utilizan en el mecanismo de dirección, y en barcos RC para controlar el timón.

Un servomotor tiene tres cables: dos son para la alimentación (Vcc y tierra) y el tercer cable es para el control signal. El cable de Vcc es normalmente de color rojo y el de masa es negro o marrón. El cable de señal de control viene en color blanco, amarillo o naranja.

/*
Lab 21: Servo motor Control usando PIC16F628A
MCU: PIC16F628A a 4.0 MHz, MCLR habilitado, WDT = OFF.
Escrito por: Rajendra Bhatt (www.embedded-lab.com)
2012/03/29
Descripción: Switch de entrada conactado a RB0 y salida para el Servo en RB1.
*/

sbit SW1 at RB0_bit;
sbit Control at RB1_bit;

unsigned short i=7, delay;

void interrupt() {
   delay = i*10;
   Control = 1;
   Delay_Cyc(delay);   // Generates delay equal to (10*delay) clock cycles
   Control = 0; 
   TMR0 = 180;          // TMR0 returns to its initial value
   INTCON.T0IF = 0;   // Bit T0IF is cleared so that the interrupt could reoccur
}

void main() {
   CMCON = 0x07;    // Disable Comparators
   TRISB = 0b00000001;
   PORTB = 0;
   OPTION_REG = 0x07; // Prescaler (1:256) is assigned to the timer TMR0
   TMR0 = 180;            // Timer T0 counts from 180 to 255 to create ~20 ms period
   INTCON = 0xA0;       // Enable interrupt TMR0 and Global Interrupts
   do{
     if(!SW1){              // Change pulse width when Switch is pressed
       Delay_ms(300);
       i = i+2;
       if(i > 23) i=7;
     }
   }while(1);
}

Descarga de archivos Fuente y Hex

Salida
Después de cargar el archivo HEX en el microcontrolador PIC16F628A, se puede ver el controlador de servo en la acción. Vea el vídeo de demostración en la parte inferior para ver el resultado de este experimento.

mas info..
+ Automatismos Mar del Plata – Servo motor control
+ Lab 21: Servo motor control

Una respuesta a Control de un Servo Motor

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

tronlink wallet extensionA decentralized self-custody wallet that is secure, transparent, and stable Fully supports the TRON network and deeply supports its staking mechanisms