Arduino:Примеры/Knob
Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Управление радиоуправляемым сервомотором[1]
Управление позицией радиоуправляемого сервомотора при помощи Arduino и потенциометра.
Этот пример использует библиотеку Servo.
Необходимое оборудование
- Плата Arduino;
- Сервомотор;
- Потенциометр;
- Провода-перемычки;
Цепь
Сервомоторы имеют три провода – для питания, заземления и передачи сигнала. Провод для питания, как правило, красного цвета и должен быть подключен к 5-вольтовому контакту (5V) на плате Arduino. Заземляющий провод, как правило, черного или коричневого цвета и должен быть подключен к «земле» (GND) на Arduino. Сигнальный провод, как правило, желтого или оранжевого цвета и должен быть подключен к 9-ому цифровому контакту на Arduino.
Потенциометр должен быть подключен таким образом, чтобы его боковые контакты были подсоединены к питанию и «земле», а центральный контакт – к 0-ому аналоговому контакту на Arduino.
Схема
Код
// Управление позицией сервомотора при помощи потенциометра (переменного резистора).
// Автор – Михал Ринотт (Michal Rinott, http://people.interaction-ivrea.it/m.rinott)
#include <Servo.h>
Servo myservo; // создаем экземпляр класса Servo, чтобы управлять сервомотором
int potpin = 0; // аналоговый контакт, используемый для подключения потенциометра
int val; // переменная, куда считываются данные от аналогового контакта
void setup()
{
myservo.attach(9); // привязываем сервомотор на 9-ом контакте к Servo-объекту
}
void loop()
{
val = analogRead(potpin); // считываем значение потенциометра (значение между 0 и 1023)
val = map(val, 0, 1023, 0, 179); // подгоняем полученное значение под диапазон работы сервомотора (значение между 0 и 180)
myservo.write(val); // задаем позицию сервомотора согласно преобразованному значению
delay(15); // ждем, пока сервомотор проделает действие
}
См.также
- attach()
- write()
- map()
- analogRead()
- Servo library reference
- Sweep - sweep the shaft of a servo motor back and forth.
Внешние ссылки
Arduino продукты | |
---|---|
Начальный уровень | Arduino Uno • Arduino Leonardo • Arduino 101 • Arduino Robot • Arduino Esplora • Arduino Micro • Arduino Nano • Arduino Mini • Arduino Starter Kit • Arduino Basic Kit • MKR2UNO • TFT-дисплей Arduino |
Продвинутые функции | Arduino Mega 2560 • Arduino Zero • Arduino Due • Arduino Mega ADK • Arduino Pro • Arduino Motor Shield • Arduino USB Host Shield • Arduino Proto Shield • MKR Proto Shield • MKR Proto Large Shield • Arduino ISP • Arduino USB 2 Serial Micro • Arduino Mini USB Serial Adapter |
Интернет вещей | Arduino Yun • Arduino Ethernet • Arduino MKR1000 • Arduino WiFi 101 Shield • Arduino GSM Shield V2 • Arduino WiFi Shield • Arduino Wireless SD Shield • Arduino Wireless Proto Shield • Arduino Ethernet Shield V2 • Arduino Yun Shield • Arduino MKR1000 Bundle |
Носимые устройства | Arduino Gemma • Lilypad Arduino Simple • Lilypad Arduino Main Board • Lilypad Arduino USB • LilyPad Arduino SimpleSnap |
3D-печать | Arduino Materia 101 |
Устаревшие устройства | - |
Примеры Arduino | |
---|---|
Стандартные функции | |
Основы |
|
Цифровой сигнал |
|
Аналоговый сигнал |
|
Связь |
|
Управляющие структуры |
|
Датчики |
|
Дисплей |
Примеры, объясняющие основы управления дисплеем:
|
Строки |
|
USB (для Leonardo, Micro и Due плат) |
В этой секции имеют место примеры, которые демонстрируют использование библиотек, уникальных для плат Leonardo, Micro и Due.
|
Клавиатура |
|
Мышь |
|
Разное |
- Страницы, использующие повторяющиеся аргументы в вызовах шаблонов
- Справочник языка Arduino
- Arduino
- Перевод от Сubewriter
- Проверка:myagkij
- Оформление:myagkij
- Редактирование:myagkij
- Страницы, где используется шаблон "Навигационная таблица/Телепорт"
- Страницы с телепортом
- Пример
- Примеры
- Пример программирования Arduino
- Примеры программирования Arduino