CXMM 消息管理库:面向 IEC-61131 PLC 应用的高效 HMI 消息方案
简介
CXMM_MessageManagement 库提供功能块,将应用程序的信息、警告、错误等消息显示在 HMI 上,设计参考 PLCnext WBM 通知显示风格。
首步示例
设置消息文本到 PLC 变量 udtTextBuffer
建议将消息文本存储在 CSV 文件,用 PLCnextBase 库的 FB PBCL_FileCsvRead 读取并赋值给 PLC 变量。
设置发送者栏文本
参数设置: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 显示消息文本
库下载:GitHub 仓库
工业技术