1. 数据包格式说明

请求 {"F":"L","P":"123456"}#

返回 {"F":"L","S":1}#

注：(1) F表示调用的远端函数，一定以#结束符

(2) 打标机作为服务端


2.1 登录

请求 {"F":"L","P":"123456"}#

返回 {"F":"L","S":返回值}#

注：1、此指令为验证指令，连接成功后必须发送此指令，才能发其他指令；

2、返回值: 1(成功)、0(失败);


2.2 获取所有设备

请求 {"F":"GADS"}#

返回 {"F":" GADS ","DS":["板卡1名称","板卡2名称"],"S":返回值, "MSG":""}#

注：返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.3 获取所有文档

请求 {"F":"GADC"}#

返回 {"F":"GADC","DC":["文档名1","文档名2"],"S":返回值, "MSG":""}#

注：返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.4 打开绝对路径文件

请求 {"F":"ODC","DP":"D:\\code\\5.2.1\\Debug\\1.orzx"}#

返回 {"F":"ODC","DC":"文档名","S":返回值, "MSG":""}#

注：1、绝对路径需要\\来表示\ ;

2、打开的文档如果勾选了自动关联，会自动关联;
3、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.5 保存文档

请求 {"F":"SDC","DC":["文档名1","文档名2"]}#

返回 {"F":"SDC","DC":["文档名1","文档名2"],"S":返回值, "MSG":""}#

注：1、返回的DC是请求中的关闭成功则会添加进入;

2、如果不传入"DC"，即{"F":"SDC"}#。为保存所有文档;

3、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.6 关闭文档

请求 {"F":"CDC","DC":["文档名1","文档名2"]}#

返回 {"F":"CDC","DC":["文档名1","文档名2"],"S":返回值, "MSG":""}#

注：1、返回的DC是请求中的关闭成功则会添加进入;

2、如果不传入"DC"，即{"F":"CDC"}#。为关闭所有文档;

3、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.7 文档关联设备

请求 {"F":"DAD","DC":"文档名","DS":"设备名"}#

返回 {"F":"DAD","S":返回值, "MSG":""}#

注：1、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.8 清除设备关联文档

请求 {"F":"CDAD","DS":"设备名"}#

返回 {"F":"CDAD ","S":返回值, "MSG":""}#

注：1、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.9 获取指定设备关联的文档

请求 {"F":"GDAD","DS":"设备名"}#

返回 {"F":"GDAD","DC":["文档名1","文档名2"],"S":返回值, "MSG":""}#

注：返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.10 开始标刻

请求 {"F":"M","DS":["设备名1","设备名2"]}#

返回 {"F":"M","DS":["设备名1","设备名2"],"S":返回值,"MSG":""}#

标刻结束主动返回 {"F":"MS","DS":"设备名","S":"返回值", "MSG":""}#

注：1、如果是多卡标刻，需要启动启动哪些板卡开启标刻；
2、启动的设备打标，与设备关联的文档都会标刻，请主要查询关联与清楚关联;

3、不传入设备"DS"，即{"F":"M"}#。为默认第一个设备打标;

4、标刻完主动返回标刻结束的相关指令，为主动返回;

5、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.11 获取标刻状态

请求 {"F":"GMS","DS":["设备名1","设备名2"]}#

返回 {

"F":"GMS",

"MS":[

{"DS":"设备名1","S":标刻状态},

{"DS":"设备名2","S":标刻状态}

],

"S":返回值,

"MSG":""}#

注：1、标刻状态: 1(正在标刻)、0(其他状态);不传入设备名称,默认是第一个设备的状态;

2、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.12 立刻停止标刻

请求 {"F":"ST"}#

返回 {"F":"ST","S":返回值, "MSG":""}#

返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.13 设置指定图形的位置、文本内容与位置

请求 {

"F": "SPI",

"DC": "1.orzx",

"M": 1,

"P":

[

{"N": 0,"T": "123","X": 10,"Y": 10,"R": 10},

{"N": 1,"T": "123","X": 10,"Y": 10,"R": 10},

{"N": 2,"T": "123","X": 10,"Y": 10,"R": 10},

{"N": 3,"T": "123","X": 10,"Y": 10,"R": 10}

]

}#

返回 {"F":"SPI","S":返回值, "MSG":""}#

注：1、"DC"表示文档名称,"1.orzx"双引号表示具体的文档名;

2、" M "表示是否直接开始标刻，1为执行标刻，0为不执行标刻。

非必要参数,不传入为不执行标刻,只支持单卡的自启动标刻;

3、"P"表示具体的信息内容，[]标准的SJON格式，下属的内容为正式内容，

一个{}表示1条数据,上述表示有4条数据。

4、"N"表示图形在文档中列表中的序号,0表示第一个图形,必要传入参数;

