pi-twincat-ads

通过ADS协议读写TwinCAT PLC数据的Pi插件。

安装使用

复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:

帮我安装这个 AI Skill:pi-twincat-ads。
它的用途是:通过ADS协议读写TwinCAT PLC数据的Pi插件。
完整的 Skill 内容见:https://321skill.com/skills/pi-twincat-ads/raw/index.md
请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。

提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。

使用示例

“帮我写一段代码,用pi-twincat-ads读取TwinCAT PLC里‘Main.bProductionStarted’这个布尔变量的状态。”,它会生成一段包含连接配置和异步读取函数的Node.js代码片段。或者

对AI说:“我想每分钟记录一次设备温度到数据库,温度值在PLC的‘GVL.rTemperature’里。”,它会协助你编写一个周期性读取PLC变量并存入数据库的定时任务脚本。

介绍

这个Skill是一个专为Pi平台开发的扩展,它解决了在Node.js环境中与倍福(Beckhoff)TwinCAT自动化系统进行实时数据交互的难题。通过实现ADS(Automation Device Specification)协议,它让JavaScript开发者能够直接读取或写入运行在TwinCAT PLC中的变量值,无需依赖复杂的C++或.NET桥接方案。

使用起来非常直接。开发者首先通过npm安装此包,然后在自己的Pi技能或Node.js项目中引入它。通过配置目标TwinCAT系统的AMS NetId和端口号,即可建立连接,随后便可以使用简单的API函数来获取或设置PLC内部的任何变量,例如读取一个布尔型的安全信号或写入一个设定好的速度值。

它非常适合两类人群:一是需要将TwinCAT PLC数据集成到更广泛IT系统(如MES、SCADA或自定义监控面板)中的工业自动化工程师和系统集成商;二是希望利用JavaScript生态的丰富工具(如WebSocket、数据库、可视化库)对PLC数据进行处理、分析和展示的全栈或物联网开发者。

使用建议方面,请确保网络配置正确,允许Pi运行环境与TwinCAT目标系统之间的ADS通信。由于涉及工业控制,在写入关键控制变量时务必谨慎,建议先进行充分的测试,并考虑在关键操作前加入确认或权限校验逻辑,以避免误操作导致的生产中断。

核心特点

这是Pi生态内首个专注于连接倍福TwinCAT系统的官方ADS协议实现,相比通用的OPC UA客户端或自行封装ADS库的方案,它提供了开箱即用、与Pi技能框架深度集成的专用接口。

注意事项

该Skill仅支持通过ADS协议与倍福TwinCAT系统通信,不适用于连接其他品牌(如西门子、罗克韦尔)的PLC。

常见问题

如何配置TwinCAT ADS连接?

需要在代码中设置目标TwinCAT控制器的AMS NetId(如192.168.1.10.1.1)和ADS端口(如851)。

能读写哪些类型的PLC变量?

支持读写TwinCAT PLC中定义的基本数据类型,如BOOL、INT、REAL、STRING以及数组和结构体。

给 AI 助手的安装指引

如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:

请访问 https://321skill.com/skills/pi-twincat-ads/raw/index.md 读取 pi-twincat-ads 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。