Сервопривод – это привод, вал которого может встать в заданное положение или поддерживать заданную скорость вращения. Другими словами, валом сервопривода можно управлять, например, задавая ему положение в градусах или определенную частоту вращения.
Сервоприводы используются в самых разных областях, например, в робототехнике они помогают моделировать различные движения роботов. Сервоприводы – эффективное решение для перемещения механизмов в пространстве.
В этом уроке мы научимся управлять сервоприводом.
Для урока нам понадобиться:
Для достижения самых разных целей робототехники к программируемому контроллеру Arduino может быть подключен сервопривод. Подключение осуществляется через кабели, которые выходят из сервопривода. Обычно это три кабеля: красный; коричневый или черный; желтый, оранжевый или белый.
Подключение сервопривода к плате Arduino производится через ШИМ-выводы. Что Такое PWM (ШИМ) мы уже рассматривали в уроке: Плавное включение светодиода на Arduino с помощью ШИМ (PWM)

За основу возьмем урок Подключение кнопки и светодиода плате Arduino к схеме добавим сервопривод и вот что у нас должно получиться.
#include <Servo.h> // подключаем библиотеку для работы с сервоприводом
Servo servo; // объявляем переменную servo типа "servo"
int led_pin=3; // пин подключения
int button_pin = 4; // пин кнопки
// переменные
int buttonState = 0; // переменная для хранения состояния кнопки
void setup() {
pinMode(led_pin, OUTPUT); // Инициализируем цифровой вход/выход в режиме выхода.
pinMode(button_pin, INPUT); // Инициализируем цифровой вход/выход в режиме входа.
servo.attach(5); // привязываем сервопривод к аналоговому выходу 10
}
void loop() {
buttonState = digitalRead(button_pin);// считываем значения с входа кнопки
if (buttonState == HIGH) {
digitalWrite(led_pin, HIGH);// зажигаем светодиод
servo.write(0); //ставим вал на 180
delay (1000); // задержка в 1 секунду
}
else {
digitalWrite(led_pin, LOW);// выключаем светодиод
servo.write(180); //ставим вал на 0
delay (1000); // задержка в 1 секунду
}
}
#include <Servo.h> // подключаем библиотеку для работы с сервоприводом
Мы еще не работали с библиотеками. Библиотека это класс, содержащий функции которые мы можем использовать в нашей программе. Библиотека позволяет сократить объем написанного кода и скорость разработки приложения.
Ка вы поняли строка выше подключает нашу библиотеку Servo.h, после чего мы можем использовать все функции данной библиотеки.
Servo servo; // объявляем переменную servo типа "servo"
Объявлением переменную, она нам понадобиться для работы с библиотекой.
servo.attach(5); // привязываем сервопривод к аналоговому выходу 5
Функция библиотеки Servo.
servo.write(180); //ставим вал на 180
С помощью данной функции мы можем повернуть сервопривод на заданный угол.
#include <Servo.h>
Servo myservo;
int potpin = 0;
int val;
void setup() {
myservo.attach(9);
}
void loop() {
val = analogRead(potpin);
val = map(val, 0, 1023, 0, 180);
myservo.write(val);
delay(15);
}
Понравилась статья? Поделитесь ею с друзьями:
Вернуться в раздел: Уроки Arduino: Подключение датчиков и модулей к Arduino Дата публикации 17 февраля , 2017
Читайте также
ПРИКОЛ
прикольно я просто только начинаю и мне 9 лет

Не переменную а объект типа servo
Комментарии
Войдите или Зарегистрируйтесь И Вы сможете общаться на форуме и оставлять комментарии без капчи.