MCGS不支持第三方模组,功能扩展需通过官方认证驱动/控件、Lua脚本库、WebBrowser嵌入HTML/JS、或调用Windows DLL四种方式实现。

如果您希望在MCGS软件中扩展功能,但发现标准版本不支持直接加载第三方模组,则需明确:MCGS(包括MCGS Pro及传统嵌入式版本)本身并非基于Mod架构设计的平台,官方未提供类似Minecraft的模组(Mod)加载机制。其功能扩展依赖于昆仑通态认证的插件、驱动包、控件库或定制化SDK开发。网页版MCGS(如MCGS Cloud或Web组态服务)亦不开放通用模组接口。以下是可行的功能增强路径:
一、安装官方认证设备驱动与构件库
该方法通过集成昆仑通态审核通过的硬件通信驱动和可视化控件,实现对新设备类型或交互逻辑的支持,属于MCGS体系内标准扩展方式。
1、访问昆仑通态官网“下载中心”,登录企业账号或注册开发者权限。
2、在搜索栏输入目标设备型号(如“西门子S7-1200”“汇川PLC”),筛选“驱动程序”或“构件包”分类。
3、下载对应版本的ZIP安装包(注意匹配MCGS Pro当前运行版本号,例如V3.3.0.8623)。
4、解压后双击执行setup.exe,按提示选择“构件安装路径”为MCGS安装目录下的Components子文件夹。
5、重启MCGS Pro软件,在“用户窗口”工具箱中右键刷新,新构件将出现在“自定义构件”区域。
二、导入自定义脚本与Lua逻辑模块
MCGS Pro支持在运行策略窗口中嵌入Lua脚本,并可通过“脚本函数库”方式封装复用逻辑,实现类模组的行为扩展,无需编译或外部加载器。
1、打开工程后,进入“运行策略”窗口,右键空白处选择“新建策略块”→“脚本策略块”。
2、双击进入编辑界面,在顶部菜单选择“函数库”→“新建函数库”,命名为“DataProcessLib.lua”。
3、在函数库编辑区编写可复用函数,例如:function calc_avg(data_list) return table.average(data_list) end。
4、保存后,在任意脚本策略块中调用该函数:local result = DataProcessLib.calc_avg({10,20,30})。
5、导出整个函数库文件(.lua),可复制到其他工程的Scripts目录下,再通过“函数库”→“导入”复用。
三、使用Web组态嵌入HTML/JS组件
针对MCGS Web版(如MCGS Cloud发布后的H5页面),可在用户窗口中插入“WebBrowser构件”,通过URL加载本地或远程HTML页面,从而集成前端JavaScript功能模块,实现界面级功能叠加。
1、在“用户窗口”中点击工具箱“WebBrowser”图标,拖拽至画面空白处。
2、右键该构件→“属性设置”,在“URL地址”栏填写:file:///D:/mcgs_web_modules/chart_dashboard.html(路径须为绝对路径且文件存在)。
3、确保HTML文件中包含合法的
4、配置“WebBrowser构件”的“宽高”“刷新间隔”参数,启用“允许执行脚本”选项。
5、运行工程时,该构件将渲染指定HTML内容,并可与MCGS实时数据库通过window.external接口双向通信。
四、调用外部DLL动态链接库
对于需深度集成C/C++算法或专用硬件SDK的场景,MCGS Pro支持在脚本中通过dllcall调用Windows DLL,实现底层能力注入,是高级用户常用的功能扩展手段。
1、编写符合stdcall调用约定的DLL(如CalcEngine.dll),导出函数如:int __stdcall ComputeCRC(unsigned char* buf, int len)。
2、将DLL文件复制至MCGS安装目录下的SysDir子文件夹(例如D:\MCGS\Prog\SysDir\)。
3、在脚本策略块中声明调用:local crc = dllcall("CalcEngine.dll", "ComputeCRC", "int", "ptr", "int")。
4、构造字节数组参数并传入,例如:local data = string.char(0x01,0x02,0x03),crc_result = ComputeCRC(data, 3)。
5、返回值可写入实时数据库变量,供画面控件读取显示。










