Rotrics Manual
ROTRICS.COM
Download Center
Get Help in Forum
Submit a Ticket
搜索文档…
简体中文
Rotrics Arm 用户手册_V1.0
快速入门指南
产品概述
Rotrics Studio软件
写字绘画
激光雕刻
3D打印
气动搬运和示教
配件
API和SDK
机械臂G-code指令和控制协议
使用Arduino和树莓派与机械臂协作
使用Processing控制机械臂
由
GitBook
提供支持
机械臂G-code指令和控制协议
本节是关于机械臂控制协议和G-code控制指令的内容,主要用于通过串口驱动发送指令控制机械臂,或者编写G-code程序来控制机械臂。内容包括Rotrics机械臂的串口通信规范、Connect确认指令、基本运动控制和运动控制指令等。可以点击右侧目录查看对应指令说明👉
串口格式
1.
Speed: 115200
2.
Config: 8 个数据位,无校验位, 1 个停止位
3.
每条指令以回车换行作为结束符 ,以下以 0D0A 表示 。
4.
下位机收到指令, 若指令正确 会返回 ok(0D0A),若指令错误会返回 unknow command
示例
1
Copied!
Connect指令
1.
上位机打开串口过程中,串口硬件驱动会自动复位下位机,下位机启动过程中向上位机返回 start 。
2.
上位机以是否收到 start ,判断设备是否连接成功。
DisConnect
上位机断开串口即可
基本控制
复位指令
M1111 (0D0A) 复位到初始设置位置
运动模式设定
M2001(0D0A) 快速模式
M2000(0D0A) 直线模式
基本位移指令
G0(0D0A) 快速非直线运动,参数:
X - X轴坐标值
Y - Y轴坐标值
Z - Z轴坐标值
E - 外接的E轴坐标值,比如传送带、滑轨或3D打印挤出机。
在开始控制前,需对E轴电机细分进行配置。
具体说明如下:
M92 X() Y() Z() E()- 设置轴单位步进数,每走1mm步进电机转过的步数。比如对于官方的挤出机,设置为
M92 E379.2
G1(0D0A) 快速直线运动
示例
1
;快速运动到HOME点
2
G0 X300 Y0 Z0
3
4
;沿直线快速运动到HOME点
5
G1 X300 Y0 Z0
Copied!
G91(0D0A) 进入相对定位模式
示例
1
;进入相对运动模式
2
G91
3
;沿着X轴运动10mm
4
G0 X10
Copied!
G90(0D0A) 进入绝对定位模式
示例
1
;进入绝对运动模式
2
G90
3
;运动到点(300, 0, 0)
4
G0 X300 Y0 Z0
Copied!
速度控制
G0 Fxx 设置运动速度,单位为mm/min。基础速度 F3000
示例
1
;设置运动速度为3000mm/min
2
G0 F3000
Copied!
设定延时
G4 - 设定机械臂等待时间,参数:
Pxx - 延时xx毫秒
Sxx - 延时xx秒
设定工作坐标系原点
G92 X0 Y0 Z0 设定当前点为工作坐标系原点,后续所有运动都以当前点为参照,主要用于激光和3D打印。
G92.1 重置工作坐标系为机械坐标系
示例
1
;设定当前点为工作坐标系原点,以及设定挤出机原点
2
G92 X0 Y0 Z0 E0
3
4
;当工作完成后,重置为机械坐标系并返回到HOME点
5
G92.1
6
G0 X300 Y0 Z0
Copied!
运动参数
坐标位置信息获取
M114 - 获取当前位置坐标信息
M890 - 获取当前编码器位置读数
斜率相关
M891 - 设置当前 X Y 斜率
M892 - 获取当前 X Y 斜率
示教相关
M17 - 所有步进电机上电,用于示教复现。
M18 - 所有步进电机下电,进入示教模式。
示例
1
;进入示教模式
2
M18
3
Copied!
其他
M81 - 紧急停止
M2007 - 机械臂软重启
Off指令
(还需验证)顺序发送以下指令:
M84(0D0A)
M104 S0(0D0A)
M140 S0(0D0A)
M107(0D0A)
M81(0D0A)
前端模块控制
前端模块切换
针对不同模块,配置前端偏置参数。
M888 - 设定当前工作模块。参数:
P0(0D0A) 设置前端模块为夹笔模块
P1(0D0A) 设置前端模块为激光模块
P2(0D0A) 设置前端模块为气泵模块
P3(0D0A) 设置前端模块为3D打印模块
激光模块控制
M3 - 打开激光,设定占空比。参数:
S - 占空比参数,范围0-255
示例
1
;设定激光最大功率雕刻
2
M3 S255
Copied!
M5 - 关闭激光
气动模块控制
M1000(0D0A) - 气泵吸气
M1001(0D0A) - 气泵吹气
M1002(0D0A) - 气泵泄气(泄气气阀打开)。具体说明如下:
一般用于吸盘放下物品和柔性抓闲置时恢复自然状态。
M1003(0D0A) - 所有气泵气阀停止工作
吸盘柔性抓的动作是相反的,即当气泵吸气时,吸盘吸紧物品,柔性抓松开;当气泵吹气时,吸盘放下物品,柔性抓抓取物品。
示例
1
;吸盘吸起物品,以3000mm/min的速度移动到点(350, 100, -50)后放下物品
2
M1000
3
G0 X350 Y100 Z-50 F3000
4
M1002
5
6
7
;柔性抓抓取物品,以3000mm/min的速度移动到点(350, 100, -50),放下物品后回到HOME点
8
M1001
9
G0 X350 Y100 Z-50 F3000
10
M1000
11
G0 X350 Y100 Z0
12
G0 X300 Y0 Z0
13
M1002
Copied!
3D打印控制
M105(0D0A) - 获取挤出机温度
M108(0D0A) - 获取挤出机速度
M109 Sxx(0D0A) - 设置挤出机目标温度 x x
M106 Sxx(0D0A) - 设置风扇转速 x x
G0 EXXX FXXX(0D0A) - 以F速度挤出 E 长度
M107(0D0A) - 关闭风扇
M130(0D0A) - 设置加热棒 PID P 值
M131(0D0A) - 设置加热棒 PID I 值
M132(0D0A) - 设置加热棒 PID D 值
以前
API和SDK
下一个
使用Arduino和树莓派与机械臂协作
最近更新
2yr ago
复制链接
内容
串口格式
Connect指令
DisConnect
基本控制
复位指令
运动模式设定
基本位移指令
速度控制
设定延时
设定工作坐标系原点
运动参数
坐标位置信息获取
斜率相关
示教相关
其他
Off指令
前端模块控制
前端模块切换
激光模块控制
气动模块控制
3D打印控制