Processing:Библиотеки/Hardware I/O/Класс SoftwareServo: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) Нет описания правки |
Нет описания правки |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 4: | Строка 4: | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
=Класс SoftwareServo<ref>[https://processing.org/reference/libraries/io/SoftwareServo.html processing.org - SoftwareServo]</ref>= | =Класс SoftwareServo<ref>[https://processing.org/reference/libraries/io/SoftwareServo.html processing.org - SoftwareServo]</ref>= | ||
Строка 10: | Строка 10: | ||
==Обозначение== | ==Обозначение== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
SoftwareServo | SoftwareServo | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 31: | Строка 31: | ||
==Конструктор== | ==Конструктор== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
SoftwareServo(parent) | SoftwareServo(parent) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 37: | Строка 37: | ||
==Параметры== | ==Параметры== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
parent – как правило, используется «this». Тип данных – PApplet | parent – как правило, используется «this». Тип данных – PApplet | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 43: | Строка 43: | ||
==Возвращаемое значение== | ==Возвращаемое значение== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 49: | Строка 49: | ||
==Пример== | ==Пример== | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
import processing.io.*; | import processing.io.*; | ||
SoftwareServo servo; | SoftwareServo servo; | ||
Строка 89: | Строка 89: | ||
|Высота логотипа издателя для schemaNewsArticle=45 | |Высота логотипа издателя для schemaNewsArticle=45 | ||
}} | }} | ||
{{Навигационная таблица/ | {{Навигационная таблица/Портал/Processing}} |
Текущая версия от 11:51, 20 мая 2023
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Класс SoftwareServo[1]
Обозначение
SoftwareServo
Описание
Создает класс для управления р/у сервомотором, подключенным к GPIO-контакту.
Этот класс использует таймеры для управления р/у сервомоторами средствами широтно-импульсной модуляции (ШИМ). Хотя этот метод не так точен, как аппаратная ШИМ, он по-прежнему применим для множества ситуаций.
Для управления углом поворота сервомотора необходимо подключить его сигнальный провод (как правило, это желтый провод) к любому свободному GPIO-контакту. Пример соответствующего скетча смотрите ниже.
Методы
- attach() – подключает сервомотор к GPIO-контакту (можно задать длительность импульса)
- write() – перемещает сервомотор в заданное положение
- attached() – позволяет узнать, подключен ли сервомотор к GPIO-контакту или нет
- detach() – отключает сервомотор от GPIO-контакта
Конструктор
SoftwareServo(parent)
Параметры
parent – как правило, используется «this». Тип данных – PApplet
Возвращаемое значение
Пример
import processing.io.*;
SoftwareServo servo;
void setup() {
servo = new SoftwareServo(this);
servo.attach(4);
// На Raspberry Pi контакт GPIO4 – это 7 контакт на гребешке,
// Он расположен в 4 ряду, над контактом GND.
}
void draw() {
// не доходим до самого правого края, чтобы не повредить сервомотор:
float angle = 90 + sin(frameCount / 100.0)*85;
servo.write(angle);
}
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |