Finde alle möglichen Kollisionen der geöffneten Station: Basislauf, Arbeitsbereiche, Verriegelungen prüfen, dann einen Plan für den Robustheitstest mit Live 3D schreiben und ausführen. Gib mir den Bericht.Das ersetzt die manuellen Schritte:
- alle Roboter in HOME fahren (Folge 125),
- Basislauf der Folge (Zeiten, Warten, Wettläufe),
- Arbeitsbereiche berechnen,
- Verriegelungen prüfen,
- die anonymisierte Studie exportieren, einem KI-Assistenten geben und seine Antwort übernehmen,
- den Plan des Robustheitstests schreiben oder importieren,
- den Robustheitstest mit Live 3D starten und abwarten,
- den Bericht öffnen und die Kollisionsfälle auswerten.
Daten: im anonymen Modus (
/anonymous on) sendet der Chat Kennungen (R1, R2
…, <file N>, <name>) statt der echten Namen an das Modell – wie die anonymisierte Studie
– und die ganze Studie läuft trotzdem selbst. Ohne ihn fragt der Chat, bevor die ersten echten Daten gesendet
werden.Idee
Die Analyse der Verriegelungen und der Taktzeit einer Zelle (Engpass, fehlende Verriegelungen, wo ein Bereich früher oder später angefordert und freigegeben werden kann, Ketteneffekte auf andere Roboter) kann ein KI-Assistent unterstützen. Roboterprogramme, Namen und das Layout einer Anlage sind vertraulich und dürfen nicht an einen KI-Dienst gehen. Der Robot Cell Simulator macht deshalb alle Berechnungen lokal (Kinematik, Arbeitsbereiche von Arm und Werkzeug, gemeinsame Volumen, Simulation der Zelle mit der Stations-SPS) und speichert nur ihre Ergebnisse in abstrakter Form: Roboter R1…Rn, Programme F# (Folge) / U# (UP), Punkte P# – ohne Namen, Koordinaten, Kommentare und Programmtext.
Die KI schlägt nur Änderungen vor. Der Programmierer übernimmt sie lokal, der Robot Cell Simulator prüft sie mit einer neuen Simulation, die Entscheidung bleibt beim Menschen.
Bedienung
- Zelle und Programme laden (z. B. Simulation > Simulation laden...).
- Arbeitsbereiche: Programme der Roboter anhaken, Berechnen.
- Optional, aber empfohlen: Registerkarte Simulation, Auf allen Robotern starten (mehrere Zyklen) – die Studie enthält dann Taktzeiten, Wartezeiten und die Belegungsdauer der Bereiche.
- Arbeitsbereiche: Anonymisierte Studie für KI... – Datei wählen. Es werden zwei Dateien geschrieben:
- <Name>.json – für den KI-Assistenten;
- <Name>.key.json – der Schlüssel von den IDs zu den echten Namen. Er bleibt auf diesem Rechner – niemals versenden.
- Die .json und das Briefing für den KI-Agenten an den KI-Assistenten geben (siehe Mit Copilot).
Inhalt der Datei
| Teil | Inhalt |
|---|---|
| robots, zoneCalculation | R1…Rn; Raster und Radius der Arbeitsbereichsberechnung |
| sharedAreas | Roboterpaar: gemeinsames Volumen (m³), ohne Verriegelung befahrener Teil, Verriegelungen des Paares, größte Einfahrt ohne Verriegelung |
| programs[].steps | jeder Punkt in Ausführungsreihenfolge mit aufgerufenen UPs: Punkt (F1/U2/P5), Bewegungsart, Genauhalt, Prozessbahn, angeforderte / freigegebene Bereiche, belegte Bereiche während der Bewegung und nach dem Punkt, Berührung mit Arbeitsbereichen anderer Roboter, Bewegung ohne Verriegelung |
| checkInterlocks | Befunde von Verriegelungen prüfen, Namen ersetzt |
| simulation | Stationstakt, Takt und Wartezeit jedes Roboters, Warten auf Bereiche (wo, welcher Bereich, belegt von wem), Belegungsdauer der Bereiche, Warteketten, gleichzeitige Anforderungen |
| interlockTexts, commentTemplates | nur wenn Sie die Frage beim Speichern mit Ja beantworten (die Wahl wird gespeichert): die Verriegelungskommentare über den Punkten (nur Kommentare mit einem Verriegelungswort), die Verriegelungsbefehle der Punkte und die Langtexte von E41..E56 / A41..A56 / A81..A96 jedes Roboters, Roboter- und Programmnamen durch R# / F# / U# ersetzt; die Kommentarvorlagen aus Einstellungen > Verriegelungskommentare. Die KI prüft, ob Kommentare und Langtexte gut geschrieben sind und zu den Programmen passen (Regeln im Briefing, Abschnitt 6), und antwortet in "texts". |
Datenschutz
Nicht in der Datei: Koordinaten, Namen von Robotern, Station, Linie oder Werk, Programmnamen, Programmtext, Kommentare (Text in Anführungszeichen wird zu "<text>"), Signaltexte, Dateipfade (<path>), Robotertyp, Kennungen aus Programmköpfen (<name>). In der Datei: IDs, Punktnummern, Bereichsnummern 1–16, Bewegungsarten, Volumen, Zeiten und die Standardsignale (E41, A81, SPSMAKRO20, Makro45) – sie tragen die Bedeutung und sind nicht vertraulich.
Vor dem Speichern prüft der Robot Cell Simulator die Datei auf Teile der echten Namen (alle bekannten Formen, kurze Roboternamen, lange Ziffernfolgen der Namen, Kennungen mit Unterstrich, Pfade). Das Ergebnis steht in der Meldung.
Anonymisierte Studie oder anonymer Modus des KI-Agenten? Die anonymisierte Studie ist eine Datei: Sie
exportieren sie, geben sie selbst dem KI-Assistenten und importieren seine Antwort – ein manueller Weg; die
Schlüsseldatei bleibt auf Ihrem Rechner. Der anonyme Modus des Fensters KI-Agent
(/anonymous on) arbeitet automatisch: der Simulator ersetzt Roboternamen, Dateipfade und Kennungen der
Anlage in jedem Text an das Modell durch R1, R2 …, <file N> und <name> und setzt in seinen
Befehlen die echten Namen wieder ein; der Schlüssel bleibt nur im Speicher des Simulators. Die anonymisierte Studie entfernt
mehr (auch Programmtext, Kommentare und Koordinaten); im anonymen Modus können freie Wörter in Kommentaren, die nicht wie Namen
aussehen, trotzdem das Modell erreichen.
Mit Microsoft Copilot
Copilot greift nicht direkt auf den Robot Cell Simulator zu – der Austausch geht über Dateien, der Anwender sieht und kontrolliert alles, was übergeben wird:
- Im Copilot-Chat das Briefing (anon_agent_brief_de.md oder _en.md) und die anonymisierte .json hochladen.
- Eingabe zum Beispiel: "Lies das Briefing und analysiere die anonymisierte Roboterzelle in der JSON-Datei gemäß Abschnitt 1 des Briefings: Stationstakt, fehlende Verriegelungen, Vorschläge mit erwarteter Wirkung, Sicherheit. Gib die Änderungen am Ende auch im JSON-Format aus."
- Die ganze Antwort von Copilot kopieren und im Robot Cell Simulator importieren: Arbeitsbereiche > KI-Vorschläge importieren... (siehe Import der KI-Vorschläge). Die IDs (R5, U2 …) werden mit der lokalen Schlüsseldatei den echten Robotern und Programmen zugeordnet.
Import der KI-Vorschläge
Arbeitsbereiche > KI-Vorschläge importieren... liest die Antwort des KI-Assistenten und zeigt, was sie in den Programmen der Zelle bedeutet:
- Die Antwort Einfügen (die ganze Chat-Antwort – der Block {"changes": [...]} wird im Text gefunden) oder Datei öffnen...; die Schlüsseldatei des letzten Exports wird automatisch gewählt.
- Analysieren – Tabelle der vorgeschlagenen Änderungen: Roboter, Programm und Punkt (ID und echter Name), Aktion, die Änderungen im Programm (z. B. A81 = EIN, SPSMAKRO20 = EIN, E41 in FB PSPS), die Begründung der KI (so angezeigt, wie die KI sie geschrieben hat – in der Sprache des Briefings) und ein Hinweis. Nicht umsetzbare Änderungen (Punkt oder Programm nicht gefunden, Bereich außerhalb 1..16) sind rot; zu prüfende Änderungen (Bereich dort schon angefordert, Warten auf der Prozessbahn, Partner unbekannt) sind orange und nicht angehakt. Farben: in der Antwort der KI Befunde rot (MISSING, LOGIC, Engpass), Bedingungen und Warnungen orange (ONLY AFTER, prüfen), IDs violett, Zeiten und Prozente grün, der JSON-Block grau; in der Tabelle request grün, release blau, remove_* orange, eine von der KI als bedingt markierte Änderung (ONLY AFTER ...) gelb hinterlegt – vor der Übernahme entscheiden (abhaken, wenn die Bedingung nicht erfüllt ist).
- In aktuelle Simulation übernehmen – die Programme werden gesichert (RCS_AI_backup_<Datum> im Ordner der anonymisierten Studie), die angehakten Änderungen mit demselben Code wie Verriegelungen einfügen im Editor eingefügt (Kommentare mit dem Partnerroboter, A81..A96, SPSMAKRO20, E41..E56 in FB PSPS, A41..A56), die Programme gespeichert und die Simulation mit den Einstellungen der Registerkarte Simulation gestartet. Mit Nach dem Übernehmen mit den 3D-Modellen prüfen werden vorher die Arbeitsbereiche aus den Dreiecken der 3D-Modelle mit den geänderten Programmen berechnet: grün = keine Einfahrt in einen gemeinsamen Bereich ohne Verriegelung, rot = Liste der Einfahrten (Roboter, Punkt, Partner), die Zeilen dieses Roboters und Programms rot markiert – Originalprogramme wiederherstellen. Das bestätigt Änderungen, die die KI als bedingt markiert (only after 3D check), z. B. eine verschobene Anforderung, weil eine kleine Berührung im Würfelraster nicht real ist. Der Berechnungsmodus der Registerkarte Arbeitsbereiche wird danach wiederhergestellt.
- Vergleich – Stationstakt, Takt und Wartezeit jedes Roboters vor und nach den Änderungen, mit der Änderung in Sekunden und Prozent (kürzer grün, länger rot), und das von der KI erwartete Ergebnis. Der Roboter, der den Stationstakt bestimmt (Engpass), ist vorher und nachher rot markiert, Wartezeiten ab 5 s je Zyklus orange. Nach dem Ende der Simulation kommt das Fenster mit dem vollständigen Vergleich nach vorne. Das Fenster lässt sich maximieren; mit den Balken zwischen den drei Teilen werden Antwort, Tabelle oder Vergleich vergrößert.
- Originalprogramme wiederherstellen – die Programme werden aus der Sicherung zurückkopiert (die Editorfenster dieser Programme werden ohne Speichern geschlossen). Variante behalten: Programme im Editor prüfen und behalten.
Aktionen in der Antwort der KI: request (Bereiche im Punkt anfordern), release (Bereiche im Punkt freigeben), remove_release und remove_request (vorhandene Freigabe / Anforderung aus dem Punkt entfernen, z. B. wenn sie in einen anderen Punkt verschoben wird; remove_request entfernt auch den Eingang E41..E56 des Bereichs aus FB PSPS bis zur Freigabe und SPSMAKRO20, wenn im Punkt keine andere Anforderung bleibt). Optional: partner (Roboter des Kommentars), reason (Begründung) und expected mit dem erwarteten Stationstakt.
{"changes":[{"robot":"R5","program":"U2","point":"P1","action":"request","zones":[1,4],"reason":"..."},
{"robot":"R5","program":"U2","point":"P44","action":"remove_release","zones":[1]},
{"robot":"R5","program":"U2","point":"P68","action":"release","zones":[1]}],
"expected":{"stationCycle":"52-56 s"}}

