- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
汇川AM系列PLC的modbus从站离线的诊断
本文介绍如下几个内容:
如何通过编写的FC_ModbusDiagnosis判断modbus子节点的在线与离线情况。
三个附录:
【附录1】汇川AM402-CPU1608TN通过RS485读取颜色传感器数值方法
【附录2】modbus从站断线、断电后情况:
【附录3】FC_ModbusDiagnosis的具体代码
FC_ModbusDiagnosis使用方法:
拷贝DB_BusDiagnosis到程序中:
拷贝FC_ModbusDiagnosis到程序中
3.判断对应的节点是否正常,举例来讲:判断节点1是否正常的方法如下。
FC_ModbusDiagnosis(ComID:=0,SlaveID:=1,start:=TRUE);
Slave1ComOK:=DB_BusDiagnosis.ModbusSlaveDiagData[1].Status=E_BusDiag_Status.OK
Slave1ComNG:=DB_BusDiagnosis.ModbusSlaveDiagData[1].Status=E_BusDiag_Status.Error
备注:FC_ModbusDiagnosis(ComID:=0,SlaveID:=1,start:=TRUE);
ComID是主站的RS485通讯口,一般是0;SlaveID根据实际情况设置。
FC_ModbusDiagnosis的代码介绍
内部主要调用了:SysHC_ModbusRtuSlaveDiagnose来实现从站的监控。
下图所见:byDiagData就是设备诊断的故障码。认为byDiagData=0表示ok;不等于0表示NG。
【附录1】汇川AM402-CPU1608TN通过RS485读取颜色传感器数值方法
钉钉上有篇文章详细介绍了这个使用过程,此处简单摘抄如下:
步骤1:双击网络组态,右键plc模块,勾选Modbus主站,然后拖动Modbus子站到modbus总线上
步骤2:设置主站波特率:115200,奇偶校验无,数据位8,停止位1,传输RTU
步骤3:设置modbus从站,站号为1,读取寄存器5,6.
步骤5:程序中启动modbus,然后即可以得到结果。下图所示:
SM1001:=TRUE;
_temp1:=ColorSensor1_value1;
_temp2:=ColorSensor1_value2;
【附录2】modbus从站断线、断电后情况:
1.Modbus子节点断电后:
A.主站设备诊断中会出现与从站1通讯失败提示:
B.从站1设备诊断中也会出现通讯失败实体
SysHC_ModbusRtuDeviceDiagnose这个FB块的实例可以看到有故障提示:Slave_Not_exist.
注意:此FB应该有问题,应为这个报警出现后就无法清除。即使子站1重新上电+XEnable=false,true后仍然不能消除。
SysHC_ModbusRtuSlaveDiagnose这个FB块的实例可以看到有故障提示:0x75.
而且子站1重新上电后该故障提示消失
Modbus子节点重新上电后:
SysHC_ModbusRtuSlaveDiagnose这个FB块的实例读取的byDiagData=0;
【附录3】FC_ModbusDiagnosis具体代码
IFSlaveID1ORSlaveID32THEN
FC_ModbusDiagnosis:=FALSE;
RETURN;
END_IF
_SlaveDiag(
xEnable:=Start,
byComID:=ComID,
bySlaveID:=SlaveID,
);
IF_SlaveDiag.xValidAND_SlaveDiag.xBusyTHEN
IF(_SlaveDiag.stDiagData.byDiagData0)THEN
IFDB_BusDiagnosis.ModbusSlaveDiagData[SlaveID].StatusE_BusDiag_Status.ERRORTHEN
DB_BusDiagnosis.ModbusSlaveDiagData[SlaveID].Status:=E_BusDiag_Status.ERROR;
DB_BusDiagnosis.ModbusSlaveDiagData[SlaveID].ErrorCode:=_SlaveDiag.stDiagData.byDiagData;
DB_BusDiagnosis.ModbusSlaveDiagData[SlaveID].ErrorTime:=
您可能关注的文档
- 人教版九年级英语全一册单元速记•巧练Unit5【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit10【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·基础卷】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 3.1 小数的意义和读写法(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit3【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit3【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
文档评论(0)