5、"T"表示文本要替换的内容, "123"双引号内替换内容; 非必要传入参数

6、"X","Y"，表示X,Y移动到的坐标的值,为浮点型数据; 非必要传入参数

7、"R"，表示图形旋转的角度值,为浮点型数据; 非必要传入参数

8、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.14 设置旋转、偏移值（视觉专用）

请求 {"F":"SOR","DC":"1.orzx","X":10,"Y":10,

"R":10,"CX":10,"CY":10}#

返回 {"F":"SOR","S":返回值, "MSG":""}#

参数：1、"DC"表示文档名称,"1.orzx"表示具体的文档名;

2、"X","Y","R"分别表示偏移值X,Y的值与旋转值,为浮点型数据;

这三个值必须要设置;

3、"CX","CY"为旋转的中心点坐标,值为浮点型;

参数不传入,不需要加此字段,默认参数为中心点坐标;

4、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;

使用说明：

1、 图形本身的位置与旋转角度不会变化;

每次打标起作用，值会保留，每次赋值每次起效。不使用的时候需要主动清0;


2.15 获取输入口状态

请求 {"F":"GIS","DS":["设备1","设备2"] }#

返回 {

"F":"GIS",
"I":[

{"DS":"设备1","S":端口状态值},

{"DS":"设备2","S":端口状态值}

] ,

"S":返回值,

"MSG":""

}#

注：1、” 端口状态值”转化成对应的8位二进制，其中0是低电平，1是高电平;为十进制值，值的范围0-255;

2、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.16 写入输出端口状态

请求 {"F":"SOS","DS":[{"DS":"设备名","P":端口状态值}]}#

返回 {

"F":"SOS",

"O":[

{"DS":"设备1","S":端口状态值},

{"DS":"设备2","S":端口状态值}

] ,

"S":返回值,

"MSG":""

}#

注：1、8个输出口对应的电平状态转成十进制作为端口状态值参数，0是低电平，1是

高电平; 值的范围0-255;

1、 返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.17 读取输出端口状态

请求 {"F":"GOS","DS":["设备名1","设备名2"]}#

返回 {

"F":"GOS",

"O":[

{"DS":"设备1","S":端口状态值},

{"DS":"设备2","S":端口状态值}

] ,

"S":返回值,

"MSG":""

}#

注：1、8个输出口对应的电平状态转成十进制作为端口状态值参数，0是低电平，1是

高电平; 值的范围0-255;

2、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.18 查询文本内容

请求 {"F":"GTC","DC":"文档名","TN":"文本名"}#

返回 {"F":" GTC ","C":["内容1","内容2"],"S":返回值, "MSG":""}#

参数：1、"DC"表示文档名,"文档名"表示具体文档名;

2、"TN"表示文本图元名称,"文本名"表示具体的文本图元名称;

3、"C"表示文本内容;

4、"内容1","内容2"表示查询返回的实际内容;

5、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


2.19 查询最后标刻文本内容

请求 {"F":"GLMTC","DS":"设备名"}#

返回 {"F":" GLMTC","C":["内容1","内容2"],"S":返回值, "MSG":""}#

参数：1、"DS"表示设备名,"设备名"表示具体设备名;

2、"C"表示标刻文本内容,"内容n"表示具体的标刻文本内容;

3、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;

使用说明：

1、 查询指定设备最后标刻的文本内容;


2.20 查询打标的光笔号参数

请求 {"F":"GP","N":光笔号序号}#

返回 {

"F":" GP",

"N":光笔号序号,

"P":{

"S":标刻速度,

"P":功率,

"F":频率,

"W":脉宽

},

"S":返回值,

"MSG":""

}#

参数：1、"N"表示序号,范围0-255;

2、"P"表示光笔号的具体内容。

3、返回值: 1(成功)、0(失败); "MSG"为返回关键信息;


3. 使用示例

替换列表中的某一个图元的内容，发送指令打标。

1、 登录验证

发送：{"F":"L","P":"123456"}#

注：123456为验证密码，只有先验证才可以发送其他指令

2、 保存模板文件或者打开一个文件

发送：{"F":"ODC","DP":"D:\\code\\5.2.1\\Debug\\1.orzx"}#

3、 替换内容

发送：

{"F":"SPI ","DC":"1.orzx","P":[{"N":0,"T":"123","X":1,"Y":1,"R":45}]}#

注： 1、“1.orzx”为已打开文档名

2、"N":0表示文本在文档中图元列表中的序号

3、"T":"123"表示序号为0的图形是文本时替换内容为123

4、"X":1，"Y":1表示移动序号为0图形至坐标（1,1）位置。X、Y坐标需成对使用。

5、"R":45 表示对图形进行旋转45°;

4、 标刻

发送：{"F":"M"}#