HolzBauTech RobotikInbetriebnahme · Simulation · Dokumentation
Projekt 2 · MontagesetsRS40 · Greifer-I/O · Schleifen
Zur Roboterhalle
Projekt 2 · 2. Quartal

Montagesets automatisiert bereitstellen

Programmiert den RS40 so, dass er einen Montageblock und zwei Distanzstücke sicher greift, zu vollständigen Montagesets zusammenstellt und den zunächst einzelnen Ablauf anschließend mit while- und for-Schleife zu einer kontrollierten Kleinserie erweitert.

Auftragsumfang wählenWechsel jederzeit möglich
Lernkarte 0 · Auftragseingang

Aus drei Bauteilen wird ein vollständiges Montageset

HolzBauTech möchte häufig benötigte Verbindungsteile nicht länger einzeln an die Montagelinie liefern. Der RS40 soll die Teile in einem Werkstückträger zusammenstellen.

Auftrag verstehenSet, Materialfluss und Ergebnis klären
Stufe wählenUmfang und Hilfen festlegen
Projekt vorbereitenSRS-Dateien und Dokumentation fortführen
ArbeitsweiseEigenes PDF je Doppelstunde · drei Teamabgaben

Ihr baut auf Projekt 1 auf. Nutzt dieselben persönlichen Dokumente und ergänzt ein neues Kapitel in der gemeinsamen Gesamtdokumentation.

Jede Person
Halte nach jeder Doppelstunde Ziel, eigenen Beitrag, Nachweis, Quellenprüfung und nächsten Schritt im persönlichen Robotik-PDF fest. Erkläre selbst, wie Greiferzustand und Wiederholung zusammenwirken.
Das Team
Sichert Ablauf- und I/O-Plan, Punkte, Greiferzustände, Schleifennachweise, Simulation und Tests. Drei Teamabgaben: Planung, Simulation, Abnahme. Ergänzt geprüfte Ergebnisse fortlaufend; die Lernkarten konkretisieren die Meilensteine.

Vor jedem Realtest: Simulation durchführen und vorführen, projektspezifische Freigabe bearbeiten und die ausdrückliche Lehrkraftfreigabe abwarten. Ergebnisse und Änderungen anschließend dokumentieren.

Arbeitsweise der Robotik-Reihe · Dateinamen, Vorlagen und Abgaben

Profilbild der fiktiven Person Mara KönigKI
Von: Mara König · FertigungsleitungBetreff: Bereitstellung standardisierter Montagesets

Hallo Robotik-Team,

in der Endmontage unserer Wandmodule werden immer wieder dieselben Verbindungsteile benötigt: ein Montageblock und zwei Distanzstücke. Bisher werden die Teile einzeln aus verschiedenen Behältern entnommen. Das kostet Zeit und führt gelegentlich zu unvollständigen Materialpaketen.

Der RS40 soll deshalb vollständige Montagesets auf einem Werkstückträger bereitstellen. Beide Bauteilarten besitzen denselben Griffbereich, sodass derselbe Greifer verwendet werden kann. Die Aufnahmeplätze und die drei Ablageplätze sind fest vorgegeben.

Beginnt mit einem vollständig funktionierenden Set. Danach erweitert ihr denselben Ablauf zu einer Kleinserie. Unabhängig von der Auftragsstufe gehören eine kontrollierte Wartephase für den Trägerwechsel und eine festgelegte Anzahl von Sets zum Projekt.

Viele Grüße
Mara König
Fertigungsleitung

Arbeitsauftrag 0.1

Auftrag und Handlungsprodukt erfassen

  1. Beschreibt, welches Problem in der Montage gelöst werden soll.
  2. Formuliert, woran ein vollständiges Montageset erkennbar ist.
  3. Erklärt, weshalb eine identische Greifkontur die Automatisierung vereinfacht.
  4. Notiert zwei technische Fragen, die ihr vor der Programmierung klären müsst.
Schematische Bereitstellstationkeine maßstäbliche Fertigungszeichnung
Schematische Übersicht mit festen Aufnahmeplätzen für Montageblock und Distanzstücke, Sicherheitsfahrhöhe und einem Werkstückträger mit drei Ablageplätzen
Die genauen Roboterpunkte und Höhen werden in eurer SRS-Umgebung beziehungsweise an der realen Zelle ermittelt. Horizontale Wege zwischen Arbeitsorten verlaufen auf Sicherheitsfahrhöhe.
1 Montageblockgrößeres Bauteil mit standardisiertem Griffbereich
2 Distanzstückegleiche Greifkontur, zwei getrennte Ablageplätze
1 Werkstückträgerfixierte Plätze für ein vollständiges Set
Arbeitsauftrag 0.2

Materialfluss beschreiben

  1. Verfolgt den Weg jedes Bauteils vom Aufnahmeplatz bis zum Werkstückträger.
  2. Markiert alle Stellen, an denen der Roboter absenken, greifen, anheben, ablegen oder öffnen muss.
  3. Begründet, warum der direkte horizontale Weg auf Greifhöhe ungeeignet ist.
Stufe 1 · Basisbetrieb

Simuliert zwei vollständige Sets. Ihr arbeitet mit festen Schleifengrenzen und ausführlichen Strukturgerüsten. Veränderbare Auftragsparameter werden noch nicht verlangt.

Stufe 2 · Anlagenausbau

Simuliert drei vollständige Sets. Wechselzeit und Seriengröße werden als veränderbare Werte vom Typ num angelegt. Eine Statusanzeige kennzeichnet die Wechselphase.

Stufe 3 · Profi-Auftrag

Programmiert eine variable Kleinserie und weist unterschiedliche Auftragsgrößen nach. for steuert die Serie, while bleibt als Wechselphase erhalten. Ein Unterprogramm ist als sinnvolle Erweiterung möglich.

Stufe 4 · Expertenauftrag

Programmiert eine variable Kleinserie mit klarer Statuslogik, optimiertem Bewegungsablauf und mindestens einem sinnvoll abgegrenzten Unterprogramm.

Gemeinsamer Lernweg
Alle Teams bearbeiten die Lernkarten zu while und for. Die gewählte Stufe entscheidet darüber, ob feste Werte oder veränderbare Auftragsparameter verwendet werden, wie viele Hilfen bereitstehen und wie selbstständig die Programmstruktur entwickelt wird. Ein späterer Stufenwechsel baut auf dem vorhandenen Programm auf.
Bewertung
Die Schwierigkeitsstufen unterscheiden sich im fachlichen Anspruch, in der Selbstständigkeit und in der geforderten Programmstruktur. Eine höhere Stufe eröffnet eine anspruchsvollere Bewertung, ersetzt aber nicht Funktion, Erklärung und Dokumentation.
Arbeitsauftrag 0.3

Stufe begründet wählen

  1. Vergleicht die vier Auftragsumfänge.
  2. Wählt eine Stufe, die euer Team fachlich bewältigen und im Fachgespräch erklären kann.
  3. Haltet Wahl und Begründung in der Teamdokumentation fest.
Arbeitsauftrag 0.4

