使用 IEC-61131 和 eHMI 的 plc 应用程序的消息管理库
简介
CXMM_MessageManagement 库提供了在 hmi 上显示来自应用程序的信息、警告、错误和其他消息的功能。该设计依赖于 PLCnext WBM 通知显示。
第一步示例
设置消息文本到plc变量udtTextBuffer
建议将消息文本存储在 csv 文件中,并使用 PLCnextBase 库中的 FB PBCL_FileCsvRead 将数据设置为 pls 变量。
为发件人列设置文本
sender 列的参数设置如下:
uiSender> 0, wCode =0, wAddCode =0
CXMM_udtMessageMgr.udtTextBuffer.arrText[0].uiSender := 12345;
CXMM_udtMessageMgr.udtTextBuffer.arrText[0].wCode := WORD#16#0;
CXMM_udtMessageMgr.udtTextBuffer.arrText[0].wAddCode := WORD#16#0;
CXMM_udtMessageMgr.udtTextBuffer.arrText[0].strText := 'My_FB';
设置消息栏的文字
消息栏设置参数如下:
uiSender> 0, wCode> 0, wAddCode> 0
CXMM_udtMessageMgr.udtTextBuffer.arrText[1].uiSender := 12345;
CXMM_udtMessageMgr.udtTextBuffer.arrText[1].wCode := WORD#16#8001;
CXMM_udtMessageMgr.udtTextBuffer.arrText[1].wAddCode := WORD#16#1001;
CXMM_udtMessageMgr.udtTextBuffer.arrText[1].strText := 'Not in position';
PBCL_FileCsvRead FB的使用示例
PBCL_FileCsvRead(
uiOffset := UINT#1,
strFileName := strFileNameFileCsvRead,
strDataTypes := 'UINT;WORD;WORD;STRING' ,
strDelimiter := ';',
udiRowCnt => udiRowCntFileCsvRead,
anyTable := CXMM_udtMessageMgr.udtTextBuffer.arrText);
实例化功能块CXMM_MessageManager
CXMM_MessageManager(udtMessageMgr := CXMM_udtMessageMgr);
实例化 hmi 符号 CXMM_MessageDisplay
将其连接到 CXMM_MessageManager 功能块。
实例化功能块CXMM_SendMessage
CXMM_SendMessage_11(
xSend := xSend,
uiSender := UINT#12345,
uiSenderType := UINT#0,
wCode := WORD#1,
wAddCode := WORD#0,
enSeverity := CXMM_enSeverity#Error,
udtMessageMgr := CXMM_udtMessageMgr);
CXMM_MessageDisplay 显示消息文本
下载库:https://github.com/WaldemarSommer22/MessageManagement-iec61131-plcnext.git
工业技术