这是本文档旧的修订版!
GRBL 通信协议
串口参数
波特率:115200
*注:一些旧的板子波特率为9600。
TCP网络参数
IP地址:自行配置
TCP端口:23(telnet)
协议格式
GRBL接收两种形式的命令,一种是单字节的实时命令,直接发送单个字节的命令,GRBL就会返回信息。 另一种是以\r结尾的一行命令。GRBL返回信息时,都以\r\n代表一行的结束。
一般命令执行成功,返回ok\r\n或是错误返回error:N\r\n, 其中的N是错误号。当触发限位或遇到其他意外时,GRBL主动会主动向上位机发送信息,应用开发者应随时接收下位机的信息,当遇到\r\n时,就可以解释结果了。
常用命令举例
这里仅说明一些常用的命令,供大家做测试,想自行开发上位机软件的朋友还需自行参考完整的英文资料。
https://github.com/gnea/grbl/wiki
- ==状态查询==
上位机发送:
?
主板响应:
<Idle|MPos:-112.000,98751.562,7.000|FS:0,0|Pn:P>\r\n ok\r\n
其中的Idle表示板子处于空闲状态,其他状态还有
Run --- 运行中 Alarm --- 警告、异常
MPos 后跟的是机器坐标,具体含义参考官方文档。
参数查询
上位机发送:
$$\r
主板返回:
$0=3 $1=250 $2=0 $3=1 $4=0 $5=1 $6=0 $10=1 $11=0.010 $12=0.002 $13=0 $20=0 $21=0 $22=1 $23=4 $24=1000.000 $25=1000.000 $26=250.000 $27=2.000 $30=255.000 $31=0.000 $32=1 $N1= $N0= $100=400.000 $101=80.000 $102=400.000 $103=100.000 $104=100.000 $105=100.000 $110=2200.000 $111=2000.000 $112=500.000 $113=1000.000 $114=1000.000 $115=1000.000 $120=3000.000 $121=200.000 $122=300.000 $123=200.000 $124=200.000 $125=200.000 $130=300.000 $131=300.000 $132=300.000 $133=300.000 $134=300.000 $135=300.000 ok
参数设置
设置X轴步进数为200
$100=200