Servo Shield

Servo Shield (v3) керує до чотирьох стандартних хобі-сервоприводів безпосередньо від OpenMV Cam. Вбудований регулятор приймає вхідну напругу 6–36 В на клемній колодці та забезпечує 5,6 В при струмі до 5 А — достатньо для живлення як камери, так і сервоприводів від одного джерела.

Servo Shield

Повний технічний опис, фотографії та інформацію про замовлення дивіться на сторінці продукту Servo Shield.

Основні характеристики

  • Керування до чотирьох хобі-сервоприводів через P7 / P8 / P9 / P10

  • Вхід 6–36 В на клемній колодці (з захистом від зворотної полярності)

  • 5,6 В при струмі до 5 А на VIN — живлення камери та сервоприводів

  • Аналоговий вхід 0–5 В із захистом від перенапруги до ±36 В

  • Двонаправлений цифровий I/O 0–5 В з перетворенням рівнів від 3,3 В до 5 В

Розпіновка

Servo Shield Pinout

Довідник виводів

Вивід

Функція

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)