Опишемо програму управління серво-мотором командами з COM-порта на прикладі контролера Arduino Leonardo.
Управління буде відбуватися в наступному вигляді: в стандартному (або сторонньому) вікні монітора COM-порта вводимо цілу цифру від нуля до 180, натискаємо Enter та серво змінює положення свого плеча на заданий кут.
Скетч в Arduino IDE виглядає наступним чином:
Текст програми з коментарями такий:

#include <Servo.h> //підключення бібліотеки servo
Servo myservo; // створення об'єкта servo для управління мотором
// на більшості плат Arduino можна створити 12 servo об'єктів
String inputString = ""; // змінна типу string для збереження вхідних даних
boolean stringComplete = false; // флаг дані отримані
void setup() {
myservo.attach(9); //вибираємо дев'ятий керуючий дискретний вихід контролера для керування моторчиком
//ініціалізація послідовного порта:
Serial.begin(9600);
// отримати 200 байтів та записати в змінну inputString:
inputString.reserve(200);
myservo.write(0); //виставляємо початкове положення серво в 0 градусів
}
void loop() {
serialEvent(); //виклик нашої комунікаційної функції
// друкуємо відповідь в COM-порт та повертаємо серво на заданий кут:
if (stringComplete) {
Serial.println(inputString);
myservo.write(inputString.toInt()); //задання положення серво-машинці з отриманої команди
// обнулюємо строкову змінну:
inputString = "";
stringComplete = false;
}
}
void serialEvent() {
while (Serial.available()) {
// отримати новий байт даних:
char inChar = (char)Serial.read();
// додати новий байт до строкової змінної inputString:
inputString += inChar;
// якщо вхідний символ є новим рядком, підняти флаг
// щоб головний цикл обробив прийняту команду:
if (inChar == '\n') {
stringComplete = true;
}
}
}
| Arduino | Servo |
| Нуль живлення | Коричневий дріт |
| Плюс 5В | Червоний дріт |
| Дискретний вихід №9 | Помаранчевий дріт |

Датчик вологості та температури DHT21
DHT21 (AM2301) – Датчик вологості та температури для Arduino, ESP32, Raspberry Pi DHT21 (AM2301) ..
261.32грн.
Що потрібно знати, щоб зібрати свій ЧПУ?
Верстат ЧПУ (з числовим програмним управлінням) або англійською CNC дозволяє будь-якому умі..
Вимірювання часу виконання операцій та функцій у скетчах Arduino
Вимірювання часу виконання операцій та функцій у скетчах Arduino Вступ Під час розробки ..
Розумний дім #10: Датчик CO2
Розумний дім #10: Датчик CO₂ Контроль якості повітря в приміщенні — один із ключових ел..
Arduino 4-20 мА підключення датчика рівня
Бувають такі часи в житті ардуінщіка, коли йому доводиться з глибин аматорських датчиків підніматися..





