MyCobot是一款入门级的六自由度机械臂,目前是6轴机械臂中价格和性能十分优良的机械臂,本文的主题主要以myCobot 280 M5Stack的操作体验来记录一下使用这款机械臂的过程。以python的环境来进行对它的环境搭建,开发,代码调试。
我使用的是myCobot280 M5Stack是以M5Stack为主控。所以在使用的时候需要在电脑上搭建编译的环境,我将使用python语言来进行操作。
官方有提供一个库pymycobot,使用python调用该库去进行操控机械臂。
在电脑上安装python环境,下载pymycobot库。环境搭建就不过多赘述了,这边有两个方法提供:
安装好了编译环境之后,我们在下载pymycobot
pip install pymycobot
采用边介绍边演示来控制myCobot280 M5Stack
开始使用导入一些库
from pymycobot.mycobot import MyCobot
import time
创建机械臂的对象来调用方法。(链接机械臂)
port:机械臂的串口号
baud:机械臂的波特率
mc = MyCobot('COM7',115200)
函数功能:获得机械臂六个关节点的角度。
返回值:返回值的类型是 list,共有六个元素数据,分别对应关节 1~6。
当机械臂运行到某一个位置时我们可以通过print指令打印出当前机械臂的各关节角度数据。
mc.get_angles()
现在的myCobot的角度是这样的
给所有的关节传递运动的角度和速度
degree:指的是关节的角度,取值范围-180~180,以列表存储依次按顺序分别是1~6关节
speed:指关节到达指定位置时的速度,取值范围0~100,值越大速度越快。
mc.send_angles([0,0,0,0,0,0],50)
我们运行起来就会是这样
多关节控制,当然还有单关节控制
id:指的是哪一节机械臂,取值为1-6的正整数
degree:指的是关节的角度,取值范围-180~180
speed:指关节到达指定位置时的速度,取值范围0~100,值越大速度越快。
让一关节运动以速度50到90度
mc.send_angle(1,90,50)
函数功能:放松机械臂,让其可以随意手动摆动。注意执行这个指令的时侯机械臂会因重力落下,要注意防止砸到其他的东西。
mc.release_all_servos()
机械臂在被控制时候处于上电状态,使用了这个方法就可以随意摆动机械臂了。
简单写一个小的demo
让myCobot280 M5Stack 跳起舞来
#!/usr/bin/python3
#-*- coding: UTF-8 -*-
from pymycobot.mycobot import MyCobot
import time
mc = MyCobot('COM7',115200)
mc.send_angles([0,0,0,0,0,0],50)
time.sleep(1)
for count in range(3):
mc.send_angles([87.8,(-51.5),60.9,11.95,(-15.9),(-6.06)],50)
time.sleep(1)
mc.send_angles([87.97,42.01,(-45.26),10.37,(-15.9),(-6.06)],50)
time.sleep(1)
mc.send_angles([19.77,79.36,(-114.34),39.63,(-15.9),(-6.06)],50)
time.sleep(1)
for count2 in range(4):
mc.send_angles([43.24,93.42,(-140.88),48.07,60.64,(-6.06)],50)
time.sleep(1)
mc.send_angles([19.77,79.36,(-114.34),39.63,(-15.9),(-6.06)],50)
time.sleep(1)
初次的体验就到这里啦