基于BCNet的欧姆龙CP/CJ数据点表探测
本示例基于北辰BCNet-CP/CJ-S的PLC总线协议分析功能,在拿不到PLC寄存器地址或点表数据的情况下,实现对HMI触摸屏数据点位进行探测,结合触摸屏的面板信息,分析当前PLC的重要点表信息。
BCNet-CP/CJ-S是一款经济型的以太网通讯处理器,是为满足日益增多的工厂设备信息化需求(设备网络监控和生产管理)而设计,用于欧姆龙CP1L/CP1E/CP1H/CJ1M/CJ2M/CS1/CG1/CV/NX1P系列PLC的以太网数据采集,非常方便构建生产管理系统。模块集成WiFi功能,支持AP模式、STA模式和AP+STA模式,非常方便构建WiFi网络,直接通过WiFi进行PLC编程、数据采集。
BCNet-CP/CJ-S采用模块化设计,不占用PLC通讯口,即编程软件/上位机软件通过以太网对PLC数据监控的同时,触摸屏可以通过复用接口与PLC进行通讯。BCNet-CP/CJ-S支持工控领域内绝大多数SCADA软件,支持欧姆龙以太网协议和ModbusTCP主从站通讯方式。
一、硬件连接
1、如图所示原有系统为触摸屏连接CP1H的DB9串口,现在不改变原有系统的基础上,增加了BCNet-CP/CJ-S模块,实现了以太网数据采集、PLC编程和不同PLC之间数据交换功能。
二、探测触摸屏与PLC点表
1、当前触摸屏画面存在4个变量,“合格品数”、“不良品数”、“总件数”和“启动放料”,连接设备为CP1H-X40DT-D。
2、运行“BCDeviceV1031.exe”,搜到到BCNet-CP/CJ-S模块,点击“设备运行诊断”;
3、在设备运行诊断中,可查阅当前串行总线(PLC)和扩展总线(HMI)运行状态,点击“点表探测”按钮;
4、在跳出的权限认证窗口中输入“BCNet888”,进入总线分析(点表探测)界面,如下图;
①由触摸屏面板可知选择无符号整型32位数据,提供“无符号整型32位”、“有符号整型32位”等多种解析类型,此处选择“无符号整型32位”;
②站点信息提示为“HMI读取PLC”,说明当前触摸屏是通过模块进行通讯,即通过BCNet-CP/CJ-S中转方式进行通讯;
③可见当前数据流“18”、“12885”和“12903”分别对应“DM120~121”、“DM100~101”和“DM50~51”,通过触摸屏面板信息,可知“DM120~121”对应“不良品数”,“DM50~51”对应“合格品数”,“DM100~101”对应“总件数”;
④可将当前列表导出为Excel文件进行进一步编辑和处理;
5、对触摸屏的“启动放料”按钮进行置位操作,通过BCDevice工具可探测到当前HMI向PLC的“CIO101.5”置位的行为,可分析出“启动放料”对应的点位为“CIO101.5”。
三、总结
通过BCNet-CP/CJ-S的PLC总线协议分析功能,可对当前的欧姆龙PLC数据流进行分析,探测出当前触摸屏的读取行为和写入行为,结合触摸屏的面板信息,可得出PLC的重要点表信息。在PLC程序加密、触摸屏程序加密等无法得知PLC点表信息的情况下,通过本模块探测出PLC重要点表信息,为信息化采集方案的实施提供便捷性和经济性。