Die Schlüsseldatei
Jeder Export (Anonymisierte Studie für KI...) schreibt zwei Dateien: <Name>.json für die KI und <Name>.key.json – den Schlüssel von den IDs zu den echten Namen, z. B. R5 → Roboter der Zelle, U2 → UP42, F1 → folge81. Die KI sieht und antwortet nur in IDs (R5, U2, P44); der Import braucht den Schlüssel, um zu wissen, welcher Roboter, welches Programm und welcher Punkt gemeint ist. Der Schlüssel verlässt nie den Rechner.
- Jeder Export hat seinen eigenen Schlüssel – der Import muss den Schlüssel des Exports verwenden, den die KI analysiert hat.
- Schlüsseldatei im Importfenster: der Schlüssel des letzten Exports wird automatisch gewählt; einen anderen mit ... wählen (z. B. wenn die Antwort zu einem älteren Export gehört).
- .json und zugehörige .key.json zusammen aufbewahren (gleicher Ordner, gleicher Name).
Nächste Runde
Nach In aktuelle Simulation übernehmen zeigt der Vergleich das Ergebnis. Danach:
- Änderungen behalten – die Änderungen bleiben in den Programmen (die Sicherung bleibt auf der Festplatte) und werden zum neuen Ausgangszustand: neue anonymisierte Studie exportieren (neue .json + neuer Schlüssel), der KI für die nächste Runde geben, die Antwort wieder importieren.
- Originalprogramme wiederherstellen – zurück zum Zustand vor dem Import.

