ความแตกต่างของ AIM WebSocket#

หน้านี้สรุปความแตกต่างที่สำคัญระหว่าง API Python ที่ใช้ WebSocket และ API Python ของ VEXcode AIM ซึ่งรวมถึงฟังก์ชันการทำงานที่เพิ่มเข้ามา คลาสที่ถูกลบออก และการรองรับกรณีการใช้งานขั้นสูง เช่น การควบคุมหุ่นยนต์หลายตัวพร้อมกัน

วิธีการเพิ่มเติม#

เล่นไฟล์ท้องถิ่น#

เมธอด play_local_file จะเล่นไฟล์เสียงที่จัดเก็บไว้ในคอมพิวเตอร์และส่งเสียงออกทางลำโพงของหุ่นยนต์ วิธีนี้ช่วยให้คุณสามารถเล่นไฟล์ .wav หรือ .mp3 ที่กำหนดเองบนหุ่นยนต์ได้โดยไม่ต้องอัปโหลดไฟล์เหล่านั้น

Usage:
robot.sound.play_local_file(filepath: str, volume = 100)

พารามิเตอร์

คำอธิบาย

เส้นทางไฟล์

สตริงที่ระบุเส้นทางไปยังไฟล์ .wav หรือ .mp3 บนคอมพิวเตอร์

ปริมาณ

(เลือกได้) ระดับเสียงในการเล่นสามารถปรับได้เป็นเปอร์เซ็นต์ ตั้งแต่ 0 ถึง 100 ค่าเริ่มต้นคือ 100

เพื่อดูตัวอย่างการใช้งาน ให้เปิดไฟล์ play_sounds.py

รับภาพจากกล้อง#

เมธอด get_camera_image จะจับภาพเฟรมปัจจุบันจากเซ็นเซอร์ AI Vision ของหุ่นยนต์และส่งคืนเป็นอ็อบเจ็กต์ JPEG ที่บีบอัดขนาด bytes ซึ่งโดยทั่วไปจะใช้ร่วมกับเครื่องมือต่างๆ เช่น OpenCV สำหรับแสดงภาพวิดีโอสด

Usage:
robot.vision.get_camera_image()

พารามิเตอร์

คำอธิบาย

เมธอดนี้ไม่มีพารามิเตอร์

หากต้องการดูตัวอย่างการใช้งาน โปรดดูที่ stream_video.py

ใช้หุ่นยนต์หลายตัวพร้อมกัน#

คุณสามารถเชื่อมต่อกับหุ่นยนต์หลายตัวได้โดยการระบุที่อยู่ IP ของหุ่นยนต์แต่ละตัวด้วยตนเองเมื่อสร้างวัตถุ Robot

Usage:
Robot(address)

พารามิเตอร์

คำอธิบาย

ที่อยู่

ไม่บังคับ ที่อยู่ IP ของหุ่นยนต์ หากละเว้น ระบบจะใช้ที่อยู่ในฟิลด์ host ของไฟล์ settings.json เป็นค่าเริ่มต้น

หากต้องการดูตัวอย่างการใช้งาน ให้เปิดไฟล์ multiple_robots.py

คลาสที่ถูกลบ#

คลาสต่อไปนี้ที่มีอยู่ใน VEXcode Python API จะไม่สามารถใช้งานได้ในเวอร์ชัน WebSocket:

  • Controller

  • Event

คุณสมบัติที่มีเฉพาะใน VEXcode เท่านั้น#

ปัจจุบันฟีเจอร์ต่อไปนี้ยังไม่รองรับผ่านทาง AIM WebSocket API และจำเป็นต้องเชื่อมต่อผ่าน VEXcode AIM:

  • การอัปเดตเฟิร์มแวร์ของหุ่นยนต์

  • การอัปโหลดรูปภาพแบบกำหนดเอง

  • กำลังอัปโหลดเสียงที่กำหนดเอง

  • การส่งข้อความระหว่างหุ่นยนต์