Proyectos electrónicos: cómo programar un servo en PBASIC

Para crear el movimiento en su proyecto de electrónica, se puede añadir un dispositivo muy útil, llamaste servo, que le permite controlar el movimiento mecánico con un programa BASIC Stamp. LA servo es un tipo especial de motor que está diseñado para girar a una posición particular, y mantenga esa posición hasta que se le para girar a una posición diferente. Servos Hobby se utilizan con frecuencia en los vehículos controlados por radio, pero hay muchos otros usos para servos.

El Kit de sello actividad básica viene con un servo que puede utilizar para aprender a escribir programas que controlan los servos. También puede comprar servos directamente de Parallax o de la mayoría de tiendas de hobby.

imagen0.jpg

La forma más fácil de controlar un servo de un microcontrolador BASIC Stamp es utilizar el PULSOUT comandos. Este comando envía un pulso de cualquier duración que especifique a un pin de E / S de su elección. La sintaxis de este comando es la siguiente:

Pin PULSOUT, duración

Se especifica la duración en unidades de dos microsegundos. Un microsegundo es una millonésima de segundo. Hay mil microsegundos en un milisegundo. Por lo tanto, para enviar un pulso de 1,5 ms con el PULSOUT comando, debe especificar 750 como la duración, así:

PULSOUT 0750

Aquí, un pulso de 1,5 ms se envía al pin 0.

Aquí están los PULSOUT duración valora usted debe utilizar para una típica servo hobby para varios ángulos.

ÁnguloDuraciónÁnguloDuración
025095778
5278100806
10306105833
15333110861
20361115889
25389120917
30417125944
35444130972
404721351000
455001401028
505281451056
555561501083
605831551111
sesenta y cinco6111601139
706391651167
756671701194
806941751222
857221801250
90750

Por ejemplo, para mover el servo en el pin 0 a 75 # 176-, utilice este comando:

PULSOUT 0667

Recuerde que para mantener su posición, un servo necesita un flujo constante de impulsos de aproximadamente 20 ms de diferencia. Por lo tanto, PULSOUT comandos son usualmente contenidos en cualquiera HACER bucles o PARA EL SIGUIENTE bucles. Por ejemplo, aquí hay un poco de código que mantiene el servo en el pin 0 a 45 # 176- indefinidamente:

DOPULSOUT 0,500PAUSE 20LOOP

Aquí está completo programa que mueve el servo 45 # 176- cuando se pulsa SW1 (un pulsador en el pin 14) y 135 # 176- cuando SW2 (un pulsador en el pin 10) es presionado.

'Programa de Control Servo' Doug Lowe 15 de julio 2011 '' Este programa mueve un servo a una de dos, cuando se pulsa SW1 'y devuelve el servo a la posición central cuando se presiona SW2. {$ STAMP BS2} '{$ PBASIC 2.5} Servo PIN 0SW1 PIN 14SW2 PIN 10Position VAR WordPosition = 500DOIF SW1 = 1 THENPosition = 500ENDIFIF SW2 = 1 THENPosition = 1000ENDIFPULSOUT Servo, PositionPAUSE 20LOOP



» » » » Proyectos electrónicos: cómo programar un servo en PBASIC