Projekt 2 vorbereiten

  1. Legt im persönlichen Schülerlaufwerk eines Teammitglieds einen eindeutig bezeichneten Ordner für Projekt 2 an.
  2. Kopiert das SRS-Projekt vor der Bearbeitung nach ..\Documents\Staubli\SRS.
  3. Öffnet ausschließlich die lokale Kopie.
  4. Führt individuelles PDF und technische Teamdokumentation aus Projekt 1 fort.
  5. Kopiert den vollständigen Projektordner am Stundenende zurück ins Schülerlaufwerk.
Bei Abwesenheit
Fehlt das Teammitglied, auf dessen Laufwerk der aktuelle Stand liegt, kann die Lehrkraft den Projektordner auf das Laufwerk eines anderen Teammitglieds kopieren.
Lernkarte 1 · Ablauf- und I/O-Planung

Bevor Code entsteht: Bewegungen und Zustände festlegen

Ein Pick-and-Place-Prozess besteht nicht nur aus Roboterpunkten. Greifer, Statusanzeigen und Bauteilzustände müssen in jeder Phase eindeutig sein.

Punkte planenArbeits- und Sicherheitspositionen
Zustände planenGreifer und LEDs
Meilenstein 1Planung vorlegen und hochladen
Profilbild der fiktiven Person Selin ArslanKI
Von: Selin Arslan · QualitätssicherungBetreff: Eindeutige Zustände statt zufälliger Abläufe

Hallo Robotik-Team,

bei einem Montageset reicht es nicht, wenn der Roboter irgendwie alle drei Teile bewegt. Für die spätere Abnahme muss zu jedem Zeitpunkt nachvollziehbar sein, wo sich der Roboter befindet, welchen Zustand der Greifer besitzt und welche Anzeige leuchten soll.

Plant deshalb zuerst den vollständigen Ablauf einschließlich Initialisierung, Sicherheitsfahrhöhen, Wartephase und Endzustand. Eine gute Zustandstabelle verhindert viele Fehler, bevor sie im Programm entstehen.

Viele Grüße
Selin Arslan
Qualitätssicherung

Arbeitsauftrag 1.1

Prozesskette als Ablaufplan erstellen

  1. Erstellt eine vollständige Schrittfolge für Montageblock, Distanzstück 1 und Distanzstück 2.
  2. Ergänzt nach dem vollständigen Set eine sichere Position und eine zeitgesteuerte Wechselphase.
  3. Trennt Roboterbewegungen, Greiferbefehle, Wartezeiten und Statusmeldungen sichtbar voneinander.
  4. Umrahmt den zusammenhängenden Abschnitt, der später für jedes weitere Montageset erneut ausgeführt werden muss.
PunktgruppeFunktionVom Team zu bestimmen
pStartsichere Ausgangs- und Endpositionx, y, z, Orientierung, Shoulder
pMB_S / pMB_GSicherheits- und Greifpunkt Montageblockgleiche x/y-Lage, unterschiedliche z-Höhe
pDS_S / pDS_GSicherheits- und Greifpunkt DistanzstückGreifkontur und Bauteilhöhe prüfen
pABL_MB_S / pABL_MB_AAblage MontageblockTrägerlage und Ablagehöhe
pABL_D1_S / pABL_D1_AAblage Distanzstück 1erster fester Platz
pABL_D2_S / pABL_D2_AAblage Distanzstück 2zweiter fester Platz
Keine vorgegebenen Koordinaten
Ermittelt die Punkte in der realen beziehungsweise simulierten Zelle. Prüft weiterhin rx = -180 und eine passende Shoulder-Konfiguration.
Arbeitsauftrag 1.2

Punkte einrichten und dokumentieren

  1. Fahrt jeden Punkt zunächst manuell an.
  2. Kontrolliert Greif- beziehungsweise Ablagehöhe aus mehreren Ansichten.
  3. Legt oberhalb jedes Arbeitsortes eine sichere Position an.
  4. Dokumentiert Funktion und Lage der Punkte, nicht nur ihre Namen.
bOut14Greifer schließenbleibt aktiv, bis ein anderer Zustand programmiert wird
bOut15Greifer öffnenbleibt aktiv, bis ein anderer Zustand programmiert wird
bOut0Zyklus aktivStatus-LED gemäß Beschriftung der I/O-Säule prüfen
bOut1Set fertig / Wechselphaseerst nach vollständiger Ablage einschalten
ProgrammstartStatus aus; Greifer bewusst geöffnet
Während des ZyklusZyklus aktiv; Fertigmeldung aus
Wechselphase / EndeSet fertig sichtbar; anschließend definierter Endzustand
Arbeitsauftrag 1.3

Zustandstabelle erstellen

  1. Tragt für jede Prozessphase die Werte aller verwendeten Ausgänge ein.
  2. Prüft besonders, dass Öffnen und Schließen nicht gleichzeitig angesteuert werden.
  3. Legt fest, wann die Fertigmeldung beginnt und wann sie zurückgesetzt wird.
  4. Übernehmt die Tabelle in die Teamdokumentation.
Upload
Ladet den aktuellen Stand der technischen Teamdokumentation hoch. Erst danach beginnt die systematische Programmierung.
Lernkarte 2 · BasicIO und Greifer

Ausgänge zuerst verfügbar machen – dann den Greifer sicher steuern

Projekt 2 nutzt erstmals digitale Ausgänge. Bevor bOut14, bOut15 oder Status-LEDs verwendet werden können, muss BasicIO korrekt in die Zelle und das Projekt eingebunden sein.

BasicIO einrichtenE/A-Bibliothek importieren
Greifer steuernZustände dauerhaft halten
Zeit gebendelay(2) passend einsetzen
Profilbild der fiktiven Person Jonas WeberKI
Von: Jonas Weber · InstandhaltungBetreff: BasicIO vor dem ersten Greifertest einrichten

Hallo Robotik-Team,

bevor ihr Ausgänge im Programm verwendet, muss die E/A-Bibliothek zur Zelle und zu eurem Projekt passen. Beim Anlegen der Zelle wählt ihr unter den E/As BIO aus. Öffnet anschließend im Projekt die Startseite, wechselt zur E/A-Verwaltung, wählt BasicIO und klickt auf Importieren. Danach wählt ihr das Projekt aus, in das die Bibliothek importiert werden soll.

In unserer derzeitigen Umgebung verwenden wir die Namenskonvention old IO library format. Diese Auswahl kann sich ändern, wenn ein neuerer Controller eingesetzt wird. Prüft sie deshalb vor dem Import mit der Lehrkraft und übernehmt sie nicht blind aus dieser Website.

Erst wenn die benötigten Bezeichnungen im Projekt verfügbar sind, testet ihr den Greifer ohne gleichzeitige Roboterbewegung.

Viele Grüße
Jonas Weber
Instandhaltung

Arbeitsauftrag 2.1

BasicIO verfügbar machen

  1. Prüft beim Anlegen beziehungsweise Öffnen der Zelle, ob unter E/As BIO eingebunden ist.
  2. Öffnet im Projekt Startseite → E/A-Verwaltung → BasicIO → Importieren.
  3. Wählt das richtige Zielprojekt.
  4. Stimmt die Namenskonvention mit der Lehrkraft ab. Aktuell wird old IO library format verwendet.
  5. Kontrolliert, ob bOut14, bOut15 und die vorgesehenen Statusausgänge im Projekt bekannt sind.
  6. Dokumentiert die tatsächlich verwendete SRS-/Controller-Variante mit einem Screenshot.
