แขนกล 6 แกน#
การแนะนำ#
แขนหุ่นยนต์ 6 แกน VEX สามารถเคลื่อนย้ายส่วนปลายแขนในพื้นที่สามมิติ ควบคุมทิศทางโดยใช้การหมุนแบบยอว์ โรล และพิทช์ และใช้เครื่องมือที่ติดตั้งไว้ เช่น เครื่องมือหยิบจับแม่เหล็ก หรือเครื่องมือจับปากกา
แขนกล 6 แกนไม่ได้ถูกกำหนดค่าเป็นอุปกรณ์ใน VEXcode V5 หากต้องการใช้งานในโปรเจ็กต์ Python ของ VEX V5 ให้สร้างอ็อบเจ็กต์ Arm ในโค้ดด้วยตนเอง โดยระบุ Smart Port ที่เชื่อมต่อกับแขนกล 6 แกน
ตัวอย่างในหน้านี้ใช้แขนกล 6 แกนที่สร้างขึ้นด้วยมือชื่อ arm1
ด้านล่างนี้คือรายการวิธีการทั้งหมดที่มีให้เลือกใช้:
การกระทำ — เคลื่อนแขนกล 6 แกนไปยังตำแหน่งหรือทิศทางต่างๆ
move_to— ย้ายปลายแขนกลไปยังพิกัด x, y และ z ที่ระบุmove_inc— ย้ายปลายแขนกลไปตามระยะที่กำหนดจากตำแหน่งปัจจุบันmove_end_effector_to— หมุนปลายแขนกลไปยังทิศทาง yaw, roll และ pitch ที่กำหนดmove_end_effector_inc— หมุนปลายแขนกลด้วยค่า yaw, roll และ pitch ที่ระบุ
ตัวปรับแต่ง — กำหนดค่าการเคลื่อนไหว เครื่องมือ และการตั้งค่าการควบคุม
set_speed— ตั้งค่าความเร็วในการเคลื่อนที่ที่ใช้โดยแขน 6 แกนset_end_effector_type— กำหนดประเภทของปลายแขนกลที่ติดอยู่กับแขนกล 6 แกนset_end_effector_magnet— เปิดใช้งานหรือปิดใช้งานเครื่องมือหยิบแม่เหล็กset_pen_offset— ตั้งค่าการชดเชยแกน z ที่ใช้กับเครื่องมือ Pen Holderset_control_stop— เปิดใช้งานการหยุดควบคุมสำหรับแขน 6 แกนset_timeout— ตั้งค่าหมดเวลาที่ใช้โดยวิธีการเคลื่อนที่แขน 6 แกน
เมธอด Getter — ส่งคืนสถานะการเคลื่อนไหว ตำแหน่ง การวางแนว และค่าการเชื่อมต่อ
is_done— ส่งคืนว่าแขน 6 แกนเคลื่อนที่เสร็จแล้วหรือไม่is_crashed— ส่งคืนว่าแขน 6 แกนเกิดการชนขณะเคลื่อนที่หรือไม่get_x— ส่งคืนตำแหน่ง x ปัจจุบันของปลายแขนกลget_y— ส่งคืนตำแหน่ง y ปัจจุบันของปลายแขนกลget_z— ส่งคืนตำแหน่ง z ปัจจุบันของปลายแขนกลget_pitch— ส่งคืนค่า pitch ปัจจุบันของ end effectorget_roll— ส่งคืนค่าการหมุนปัจจุบันของปลายแขนกลget_yaw— ส่งคืนค่า yaw ปัจจุบันของปลายแขนกลcan_arm_reach_to— ส่งคืนว่าแขน 6 แกนสามารถเอื้อมถึงตำแหน่งที่กำหนดได้หรือไม่can_arm_reach_inc— ส่งคืนว่าแขน 6 แกนสามารถเคลื่อนที่ได้ตามระยะทางที่กำหนดหรือไม่can_end_effector_reach_to— ส่งคืนว่าปลายแขนกลสามารถเข้าถึงทิศทางที่กำหนดได้หรือไม่can_end_effector_reach_inc— ส่งคืนว่าปลายแขนกลสามารถหมุนได้ตามปริมาณที่กำหนดหรือไม่get_timeout— ส่งคืนค่าหมดเวลาปัจจุบันที่ใช้โดยวิธีการเคลื่อนย้ายis_connected— ส่งคืนว่าแขน 6 แกนเชื่อมต่อกับสมอง V5 หรือไม่
ฟังก์ชันเรียกกลับ — เรียกใช้ฟังก์ชันเมื่อเกิดเหตุการณ์เกี่ยวกับแขนหุ่นยนต์
control_stopped— ลงทะเบียนฟังก์ชันที่จะทำงานเมื่อเปิดใช้งานการหยุดควบคุมcrashed— ลงทะเบียนฟังก์ชันที่จะทำงานเมื่อตรวจพบการขัดข้อง
ตัวสร้าง — สร้างวัตถุแขนกล 6 แกนด้วยตนเอง
Arm— สร้างวัตถุแขน 6 แกน
การกระทำ#
move_to#
คำสั่ง move_to จะเคลื่อนแขนกล 6 แกนไปยังพิกัด x, y และ z ที่กำหนด
พิกัด x, y และ z อธิบายตำแหน่งของปลายแขนในพื้นที่สามมิติ ใช้ can_arm_reach_to ก่อนวิธีนี้หากตำแหน่งเป้าหมายอาจอยู่นอกพื้นที่ทำงานที่เข้าถึงได้ของแขนกล 6 แกน
Usage:
arm1.move_to(x, y, z, wait)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
พิกัด x ของตำแหน่งเป้าหมายในหน่วยมิลลิเมตร |
|
พิกัด y ของตำแหน่งเป้าหมายในหน่วยมิลลิเมตร |
|
พิกัด z ของตำแหน่งเป้าหมายในหน่วยมิลลิเมตร |
|
ตัวเลือกเสริม |
# Move the 6-Axis Arm to (40, 140, 210)
arm1.move_to(40, 140, 210)
# Start moving, then print the y-position while the arm moves
arm1.move_to(-100, 200, 100, wait=False)
while not arm1.is_done():
brain.screen.print(arm1.get_y())
brain.screen.next_row()
wait(0.25, SECONDS)
move_inc#
คำสั่ง move_inc จะเคลื่อนแขนกล 6 แกนไปตามระยะทางที่กำหนดจากตำแหน่งปัจจุบันตามแนวแกน x, y และ z
ใช้วิธีนี้เพื่อเคลื่อนที่สัมพันธ์กับตำแหน่งปัจจุบันของปลายแขนกล ใช้ can_arm_reach_inc ก่อนวิธีนี้หากการเคลื่อนที่อาจทำให้แขนกล 6 แกนอยู่นอกพื้นที่ทำงานที่เข้าถึงได้
Usage:
arm1.move_inc(x, y, z, wait)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
ระยะทางที่ต้องเคลื่อนที่ไปตามแกน x ในหน่วยมิลลิเมตร |
|
ระยะทางที่ต้องเคลื่อนที่ไปตามแกน y ในหน่วยมิลลิเมตร |
|
ระยะทางในการเคลื่อนที่ตามแกน z ในหน่วยมิลลิเมตร |
|
ตัวเลือกเสริม |
# Move the 6-Axis Arm 100 millimeters along the y-axis
arm1.move_inc(0, 100, 0)
move_end_effector_to#
คำสั่ง move_end_effector_to จะหมุนปลายแขนกล 6 แกนไปยังทิศทาง yaw, roll และ pitch ที่กำหนดไว้
การกำหนดทิศทางอธิบายถึงวิธีการหมุนของปลายแขนกล yaw คือการหมุนรอบแกน Z, roll คือการหมุนรอบแกน X และ pitch คือการหมุนรอบแกน Y
Usage:
arm1.move_end_effector_to(yaw, roll, pitch, wait)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
มุมหันเป้าหมาย หน่วยเป็นองศา |
|
มุมกลิ้งเป้าหมาย หน่วยเป็นองศา |
|
มุมเอียงเป้าหมาย หน่วยเป็นองศา |
|
ตัวเลือกเสริม |
# Rotate the end effector to 90 degrees of roll
arm1.move_end_effector_to(0, 90, 0)
move_end_effector_inc#
move_end_effector_inc หมุนปลายแขนกล 6 แกนด้วยค่า yaw, roll และ pitch ที่กำหนดจากตำแหน่งปัจจุบัน
ใช้วิธีนี้ในการหมุนโดยสัมพันธ์กับมุม yaw, roll หรือ pitch ปัจจุบันของปลายแขนกล
Usage:
arm1.move_end_effector_inc(yaw, roll, pitch, wait)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
การเปลี่ยนแปลงของมุมหันเห (yaw) ในหน่วยองศา |
|
การเปลี่ยนแปลงมุมการหมุน ในหน่วยองศา |
|
การเปลี่ยนแปลงระดับเสียง ในหน่วยองศา |
|
ตัวเลือกเสริม |
# Rotate the end effector -50 degrees in pitch
arm1.move_end_effector_inc(0, 0, -50)
ตัวกลายพันธุ์#
set_speed#
set_speed กำหนดความเร็วในการเคลื่อนที่ที่ใช้โดยแขนกล 6 แกนสำหรับวิธีการเคลื่อนที่ต่างๆ
ความเร็วของแขนกล 6 แกนจะถูกตั้งค่าไว้ที่ 50% เมื่อเริ่มต้นโครงการ
Usage:
arm1.set_speed(speed)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
The movement speed of the 6-Axis Arm, from |
# Set the 6-Axis Arm speed to 30%
arm1.set_speed(30)
set_end_effector_type#
set_end_effector_type กำหนดประเภทของหัวจับชิ้นงานที่ติดอยู่กับแขนกล 6 แกน
เมื่อเปลี่ยนประเภทของหัวจับชิ้นงาน แขนกล 6 แกนจะปรับค่าชดเชยแกน Z โดยอัตโนมัติให้ตรงกับเครื่องมือที่เลือก ประเภทของหัวจับชิ้นงานจะถูกตั้งค่าเป็น MAGNET เมื่อเริ่มต้นโครงการ
Usage:
arm1.set_end_effector_type(type)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
เครื่องมือที่ติดอยู่กับแขน 6 แกน: |
# Set the end effector type to the Pen Holder Tool
arm1.set_end_effector_type(PEN)
set_end_effector_magnet#
set_end_effector_magnet ใช้สำหรับเชื่อมต่อหรือปลดเครื่องมือหยิบจับแม่เหล็ก
The magnet state stays active until another set_end_effector_magnet method changes it. The magnet state is reset to False at the start of a project.
Usage:
arm1.set_end_effector_magnet(state)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
สถานะของเครื่องมือหยิบจับแม่เหล็ก: |
# Pick up objects and then drop them
arm1.set_end_effector_type(MAGNET)
arm1.set_end_effector_magnet(True)
wait(2, SECONDS)
arm1.set_end_effector_magnet(False)
set_pen_offset#
set_pen_offset กำหนดค่าชดเชยแกน z ที่ใช้เมื่อติดตั้งเครื่องมือจับปากกาเข้ากับแขน 6 แกน
ตั้งค่าประเภทปลายหัวจับเป็น PEN ก่อนใช้วิธีนี้ หากไม่ได้เลือกเครื่องมือยึดปากกา วิธีนี้จะไม่มีผล
ระยะห่างของปากกา (Pen Offset) คือระยะห่างจากด้านบนของอุปกรณ์ยึดปากกา (Pen Holder Tool) ถึงปลายปากกาไวท์บอร์ด (Dry-Erase Marker) เมื่อเริ่มต้นโปรเจกต์ ระยะห่างของปากกาจะถูกตั้งค่าเป็น 0การตั้งค่าระยะห่างของปากกาเป็น 0 จะวางจุดกำเนิดแกน Z ของแขนกลไว้ที่จุดที่อุปกรณ์ยึดปากกาเชื่อมต่อกับแขนกล 6 แกน (6-Axis Arm)
Usage:
arm1.set_pen_offset(zOffset)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
ค่าการเบี่ยงเบนของปากกาในหน่วยมิลลิเมตร |
# Set the end effector type to the Pen Holder Tool and set the pen offset
arm1.set_end_effector_type(PEN)
arm1.set_pen_offset(25)
set_control_stop#
set_control_stop เปิดใช้งานการหยุดควบคุมสำหรับแขนกล 6 แกน
เมื่อเปิดใช้งานการหยุดควบคุม แขนกล 6 แกนจะหยุดการเคลื่อนไหวทันทีและจะไม่ดำเนินการวิธีการเคลื่อนไหวของแขนกลใดๆ ต่อไปจนกว่าจะเริ่มโครงการใหม่
Usage:
arm1.set_control_stop(state)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
ตัวเลือกเสริม |
# Stop the 6-Axis Arm and prevent further movement
arm1.set_control_stop()
set_timeout#
set_timeout กำหนดค่าหมดเวลาที่ใช้เมื่อเคลื่อนย้ายแขนกล 6 แกน
หากการเคลื่อนไหวไม่เสร็จสิ้นก่อนหมดเวลาที่กำหนด โครงการจะดำเนินการต่อในบรรทัดโค้ดถัดไป
Usage:
arm1.set_timeout(timeout, units)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
ค่าหมดเวลาใหม่ |
|
ตัวเลือกเสริม หน่วยเวลา: |
# Set the 6-Axis Arm timeout to 2 seconds
arm1.set_timeout(2, SECONDS)
ผู้รับ#
is_done#
is_done จะส่งคืนค่าว่าแขนกล 6 แกนเคลื่อนที่เสร็จแล้วหรือไม่
วิธีนี้มีประโยชน์หลังจากเรียกใช้เมธอดการเคลื่อนไหวโดยตั้ง wait=False
True— แขนกล 6 แกนเคลื่อนที่เสร็จสิ้นแล้วFalse— แขนกล 6 แกนยังคงเคลื่อนที่อยู่
Usage:
arm1.is_done()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
# Display the 6-Axis Arm's y-position while it moves
arm1.move_to(-100, 200, 100, wait=False)
while not arm1.is_done():
brain.screen.print(arm1.get_y())
brain.screen.next_row()
wait(0.25, SECONDS)
is_crashed#
is_crashed จะส่งคืนค่าว่าแขนกล 6 แกนเกิดการขัดข้องขณะเคลื่อนที่หรือไม่
เมื่อตรวจพบการชนกัน แขนกล 6 แกนจะหยุดการเคลื่อนไหวของมอเตอร์และอาจดูเหมือนอ่อนแรงลง ซึ่งจะช่วยลดแรงกดและช่วยปกป้องมอเตอร์จากความเสียหายโดยไม่ได้ตั้งใจ
True— แขนกล 6 แกนเกิดขัดข้องFalse— แขนกล 6 แกนไม่ได้เกิดอุบัติเหตุ
Usage:
arm1.is_crashed()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
# Quickly move to a new location
arm1.set_speed(100)
arm1.move_to(-30, 240, 40, wait=False)
# While moving, check for a crash
while True:
if arm1.is_crashed():
# Indicate a crash with the Brain screen
brain.screen.print("Crash Detected")
break
wait(5, MSEC)
get_x#
get_x ส่งคืนตำแหน่ง x ปัจจุบันของปลายแขนกลในหน่วยมิลลิเมตร
ใช้วิธีนี้ในการอ่านตำแหน่งปัจจุบันของปลายแขนกลบนแกน x
Usage:
arm1.get_x()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
# Print the current x position of the 6-Axis Arm
brain.screen.print(arm1.get_x())
get_y#
get_y ส่งคืนตำแหน่ง y ปัจจุบันของปลายแขนกลในหน่วยมิลลิเมตร
ใช้วิธีนี้ในการอ่านตำแหน่งปัจจุบันของปลายแขนกลตามแกน y
Usage:
arm1.get_y()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
# Print the current y position of the 6-Axis Arm
brain.screen.print(arm1.get_y())
get_z#
get_z ส่งคืนตำแหน่ง z ปัจจุบันของปลายแขนกลในหน่วยมิลลิเมตร
ใช้วิธีนี้ในการอ่านตำแหน่งปัจจุบันของปลายแขนกลบนแกน z
Usage:
arm1.get_z()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
# Print the current z position of the 6-Axis Arm
brain.screen.print(arm1.get_z())
get_pitch#
get_pitch จะส่งคืนค่ามุมเอียงปัจจุบันของปลายแขนกลในหน่วยองศา
Usage:
arm1.get_pitch()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
# Print the current pitch of the end effector
brain.screen.print(arm1.get_pitch())
get_roll#
get_roll จะส่งคืนค่าการหมุนปัจจุบันของปลายแขนกลในหน่วยองศา
Usage:
arm1.get_roll()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
# Print the current roll of the end effector
brain.screen.print(arm1.get_roll())
get_yaw#
get_yaw ส่งคืนค่า yaw ปัจจุบันของปลายแขนกลในหน่วยองศา
Usage:
arm1.get_yaw()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
# Print the current yaw of the end effector
brain.screen.print(arm1.get_yaw())
can_arm_reach_to#
can_arm_reach_to ส่งคืนค่าว่าแขนกล 6 แกนสามารถเคลื่อนปลายแขนไปยังพิกัด x, y และ z ที่ระบุได้หรือไม่
ใช้วิธีนี้เพื่อตรวจสอบตำแหน่งเป้าหมายก่อนใช้ move_to
True— แขนกล 6 แกนสามารถเอื้อมถึงตำแหน่งที่ต้องการได้False— แขนกล 6 แกนไม่สามารถไปถึงตำแหน่งที่ต้องการได้
Usage:
arm1.can_arm_reach_to(x, y, z)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
พิกัด x ของตำแหน่งเป้าหมายในหน่วยมิลลิเมตร |
|
พิกัด y ของตำแหน่งเป้าหมายในหน่วยมิลลิเมตร |
|
พิกัด z ของตำแหน่งเป้าหมายในหน่วยมิลลิเมตร |
# Move the 6-Axis Arm to (100, -20, 50) if it can reach
if arm1.can_arm_reach_to(100, -20, 50):
arm1.move_to(100, -20, 50)
can_arm_reach_inc#
can_arm_reach_inc ส่งคืนค่าว่าแขนกล 6 แกนสามารถเคลื่อนปลายแขนกลไปตามระยะทาง x, y และ z ที่กำหนดจากตำแหน่งปัจจุบันได้หรือไม่
ใช้วิธีนี้เพื่อตรวจสอบการเคลื่อนที่สัมพัทธ์ก่อนใช้ move_inc
True— แขนกล 6 แกนสามารถเคลื่อนไหวตามที่ต้องการได้False— แขนกล 6 แกนไม่สามารถเคลื่อนไหวตามที่ร้องขอได้
Usage:
arm1.can_arm_reach_inc(x, y, z)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
ระยะทางที่ต้องเคลื่อนที่ไปตามแกน x ในหน่วยมิลลิเมตร |
|
ระยะทางที่ต้องเคลื่อนที่ไปตามแกน y ในหน่วยมิลลิเมตร |
|
ระยะทางในการเคลื่อนที่ตามแกน z ในหน่วยมิลลิเมตร |
# Increment the 6-Axis Arm 100 mm along the x-axis if possible
if arm1.can_arm_reach_inc(100, 0, 0):
arm1.move_inc(100, 0, 0)
can_end_effector_reach_to#
can_end_effector_reach_to จะส่งคืนค่าว่าปลายแขนกลสามารถหมุนไปยังทิศทาง yaw, roll และ pitch ที่ระบุได้หรือไม่
ใช้วิธีนี้เพื่อตรวจสอบทิศทางเป้าหมายก่อนใช้ move_end_effector_to
True— ปลายแขนกลสามารถเข้าถึงทิศทางที่ต้องการได้False— ปลายแขนกลไม่สามารถไปถึงทิศทางที่ต้องการได้
Usage:
arm1.can_end_effector_reach_to(yaw, roll, pitch)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
มุมหันเป้าหมาย หน่วยเป็นองศา |
|
มุมกลิ้งเป้าหมาย หน่วยเป็นองศา |
|
มุมเอียงเป้าหมาย หน่วยเป็นองศา |
# Rotate the end effector to 90 degrees of roll if possible
if arm1.can_end_effector_reach_to(0, 90, 0):
arm1.move_end_effector_to(0, 90, 0)
can_end_effector_reach_inc#
can_end_effector_reach_inc จะส่งคืนค่าว่าปลายแขนกลสามารถหมุนได้ตามค่า yaw, roll และ pitch ที่ระบุจากทิศทางปัจจุบันหรือไม่
ใช้วิธีนี้เพื่อตรวจสอบการเคลื่อนที่ของการวางแนวสัมพัทธ์ก่อนใช้ move_end_effector_inc
True— ปลายแขนกลสามารถหมุนได้ตามที่ร้องขอFalse— ปลายแขนกลไม่สามารถหมุนตามที่ร้องขอได้
Usage:
arm1.can_end_effector_reach_inc(yaw, roll, pitch)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
การเปลี่ยนแปลงของมุมหันเห (yaw) ในหน่วยองศา |
|
การเปลี่ยนแปลงมุมการหมุน ในหน่วยองศา |
|
การเปลี่ยนแปลงระดับเสียง ในหน่วยองศา |
# Increment the end effector by 10 degrees of pitch if possible
if arm1.can_end_effector_reach_inc(0, 0, 10):
arm1.move_end_effector_inc(0, 0, 10)
get_timeout#
get_timeout ส่งคืนค่าหมดเวลาที่ใช้โดยวิธีการเคลื่อนไหวของแขนกล 6 แกนในหน่วยมิลลิวินาที
Usage:
arm1.get_timeout()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
# Print the current movement timeout in milliseconds
brain.screen.print(arm1.get_timeout())
is_connected#
is_connected จะส่งคืนค่าว่าแขนกล 6 แกนเชื่อมต่อกับสมอง V5 หรือไม่
True— แขน 6 แกนเชื่อมต่อกับสมอง V5False— แขน 6 แกนไม่ได้เชื่อมต่อกับสมอง V5
Usage:
arm1.is_connected()
พารามิเตอร์ |
คำอธิบาย |
|---|---|
เมธอดนี้ไม่มีพารามิเตอร์ |
# Print whether the 6-Axis Arm is connected
brain.screen.print(arm1.is_connected())
การเรียกกลับ#
control_stopped#
control_stopped ลงทะเบียนฟังก์ชันที่จะทำงานเมื่อเปิดใช้งานการหยุดควบคุม
เมธอดนี้จะส่งคืนอินสแตนซ์ของคลาส Event
Usage:
arm1.control_stopped(callback, arg)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
A previously defined function that runs when control stop is enabled. |
|
ตัวเลือกเสริม ทูเปิลที่มีอาร์กิวเมนต์ที่จะส่งไปยังฟังก์ชันเรียกกลับ ดู การใช้ฟังก์ชันที่มีพารามิเตอร์ สำหรับข้อมูลเพิ่มเติม |
# Define a function to run when control stop is enabled
def when_control_stopped():
brain.screen.print("The arm has been control stopped")
# Run when_control_stopped when the 6-Axis Arm is control stopped
arm1.control_stopped(when_control_stopped)
crashed#
crashed registers a function that runs when the 6-Axis Arm had crashed while moving.
เมื่อตรวจพบการชนกัน แขนกล 6 แกนจะหยุดการเคลื่อนไหวของมอเตอร์และอาจดูเหมือนอ่อนแรงลง ซึ่งจะช่วยลดแรงกดและช่วยปกป้องมอเตอร์จากความเสียหายโดยไม่ได้ตั้งใจ
Usage:
arm1.crashed(callback)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
A previously defined function that runs when a crash is detected. |
# Define what happens if a crash is detected
def arm_crash():
brain.screen.print("Crash Detected")
# Run arm_crash when the 6-Axis Arm crashes
arm1.crashed(arm_crash)
ผู้สร้าง#
Arm#
คำสั่ง Arm สร้างวัตถุแขนกล 6 แกน ต้องสร้างแขนกล 6 แกนนี้ด้วยตนเองใน VEXcode V5 ก่อนจึงจะสามารถนำไปใช้ในโปรเจ็กต์ได้
Usage:
Arm(smartport)
พารามิเตอร์ |
คำอธิบาย |
|---|---|
|
พอร์ตอัจฉริยะที่เชื่อมต่อกับแขนกล 6 แกน จะเขียนในรูปแบบ |
# Construct a 6-Axis Arm named arm1 with the Arm class
arm1 = Arm(Ports.PORT1)