Projetos eletrônica: como programar um servo em pbasic
Para criar o movimento em seu projeto de eletrônica, você pode adicionar um dispositivo muito útil, chamado de serv
Conteúdo
Video: Servo Basic Concepts
O Kit Selo atividade básica vem com um servo que você pode usar para aprender a escrever programas que controlam servos. Você também pode comprar diretamente de servos Paralaxe ou na maioria das lojas de hobby.
A maneira mais fácil de controlar um servo a partir de um microcontrolador carimbo básica é a de utilizar o PULSOUT comando. Este comando envia um pulso de qualquer duração que você especificar para um O pin de sua escolha I /. A sintaxe deste comando é a seguinte:
PULSOUT pino, duração
Você especifica a duração em unidades de dois microssegundos. Um microssegundo é um milésimo de segundo. Há mil microssegundos em um milésimo de segundo. Assim, para enviar um pulso de 1,5 ms com o PULSOUT comando, você deve especificar 750 como a duração, como este:
PULSOUT 0750
Aqui, um pulso de 1,5 ms é enviado ao pino 0.
Aqui está o PULSOUT duração valores que você deve usar para um servo passatempo típico de vários ângulos.
Ângulo | Duração | Ângulo | Duração |
---|---|---|---|
0 | 250 | 95 | 778 |
5 | 278 | 100 | 806 |
10 | 306 | 105 | 833 |
15 | 333 | 110 | 861 |
20 | 361 | 115 | 889 |
25 | 389 | 120 | 917 |
30 | 417 | 125 | 944 |
35 | 444 | 130 | 972 |
40 | 472 | 135 | 1000 |
45 | 500 | 140 | 1028 |
50 | 528 | 145 | 1056 |
55 | 556 | 150 | 1083 |
60 | 583 | 155 | 1111 |
65 | 611 | 160 | 1139 |
70 | 639 | 165 | 1167 |
75 | 667 | 170 | 1194 |
80 | 694 | 175 | 1222 |
85 | 722 | 180 | 1250 |
90 | 750 |
Por exemplo, para mover o servo no pino 0-75 °, usar o comando:
Video: aula 4478 Arduino acionando servo motor atraves de um botao
PULSOUT 0,667
Lembrar que para manter a sua posição, um servo precisa de um fluxo constante de impulsos de aproximadamente 20 ms para além. Portanto, PULSOUT comandos são normalmente contidas em qualquer FAZ ou laços A SEGUIR rotações. Por exemplo, é aqui um bit de código que mantém o servo no pino 0 a 45 ° C indefinidamente:
DOPULSOUT 0,500PAUSE 20LOOP
Aqui é programa completo que move o servo de 45 °, quando SW1 (um botão no pino 14) é pressionada e 135 ° quando SW2 (um botão no pino 10) é pressionado.
`Programa de Controle Servo` Doug Lowe `15 de julho de 2011 `` Este programa move um servo a um dos dois quando SW1 for pressionado` e retorna o servo para a posição central quando SW2 é pressionado. {$ SELO BS2}`{$ PBASIC 2,5} Servo PIN PIN 0SW1 14SW2 PIN 10Position VAR WordPosition = 500DOIF SW1 = 1 THENPosition = 500ENDIFIF SW2 = 1 THENPosition = 1000ENDIFPULSOUT Servo, PositionPAUSE 20LOOP