gl gl es ca gl gl gl gl es gl en gl es en pt ceb gl pt gl gl pt gl gl en gl gl gl it gl uk gl gl it gl es gl es gl gl gl gl gl gl gl gl es gl es gl gl gl gl gl gl gl gl gl gl gl en gl es es gl gl gl pt es gl gl gl pt pt en gl ar es gl en en en gl gl gl ca gl ca gl gl gl gl gl gl gl gl it gl gl gl gl gl gl gl gl gl gl en it es es gl es gl es es gl pt en gl gl ca fr fr gl gl gl pt es sv es gl sv pt en gl hu en gl gl en gl it it es uk pt gl gl gl gl gl en gl gl es gl gl vi gl gl gl gl es es gl gl gl gl gl it gl es
A posición dun servo – Arduino
Imos controlar a posición dun servo de rotación estándar mediante programación.
Se no canto dun microservo utilizas un servo máis potente non o conectes aos 5V da placa e utiliza alimentación externa.
A posición do servo contrólase a través do envío de pulsos en anchura (PWM). Segundo a duración do pulso obtemos diferentes posicións do eixe do servo. Porén, dependendo do servo que se utilice e do ciclo útil do mesmo podemos necesitar realizar cálculos para axustar a posición.
[Stefantauner, wikimedia, CC By SA]
Inclúe a librería “servo” para poder utilizar as funcións que contén.
Crea unha variable co nome do servo
Indica en que pin está conectado o servo.
Sitúa o eixe do servo na posición indicada.
1. Xirar un ángulo
1. Xirar un ángulo determinado: Podemos controlar exactamente a posición (ángulo) que queremos que teña o servo en cada momento
// Importamos a librería servo #include   // Declaración de variables: Servo meuservo; // poñémoslle nome ao servo: "meuservo" // Configuración: void setup(){ meuservo.attach(6); // Indicamos que está conectado no pin 6 } // Programa: void loop(){ meuservo.write(0); // Móvese ata a posición de 0º delay (2000); meuservo.write(180); // Móvese ata a posición de 180º delay (2000); meuservo.write(90); // Móvese ata a posición de 90º delay (2000); }
2. Pouco a pouco
2. Pouco a pouco: Imos facer que un servo xire lentamente ata unha posición e despois cambie rapidamente á posición de partida.
#include   // Importamos a librería servo // Declaración de variables: Servo meuservo; // poñémoslle nome ao servo: "meuservo" // Configuración: void setup(){ meuservo.attach(6); // Indicamos que está conectado no pin 6 } // Programa: void loop(){ meuservo.write(0); // Parte da posición de 0º delay (2000); for(int i=1;i<=120;i++){ // Móvese pouco a pouco ata 120º meuservo.write(i); delay (50); } delay (1000); }
3. Control con pulsadores
3. Control con pulsadores: imos facer que cada vez que prememos nun pulsador o servo se mova ata a posición correspondente a cada un deles.
#include   // Importamos a librería servo // Declaración de variables: int pulsador0 = 2; // Pin 2 asignado a un pulsador int pulsador180 = 3; // Pin 3 asignado a outro pulsador Servo meuservo; // Poñémoslle nome ao servo // Configuración: void setup() { meuservo.attach(6); // Servo conectado no pin 6 } // Programa: void loop() { if (digitalRead(pulsador0) == 1){ // Se o pulsador0 esta premido meuservo.write(0); // O servo xira ata a posición 0º delay (500); } if (digitalRead(pulsador180) == 1){ // Se o pulsador180 esta premido meuservo.write(180); // O servo xira ata a posición 180º delay (500); } }
Ao chou: Fai un programa de xeito que o servo xire a distintas posicións elixidas ao chou. Utiliza a función random. Por exemplo:
chou=random(0,180); // dá un valor ao aleatorio entre 0 e 180.
Cal é a súa posición?: Engade o necesario aos programas anteriores para visualizar na consola a posición na que se atopa o servo.
Pouco a pouco: Fai un programa que funcione de xeito que cando prememos nun pulsador o servo xira 10º nun sentido e cando prememos noutro pulsador xira 10º en sentido contrario. Introduce os límites de 0 e 180º.
Orientación automática. Fai unha placa solar que se oriente automaticamente cara onde maior sexa a luminosidade. Utiliza dúas fotorresistencias para medir a luz nos laterais. Un servo fará xirar a placa no sentido axeitado ata que a luz incidente sexa a mesma nas dúas LDRs (ou nun rango próximo).
Deixa un comentario Cancelar a resposta
Nome Correo electrónico Sitio web
Gardar o meu nome, correo electrónico e web neste navegador para a próxima vez que faga un comentario.
Descrición de Arduíno UNO
O IDE de Arduíno
Entradas e saídas dixitais
Condicional if … else
Sinais PWM e lectura serial
Array de LEDs e funcións
A posición dun servo
Servos de xiro continuo
Motor de corrente continua
Motores paso a paso
Sensor de Luz LDR
Sensor de temperatura LM35 e TMP36
Sensor de temperatura e humidade DHT11
Sensor de temperatura DS18B20
Sensor de movemento PIR
Sensor de cor TCS3200
Sensor de cor TCS34725 RGB
Sensor de auga no solo
Medindo o tempo 1
Medindo o tempo 2: RTC
Bluetooth mestre + escravo
O tanque de auga
Reloxo de area dixital
A máquina máis inútil
Clasificador M&M’s por cor
Alarma para a cortadora láser
© 2022 Arduino • Creado con GeneratePress