LLM-Nutzung
Ein LLM kennt eure konkrete Controller- und Bibliothekskonfiguration nicht zuverlässig. Verwendet es höchstens zur Erklärung der Begriffe; Importweg, Namenskonvention und verfügbare Ein-/Ausgänge prüft ihr direkt in der Robotics Suite.
Greifer öffnen
bOut14 = false
bOut15 = true
delay(2)
Greifer schließen
bOut15 = false
bOut14 = true
delay(2)
Ausgänge halten ihren Zustand
delay(2) schaltet keinen Ausgang zurück. Es unterbricht den Programmablauf für zwei Sekunden, damit der Greifer mechanisch öffnen oder schließen kann. Der zuletzt programmierte Ausgangszustand bleibt bestehen, bis ihr ihn ausdrücklich ändert.
Arbeitsauftrag 2.2

Greiferbefehle isoliert testen

  1. Initialisiert den Greifer bewusst geöffnet.
  2. Testet Schließen und Öffnen einzeln und ohne Roboterfahrt.
  3. Kontrolliert, dass bOut14 und bOut15 nie gleichzeitig true sind.
  4. Prüft die übliche Wartezeit delay(2) an eurer Zelle.
  5. Dokumentiert Signalfolge, Wartezeit und den jeweils gehaltenen Endzustand.
LLM-Nutzung
Ein LLM kann die Signalfolge erklären oder einen Testplan vorschlagen. Die reale Zuordnung von bOut14 und bOut15 sowie die sichere Schaltfolge werden an eurer Zelle geprüft und nicht aus fremdem Code übernommen.
Roboterbewegung

waitEndMove()

Der nächste Programmschritt darf erst beginnen, wenn die vorherige Roboterbewegung abgeschlossen ist.

Zeitabhängiger Vorgang

delay(2)

Das Programm wartet zwei Sekunden auf die mechanische Bewegung des Greifers; der Ausgangszustand bleibt dabei unverändert.

Welche Reihenfolge ist fachlich sinnvoll?
Beispiel für einen eindeutigen Programmstart
// Statusanzeigen aus
bOut0 = false
bOut1 = false

// Greifer bewusst öffnen
bOut14 = false
bOut15 = true
delay(2)
Arbeitsauftrag 2.3

Initialisierung und Abschluss programmieren

  1. Setzt alle verwendeten Statusausgänge am Programmbeginn bewusst.
  2. Stellt den Greifer geöffnet in einen definierten Ausgangszustand.
  3. Legt den gewünschten Zustand am Programmende fest.
  4. Prüft die Zustände durch einen Neustart des Programms.
Lernkarte 3 · Vollständiger Pick-and-Place-Zyklus

Ein Montageset zunächst ohne Wiederholung bereitstellen

Bevor Schleifen hinzukommen, muss ein einzelner Zyklus sicher funktionieren: Montageblock, Distanzstück 1 und Distanzstück 2.

GreifenBauteil sicher aufnehmen
Transportierenauf Sicherheitsfahrhöhe
AblegenBauteil kontrolliert freigeben
1 · Sicher anfahrenmovej über das Bauteil
2 · Absenkenmovel zum Greifpunkt
3 · GreifenAusgänge schalten und warten
4 · Anhebenmovel zur Sicherheitshöhe
5 · Transportierenmovej über Ablage
6 · Ablegenlinear absenken, öffnen, anheben
Strukturgerüst für genau ein Bauteil
// über Aufnahmeplatz positionieren
movej(p________, flange, mNomSpeed)
waitEndMove()

// linear zum Greifpunkt absenken und greifen
movel(p________, flange, mGreifen)
waitEndMove()
// Greifer schließen, delay(2), anheben, transportieren, ablegen
Werkzeugbezug
Für die Bewegungsbefehle verwendet ihr in der bisherigen Projektumgebung flange. Übernehmt keine unbekannte Tool-Bezeichnung aus fremden Beispielen.
Arbeitsauftrag 3.1

Montageblock vollständig bereitstellen

  1. Programmiert zunächst nur den Montageblock.
  2. Zeichnet die Bahn in der Simulation und kontrolliert Sicherheitsfahrhöhe und lineare Absenkbewegungen.
  3. Prüft, ob Greifen und Öffnen erst nach beendetem Roboterweg erfolgen.
  4. Lasst den Roboter nach dem Ablegen wieder auf Sicherheitsfahrhöhe fahren.
Arbeitsauftrag 3.2

Set vervollständigen

  1. Übertragt die Pick-and-Place-Struktur auf Distanzstück 1.
  2. Passt Aufnahme- und Ablagepunkte gezielt an.
  3. Wiederholt den Vorgang für Distanzstück 2.
  4. Kontrolliert, ob alle drei Teile vollständig und lagerichtig im Werkstückträger liegen.
Typischer Kopierfehler
Der zweite Distanzstück-Abschnitt enthält noch den Ablagepunkt von Distanzstück 1. Das Programm läuft dann scheinbar korrekt, erzeugt aber kein vollständiges Set.
Übergang nach einem vollständigen Set
// erst nach Ablage des zweiten Distanzstücks
movej(pStart, flange, mNomSpeed)
waitEndMove()
bOut1 = true
// hier eure entwickelte Wechselphase einsetzen
Arbeitsauftrag 3.3

Einzelzyklus vollständig prüfen

  1. Schaltet die Fertigmeldung erst nach Ablage des zweiten Distanzstücks.
  2. Fahrt vor der Meldung eine sichere Position an.
  3. Lasst den Ausgang aktiv; er wird erst nach der Wechselphase zurückgesetzt.
  4. Lasst ein anderes Teammitglied den gesamten Ablauf anhand des Codes erklären.
Basisbetrieb

Der vollständige Einzelzyklus bleibt erhalten. Auf den nächsten Lernkarten ergänzt ihr eine Wechselphase mit fester Zeitgrenze und eine Serie mit fester Anzahl von zwei Sets.

Anlagenausbau

Der Einzelzyklus bleibt erhalten. Wechselzeit und Seriengröße werden anschließend als veränderbare num-Werte ergänzt; die Serie umfasst drei Sets.

Profi-Auftrag

Der Einzelzyklus wird zu einer variablen Kleinserie erweitert. while und for bleiben beide im finalen Programm sichtbar.

Expertenauftrag

Der funktionierende Einzelzyklus wird später sinnvoll ausgelagert und in eine wartbare Gesamtstruktur eingebunden.

Lernkarte 4 · Zähler und while-Schleife

Eine zeitgesteuerte Wechselphase kontrolliert wiederholen

Nach jedem vollständigen Set steht der Roboter sicher und die Fertigmeldung leuchtet. Eine while-Schleife bildet nun die vereinbarte Wartephase ab. Dabei lernt ihr erstmals den Zahlentyp num kennen.

num kennenlernenZähler und gegebenenfalls Zeitwert
Bedingung prüfenwahr oder falsch
Zähler ändernEndlosschleife verhindern
Profilbild der fiktiven Person Mara KönigKI
Von: Mara König · FertigungsleitungBetreff: Zeitfenster für den Werkstückträger einplanen

