ソース情報
- リポジトリ
- JohnNuwan/EVA_CORE
- ソースの最終更新活動
- 2026年7月18日 08:30
- 検出された SKILL.md の言語
- フランス語
- スター
- 0
- フォーク
- 0
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
メニュー
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/JohnNuwan/EVA_CORE --skill beckhoff-ads-integrationコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
Concevoir et maintenir un watchdog auto-correcteur pour services HTTP — checks de santé, auto-restart, état persistant, rapports et pièges bash.
Serveur de messagerie sécurisé auto-hébergé (Signal-like) avec Flask + WebSocket + AES-256-GCM + pont EVA
ADAM-SENTINEL — Veilleur technologique 24h/24h. Scanne 10 domaines, cree des rapports, met a jour les skills, alerte sur les CVE et breaking changes.
SOC 職業分類に基づく
SKILL.md を表示中
| name | beckhoff-ads-integration |
| description | Générer et intégrer du code Structured Text Beckhoff. |
| version | 1.1.0 |
| author | EVA |
| license | Privée EVA St-Étienne |
| platforms | ["linux","macos","windows"] |
| metadata | {"tags":["beckhoff","twincat","ads","plc","structured-text","automation-engineering"],"related_skills":["industrial-plc-connectivity"]} |
Cette compétence guide l'agent pour concevoir, structurer et intégrer des projets TwinCAT 3 en Structured Text (ST) et configurer les liaisons de communication via le protocole ADS (Automation Device Specification) de Beckhoff.
Les outils de communication directe suivants peuvent être mobilisés :
`beckhoff_ads_get_info` : Lecture du statut du runtime TwinCAT.`beckhoff_ads_read_tag` : Lecture de variables PLC par leur nom de symbole.`beckhoff_ads_write_tag` : Écriture de variables PLC par leur nom de symbole.Pour établir un dialogue entre EVA (ou toute application hôte) et le contrôleur Beckhoff via ADS, les routes doivent être mutuellement déclarées.
192.168.1.100.1.1).851 : Premier runtime PLC de TwinCAT 3.10000 : Système de diagnostic ou routeur ADS lui-même./etc/ads/StaticRoutes.xml doit être configuré de la sorte :
<TcConfig>
<RemoteConnections>
<Route>
<Name>EVAAgent</Name>
<Address>192.168.1.50</Address> <!-- IP de la machine EVA -->
<NetId>192.168.1.50.1.1</NetId> <!-- AMS Net ID de la machine EVA -->
<Type>TCP_IP</Type>
</Route>
</RemoteConnections>
</TcConfig>
Beckhoff propose des blocs fonctionnels asynchrones (dans la bibliothèque Tc2_System) pour interagir avec le système de fichiers de l'OS (Windows ou TwinCAT RTOS). Ces opérations s'exécutent sur plusieurs cycles en utilisant les variables bExecute, bBusy et bError.
PROGRAM PRG_FileLog
VAR
fbFileOpen : FB_FileOpen; // Bloc d'ouverture de fichier
fbFileWrite : FB_FileWrite; // Bloc d'écriture de fichier
fbFileClose : FB_FileClose; // Bloc de fermeture de fichier
hHeaderFile : UINT := 0; // Handle du fichier ouvert
sLogLine : STRING := 'Vitesse: 1450 rpm; Defaut: False$N'; // Ligne à écrire ($N = CR/LF)
bWriteTrigger : BOOL; // Déclencheur d'écriture
iState : INT := 0; // État de la machine d'état
bBusy : BOOL;
bError : BOOL;
END_VAR
CASE iState OF
0: // Attente d'un déclenchement
IF bWriteTrigger THEN
bWriteTrigger := FALSE;
bBusy := TRUE;
bError := FALSE;
iState := 10;
END_IF;
10: // Ouverture du fichier en mode Append
fbFileOpen(
sNetId := '', // Machine locale
sPathName := 'C:\Logs\production.csv',
nMode := FOPEN_MODEAPPEND OR FOPEN_MODETEXT,
bExecute := TRUE
);
IF NOT fbFileOpen.bBusy THEN
IF NOT fbFileOpen.bError THEN
hHeaderFile := fbFileOpen.hFile;
fbFileOpen(bExecute := FALSE); // Reset du bloc
iState := 20;
ELSE
bError := TRUE;
iState := 99; // État d'erreur
END_IF;
END_IF;
20: // Écriture de la ligne de log
fbFileWrite(
sNetId := '',
hFile := hHeaderFile,
pWriteBuff := ADR(sLogLine),
cbWriteLen := INT_TO_UDINT(LEN(sLogLine)),
bExecute := TRUE
);
IF NOT fbFileWrite.bBusy THEN
fbFileWrite(bExecute := FALSE);
iState := 30; // Fermeture obligatoire même après erreur
END_IF;
30: // Fermeture du fichier
fbFileClose(
sNetId := '',
hFile := hHeaderFile,
bExecute := TRUE
);
IF NOT fbFileClose.bBusy THEN
fbFileClose(bExecute := FALSE);
bBusy := FALSE;
iState := 0; // Retour à l'attente
END_IF;
99: // Gestion de l'erreur
bBusy := FALSE;
fbFileOpen(bExecute := FALSE);
iState := 0;
END_CASE
{attribute 'OPC.UA.DA' := '1'}
{attribute 'OPC.UA.DA.Description' := 'Consigne de vitesse de la pompe principal'}
rPumpSpeed : REAL;
LREAL (double précision 64 bits) pour les variables de position ou d'axes de mouvement (TwinCAT NC/MC).TIME, LTIME, TOD, DT) doivent être formatés selon le standard (ex: T#500ms, DT#2026-07-06-10:40:00).