Vor dem Speichern jedes Programms werden die VKRC-Steuerung und der VW Tech-User des Roboters eingestellt (wie beim Aktivieren des Roboterprojekts, Felder in der Symbolleiste): $config.dat des Roboters (KRC/R1/System), Version aus TPVW_VERSION bzw. am.ini, Tech-User aus KRC/R1/VW_User/vw_usr_s.src. Ist dieser Tech-User in DReS noch nicht vorhanden, wird er aus dem Archiv des Roboters hinzugefügt. Danach werden die vorherigen Einstellungen wiederhergestellt. Meldet der Editor beim Speichern vorhandene Syntaxwarnungen des Programms (z. B. Invalid default value for P2), wird nach dem Speichern gefragt; die Prüfung des Standardwerts kann in den VKRC-Einstellungen (VW User > Check default P value for invisible parameter) abgeschaltet werden.
Kommentare und Langtexte (Antwortteil "texts"): eine Zeile comment schreibt den Verriegelungskommentar über dem Punkt aus den Vorlagen des Werks neu (Einstellungen > Verriegelungskommentare, bis zu drei Zeilen / Sprachen) - die KI gibt nur die Nummer der Verriegelung, Anforderung oder Freigabe und den Partnerroboter an, der Text folgt also immer den Vorlagen. Eine Zeile longtext wird nur gemeldet (die Langtexte werden in der Roboterkonfiguration geändert), eine Zeile text ist ein Hinweis. Die Langtexte gelten: ein Kommentar, der einen anderen Roboter als die Langtexte nennt, wird korrigiert, nicht der Langtext.
Andere KI-Anbindungen
- Lokales KI-Modell – nichts verlässt den Rechner; dieselbe Datei und dasselbe Briefing.
- Fenster KI-Agent des Simulators – ein Chat im RCS: der Agent führt Simulation, Check interlocks und Robustheitstest selbst aus (Anthropic API oder eine OpenAI-kompatible API, z. B. VW LLMaaS). Er arbeitet mit den echten Namen der Zelle, nicht mit der anonymisierten Studie – nur für Daten, die an dieses Modell geschickt werden dürfen.
- KI-Assistent mit Werkzeugen (MCP), z. B. Claude Code oder andere Clients mit MCP-Servern – kann die Studie selbst über die Befehls-API (anon_study) und VeRa erstellen.
- KI-Dienst des Kunden (z. B. im Firmen-Tenant) mit Schnittstelle – mit der IT des Kunden abzustimmen.
Beispiel
Zelle mit 5 Robotern, Folge 81, Stationstakt 72,2 s. Ein KI-Agent bekam nur die anonymisierte Datei und wenige Sätze zu den Verriegelungsregeln – ohne Schlüssel, ohne Kenntnis einer früheren Studie – und kam zu denselben Ergebnissen wie der Programmierer auf den echten Programmen: taktbestimmender Roboter und Ursache (21,6 s Warten auf zwei Bereiche, die zwei Partner während ihrer Klebebahnen belegen), dieselben fehlenden Verriegelungen (gleiche Punktbereiche), dieselbe Lösung (frühere Anforderung, längere Belegung, erneute Anforderung) und der Ketteneffekt auf einen dritten Roboter; geschätzter Takt 52–56 s – die Simulation der besten Variante ergab 53,0 s.
{"at":"F1/U2/P5", "motion":"PTP", "exact":true, "request":[1,4], "zonesAfterPoint":[1,4]}
{"at":"F1/U2/P45", "motion":"PTP", "exact":false, "contact":["R3","R4"], "unprotected":["R3"], "zonesDuringMotion":[5]}
{"robot":"R5", "where":"U2/P5", "zones":"1 (E41) + 4 (E44)", "by":"R2 (4), R3 (1)", "perCycle":21.6}
Befehls-API
{"cmd":"anon_study", "file":"C:/temp/zelle.json", "check":true, "run":true}
Antwort: file, keyFile, stats (Roboter, Programme, Schritte) und leaks (muss leer sein). Siehe Befehls-API.

