10. Verwendung von Roboter-WebAPP-Programmen

10.1. Einstellen des standardmäßig beim Start automatisch zu ladenden Arbeitsprogramms

1/**
2* @brief Einstellen des standardmäßig beim Start automatisch zu ladenden Arbeitsprogramms
3* @param [in] flag 0 - Standardprogramm nicht automatisch beim Start laden, 1 - Standardprogramm automatisch beim Start laden
4* @param [in] program_name Name und Pfad des Arbeitsprogramms, z.B. "/fruser/movej.lua", wobei "/fruser/" der feste Pfad für QX und "/usr/local/etc/controller/lua/" der feste Pfad für LA ist
5* @return Fehlercode
6*/
7int LoadDefaultProgConfig(byte flag, string program_name);

10.2. Angegebenes Arbeitsprogramm laden

1/**
2* @brief Angegebenes Arbeitsprogramm laden
3* @param [in] program_name Name und Pfad des Arbeitsprogramms, z.B. "/fruser/movej.lua", wobei "/fruser/" der feste Pfad für QX und "/usr/local/etc/controller/lua/" der feste Pfad für LA ist
4* @return Fehlercode
5*/
6int ProgramLoad(string program_name);

10.3. Name des geladenen Arbeitsprogramms abrufen

1/**
2* @brief Name des geladenen Arbeitsprogramms abrufen
3* @param [out] program_name Name und Pfad des Arbeitsprogramms, z.B. "/fruser/movej.lua"
4* @return Fehlercode
5*/
6int GetLoadedProgram(ref string program_name);

10.4. Aktuelle Zeilennummer der Roboter-Arbeitsprogrammausführung abrufen

1/**
2* @brief Aktuelle Zeilennummer der Roboter-Arbeitsprogrammausführung abrufen
3* @param [out] line Zeilennummer
4* @return Fehlercode
5*/
6int GetCurrentLine(ref int line);

10.5. Aktuell geladenes Arbeitsprogramm ausführen

1/**
2* @brief Aktuell geladenes Arbeitsprogramm ausführen
3* @return Fehlercode
4*/
5int ProgramRun();

10.6. Aktuell laufendes Arbeitsprogramm pausieren

1/**
2* @brief Aktuell laufendes Arbeitsprogramm pausieren
3* @return Fehlercode
4*/
5int ProgramPause();

10.7. Aktuell pausiertes Arbeitsprogramm fortsetzen

1/**
2* @brief Aktuell pausiertes Arbeitsprogramm fortsetzen
3* @return Fehlercode
4*/
5int ProgramResume();

10.8. Aktuell laufendes Arbeitsprogramm beenden

1/**
2* @brief Aktuell laufendes Arbeitsprogramm beenden
3* @return Fehlercode
4*/
5int ProgramStop();

10.9. Ausführungsstatus des Roboter-Arbeitsprogramms abrufen

1/**
2* @brief Ausführungsstatus des Roboter-Arbeitsprogramms abrufen
3* @param [out] state 1 - Programm gestoppt oder kein Programm läuft, 2 - Programm läuft, 3 - Programm pausiert
4* @return Fehlercode
5*/
6int GetProgramState(ref byte state);

10.10. Codebeispiel für Roboter-LUA-Programmoperationen

 1private void btnWebApp_Click(object sender, EventArgs e)
 2{
 3    string program_name = "/fruser/Text1.lua";
 4    string loaded_name = "";
 5    byte state=0;
 6    int line=0;
 7
 8    robot.Mode(0);
 9    robot.LoadDefaultProgConfig(0, program_name);
10    robot.ProgramLoad(program_name);
11    robot.ProgramRun();
12    Thread.Sleep(1000);
13    robot.ProgramPause();
14    robot.GetProgramState(ref state);
15    Console.WriteLine("program state:{0}\n", state);
16    robot.GetCurrentLine(ref line);
17    Console.WriteLine("current line:{0}\n", line);
18    robot.GetLoadedProgram(ref loaded_name);
19    Console.WriteLine("program name:{0}\n", loaded_name);
20    Thread.Sleep(1000);
21    robot.ProgramResume();
22    Thread.Sleep(1000);
23    robot.ProgramStop();
24    Thread.Sleep(1000);
25}

10.11. Lua-Datei herunterladen

Neu in Version C#SDK-v1.0.5.

1/**
2* @brief Lua-Datei herunterladen
3* @param [in] fileName Name der herunterzuladenden Arbeitsprogrammdatei, z.B. "test.lua" oder "test.tar.gz"
4* @param [in] savePath Lokaler Pfad zum Speichern der Arbeitsprogrammdatei, z.B. "D://Down/"
5* @return Fehlercode
6*/
7public int LuaDownLoad(string fileName, string savePath);

10.12. Lua-Datei hochladen

Neu in Version C#SDK-v1.0.5.

1/**
2* @brief Lua-Datei hochladen
3* @param [in] filePath Lokaler Pfad zur Arbeitsprogrammdatei, z.B. ".../test.lua" oder ".../test.tar.gz"
4* @param [out] errStr Fehlermeldung (falls vorhanden)
5* @return Fehlercode
6*/
7public int LuaUpload(string filePath, ref string errStr);

10.13. Lua-Datei löschen

Neu in Version C#SDK-v1.0.5.

1/**
2* @brief Lua-Datei löschen
3* @param [in] fileName Name der zu löschenden Arbeitsprogrammdatei, z.B. "test.lua"
4* @return Fehlercode
5*/
6public int LuaDelete(string fileName);

10.14. Namen aller aktuellen Lua-Dateien abrufen

Neu in Version C#SDK-v1.0.5.

1/**
2* @brief Namen aller aktuellen Lua-Dateien abrufen
3* @param [out] luaNames Liste der Namen der Arbeitsprogrammdateien
4* @return Fehlercode
5*/
6public int GetLuaList(ref List<string> luaNames);

10.15. Codebeispiel für Roboter-LUA-Datei-Upload/Download

Neu in Version C#SDK-v1.0.5.

 1private void btnUploadLua_Click(object sender, EventArgs e)
 2{
 3    int rtn;
 4    List<string> luaNames = new List<string>();
 5    rtn = robot.GetLuaList(ref luaNames);
 6    Console.WriteLine("res is: {0}", rtn);
 7    Console.WriteLine("size is: {0}", luaNames.Count);
 8    foreach (var name in luaNames)
 9    {
10    Console.WriteLine(name);
11    }
12    rtn = robot.LuaDownLoad("TT.lua", "D://zDOWN/");
13    Console.WriteLine("LuaDownLoad rtn is {0}", rtn);
14    string errStr = "";
15    Thread.Sleep(2000);
16
17    rtn = robot.LuaUpload("D://zUP/airlab.lua", ref errStr);
18    Console.WriteLine("LuaUpload rtn is {0}", errStr);
19    Thread.Sleep(2000);
20    rtn = robot.LuaDelete("TT.lua");
21    Console.WriteLine("LuaDelete rtn is {0}", rtn);
22}