关节角度控制(通用库)
*以下例程微控制器和微处理器系统均适用
单关节控制
python
send_angle(id, degree, speed)
函数功能:设置单个关节的角度。
参数说明:
id
:代表机械臂的关节,一共有六个关节,有特定的表示方法。关节一的表示法:Angle.J1.value
。
degree
:表示关节的角度,取值范围:-180~180。
speed
:表示机械臂运动的速度。
from pymycobot.mycobot import MyCobot
from pymycobot.genre import Angle
mycobot = MyCobot('/dev/ttyUSB0')
mycobot.send_angle(Angle.J2.value, 10, 50)
C/C++
WriteAngle(Joint joint, double value, int speed = DefaultSpeed)
功能:发送单关节角度
参数说明: 关节序号 = joint,取值范围 1-6; 指定角度值 = value,取值范围约-170°~ + 170° 指定速度 = speed, 取值范围 0~100;
返回值:无
#include <cstdlib>
#include <iostream>
#include <chrono>
#include <thread>
#include <QCoreApplication>
#include "MyCobot.hpp"
int main(int argc, char* argv[])
try {
QCoreApplication a(argc, argv);
using namespace std::chrono_literals;
if (!mycobot::MyCobot::I().IsControllerConnected()) {
std::cerr << "Robot is not connected\n";
exit(EXIT_FAILURE);
}
std::cout << "Robot is connected\n";
//机械臂上电
mycobot::MyCobot::I().PowerOn();
//关节一正转90°
WriteAngle(Joint J1, 90.00, 10)
myblockly
通过设置关节“ ”角度“ ” 速度“ ”来控制单关节运动至指定角度
roboflow
在“创建空程序”的“工具栏”下使用快速移动,快速移动界面中的关节控制即可控制单关节运动至指定角度
多关节控制
python
send_angles(Angles, speed)
描述: 发送所有关节的角度。
参数
degrees
: 包含所有关节的角度 (List[float]), 长度为 6.speed
: (int) 0 ~ 100例子
from pymycobot.mycobot import MyCobot from pymycobot.genre import Angle mycobot = MyCobot('/dev/ttyUSB0') mycobot.send_angles([0,0,0,0,0,0], 80)
C/C++
WriteAngles(goal_angles)
功能:发送全关节角度
参数说明: 指定角度值 = goal_angles,取值范围约-170°~ + 170°
返回值:无
#include <cstdlib>
#include <iostream>
#include <chrono>
#include <thread>
#include <QCoreApplication>
#include "MyCobot.hpp"
int main(int argc, char* argv[])
try {
QCoreApplication a(argc, argv);
using namespace std::chrono_literals;
if (!mycobot::MyCobot::I().IsControllerConnected()) {
std::cerr << "Robot is not connected\n";
exit(EXIT_FAILURE);
}
std::cout << "Robot is connected\n";
//机械臂上电
mycobot::MyCobot::I().PowerOn();
//设置全关节角度均为10°
mycobot::Angles goal_angles = { 10, 10, 10, 10, 10, 10};
//全关节运动至目标角度
mycobot::MyCobot::I().WriteAngles(goal_angles);
myblockly
通过“设置全角度”模块来进行多关节控制:对目标关节设定角度值和运动速度达到控制多关节的目的
roboflow
[roboflow中的路点功能即可对多关节进行控制]