当前位置:
AIGC文章详情

张大妈

物联网开发利器:基于web的强大的可拖拽组态软件

源自今日头条:灵巧光束

02-11 13:08

告别传统组态软件的客户端安装与复杂协议,FUXA作为一款基于Web的拖拽式组态工具,为小型物联网项目提供了新思路。通过一次从零开始的完整实践,深入了解了其在树莓派部署、连接老旧PLC、以及二次开发方面的真实表现与潜在价值,为寻求低成本、高效率解决方案的开发者提供了重要参考。

物联网开发利器:基于web的强大的可拖拽组态软件智能速览

  • FUXA是开源的Web组态软件,无需安装客户端,通过浏览器即可访问。

  • 在树莓派上部署需注意平台架构,源码编译推荐使用Node.js v18.19.1版本。

  • 连接西门子S7-200 PLC成功的关键是解决USB-PPI电缆供电问题并升级固件。

  • UI控件支持通过JavaScript表达式实现颜色等属性的动态变化,灵活性高。

  • 报警系统默认存储在内存,可通过修改代码实现文件持久化和企业微信通知。

  • 该工具适合预算有限、有JS开发能力的小厂用于快速搭建监控原型。

物联网开发利器:基于web的强大的可拖拽组态软件精华内容

FUXA的核心理念是将物联网应用开发的整个链条,从设备连接到数据呈现,都压缩在简洁的代码结构中。这种极简主义在具体实践中如何体现,又隐藏着哪些需要注意的细节?

部署初体验

在树莓派4B上部署FUXA并非一帆风顺。直接拉取官方Docker镜像会因为平台不匹配失败,必须指定`–platform linux/amd64`。若选择源码编译,`npm install`过程对Node.js版本有严格要求,v18.19.1是成功的关键,因为其`serialport`依赖调用了新版V8 API,旧版Node.js会直接崩溃。

软件启动后默认监听1881端口,首次登录使用admin/admin账户后,系统会强制要求修改密码。用户数据并未存储在数据库,而是以纯文本形式保存在`server/_appdata/users.json`文件中,便于直接查看和管理。

连接核心设备

连接设备是组态软件的核心。配置MQTT非常便捷,只需提供一个JSON Schema示例,FUXA便能自动解析标签名和初始值,且读写指令共用同一主题,简化了配置。

连接西门子S7-200则费尽周折。首次使用USB-PPI电缆(CTII-Y32)连接失败,日志显示“PPI init timeout”,根本原因是电缆供电不足。为树莓派换上带独立供电的USB集线器,并升级电缆固件至v2.8后问题解决。此外,DB块地址的写法必须为`DB1,0,REAL`格式,软件内部通过偏移量和数据类型进行解析,而非简单的字符串匹配。

UI与逻辑绑定

FUXA的拖拽式UI设计看似简单,但数据绑定非常精细。一个温度控件,除了绑定数据标签外,还需单独设置小数位数和单位,这些是控件自身的属性。

更强大的是其表达式支持,控件颜色可以根据数值动态变化,例如输入`value > 85 ? ‘red’ : value > 70 ? ‘orange’ : ‘green’`,即可实现三色阈值预警。甚至可以处理`value == null`的情况,让控件在无数据时变灰,而非报错,保证了界面的友好性。

二次开发实践

FUXA的开放性使其易于二次开发。报警系统默认仅保留最近100条记录在内存中,通过修改两行代码,使用`fs.writeFileSync`即可将报警信息写入`_appdata/alarms.json`文件实现持久化。

集成企业微信机器人通知时,最初出现中文乱码,原因是`axios.post`请求头缺少`‘Content-Type’: ‘application/json;charset=utf-8’`。在Nginx反向代理场景下,需注意关闭`X-Forwarded-For`配置以避免登录循环。JWT的过期时间硬编码在配置文件中,为86400秒,可直接修改生效。

定位与局限

FUXA并非万能。它不支持DNP3协议,无法直接连接RTU;也不具备OPC UA服务器功能,只能作为客户端。其历史数据存储未经压缩,海量数据下可能会引发性能问题。

但它的价值在于,将“连设备—采数据—做画面—发告警”的完整流程,集成在`client`和`server`两个文件夹中,修改一行JS或一个JSON文件即可调整功能。它不打算取代WinCC或Ignition,而是为那些预算有限、不愿花费十万购买授权,又具备一定JS能力的小厂或个人开发者,提供了一个快速实现工业物联网监控的有效途径。

FUXA的实践证明了,轻量级、高定制化的Web组态软件在特定场景下拥有强大生命力。它降低了工业物联网监控的门槛,让“小而美”的解决方案成为可能。这种开放和灵活的模式,是否预示着未来工业工具发展的一个新方向?

内容由AI生成
1
扫一下,分享更方便,购买更轻松
0评论

当前文章无评论,是时候发表评论了
提示信息

取消
确认
评论举报

最新文章 热门文章