arduino API
1. 机器人整体运行状态 Overall Status
powerOn();
- 功能:atom 打开通讯(默认打开)
- 返回值:无
powerOff();
- 功能:atom 关闭通讯
- 返回值:无
isPoweredOn();
- 功能:atom 状态查询,返回 atom 链接状态
- 返回值:打开 TRUE、关闭 FALSE
setFreeMove();
- 功能:按下Atom按钮,所有关节关闭扭力输出
- 返回值:无
2. 输入程序控制模式 MDI Mode and Robot Control (Manual Data Input)
getCoords();
功能:读取当前机械臂末端的 x,y,z,rx,ry,rz,使用时应定义一个 Coords tempcoords,来接收读取到的角度,Coords 是库函数内置的变量或函数定义,可以定义一个内存为 4 的储存空间 tempcoords,用来储存角度变量,使用的方式与数组相同。
返回值:Coords 类型下的一个数组,需要定义好 Coords 类型的变量
isInPosition (Coords coord,bool is_linear);
功能:读取当前机械臂末端的 x,y,z,rx,ry,rz,测试是否到达指定点位,使用时应定义一个 Coords tempcoords,来接收读取到的角度,Coords 是库函数内置的变量或函数定义,可以定义一个内存为 4 的储存空间 tempcoords,用来储存角度变量,使用的方式与数组相同。
返回值:Coords 类型下的一个数组,需要定义好 Coords 类型的变量
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 单位 %
返回值:无
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
单位 %返回值:无
checkRunning();
功能:检查设备是否在运动
返回值:运动中回复 TRUE,否则回复 FALSE
3. 微动控制模式 JOG Mode
resume();
功能:程序继续运行
返回值:无
stop();
功能:程序停止运行
返回值:无
4. 运行辅助信息 Running Status and Settings
getSpeed();
功能:读取设备的当前运行速度
返回值:int 类型,数值范围 0-100,单位 %
setSpeed(int percentage);
功能:设置设备运行速度
参数说明:percentage 取值范围 0 – 100,单位 %
getFeedOverride();
(暂未开放)
功能:读取 FeedOverride
返回值:float 类型的数值
sendFeedOverride(float feedOverride);
(暂未开放)
- 功能:发送 FeedOverride
getAcceleration();
(暂未开放)
功能:读取加速度
返回值:float 类型的数值
setAcceleration(float acceleration);
(暂未开放)
功能:设置加速度
参数说明:acceleration 取值范围 0-100 (范围未定义)
setMovementType(MovementType movement_type);
功能:设置移动方式
参数说明:移动方式分别为以非线性路径移动(movej)和以线性路径移动(movel)
返回值:无
getMovementType();
功能:读取移动方式
参数说明:
返回值:非线性方式返回 0 ;线性方式返回 1
5. 关节电机设置 Joint Servo Control
isAllServoEnabled();
功能:检测所有关节舵机是否抱死
返回值:抱死返回 TRUE/1,不抱死返回 FALSE/0
6. Atom 末端IO控制 Atom IO Control
setPinMode(byte pin_no, byte pin_mode);
功能:设置 atom 指定引脚的状态模式
参数说明: 引脚序号 = pin_no,取值范围:19、22、23、26、32、33 输出模式 = pin_mode 取值范围:0、1
返回值:无
setLEDRGB(byte r, byte g, byte b);
功能:设定 atom 屏幕的 RGB 灯的颜色:
参数说明: 红色光对应参数值 = r,取值范围 0x00 – 0xFF; 绿色光对应参数值 = g,取值范围 0x00 – 0xFF; 蓝色光对应参数值 = b,取值范围 0x00 – 0xFF;
返回值:无
setGripper(int data);
功能:设置夹爪开合
参数说明:data 为 0 打开,为 1 关闭
setGripperValue(int data, int sp);
功能:设置夹爪电位,使用前请获取夹爪当前电位
参数说明: 输入值(0-4095)
返回值:无
setGripperIni();
功能:设置夹爪零点
参数说明:无
返回值:无
getGripperValue();
功能:获取夹爪当前电位值
参数说明:无
返回值:返回当前的夹爪电位值,范围 0 - 4085
setGripperState(byte mode, int sp);
功能:设置夹爪的打开与关闭
参数说明: 0 打开,1 关闭
返回值:无
isGripperMoving();
功能:检测夹爪是否在运动
参数说明:
返回值:0 不在运动,1 在运动
setDigitalOutput(byte pin_no, byte pin_state);
功能:设置IO引脚的工作状态
参数说明:0 input; 1 output; 2 pull_up_input
返回值:无
getDitialInput(byte pin_no);
功能:读取输入
参数说明:无
返回值:无
setPWMOutput(byte pin_no, int freq, byte pin_write);
功能:设置ATOM末端IO输出指定占空比的PWM信号
参数说明:
pin_no:IO序号 freq: 时钟频率 pin_write:占空比 0 ~ 256;128表示50%
返回值:无