Arduino:Примеры/Servos
Перейти к навигации
Перейти к поиску
Поддержать проект | Содержание | Знакомство с Arduino | Продукты | Основы | Справочник языка Arduino | Примеры | Библиотеки | Хакинг | Изменения | Сравнение языков Arduino и Processing |
Перевод: Максим Кузьмин (Cubewriter) Контакты:</br>* Skype: cubewriter</br>* E-mail: cubewriter@gmail.com</br>* Максим Кузьмин на freelance.ru
Проверка/Оформление/Редактирование: Мякишев Е.А.
Содержание
Сервомотор[1]
Это скетч для библиотеки TLC5940 и платы Arduino, который демонстрирует, как при помощи чипа TLC5940 управлять вращением сервомотора.
Код
1 /*
2
3 Сервомотор
4
5 Этот скетч поворачивает сервомотор, подключенный к 0-ому каналу.
6
7 Чтобы подключить сервомотор:
8 1. Подключите подтягивающий резистор на 2-5 кОм (обозначен как
9 «R0» на схеме ниже; у меня стоит на 3,3 кОм) между выходным
10 контактом для управления сервомотором («OUTn») и +5V.
11 2. Подключите тот же контакт к линии для управления сервомотором
12 как показано на схеме ниже.
13
14 Сервомотор
15 | _____
16 OUTn ----+----[_____]---+5v
17 R0
18
19 Создан 2009-01-20 Стивом Помероем
20 (Steve Pomeroy; steve ~AT~ staticfree.info).
21
22
23 #include "Tlc5940.h"
24 #include "tlc_servos.h"
25
26 #define SERVO_CHANNEL 0
27 #define DELAY_TIME 20
28
29 void setup()
30 {
31 tlc_initServos(); // примечание: это снизит частоту ШИМ до 50 гц
32 }
33
34 void loop()
35 {
36 for (int angle = 0; angle < 180; angle++) {
37 tlc_setServo(SERVO_CHANNEL, angle);
38 Tlc.update();
39 delay(DELAY_TIME);
40 }
41 for (int angle = 180; angle >= 0; angle--) {
42 tlc_setServo(SERVO_CHANNEL, angle);
43 Tlc.update();
44 delay(DELAY_TIME);
45 }
46 }
См.также
Внешние ссылки