DobotStudio Pro kann mehrere Lua-Skripte gleichzeitig ausführen. Dieser Beitrag zeigt, wie Sie diese Parallelisierung nutzen, um digitale Eingänge (DI-Signale) unabhängig vom Hauptprogramm zu überwachen, ideal für Logging und Ereignisreaktionen in der Roboterautomation.
KI-generiert
Parallele Tasks in DobotStudio Pro
DobotStudio Pro erkennt Tasks über ein Dateinamenschema: src0.lua ist das Hauptprogramm (Task 0), src1.lua, src2.lua und weitere laufen als parallele Tasks. Alle Tasks laufen unabhängig und gleichzeitig, zeitkritische Abläufe im Hauptprogramm werden nicht blockiert.
DI-Überwachung als paralleler Task
Der folgende Task überwacht den Eingang DI1 kontinuierlich auf Zustandsänderungen und protokolliert jede Flanke. Die Prüfung erfolgt alle 10 Millisekunden:
log("Starte DI-Ueberwachung...")
local last = nil
while true do
local current = DI(1)
if last ~= nil and current ~= last then
local state = current == 1 and "EIN" or "AUS"
log("DI1 Status geaendert: " .. state)
end
last = current
Sleep(10) -- alle 10ms pruefen
end
Fazit
Parallele Lua-Skripte ermöglichen die Dauerüberwachung von Signalen, ohne das Hauptprogramm zu beeinträchtigen. In Kombination mit zentralem Logging, etwa über unseren Log-Server Leif, entsteht daraus ein vollständiges Monitoring für Ihre Fertigung.
Häufige Fragen
Wie führe ich mehrere Lua-Skripte gleichzeitig auf einem Dobot aus?
Über das Dateinamenschema von DobotStudio Pro: src0.lua ist das Hauptprogramm, src1.lua, src2.lua usw. starten als parallele Tasks und laufen unabhängig voneinander.
Wie lese ich einen digitalen Eingang in Dobot Lua?
Mit der Funktion DI(n), z. B. DI(1) für Eingang 1. Der Rückgabewert ist 1 (EIN) oder 0 (AUS). In einer Schleife mit Sleep(10) lässt sich der Eingang kontinuierlich überwachen.