1、机械臂左右摆动

一、API 简介

控制机械臂左右摆动所使用的 API 为:

1、MyCobot(port)

函数功能:初始化一个 MyCobot 对象。

参数说明: port:String 类型数据,是控制机械臂的端口号,windows 系统可以在设备管理器中的端口处查看。

2、get_angles()

函数功能:获得机械臂六个关节点的角度。

返回值:返回值的类型是 list,共有六个元素数据,分别对应关节 1~6。

3、send_angles(degrees,speed)

函数功能:一次性设置六个关节点的角度。

参数说明:

degrees:list 类型参数,必须包含六个关节点的角度数据。六个关节点的角度取值范围均是-180~180。

speed:int 类型数据,取值范围 0~100。表示机械臂运行到指定位置时的速度,值越大速度越大。

4、send_angle(id, degree, speed)

函数功能:设置单个关节的角度。

参数说明:

id:代表机械臂的关节,一共有六个关节,有特定的表示方法。关节一的表示法:Angle.J1.value

degree:表示关节的角度,取值范围:-180~180。

speed:表示机械臂运动的速度。

5、release_all_servos()

函数功能:放松机械臂,让其可以随意手动摆动。

二、代码内容

from pymycobot.mycobot import MyCobot
from pymycobot.genre import Angle
from pymycobot import PI_PORT, PI_BAUD  # 当使用树莓派版本的mycobot时,可以引用这两个变量进行MyCobot初始化
import time

# 初始化一个MyCobot对象
mc = MyCobot(PI_PORT, PI_BAUD)

# 获得当前位置的坐标
angle_datas = mc.get_angles()
print(angle_datas)

# 用数列传递传递坐标参数,让机械臂移动到指定位置
mc.send_angles([0, 0, 0, 0, 0, 0], 50)
print(mc.is_paused())
# 设置等待时间,确保机械臂已经到达指定位置
# while not mc.is_paused():
time.sleep(2.5)

# 让关节1移动到90这个位置
mc.send_angle(Angle.J1.value, 90, 50)

# 设置等待时间,确保机械臂已经到达指定位置
time.sleep(2)

# 设置循环次数
num = 5

# 让机械臂左右摇摆
while num > 0:
    # 让关节2移动到50这个位置
    mc.send_angle(Angle.J2.value, 50, 50)

    # 设置等待时间,确保机械臂已经到达指定位置
    time.sleep(1.5)

    # 让关节2移动到-50这个位置
    mc.send_angle(Angle.J2.value, -50, 50)

    # 设置等待时间,确保机械臂已经到达指定位置
    time.sleep(1.5)

    num -= 1

# 让机械臂缩起来。你可以手动摆动机械臂,然后使用get_angles()函数获得坐标数列,
# 通过该函数让机械臂到达你所想的位置。
mc.send_angles([88.68, -138.51, 155.65, -128.05, -9.93, -15.29], 50)

# 设置等待时间,确保机械臂已经到达指定位置
time.sleep(2.5)

# 让机械臂放松,可以手动摆动机械臂
mc.release_all_servos()

三、效果展示

2

results matching ""

    No results matching ""