class Servo -- ไดรเวอร์เซอร์โวงานอดิเรก 3 สาย¶
ออบเจกต์ Servo ควบคุมมอเตอร์เซอร์โวงานอดิเรกมาตรฐานที่มี 3 สาย (กราวด์ ไฟเลี้ยง สัญญาณ)
ตัวอย่างการใช้งาน:
import pyb
s1 = pyb.Servo(1) # create a servo object on position P7
s2 = pyb.Servo(2) # create a servo object on position P8
s1.angle(45) # move servo 1 to 45 degrees
s2.angle(0) # move servo 2 to 0 degrees
# move servo1 and servo2 synchronously, taking 1500ms
s1.angle(-60, 1500)
s2.angle(30, 1500)
Note
ออบเจกต์ Servo ใช้ Timer(5) เพื่อสร้างเอาต์พุต PWM คุณสามารถใช้ Timer(5) สำหรับการควบคุม Servo หรือวัตถุประสงค์ของคุณเอง แต่ไม่ใช่ทั้งสองพร้อมกัน
ตัวสร้าง¶
- class pyb.Servo(id: int)¶
สร้างออบเจกต์ servo
idคือหมายเลขช่องเซอร์โวที่เริ่มต้นจาก 1; แต่ละช่องเชื่อมต่อกับพินส่วนหัวที่กำหนดไว้ และจำนวนช่องขึ้นอยู่กับ OpenMV Cam:กล้อง
Servo(1)
Servo(2)
Servo(3)
OpenMV Cam M7 / H7
P7P8P9OpenMV Cam M4 / H7 Plus / Pure Thermal
P7P8--
pyb.Servoไม่พร้อมใช้งานบน OpenMV Cam N6เมธอด¶
- angle(angle: int | None = None, time: int = 0) int | None¶
หากไม่มีอาร์กิวเมนต์ ฟังก์ชันนี้คืนค่ามุมปัจจุบัน
หากมีอาร์กิวเมนต์ ฟังก์ชันนี้ตั้งค่ามุมของเซอร์โว:
angleคือมุมที่จะหมุนไปในหน่วยองศาtimeคือจำนวนมิลลิวินาทีที่ใช้ในการเข้าถึงมุมที่ระบุ หากละเว้น เซอร์โวจะเคลื่อนที่ไปยังตำแหน่งใหม่โดยเร็วที่สุด
- speed(speed: int | None = None, time: int = 0) int | None¶
หากไม่มีอาร์กิวเมนต์ ฟังก์ชันนี้คืนค่าความเร็วปัจจุบัน
หากมีอาร์กิวเมนต์ ฟังก์ชันนี้ตั้งค่าความเร็วของเซอร์โว:
speedคือความเร็วที่จะเปลี่ยนไป ระหว่าง -100 ถึง 100timeคือจำนวนมิลลิวินาทีที่ใช้ในการเข้าถึงความเร็วที่ระบุ หากละเว้น เซอร์โวจะเร่งความเร็วโดยเร็วที่สุด
- pulse_width(value: int | None = None) int | None¶
หากไม่มีอาร์กิวเมนต์ ฟังก์ชันนี้คืนค่าความกว้างของพัลส์โดยตรงปัจจุบัน
หากมีอาร์กิวเมนต์ ฟังก์ชันนี้ตั้งค่าความกว้างของพัลส์โดยตรง
- calibration(pulse_min: int | None = None, pulse_max: int | None = None, pulse_centre: int | None = None, pulse_angle_90: int | None = None, pulse_speed_100: int | None = None) Tuple[int, int, int, int, int] | None¶
หากไม่มีอาร์กิวเมนต์ ฟังก์ชันนี้คืนค่าข้อมูลการปรับเทียบปัจจุบัน เป็น 5-tuple
หากมีอาร์กิวเมนต์ ฟังก์ชันนี้ตั้งค่าการปรับเทียบเวลา:
pulse_minคือความกว้างพัลส์ขั้นต่ำที่อนุญาตpulse_maxคือความกว้างพัลส์สูงสุดที่อนุญาตpulse_centreคือความกว้างพัลส์ที่สอดคล้องกับตำแหน่งกลาง/ศูนย์pulse_angle_90คือความกว้างพัลส์ที่สอดคล้องกับ 90 องศาpulse_speed_100คือความกว้างพัลส์ที่สอดคล้องกับความเร็ว 100