Servo Shield¶
Servo Shield (v3) керує до чотирьох стандартних хобі-сервоприводів безпосередньо від OpenMV Cam. Вбудований регулятор приймає вхідну напругу 6–36 В на клемній колодці та забезпечує 5,6 В при струмі до 5 А — достатньо для живлення як камери, так і сервоприводів від одного джерела.
Повний технічний опис, фотографії та інформацію про замовлення дивіться на сторінці продукту Servo Shield.
Основні характеристики¶
Керування до чотирьох хобі-сервоприводів через P7 / P8 / P9 / P10
Вхід 6–36 В на клемній колодці (з захистом від зворотної полярності)
5,6 В при струмі до 5 А на VIN — живлення камери та сервоприводів
Аналоговий вхід 0–5 В із захистом від перенапруги до ±36 В
Двонаправлений цифровий I/O 0–5 В з перетворенням рівнів від 3,3 В до 5 В
Розпіновка¶
Довідник виводів¶
Вивід |
Функція |
|---|---|
P6 |
Зворотне зчитування AIN із перетворенням рівня (0–3,3 В на P6) |
P7 |
Сервопривід 1 — двонаправлений GPIO 3,3 В ↔ 5 В |
P8 |
Сервопривід 2 — двонаправлений GPIO 3,3 В ↔ 5 В |
P9 |
Сервопривід 3 — двонаправлений GPIO 3,3 В ↔ 5 В |
P10 |
Сервопривід 4 — двонаправлений GPIO 3,3 В ↔ 5 В |
PWR in |
Широкий вхід 6–36 В на клемній колодці (з захистом від зворотної полярності) |
AIN in |
Аналоговий вхід на клемній колодці |
VIN out |
Стабілізовані 5,6 В, до 5 А сумарно для сервоприводів і камери |
Шина 3,3В |
Живлення вбудованої електроніки шилда |
Шина GND |
Спільна земля |
Примітка
AIN захищений від перенапруги до ±36 В та за замовчуванням налаштований як вхід напруги 0–5 В, масштабований до 0–3,3 В на P6. Замкніть шунт режиму 4–20 мА на звороті шилда, щоб переключити AIN на вхід петлі струму 4–20 мА.
Примітка
Кожен із P6–P10 підключений до камери через резистор 0 Ом на звороті шилда. Видаліть резистор на будь-якому виводі, який ви хочете використовувати для інших цілей.
Примітка
У версії v2 шилда P6–P9 є однонаправленими перетворювачами рівнів 3,3 В → 5 В (лише виходи). P10 — це цифрова лінія з відкритим стоком, підтягнута до 3,3 В із боку камери та до 5 В із боку виводу сервопривода. За замовчуванням це вхід — шилд перетворює рівень 0–5 В на виводі сервопривода до 0–3,3 В на P10. Змініть паяний перемикач на платі, щоб переключити P10 у режим виходу, перетворюючи 0–3,3 В на P10 до 0–5 В на виводі сервопривода.
Використання¶
Керуйте хобі-сервоприводом із будь-якого виводу P7–P10 за допомогою сигналу PWM 50 Гц. Діапазон ширини імпульсів відрізняється між сервоприводами, тому налаштуйте MIN_US та MAX_US відповідно до вашого — типові значення близько 1000–2000 мкс:
from machine import Pin, PWM
import time
MIN_US = 1000 # full-left pulse width (microseconds)
MAX_US = 2000 # full-right pulse width
servo = PWM(Pin("P7"), freq=50)
def angle(deg):
pulse_us = MIN_US + (deg * (MAX_US - MIN_US)) // 180
servo.duty_ns(pulse_us * 1000)
while True:
angle(0)
time.sleep(1)
angle(90)
time.sleep(1)
angle(180)
time.sleep(1)
Зчитайте вхідний сигнал з клемної колодки AIN (результат після перетворення рівня відображається на P6):
from machine import ADC
import time
ain = ADC("P6")
while True:
# 0–5 V on the AIN terminal scaled to 0–3.3 V on P6
v = ain.read_u16() * 3.3 / 65535
print("AIN:", v * (5.0 / 3.3), "V")
time.sleep_ms(100)