‹ 首页

tia-plc-operations

@czarnak · 收录于 1 周前

C# Openness implementation of PLC software engineering.

适合你,如果需要在PLC开发中实现自动化操作

/ 下载安装
tia-plc-operations.skill双击,或拖进 Claude 桌面版 / Cowork,即完成安装↓ .skill↓ .zip
用别的 agent?下载 .zip 解压,把文件夹放进它的技能目录
Claude Code~/.claude/skills/(项目级 .claude/skills/)
Codex CLI~/.codex/skills/
Cursor自动读取上面两处目录
其他工具见其文档的「skills」目录;两个下载是同一份文件,只是名字不同
/ 通过 npx 安装 校验哈希
npx oh-my-skill add czarnak/totally-integrated-claude/tia-plc-operations
/ 通过 bash 安装
curl -fsSL https://oh-my-skill.com/install.sh | bash -s -- czarnak/totally-integrated-claude/tia-plc-operations
/ 已经装过?验证本机副本,不用重装
npx oh-my-skill verify czarnak/totally-integrated-claude/tia-plc-operations
安装目标可用 --agent / --scope 或 --to 明确指定;省略时只会在唯一已存在的 agent 目录上自动选择,零命中或多命中会停止并提示。content_hash 缺失或不一致均拒装。
29GitHub stars
~669最小装载
~33.6K含声明引用
~33.6K文本包总量
镜像托管

怎么用

技能原文 SKILL.md作者撰写 · MIT · 9147951

tia-plc-operations

Scope

PLC software engineering — full C# Openness implementation.

When the roadmap routes here, the entire solution is C#. Do not mix with Python wrapper calls. Always load tia-csharp-common first (done by roadmap).


Reference files

Load ONLY the reference file(s) relevant to the task. Do not load all files at once.

| Reference file | Load when the task involves | | --- | --- | | references/online-status.md | Going online/offline, reading PLC state, configuring connection parameters, OnlineProvider, OnlineState, ConnectionConfiguration | | references/compare.md | Comparing PLC software or hardware, CompareResult, CompareResultState, CompareToOnline, UpdateProgram | | references/blocks.md | Program blocks, system blocks, PlcSoftware root, know-how/write protection, block groups, ProDiag-FB, DataBlock snapshots, compile individual block/UDT, fingerprints, webserver pages, OB priority, loadable file | | references/external-sources.md | PLC external source files, importing/generating blocks from sources, PlcExternalSource, PlcExternalSourceGroup | | references/tags-types.md | PLC tag tables, tags, user constants, system constants, UDTs, PLC types, UDT group navigation | | references/software-units.md | Software units (PlcUnit), PlcUnitProvider, unit relations, unit access/publish, namespaces, name value type documents | | references/safety-unit.md | Fail-safe unit (PlcSafetyUnit), SafetyUnit access, safety relations, publish safety blocks | | references/safety-administration.md | Global safety settings, SafetyAdministration, safety signature, safety system version, safety runtime groups, safety validation assistant | | references/alarms.md | PLC alarms, alarm classes, alarm text lists, PlcAlarmTextProvider | | references/technological-objects.md | Technological Objects (TOs), motion control, axes, encoders, TO mapping, hardware connections | | references/watch-force-tables.md | Watch tables, force tables, PlcWatchTable, PlcForceTable, watch entries | | references/opc-ua.md | OPC UA server interfaces, OPC UA communication groups, access control, role mapping | | references/supervision.md | Supervision settings, supervision provider, supervision export/import |

For tasks spanning multiple areas, load all relevant reference files before generating code.


Stub behaviour

If a task targets a partial reference file, do not invent API calls. State clearly which sections are missing.


Execution pattern
  1. Access PlcSoftware via device's SoftwareContainer
  2. Identify which reference file(s) cover the task — load them
  3. Navigate Openness object model per reference file patterns
  4. For online work: use OnlineProvider service on the CPU DeviceItem (see online-status.md)
  5. For compare: use CompareTo / CompareToOnline on PlcSoftware or Device (see compare.md)
  6. For software units: access via PlcUnitProvider service on PlcSoftware (see software-units.md)
  7. For safety unit: access via PlcUnitProvider.UnitGroup.SafetyUnits (see safety-unit.md)
Access pattern (always needed)
using Siemens.Engineering.HW.Features;
using Siemens.Engineering.SW;

// From a DeviceItem (CPU)
SoftwareContainer sc = deviceItem.GetService<SoftwareContainer>();
PlcSoftware plcSoftware = sc?.Software as PlcSoftware;
按 MIT 许可原样转载,未经改动 · 在 GitHub 查看 →

评论

登录即可评论;带「已验证安装」的,是发布者名下有本店的安装或持有记录。