Hallo Robotik-Team,

nach einem vollständigen Set muss der belegte Werkstückträger aus dem Prozess genommen und ein leerer Träger bereitgestellt werden. In dieser Ausbaustufe besitzt die Anlage noch kein Rückmeldesignal für „neuer Träger bereit“. Deshalb bildet ihr den Wechsel zunächst durch ein festgelegtes Zeitfenster ab.

Die Zeitsteuerung ist ein Prozessmodell und keine Sicherheitsfreigabe. Sie darf niemals als Erlaubnis verstanden werden, die Roboterzelle zu betreten oder die Schutzeinrichtung zu umgehen. Projekt 3 ersetzt die offene Wartezeit später durch ein Eingangssignal.

Viele Grüße
Mara König
Fertigungsleitung

Realtest
Das Öffnen der RS40-Schiebetür hält den Programmablauf an. Eine laufende Zeitspanne ersetzt weder die Schutzfunktion noch eine Freigabe. Ob und wie mehrere Träger real gewechselt werden, legt ausschließlich die Lehrkraft fest; andernfalls wird die Serie nur simuliert und der reale Test auf ein Set begrenzt.

Eine Variable vom Typ num speichert einen Zahlenwert. In den Schleifen dieses Projekts werden technisch notwendige Zählvariablen verwendet. Erst ab Stufe 2 kommen zusätzlich veränderbare Auftragsparameter hinzu.

Basisbetrieb · feste Zeitgrenze

Ihr verwendet das vorbereitete Strukturgerüst mit der Zählvariable nWartezaehler. Die Zeitgrenze 3 steht direkt in der Bedingung. Eine zusätzliche Variable nWechselzeit gehört nicht zum Basisauftrag.

Arbeitsauftrag 4.1

Basisgerüst vorbereiten

  1. Übernehmt nWartezaehler als Zählvariable des vorgegebenen Schleifengerüsts.
  2. Setzt den Zähler unmittelbar vor der Schleife auf 0.
  3. Verwendet beim ersten vollständigen Test die feste Zeitgrenze 3.
  4. Legt keine zusätzliche Variable nWechselzeit an.
Anlagenausbau · Zeitwert veränderbar

Ihr legt nWartezaehler und nWechselzeit als num an. Die Wechselzeit kann dadurch verändert werden, ohne den Schleifenkopf umzuschreiben.

Arbeitsauftrag 4.1

Zähler und Wechselzeit anlegen

  1. Legt nWartezaehler und nWechselzeit mit dem Datentyp num an.
  2. Prüft Gültigkeitsbereich und Anfangswerte.
  3. Setzt nWechselzeit für den ersten vollständigen Test auf 3.
  4. Dokumentiert, welcher Wert im Ablauf hochgezählt wird und welcher als Grenzwert dient.
Profi-Auftrag · Parameter begründen

Ihr legt Zähler und Zeitparameter selbstständig an und begründet Namen, Gültigkeitsbereich sowie gewählten Testwert.

Arbeitsauftrag 4.1

Numerische Werte selbstständig vorbereiten

  1. Legt eine nachvollziehbar benannte Zählvariable und einen veränderbaren Zeitparameter vom Typ num an.
  2. Begründet Gültigkeitsbereich und Anfangswerte.
  3. Wählt einen sicheren Testwert und stimmt ihn mit der Lehrkraft ab.
  4. Dokumentiert Zähler, Grenzwert und Rücksetzung eindeutig.
Expertenauftrag · wartbare Parametrierung

Ihr behandelt Zähler, Zeitparameter und Initialisierung als klar abgegrenzten Teil der Programmstruktur.

Arbeitsauftrag 4.1

Parametrierung wartbar vorbereiten

  1. Legt Zählvariable und Zeitparameter vom Typ num mit verständlichen Namen an.
  2. Ordnet Initialisierung und spätere Rücksetzung eindeutig zu.
  3. Wählt und begründet einen sicheren Testwert.
  4. Dokumentiert, an welcher Stelle der Zeitparameter später geändert werden darf.
Basisbetrieb · Lückengerüst mit fester Zeitgrenze
nWartezaehler = 0
while nWartezaehler < ___
  delay(___)
  nWartezaehler = nWartezaehler + ___
endWhile
Arbeitsauftrag 4.2

Lückengerüst ergänzen und von Hand prüfen

  1. Ergänzt die feste Zeitgrenze 3, die Wartezeit 1 und die Zählererhöhung 1.
  2. Notiert den Zählerwert vor jeder Bedingungsprüfung.
  3. Bestimmt, wie oft delay(1) ausgeführt wird.
  4. Erklärt, warum die Zählererhöhung notwendig ist.
Anlagenausbau · parametriertes Lückengerüst
nWartezaehler = ___
while nWartezaehler < nWechselzeit
  delay(___)
  nWartezaehler = ________________
endWhile
Arbeitsauftrag 4.2

Parametrierte Schleife vervollständigen

  1. Ergänzt Startwert, Wartezeit und Zähleraktualisierung.
  2. Verfolgt den Ablauf für nWechselzeit = 3 von Hand.
  3. Erklärt die Aufgaben von Zähler und Grenzwert.
  4. Prüft die Schreibweise in der integrierten Stäubli-Hilfe.
Profi-Auftrag · allgemeine Grundform
<Zähler> = <Startwert>
while <Bedingung>
  // Warteanweisung
  // Zähler aktualisieren
endWhile
Arbeitsauftrag 4.2

Schleife aus der Grundform entwickeln

  1. Übertragt eure selbst gewählten Variablennamen in die Grundform.
  2. Formuliert eine Bedingung für die vereinbarte Wechselzeit.
  3. Programmiert Warteanweisung und Zähleraktualisierung.
  4. Weist den Ablauf für zwei unterschiedliche Zeitwerte nach.
Expertenauftrag · Syntaxrahmen
while <Bedingung>
  // zusammenhängender Wechselablauf
endWhile
Arbeitsauftrag 4.2

Wartbaren Wechselblock entwickeln

  1. Entwickelt Initialisierung, Bedingung, Warteanweisung und Zähleraktualisierung selbstständig.
  2. Ordnet die Rücksetzung eindeutig dem Wechselblock zu.
  3. Testet mindestens zwei sichere Zeitwerte.
  4. Erklärt den vollständigen Schleifenverlauf im Fachgespräch.
LLM-Nutzung
Ein LLM kann einen Schleifendurchlauf mit konkreten Zahlen erklären oder weitere Testwerte vorschlagen. Die VAL3-Syntax und das tatsächliche Verhalten prüft ihr in der Stäubli-Hilfe und in eurer Simulation.
Basisbetrieb · Einfügeposition der Wechselphase
// vollständiges Set ist abgelegt
movej(p________, flange, mNomSpeed)
waitEndMove()
bOut1 = true
// hier eure vervollständigte while-Wechselphase einsetzen
bOut1 = false
Arbeitsauftrag 4.3

Wechselphase mit fester Grenze einsetzen

  1. Wählt den sicheren Punkt, an dem der Roboter während der Wechselphase steht.
  2. Fügt eure vervollständigte while-Schleife zwischen Ein- und Ausschalten der Fertigmeldung ein.
  3. Testet zunächst mit der Grenze 1, anschließend mit 3.
  4. Kontrolliert, dass der Roboter während der Wartephase sicher steht.
