坐标控制(非通用)
- 由于微控制器的特性,以下用arduino烧录控制的例程仅适用于微控制器产品,微处理器不适用
arduino
-单坐标控制-
writeCoord(Axis axis, float value, int speed);
功能:发送单独坐标参数 X/Y/Z/RX/RY/RZ 的具体数值,末端会在单独方向上移动,
参数说明: 移动的路径坐标值 = value 取值范围
-300 – 300
(axis=Axis::X,aixs=Axis::Y 和 axis=Axis::Z 为位置坐标分别为 X,Y,Z,单位 mm,位置坐标取值范围不统一,theta 的值是-180到180 指定速度 =speed 取值范围0~100
单位 %返回值:无
#include <MycobotBasic.h>
#include <ParameterList.h>
MycobotBasic myCobot;
void setup() { //初始化函数
myCobot.setup();
myCobot.powerOn();
myCobot.setLEDRGB(0, 0, 255);
delay(100);
}
void loop() { //主函数
// put your main code here, to run repeatedly:
M5.update(); // need to call update()
myCobot.writeCoord(1, 100, 50);
delay(3000);
}
-整体坐标控制-
writeCoords(Coords coords, int speed);
功能:发送指定的坐标参数,参数的类型应是 Coords,需要声明一个 Coords 类型的变量,此变量的使用方法与数组相同
参数说明: coords[0] = X, coords[1] = Y, coords[2] = Z, X,Y,Z 取值范围 -300-300.00(取值范围未定义,超出范围会返回 inverse kinematics no solution 提示) 单位 mm coords[3] = theta RX,RY,RZ,取值范围-180~180 指定速度 =speed 取值范围0~100 单位 %
返回值:无
#include <MycobotBasic.h>
#include <ParameterList.h>
MycobotBasic myCobot;
Coords pos_init_1 = {155.10, -55.10, 90.10, 179.10, 0.10, -90.10}; // 初始坐标
void setup() { //初始化函数
myCobot.setup();
myCobot.powerOn();
myCobot.setLEDRGB(0, 0, 255);
delay(100);
}
void loop() { //主函数
// put your main code here, to run repeatedly:
M5.update(); // need to call update()
myCobot.writeCoords(pos_init_1,50);
delay(3000);
}