Опишемо програму управління серво-мотором командами з 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 | Помаранчевий дріт |

Arduino Nano I2C двохсторонній зв'язок між контролерами
Продолжаем разбор технологии обмена данными по коммуникации I2CВ попередній статті розглядався ..
Магнітний сенсор A3144. Датчик Холла з дискретним виходом.
Магнітний сенсор A3144 (датчик Холла з дискретним виходом)Магнітний сенсор A3144 — це однополюсний д..
10.10грн.
Стабілітрони 0,5Вт набір 3,3 ... 12В 100шт.
Набір стабілітронів 10 номіналів по 10шт.Номінальна потужність 0,5ВтРобоча температура -65°C ....
137.48грн.
Одна кнопка — три команди на Arduino UNO: клік, подвійний клік і довге натискання
Одна кнопка — три команди: клік, довге натискання та подвійний клік на Arduino UNO У більшо..
Озвучка тира Arduino Nano и MP3-проигрыватель
Постановка задачіЗадачею проекту являється виготовлення пристрою озвучення пострілів 6-ти одиниць зб..