Arbeitsauftrag 4.3

Parametrierte Wechselphase einsetzen

  1. Fügt die while-Phase hinter den vollständigen Einzelzyklus ein.
  2. Lasst die Fertigmeldung während der gesamten Wartephase aktiv.
  3. Testet mit nWechselzeit = 1 und danach mit nWechselzeit = 3.
  4. Kontrolliert, dass der Roboter während der Wartephase sicher steht.
Arbeitsauftrag 4.3

Wechselphase selbstständig integrieren

  1. Setzt die while-Phase hinter den vollständigen Einzelzyklus.
  2. Haltet Fertigmeldung, Zählerrücksetzung und sicheren Roboterstand eindeutig zusammen.
  3. Testet mindestens zwei verschiedene sichere Zeitwerte.
  4. Begründet die gewählte Position des Schleifenblocks.
Arbeitsauftrag 4.3

Wechselphase als wartbaren Block integrieren

  1. Integriert Fertigmeldung, Zählerinitialisierung, while-Phase und Rücksetzung als zusammenhängenden Funktionsblock.
  2. Testet mindestens zwei sichere Zeitwerte.
  3. Kontrolliert den definierten Roboter- und Ausgangszustand vor, während und nach dem Block.
  4. Dokumentiert, warum dieser Abschnitt später sinnvoll ausgelagert werden könnte.
Für alle Auftragsstufen
Die while-Wechselphase bleibt als eigener, klar erkennbarer Bestandteil im finalen Programm erhalten.
FehlerbildZuerst prüfen
Schleife endet nieZähler wird innerhalb der Schleife tatsächlich verändert
Schleife läuft kein einziges MalStartwert und Bedingung
Fertigmeldung bleibt dauerhaft anRücksetzen nach endWhile
Wartezeit ist bei jedem Set unterschiedlichZähler wird vor jeder Wechselphase auf 0 gesetzt
Roboter bewegt sich während der WartephasePosition des while-Blocks im Programm
Lernkarte 5 · for-Schleife

Den vorhandenen Set-Ablauf als Kleinserie wiederholen

Die Anzahl der benötigten Montagesets steht vor Produktionsbeginn fest. Eine for-Schleife wiederholt deshalb den bereits funktionierenden Block aus Set-Bereitstellung und while-Wechselphase.

Zählvariableaktueller Durchlauf
Grenzenfest oder parametriert
Vorarbeit behaltenwhile bleibt im Ablauf
Profilbild der fiktiven Person Mara KönigKI
Von: Mara König · FertigungsleitungBetreff: Mehrere Montagesets in einem Auftrag bereitstellen

Hallo Robotik-Team,

der Einzelzyklus und die Wartephase sind nun vorbereitet. Für einen Produktionsauftrag ist bereits vor dem Start bekannt, wie viele Montagesets benötigt werden. Genau diese Anzahl soll der RS40 nacheinander bearbeiten.

Wichtig ist, dass ihr eure bisherige while-Wechselphase nicht verwerft. Die for-Schleife soll den bereits funktionierenden Gesamtblock aus Set-Bereitstellung und Wechselphase wiederholen.

Viele Grüße
Mara König
Fertigungsleitung

while

Steuert die zeitabhängige Wechselphase.

Die Bedingung wird vor jedem Warteabschnitt geprüft; der Zähler wird im Block verändert.

for

Steuert die bekannte Anzahl vollständiger Montagesets.

Startwert, Endwert und Zählvariable stehen direkt im Schleifenkopf.

Basisbetrieb · Lückengerüst mit fester Seriengröße
for nSet = 1 to ___
  // vollständiges Set bereitstellen
  // eigene while-Wechselphase
endFor
Arbeitsauftrag 5.1

Schleifenkopf mit fester Grenze ergänzen

  1. Ergänzt die feste Endgrenze 2.
  2. Beschreibt die Funktion von nSet und Startwert 1.
  3. Bestimmt die Anzahl der Durchläufe.
  4. Erklärt, warum die vorhandene while-Phase innerhalb des Schleifenblocks liegt.
Anlagenausbau · parametriertes Lückengerüst
for nSet = ___ to ________
  // vollständiges Set bereitstellen
  // eigene while-Wechselphase
endFor
Arbeitsauftrag 5.1

Parametrierten Schleifenkopf vervollständigen

  1. Setzt Startwert und Auftragsparameter passend ein.
  2. Bestimmt die Durchlaufzahl bei nAuftrag = 3.
  3. Erklärt die automatische Veränderung von nSet.
  4. Grenzt die Aufgabe von for und while voneinander ab.
Profi-Auftrag · allgemeine Grundform
for <Zählvariable> = <Startwert> to <Endwert>
  // wiederholter Gesamtblock
endFor
Arbeitsauftrag 5.1

Variable Seriensteuerung entwickeln

  1. Übertragt eure Variablennamen und den Auftragsparameter in die Grundform.
  2. Prognostiziert den Ablauf für mindestens zwei Werte von nAuftrag.
  3. Begründet die automatische Zählung.
  4. Ordnet Set-Bereitstellung und Wechselphase korrekt in den wiederholten Block ein.
Expertenauftrag · Syntaxrahmen
for <Zählvariable> = <Startwert> to <Endwert>
  // wartbar gegliederter Auftragsablauf
endFor
Arbeitsauftrag 5.1

Seriensteuerung strukturell entwickeln

  1. Legt Zählvariable, Startwert und Auftragsparameter selbstständig fest.
  2. Gliedert Set-Bereitstellung und Wechselphase eindeutig.
  3. Prognostiziert mindestens zwei Auftragsgrößen.
  4. Erklärt, welche Blöcke für ein Unterprogramm geeignet sind.
LLM-Nutzung
Ein LLM kann die Anzahl der Schleifendurchläufe erklären oder Testfälle für verschiedene Auftragsgrößen vorschlagen. Den vollständigen Projektcode lasst ihr nicht erzeugen; Schleifengrenzen, Blockinhalt und VAL3-Syntax müssen zu eurem eigenen Programm passen.
Basisbetrieb

nSet dient ausschließlich als technisch notwendige Zählvariable der for-Schleife. Die Endgrenze 2 steht direkt im Schleifenkopf; eine Variable nAuftrag wird nicht angelegt.

Arbeitsauftrag 5.2

Zwei Sets mit fester Schleifengrenze ausführen

  1. Setzt den vollständigen Set-Ablauf einschließlich while-Wechselphase zwischen for und endFor.
  2. Testet zunächst mit der Endgrenze 1.
  3. Erhöht erst nach fehlerfreiem Test auf die feste Endgrenze 2.
  4. Prüft, ob der Wartezähler vor jeder Wechselphase erneut auf 0 gesetzt wird.
Anlagenausbau

nAuftrag speichert die Seriengröße, nSet zählt die Durchläufe. Für den Auftrag gilt nAuftrag = 3.

Arbeitsauftrag 5.2

