Índice:

Micro Servo Lab: 9 etapas
Micro Servo Lab: 9 etapas

Vídeo: Micro Servo Lab: 9 etapas

Vídeo: Micro Servo Lab: 9 etapas
Vídeo: sg90 9g micro servo testing without servo motor driver... 2024, Novembro
Anonim
Micro Servo Lab
Micro Servo Lab

Neste laboratório, trabalharemos no controle da posição de um micro servo com um potenciômetro. Com base na posição dos "braços" do micro servo, acenderemos as fileiras correspondentes de LEDs. Para este laboratório, você precisará de:

  • 1 micro servo (o fornecido é um micro servo de 9 gramas)
  • 1 potenciômetro
  • 10 LEDS (usando duas cores diferentes)
  • 10 resistores de 220 Ohm

Etapa 1: Conecte um Micro Servo

Conecte um Micro Servo
Conecte um Micro Servo

O micro servo possui três fios para alimentação, aterramento e um pulso de sinal. O micro servo aceitará um pulso PWM para determinar em qual posição ele deve estar (0 - 180 graus). Tecnicamente, você pode usar qualquer um dos pinos PWM no Arduino Uno, mas geralmente começamos com o pino 9 ou 10 *.

Configurar:

  1. Conecte a placa de ensaio ao barramento de alimentação (+ 5V) e ao barramento de aterramento (GND)
  2. Conecte o servo ao barramento de alimentação, ao aterramento e ao pino 9.

** Isso ocorre porque a biblioteca Servo utiliza Timer2 no Arduino, o que nos impede de usar sinais PWM, analogWrite (), nesses dois pinos para qualquer outra finalidade que não seja controlar um servo. Embora ainda possamos usar esses pinos para E / S digital, geralmente os usaremos exclusivamente para o controle servo **

Etapa 2: Teste o Micro Servo

O código aqui é o código de amostra fornecido pela Biblioteca Servo. Ele simplesmente fará com que o servo varra para frente e para trás de 0 a 180 graus

/* Varrer

por BARRAGAN Este código de exemplo é de domínio público. modificado em 8 de novembro de 2013 por Scott Fitzgerald https://www.arduino.cc/en/Tutorial/Sweep * / #include "Servo.h" Servo myservo; // cria um objeto servo para controlar um servo // doze objetos servo podem ser criados na maioria das placas int pos = 0; // variável para armazenar a posição do servo void setup () {myservo.attach (9); // anexa o servo no pino 9 ao objeto servo} void loop () {for (pos = 0; pos = 0; pos - = 1) {// vai de 180 graus para 0 graus myservo.write (pos); // diz ao servo para ir para a posição na variável 'pos' delay (15); // espera 15ms para que o servo alcance a posição}}

Etapa 3: conectar um potenciômetro

Conecte um potenciômetro
Conecte um potenciômetro

Agora trabalharemos no controle manual da posição do servo com um potenciômetro. Conecte o potenciômetro da seguinte forma:

  • Lado esquerdo - trilho de aterramento
  • Lado direito - trilho de alimentação
  • Conexão superior / intermediária - Pino A0 (pino 0 analógico)

Etapa 4: Código de partida do potenciômetro

Abaixo estão alguns códigos iniciais para controlar o servo com um potenciômetro. Conclua o código para que, ao mover o potenciômetro, o servo se mova em uníssono.

/ * Sweep by BARRAGAN Este código de exemplo é de domínio público. modificado em 8 de novembro de 2013 por Scott Fitzgerald https://www.arduino.cc/en/Tutorial/Sweep * / #include "Servo.h" Servo myservo; // cria um objeto servo para controlar um servo // doze objetos servo podem ser criados na maioria das placas int pos = 0; // variável para armazenar a posição do servo int potPin = 0; // Selecione o pino para conectar o potenciômetro int potVal = 0; // Valor atual do potenciômetro void setup () {myservo.attach (9); // anexa o servo no pino 9 ao objeto servo pinMode (potPin, INPUT); } loop vazio () {potVal = analogRead (potPin); myservo.write (pos); // diz ao servo para ir para a posição na variável 'pos' delay (15); // espera 15ms para que o servo alcance a posição}

Etapa 5: Conecte o primeiro LED

Conecte o primeiro LED
Conecte o primeiro LED

Depois de termos o servo controlado por meio do potenciômetro, vamos adicionar algum feedback por meio de alguns LEDs. Estaremos criando duas linhas de LEDs. Um representará o braço "esquerdo" do servo e o outro representará o braço "direito" do servo. Conforme o servo muda de posição, um braço sobe e o outro cai. Os LEDs acenderão para exibir:

  • completo - braço está levantado
  • meios-braços são iguais.
  • fora - o braço está abaixado

O diagrama exibirá as linhas de LEDs nas extremidades opostas da placa de ensaio. Isso foi feito para facilitar a visibilidade, seus LEDs devem estar alinhados / uniformemente uns com os outros.

Conecte o primeiro LED:

  • Conecte o cabo curto do LED ao trilho de aterramento
  • Conecte o cabo mais longo do LED a um resistor de 220 Ohm. Conecte o resistor ao pino 13 no Arduino.

Etapa 6: conectar a linha restante de LEDs

Conecte a fileira restante de LEDs
Conecte a fileira restante de LEDs

Depois que o primeiro LED for adicionado, conecte os LEDs restantes:

  • Cabo mais curto - conecte ao trilho de aterramento
  • Cabo mais longo - conecte um resistor de 220 Ohms aos LEDs e aos seguintes pinos Arduino: 12, 11, 10, 9, 8

Etapa 7: adicionar primeiro LED, segunda linha

Adicionar primeiro LED, segunda linha
Adicionar primeiro LED, segunda linha

A segunda linha de LEDs será adicionada da mesma maneira que a primeira:

  • Conecte o cabo curto do LED ao trilho de aterramento
  • Conecte o cabo mais longo do LED a um resistor de 220 Ohm. Conecte o resistor ao pino 7 no Arduino.

Etapa 8: Conecte os LEDs finais

Conecte os LEDs finais
Conecte os LEDs finais

Conecte os LEDs restantes:

Cabo mais curto - conecte ao trilho de aterramento Cabo mais longo - conecte um resistor de 220 Ohm aos LEDs e aos seguintes pinos do Arduino: 6, 5, 4, 3

Etapa 9: Display de LED de controle

Sua última etapa é atualizar seu código para controlar seus LEDs. Será necessário lidar com o seguinte:

  • A linha superior corresponderá ao "braço direito" do servo. Conforme o braço sobe / desce, os LEDs devem ligar / desligar.
  • A linha inferior corresponderá ao "braço esquerdo" do servo. Conforme o braço sobe / desce, os LEDs devem ligar / desligar.

Recomendado: