新闻中心
PRESS CENTERSiemens节点支持 Siemens CNC 机床数据采集。
支持 SINUMERIK 802/810/828/840 系统。
准备工作
1.工程师已知晓CNC的IP地址。
2.工程师已知晓需要采集的CNC点位信息。
硬件连接示意
配置网关
1.网关的网络配置请参考https://iotrouter.yuque.com/org-wiki-iotrouter-rlzwv5/eg8000/ypspb089bww98dqi。
2.进入"可视化编程"。
3.选择Siemens节点
配置要连接的CNC IP地址,端口默认102。选择要读取的点位。
4.部署节点,测试数据。
5. 结合其它节点,完成数据处理。
名称 | 属性 | 备注 |
名称 | 节点名称 | 客制化节点在流程中显示的名称 |
目标IP | CNC IP 地址 |
|
目标端口 | CNC IP 端口 |
|
连接超时 | 连接失败后距离发起下一次连接的等待时间 | 单位:ms |
心跳时间 | TCP协议保活时间 | 单位:ms |
数据超时 | 单次数据交互的等待时间 | 单位:ms |
循环等待 | 当此项大于0时,开启周期采集 | 一个采集周期(非强实时)=n*循环间隔(超时时间)+循环等待。单位:ms |
数据间隔 | 单次数据交互后,距离下一次发起数据交互的时间 | 此项为0时不进行等待,但需考虑cnc的应答机制,在高频率交互下,部分CNC会出现蓝屏、乱码的情况。单位:ms |
Siemens节点支持外部注入msg实现点位单独读取。
msg.payload = {
"func": [21,22, 23],
"key": [ "aaa","bbb","ccc"],
"output": 1
}
/*func : 控制字段 */
/* 内部使用 - 0~4 */
/* 版本号 - 5 */
/* 系统类型 - 6 */
/* 序列号 - 7 */
/* 操作模式 - 8 */
/* 运行状态 - 9 */
/* 加工计件 - 10 */
/* 循环时间 - 11 */
/* 剩余加工时间- 12 */
/* 程序名 - 13 */
/* 设定进给速度- 14 */
/* 实际进给速度 - 15 */
/* 设定主轴速度 - 16 */
/* 实际主轴速度 - 17 */
/* 轴名称 - 18 */
/* 进给倍率 - 19 */
/* 主轴倍率 - 20 */
/* 机械坐标 - 21~23 23 输出 */
/* 相对坐标 - 24~26 26 输出 */
/* 剩余坐标 - 27~29 29 输出 */
/* 刀具号 - 30 */
/* 长度补偿X - 31 */
/* 长度补偿Z - 32 */
/* 半径补偿编号 - 33 */
/* 长度补偿编号 - 34 */
/* 磨损半径 - 35 */
/* 刀沿位置 - 36 */
/* 报警数量 - 37 */
/* 内部使用 - 38 */
/* 加工代码 - 39 */
/* 母线电压 - 40 */
/* 母线电流 - 41 */
/* 功率 - 42 */
/* 温度 - 43 */
/*key : 自定义的对象名,用于输出 */
/*output:输出选项:0-分散;1-合并 */
属性 | 示例 | 类型 |
版本号 | msg.payload.version | string |
系统类型 | msg.payload.cncType | string |
序列号 | msg.payload.cncId | string |
操作模式 | msg.payload.modeInfo 枚举值:["JOG","MDA","AUTO","OTHER","REFPOINT"] | string |
运行状态 | msg.payload.stateInfo 枚举值:["RESET","STOP","START","SPENDLE_CW_CCW","OTHER"] | string |
加工计件 | msg.payload.productCounts | double |
循环时间 | msg.payload.cyctime | double |
剩余加工时间 | msg.payload.remtime | double |
程序名 | msg.payload.prgName | string |
设定进给速度 | msg.payload.setFeedSpeed | double |
实际进给速度 | msg.payload.actFeedSpeed | double |
设定主轴速度 | msg.payload.setSpSpeed | double |
实际主轴速度 | msg.payload.actSpSpeed | double |
轴名称 | msg.payload.axisName | string |
进给倍率 | msg.payload.feedRate | double |
主轴倍率 | msg.payload.sFeed | double |
机械坐标X | msg.payload.macPosx | double |
机械坐标Y | msg.payload.macPosy | double |
机械坐标Z | msg.payload.macPosz | double |
相对坐标X | msg.payload.relPosx | double |
相对坐标Y | msg.payload.relPosy | double |
相对坐标Z | msg.payload.relPosz | double |
剩余坐标X | msg.payload.remPosx | double |
剩余坐标Y | msg.payload.remPosy | double |
剩余坐标Z | msg.payload.remPosz | double |
刀具号 | msg.payload.toolNum | number |
长度补偿X | msg.payload.lengthX | double |
长度补偿Z | msg.payload.lengthZ | double |
半径补偿编号 | msg.payload.dNum | number |
长度补偿编号 | msg.payload.hNum | number |
磨损半径 | msg.payload.radius | double |
刀沿位置 | msg.payload.edg | double |
报警数量 | msg.payload.alarmMsgNum | number |
报警号 | msg.payload.alarmMsg | number |
加工代码 | msg.payload.prgContent | string |
母线电压 | msg.payload.voltage | float |
母线电流 | msg.payload.current | float |
功率 | msg.payload.load | float |
温度 | msg.payload.temper_a1 | float |
原文/源码:https://iotrouter.yuque.com/zn3vdn/eg8000/xr6s46z90pevgwag