Seriengröße als num einsetzen

  1. Legt nAuftrag und nSet als num an.
  2. Setzt nAuftrag zunächst auf 1 und testet den Gesamtblock.
  3. Erhöht nach fehlerfreiem Test auf 3.
  4. Prüft, ob die while-Wechselphase in jedem Durchlauf vollständig ausgeführt wird.
Profi-Auftrag

Die Auftragsgröße wird über nAuftrag verändert. Ihr weist mindestens zwei unterschiedliche Seriengrößen nach.

Arbeitsauftrag 5.2

Variable Kleinserie programmieren

  1. Legt Zählvariable und Auftragsparameter vom Typ num an.
  2. Setzt den vorhandenen Set- und Wechselblock in die for-Schleife.
  3. Weist mindestens die Auftragsgrößen 1 und 3 nach.
  4. Dokumentiert, welche Programmstelle für eine neue Auftragsgröße verändert wird.
Expertenauftrag

Die variable Serie wird in eine wartbare Gesamtstruktur eingebunden. Seriensteuerung, Set-Bereitstellung und Wechselphase bleiben klar voneinander abgegrenzt.

Arbeitsauftrag 5.2

Variable Serie wartbar integrieren

  1. Legt Zählvariable und Auftragsparameter vom Typ num nachvollziehbar an.
  2. Bindet Set- und Wechselblock in die Seriensteuerung ein.
  3. Weist mindestens zwei Auftragsgrößen nach.
  4. Bereitet die spätere Auslagerung mindestens eines zusammenhängenden Blocks vor.
Stufenwechsel ohne Neubeginn
Beim Wechsel vom Basisbetrieb zu einer höheren Stufe ersetzt ihr lediglich die feste Endgrenze durch den Auftragsparameter nAuftrag. Der bereits entwickelte Set-Ablauf und die while-Wechselphase bleiben erhalten.
Basisbetrieb

Simuliert zwei Sets mit fester for-Endgrenze und fester while-Zeitgrenze. Ein vorgegebenes Strukturgerüst darf genutzt werden.

Anlagenausbau

Simuliert drei Sets über nAuftrag und eine veränderbare Wechselzeit. Die Statusanzeige muss während jeder Wechselphase eindeutig sein.

Profi-Auftrag

Weist unterschiedliche Seriengrößen nach und erklärt das Zusammenspiel von for, while und den verwendeten num-Werten selbstständig.

Expertenauftrag

Programmiert eine variable Serie, strukturiert den wiederkehrenden Ablauf wartbar und bereitet mindestens ein sinnvolles Unterprogramm vor.

Vor der for-Schleife

Einmalig

BasicIO verfügbar, Ausgänge initialisieren, Startposition anfahren und Seriengröße festlegen – direkt oder über nAuftrag.

Im for-Durchlauf

Pro Set

Alle drei Teile bereitstellen, sichere Position, Fertigmeldung und vollständige while-Wechselphase.

Nach endFor

Einmalig

Statusausgänge zurücksetzen, sichere Endposition, Auftrag abgeschlossen.

Arbeitsauftrag 5.3

Eigenen Code farblich prüfen

  1. Markiert einmalige Initialisierung, wiederkehrenden Set-Block und einmaligen Abschluss in drei Farben.
  2. Markiert innerhalb des Set-Blocks zusätzlich die while-Wechselphase.
  3. Verschiebt falsch platzierte Befehle.
  4. Begründet, weshalb die Startinitialisierung nicht bei jedem Set erneut vollständig ausgeführt werden muss.
Lernkarte 6 · Programmstruktur und Status

Wiederkehrende Abläufe lesbar und wartbar aufbauen

Je größer der Auftragsumfang, desto wichtiger werden klare Programmabschnitte, eindeutige Statusanzeigen und sinnvoll abgegrenzte Unterprogramme.

StrukturierenInitialisierung, Serie, Abschluss
MeldenStatus nachvollziehbar anzeigen
ErweiternUnterprogramme sinnvoll einsetzen
Profilbild der fiktiven Person Jonas WeberKI
Von: Jonas Weber · InstandhaltungBetreff: Programmstruktur für spätere Änderungen vorbereiten

Hallo Robotik-Team,

ein Programm ist nicht schon deshalb gut, weil es einmal fehlerfrei läuft. In der Instandhaltung müssen wir schnell erkennen können, was einmalig initialisiert wird, welcher Block pro Montageset wiederholt wird und wo die Anlage in einen sicheren Endzustand wechselt.

Ordnet deshalb euren Code klar. Unterprogramme sind nur dann hilfreich, wenn sie einen verständlichen, in sich geschlossenen Zweck besitzen. Ein willkürlich ausgelagerter Einzelbefehl verbessert die Wartbarkeit nicht.

Viele Grüße
Jonas Weber
Instandhaltung

Strukturgerüst ohne Komplettlösung
// PHASE 1: sichere Initialisierung
// BasicIO, Greifer, Statusanzeigen, Startposition

// PHASE 2: Kleinserie
// for: bekannte Anzahl von Sets
//   Set bereitstellen
//   while: zeitgesteuerte Wechselphase

// PHASE 3: geordneter Abschluss
// Ausgänge zurücksetzen, sichere Endposition
Arbeitsauftrag 6.1

Gesamtcode redaktionell überarbeiten

  1. Ordnet den Code den drei Hauptphasen zu.
  2. Kommentiert technische Absichten, nicht jede einzelne Klammer.
  3. Entfernt doppelte Bewegungen und widersprüchliche Ausgangsbefehle.
  4. Verwendet verständliche Punkt- und Variablennamen.
  5. Prüft, ob for und while ihre unterschiedlichen Aufgaben behalten.
Sinnvoll

setBereitstellen()

Der vollständige Ablauf für Montageblock und zwei Distanzstücke wird aus dem Hauptprogramm ausgelagert.

Ebenfalls möglich

traegerwechselWarten()

Fertigmeldung, Zählerinitialisierung und while-Wartephase bilden einen klaren Funktionsblock.

Unterprogramm im Hauptprogramm aufrufen
call setBereitstellen()

Ein angelegtes Unterprogramm wird nicht automatisch ausgeführt. Mit dem Befehl call ruft ihr es an der gewünschten Stelle im Hauptprogramm auf. Nach dem Ende des Unterprogramms wird der Hauptablauf in der nächsten Zeile fortgesetzt.

Nicht künstlich zerlegen
Ein Unterprogramm mit nur einer beliebigen Codezeile verbessert die Struktur nicht automatisch. Zweck, Aufruf mit call und Rückkehr müssen von jedem Teammitglied erklärt werden können.
Basisbetrieb

Unterprogramme sind nicht erforderlich. Markiert aber, welcher zusammenhängende Block sich grundsätzlich auslagern ließe.

Anlagenausbau

Unterprogramme sind optional. Das Hauptprogramm muss auch ohne Auslagerung klar lesbar bleiben.

Profi-Auftrag

Ein sinnvolles Unterprogramm ist eine mögliche Erweiterung. Es darf keine nicht verstandene Komplettlösung ersetzen.

Expertenauftrag

Mindestens ein sinnvoll abgegrenztes Unterprogramm gehört zum Auftrag. Wählt den Block so, dass die Hauptstruktur tatsächlich übersichtlicher wird.

Basisbetrieb

