Shield Servo¶
Le shield Servo (v3) pilote jusqu’à quatre servomoteurs de modélisme standard directement depuis l’OpenMV Cam. Son régulateur intégré accepte une entrée 6–36 V sur le bornier et délivre 5,6 V jusqu’à 5 A — de quoi alimenter à la fois la caméra et les servos depuis une seule source.
Pour la fiche technique complète, les photos et les commandes, consultez la page produit du shield Servo.
Points forts¶
Pilotez jusqu’à quatre servos de modélisme via P7 / P8 / P9 / P10
Entrée 6–36 V sur le bornier (tolérante à l’inversion de tension)
5,6 V jusqu’à 5 A sur VIN — alimente la caméra et les servos
Entrée ADC 0–5 V avec protection contre les surtensions jusqu’à ±36 V
E/S numérique bidirectionnelle 0–5 V avec adaptation de niveau 3,3 V vers 5 V
Brochage¶
Référence des broches¶
Broche |
Fonction |
|---|---|
P6 |
Relecture AIN à niveau adapté (0–3,3 V sur P6) |
P7 |
Servo 1 — GPIO bidirectionnel 3,3 V ↔ 5 V |
P8 |
Servo 2 — GPIO bidirectionnel 3,3 V ↔ 5 V |
P9 |
Servo 3 — GPIO bidirectionnel 3,3 V ↔ 5 V |
P10 |
Servo 4 — GPIO bidirectionnel 3,3 V ↔ 5 V |
PWR in |
Entrée large 6–36 V sur le bornier (tolérante à l’inversion de tension) |
AIN in |
Entrée analogique sur le bornier |
VIN out |
5,6 V régulés, jusqu’à 5 A cumulés pour les servos et la caméra |
Rail 3,3 V |
Alimente l’électronique intégrée au shield |
Rail GND |
Masse commune |
Note
AIN est protégée contre les surtensions jusqu’à ±36 V et fonctionne par défaut comme une entrée de tension 0–5 V, abaissée à 0–3,3 V sur P6. Pontez le shunt du mode 4–20 mA au dos du shield pour basculer AIN en entrée de boucle de courant 4–20 mA.
Note
Chacune des broches P6–P10 est reliée à la caméra via une résistance de 0 ohm au dos du shield. Retirez la résistance de toute broche que vous souhaitez récupérer pour un autre usage.
Note
Sur la version v2 du shield, P6–P9 sont des adaptateurs de niveau unidirectionnels 3,3 V → 5 V (sortie uniquement). P10 est une ligne numérique à drain ouvert, tirée vers 3,3 V côté caméra et vers 5 V côté broche de servo. Par défaut, c’est une entrée — le shield adapte le niveau de 0–5 V sur la broche de servo vers 0–3,3 V sur P10. Modifiez le cavalier à souder intégré pour basculer P10 en sortie, adaptant le niveau de 0–3,3 V sur P10 vers 0–5 V sur la broche de servo.
Utilisation¶
Pilotez un servo de modélisme depuis n’importe laquelle des broches P7–P10 avec un signal PWM à 50 Hz. La plage de largeur d’impulsion varie d’un servo à l’autre, ajustez donc MIN_US et MAX_US aux vôtres — les valeurs typiques se situent autour de 1000–2000 µs
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)
Lisez l’entrée AIN du bornier (le résultat à niveau adapté apparaît sur 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)