Arduino:Библиотеки/Servo/writeMicroseconds(): различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
 
Нет описания правки
 
(не показаны 2 промежуточные версии 1 участника)
Строка 6: Строка 6:
=Функция writeMicroseconds()<ref>[https://www.arduino.cc/en/Reference/ServoWriteMicroseconds ServoWriteMicroseconds]</ref>=
=Функция writeMicroseconds()<ref>[https://www.arduino.cc/en/Reference/ServoWriteMicroseconds ServoWriteMicroseconds]</ref>=


Передает на сервомотор значение в микросекундах, тем самым осуществляя управление валом. Если это стандартный сервомотор, то переданное значение устанавливает угол, на который должен повернуться вал. То есть значение '''«1000»''' – это полный поворот против часовой стрелки, '''«2000»''' – полный поворот по часовой стрелке, а '''«1500»''' – это полная остановка.
Передает на [[сервомотор]] значение в микросекундах, тем самым осуществляя управление валом. Если это стандартный [[сервомотор]], то переданное значение устанавливает угол, на который должен повернуться вал. То есть значение «1000» – это полный поворот против часовой стрелки, «2000» – полный поворот по часовой стрелке, а «1500» – это полная остановка.


Обратите внимание, что производители далеко не всегда строго следуют этому стандарту, поэтому сервомоторы часто реагируют на значение '''от «700» до «2300»'''. Поэтому, чтобы узнать реальный диапазон, имеет смысл поэкспериментировать с конечными значениями. Также имейте в виду, что поворот вала за пределы этих конечных точек (зачастую сопровождаемый рычащим звуком) – это ситуация, когда на сервомотор подается ток высокого напряжения, и ее следует избегать.
Обратите внимание, что производители далеко не всегда строго следуют этому стандарту, поэтому [[сервомотор]]ы часто реагируют на значение от «700» до «2300». Поэтому, чтобы узнать реальный диапазон, имеет смысл поэкспериментировать с конечными значениями. Также имейте в виду, что поворот вала за пределы этих конечных точек (зачастую сопровождаемый рычащим звуком) – это ситуация, когда на [[сервомотор]] подается ток высокого напряжения, и ее следует избегать.


Сервомоторы непрерывного вращения реагируют на эту функцию так же, как и на функцию [[Arduino:Библиотеки/Servo/write()|write()]].
Сервомоторы непрерывного вращения реагируют на эту функцию так же, как и на функцию [[Arduino:Библиотеки/Servo/write()|write()]].
Строка 50: Строка 50:
<references />
<references />


{{Навигационная таблица/Arduino библиотеки}}
 
{{Навигационная таблица/Портал/Arduino}}
 
 
 
 


[[Категория:Стандартные библиотеки]]
[[Категория:Стандартные библиотеки]]

Текущая версия от 11:16, 8 июля 2023

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.

Функция writeMicroseconds()[1]

Передает на сервомотор значение в микросекундах, тем самым осуществляя управление валом. Если это стандартный сервомотор, то переданное значение устанавливает угол, на который должен повернуться вал. То есть значение «1000» – это полный поворот против часовой стрелки, «2000» – полный поворот по часовой стрелке, а «1500» – это полная остановка.

Обратите внимание, что производители далеко не всегда строго следуют этому стандарту, поэтому сервомоторы часто реагируют на значение от «700» до «2300». Поэтому, чтобы узнать реальный диапазон, имеет смысл поэкспериментировать с конечными значениями. Также имейте в виду, что поворот вала за пределы этих конечных точек (зачастую сопровождаемый рычащим звуком) – это ситуация, когда на сервомотор подается ток высокого напряжения, и ее следует избегать.

Сервомоторы непрерывного вращения реагируют на эту функцию так же, как и на функцию write().

Синтаксис

servo.writeMicroseconds(uS)

Параметры

servo  переменная типа Servo
uS  значение, которое нужно передать сервомотору, в микросекундах. Тип данных  int

Пример

#include <Servo.h> 

Servo myservo;

void setup() 
{ 
  myservo.attach(9);
  myservo.writeMicroseconds(1500);  //  задаем среднюю точку, тем самым останавливая вал сервомотора
} 

void loop() {}

См.также

  1. attach()
  2. read()

Внешние ссылки