Zyklusstatus und Fertigmeldung besitzen zu jeder Zeit einen eindeutigen Zustand. Zwei Sets werden mit festen Werten simuliert.

Anlagenausbau

Drei Sets werden über nAuftrag ausgeführt. Die Fertigmeldung kennzeichnet jede vollständige while-Wechselphase.

Profi-Auftrag

Unterschiedliche Seriengrößen werden nachgewiesen. Variablen, Schleifen und Statuszustände werden selbstständig begründet.

Expertenauftrag

Variable Serie, eindeutige Statuslogik, mindestens ein Unterprogramm und begründete Bewegungsoptimierung bilden eine wartbare Gesamtlösung.

Arbeitsauftrag 6.2

Pflichtumfang abschließend prüfen

  1. Vergleicht das Programm mit der Beschreibung eurer gewählten Stufe.
  2. Prüft Start-, Zyklus-, Wechsel- und Endzustand aller Ausgänge.
  3. Entfernt ungenutzte Variablen und veraltete Testbefehle.
  4. Lasst ein anderes Teammitglied for, while und gegebenenfalls das Unterprogramm erklären.
Lernkarte 7 · Simulation und Freigabe

Die komplette Bereitstellung vor dem Realtest nachweisen

Eine fehlerfreie Einzelbewegung reicht nicht. Vor der Freigabe muss der vollständige Auftragsumfang einschließlich Schleifen, Greiferzuständen und Statusmeldungen nachvollziehbar funktionieren.

Vollständig simulierengesamter Auftragsumfang
ErklärenCode und Ablauf im Fachgespräch
Freigeben lassenDokument und Lehrkraft
PrüfaspektErwartungNachweis
Bahnenkeine Kollision, horizontale Transporte auf SicherheitsfahrhöheBahnzeichnung / Bildschirmaufnahme
GreiferÖffnen und Schließen in korrekter ReihenfolgeI/O-Beobachtung
Set1 Montageblock + 2 Distanzstücke, richtige AblageplätzeEndansicht
Schleifegenau die geforderte Zahl von DurchläufenZählerbeobachtung
StatusZyklus und Fertigmeldung passend zum AblaufI/O-Protokoll
Endzustandsichere Position und definierte AusgängeEndkontrolle
Arbeitsauftrag 7.1

Simulation abnahmebereit machen

  1. Testet zunächst mit einem Set und reduzierter Simulationsgeschwindigkeit.
  2. Erhöht erst danach auf den vollständigen Umfang eurer Stufe.
  3. Protokolliert mindestens einen gefundenen Fehler und die begründete Korrektur.
  4. Sichert die für den Meilenstein benötigten Nachweise.
Vorführen

Live in der Simulation

  • Startzustand zeigen
  • einen vollständigen Set-Zyklus verfolgen
  • Schleifenwiederholung erklären
  • Endzustand zeigen
Erklären

Mögliche Fachfragen

  • Warum movel beim Absenken?
  • Warum delay() am Greifer?
  • Warum while oder for?
  • Wo werden Ausgänge zurückgesetzt?
Individuelle Leistung
Ein funktionierendes Teamprogramm ersetzt nicht die eigene Erklärung. Die Aufgabenbereiche sollen im Projektverlauf wechseln; Programmierung, Dokumentation, Recherche und Erprobung werden nicht dauerhaft einzelnen Personen zugeordnet.
Upload
Ladet die fortgeschriebene technische Teamdokumentation mit Ablaufplan, I/O-Tabelle, Codeauszügen und Simulationsnachweisen hoch.
Freigabeformular · Projekt 2
0 von 6 Prüfpunkten bestätigt.

Später erneut erklären

Beantworte den folgenden Fall zunächst allein und ohne Unterlagen. Begründe deine Entscheidung; vergleiche anschließend mit einer zweiten Person.

Die Rückmeldung zum abgeschlossenen Wechsel kommt verspätet. Welche Beobachtung brauchst du vor dem nächsten Durchlauf?

Nach dem eigenen Versuch: Begründung vergleichen

Prüfe den tatsächlichen Ablaufzustand und die vereinbarte Rückmeldung. Der nächste Durchlauf darf nicht allein wegen einer abgelaufenen Schätzzeit starten. Dokumentiere Erwartung, beobachteten Signalverlauf und die begründete Warte-/Wiederanlaufbedingung.

Verbessere genau eine unklare Stelle in deinem vorhandenen Hefter. Erkläre die Entscheidung zu Beginn der nächsten Unterrichtseinheit erneut ohne Vorlage und ändere dabei eine Randbedingung. Halte fest, was du nun selbst begründen kannst und welche Frage noch offen ist.

Lernkarte 8 · Realtest und Projektabnahme

Simulation und reale Bereitstellung miteinander vergleichen

Im Realtest zeigt sich, ob Punktlagen, Greiferzeiten und Bauteiltoleranzen auch außerhalb der idealisierten Simulation passen.

Reduziert startenerster Lauf mit höchstens 10 %
BeobachtenGreifer, Bauteillage und Abstände
AbnehmenErgebnis und Dokumentation abschließen
RS40-Glaskasten
Bei geöffneter Schiebetür wird der Programmablauf angehalten. Manuelles Bewegen kann zum Einrichten möglich bleiben. Für den automatischen Programmlauf ist die Zelle geschlossen; niemand greift in den Arbeitsraum.
Arbeitsauftrag 8.1

Vorstartkontrolle gemeinsam durchführen

  1. Prüft Aufnahmebehälter, Bauteilorientierung und Werkstückträger.
  2. Kontrolliert, dass keine losen Gegenstände in der Zelle liegen.
  3. Ladet ausschließlich die freigegebene Programmversion.
  4. Stellt höchstens 10 % Geschwindigkeit ein.
  5. Klärt Beobachtungspositionen und Not-Halt-Zugänglichkeit.
BeobachtungFrageMögliche Korrektur
Greifer sitzt nicht mittigStimmt der Greifpunkt zur realen Bauteillage?Punkt nach Freigabe neu einlernen
Bauteil verrutscht beim AnhebenIst Greifer geschlossen und Reaktionszeit ausreichend?Signalfolge / Wartezeit prüfen
Bauteil kollidiert mit TrägerStimmen Ablagehöhe und lineare Absenkung?Ablagepunkt und Höhe korrigieren
Teil bleibt am GreiferWurde Öffnen vollständig ausgeführt?Ausgänge und Öffnungszeit prüfen
Simulation und Realität weichen abIst die reale Zellgeometrie identisch abgebildet?Modell / Punkte dokumentiert anpassen
Arbeitsauftrag 8.2

Ein Set abnehmen lassen

  1. Führt zunächst nur einen vollständigen Set-Zyklus aus.
  2. Stoppt bei jeder unsicheren oder unklaren Bewegung.
  3. Dokumentiert Abweichung, Ursache und Korrektur.
  4. Erhöht Geschwindigkeit oder Serienumfang nur nach fehlerfreiem Lauf und Freigabe.
Profilbild der fiktiven Person Selin ArslanKI
Von: Selin Arslan · QualitätssicherungBetreff: Abnahmekriterien für das Montageset

Hallo Robotik-Team,

für die Abnahme zählt nicht allein, dass der Roboter ohne Fehlermeldung durchläuft. Jedes Set muss vollständig sein, die Teile müssen in den vorgesehenen Aufnahmen liegen und dürfen keine sichtbaren Schäden durch Greifen oder Ablegen aufweisen.

Bitte vergleicht den realen Ablauf mit eurer Simulation und haltet Abweichungen nachvollziehbar fest. Ein langsamer, reproduzierbarer Prozess ist wertvoller als eine schnelle, aber unzuverlässige Bewegung.

Viele Grüße
Selin Arslan
Qualitätssicherung

Arbeitsauftrag 8.3

Abnahmeprotokoll erstellen

  1. Prüft Vollständigkeit: 1 Montageblock und 2 Distanzstücke.
  2. Prüft Lage und Orientierung aller Teile.
  3. Prüft sichtbare Beschädigungen oder unsichere Greifspuren.
  4. Vergleicht reale Zykluszeit und beobachteten Ablauf mit der Simulation.
  5. Formuliert eine eindeutige Abnahmeentscheidung mit eventuellen Restpunkten.
Finaler Upload
Ladet Gesamtdokumentation, Abnahmeprotokoll und vollständige SRS-Projektdateien hoch. Projekt 2 bildet die Grundlage der zweiten Quartalsnote.
Als Nächstes: Projekt 3 · MaterialflussIn Projekt 3 wird die offene Zeitsteuerung durch Eingangssignale ersetzt. Der Roboter reagiert dann auf bereitstehende Teile, Prüfergebnisse und Störungen.
Projekt 3 öffnen
VAL3-Hilfe · Projekt 2

Syntax, E/A-Einrichtung und typische Fehler gezielt nachschlagen

Die Kurzreferenz unterstützt beim Arbeiten, ersetzt aber nicht die integrierte Hilfe der verwendeten Robotics-Suite-Version.

BasicIOAusgänge verfügbar machen
GreiferZustände und Wartezeit
Schleifenwhile und for
  1. Beim Anlegen der Zelle unter E/As BIO auswählen.
  2. Im Projekt Startseite → E/A-Verwaltung → BasicIO → Importieren öffnen.
  3. Zielprojekt auswählen.
  4. Namenskonvention mit der Lehrkraft prüfen; derzeit old IO library format.
Controllerabhängig
Bei einem neueren Controller kann eine andere Namenskonvention erforderlich sein.
// öffnen
bOut14 = false
bOut15 = true
delay(2)

// schließen
bOut15 = false
bOut14 = true
delay(2)

Der Ausgang bleibt nach delay(2) in seinem zuletzt gesetzten Zustand. delay wartet nur; es setzt nichts zurück.

<Zähler> = <Startwert>
while <Bedingung>
  // wiederholte Anweisungen
  // Zähler verändern
endWhile
Typischer Fehler
Bei einer zählenden Schleife muss der Zähler vor dem Block initialisiert und im Block so verändert werden, dass die Bedingung irgendwann falsch wird.
for <Zählvariable> = <Startwert> to <Endwert>
  // wiederholte Anweisungen
endFor

Die for-Schleife verändert ihre Zählvariable automatisch. In eurem Projekt wiederholt sie den vollständigen Set- und Wechselablauf.

BefehlTypischer Einsatz
movej(..., flange, ...)Positionieren im freien Raum auf Sicherheitsfahrhöhe
movel(..., flange, ...)geradliniges Absenken und Anheben am Bauteil
waitEndMove()vor Greiferaktion oder folgender kritischer Bewegung das Bewegungsende abwarten

In Projekt 2 werden beispielsweise nWechselzeit, nWartezaehler, nAuftrag und nSet als numerische Variablen benötigt. Prüft Gültigkeitsbereich und Anfangswert in eurer Projektumgebung.

Ein Unterprogramm eignet sich für einen klar abgegrenzten, mehrfach genutzten Ablauf, zum Beispiel setBereitstellen(). Im Hauptprogramm wird es mit call aufgerufen:

call setBereitstellen()

Nach dem Ende des Unterprogramms läuft das aufrufende Programm in der nächsten Zeile weiter. Prüft in der Stäubli-Hilfe, wie das Programm angelegt wird. Verwendet keine Parameter oder Rückgabewerte, die ihr nicht erklären könnt.

  1. Fehlermeldung und aktuelle Programmstelle sichern.
  2. Prüfen, ob der Fehler in Bewegung, Greifer, while, for oder Statussignal liegt.
  3. Nur den betroffenen Teil mit Seriengröße 1 testen.
  4. Punktnamen, flange und Sicherheitsfahrhöhe prüfen.
  5. I/O-Zustände vor und nach der Greiferaktion prüfen.
  6. Schleifenbedingung, Zählvariable und Blockgrenzen prüfen.
  7. Nach jeder Korrektur erneut einzeln simulieren.
Dokumentation · Projekt 2

Eigene Lernentwicklung und technischen Teamstand sichtbar machen

Die bekannte Dokumentationsstruktur wird fortgeführt. Projekt 2 ergänzt vor allem Ablaufplan, I/O-Zustände, Schleifenlogik und Abnahme des Montagesets.

Individuelljede Unterrichtseinheit
Teamnur bei drei Meilensteinen
QuellenStäubli und LLM transparent

Team_Nachname_Robotik.pdf

  1. Arbeitsziel der Unterrichtseinheit
  2. eigener Beitrag
  3. Ergebnis oder Nachweis
  4. Quellen- und LLM-Nachweis
  5. nächster Schritt
Aufgaben wechseln
Programmierung, Dokumentation, Recherche und Erprobung werden nicht dauerhaft einzelnen Personen zugeordnet. Haltet fest, welchen Bereich ihr in dieser Einheit tatsächlich bearbeitet habt.

Team_Robotik_Gesamtdokumentation.pdf

  • Auftrag, Setzusammensetzung und gewählte Stufe
  • Stationsskizze, Punktliste und Sicherheitsfahrhöhen
  • Ablauf- und I/O-Zustandstabelle
  • Greiferlogik und ermittelte Wartezeiten
  • Zusammenspiel von for-Serie und while-Wechselphase
  • relevante, erklärte Codeausschnitte
  • Simulationsnachweise und Fehlerkorrekturen
  • Sicherheitsfreigabe, Realtest und Abnahme
MeilensteinUpload
Ablauf- und I/O-Planung abgeschlossenaktueller Teamstand mit Ablaufplan, Punktliste und Zustandstabelle
Simulation vollständig und abnahmebereitfortgeschriebener Stand mit Codeauszügen, Schleifennachweis und Simulation
Projekt abgenommenfinale Gesamtdokumentation, Abnahmeprotokoll und vollständige SRS-Projektdateien
Stäubli-Quelle

Beispiel

Integrierte Hilfe der Stäubli Robotics Suite, Suchbegriff „for“ oder „digital output“, aufgerufen am …, relevante Aussage in eigenen Worten.

LLM-Nachweis

Beispiel

Frage: … · Vorschlag: … · mit Stäubli-Hilfe / Simulation geprüft: … · übernommen oder korrigiert: …

Auch ohne KI
Wenn kein LLM genutzt wurde, tragt „Keine KI genutzt“ ein.