10. Użytkowanie programu WebAPP robota

10.1. Ustawianie automatycznego ładowania domyślnego programu roboczego przy starcie

1/**
2* @brief  Ustawianie automatycznego ładowania domyślnego programu roboczego przy starcie
3* @param  [in] flag  0-nie ładuj automatycznie domyślnego programu przy starcie, 1-ładuj automatycznie domyślny program przy starcie
4* @param  [in] program_name Nazwa i ścieżka programu roboczego, np. "/fruser/movej.lua", gdzie "/fruser/" to stała ścieżka dla QX, "/usr/local/etc/controller/lua/" to stała ścieżka dla LA
5* @return  Kod błędu
6*/
7int LoadDefaultProgConfig(int flag, String program_name);

10.2. Ładowanie określonego programu roboczego

1/**
2* @brief  Ładowanie określonego programu roboczego
3* @param  [in] program_name Nazwa i ścieżka programu roboczego, np. "/fruser/movej.lua", gdzie "/fruser/" to stała ścieżka dla QX, "/usr/local/etc/controller/lua/" to stała ścieżka dla LA
4* @return  Kod błędu
5*/
6int ProgramLoad(String program_name);

10.3. Pobieranie nazwy załadowanego programu roboczego

1/**
2* @brief  Pobieranie nazwy załadowanego programu roboczego
3* @param  [out] program_name program_name[0]: nazwa i ścieżka programu roboczego, np. "/fruser/movej.lua", gdzie "/fruser/" to stała ścieżka dla QX, "/usr/local/etc/controller/lua/" to stała ścieżka dla LA
4* @return  Kod błędu
5*/
6int GetLoadedProgram(String[] program_name);

10.4. Pobieranie bieżącego numeru linii wykonania programu roboczego robota

1/**
2* @brief  Pobieranie bieżącego numeru linii wykonania programu roboczego robota
3* @param  [out] List[0]: kod błędu; List[1]: int line numer linii
4* @return  Kod błędu
5*/
6List<Integer> GetCurrentLine();

10.5. Uruchamianie bieżącego załadowanego programu roboczego

1/**
2* @brief  Uruchamianie bieżącego załadowanego programu roboczego
3* @return  Kod błędu
4*/
5int ProgramRun();

10.6. Wstrzymywanie bieżącego uruchomionego programu roboczego

1/**
2* @brief  Wstrzymywanie bieżącego uruchomionego programu roboczego
3* @return  Kod błędu
4*/
5int PauseMotion();

10.7. Wznawianie bieżącego wstrzymanego programu roboczego

1/**
2* @brief  Wznawianie bieżącego wstrzymanego programu roboczego
3* @return  Kod błędu
4*/
5int ResumeMotion();

10.8. Zatrzymywanie bieżącego uruchomionego programu roboczego

1/**
2* @brief  Zatrzymywanie bieżącego uruchomionego programu roboczego
3* @return  Kod błędu
4*/
5int StopMotion();

10.9. Pobieranie stanu wykonania programu roboczego robota

1/**
2* @brief  Pobieranie stanu wykonania programu roboczego robota
3* @param   [out] state 1-program zatrzymany lub brak uruchomionego programu, 2-program działa, 3-program wstrzymany
4* @return  Kod błędu
5*/
6public int GetProgramState(int[] state)

10.10. Przykład kodu operacji na programie LUA robota

 1public static int TestLuaOp(Robot robot)
 2{
 3    String program_name = "Text1.lua";
 4    String[] loaded_name = new String[]{""};
 5    int[] state=new int[]{0};
 6    List<Integer> line=new ArrayList<>();
 7
 8    robot.Mode(0);
 9    robot.LoadDefaultProgConfig(0, program_name);
10    robot.ProgramLoad(program_name);
11    robot.ProgramRun();
12    robot.Sleep(1000);
13    robot.ProgramPause();
14    robot.GetProgramState(state);
15    System.out.println("program state:"+ state[0]);
16    line=robot.GetCurrentLine();
17    System.out.println("current line:"+ line);
18    robot.GetLoadedProgram(loaded_name);
19    System.out.println("program name:"+ loaded_name[0]);
20    robot.Sleep(1000);
21    robot.ProgramResume();
22    robot.Sleep(1000);
23    robot.ProgramStop();
24    robot.Sleep(1000);
25
26    robot.CloseRPC();
27    return 0;
28}

10.11. Pobieranie programu LUA

1/**
2* @brief Pobieranie programu roboczego
3* @param [in] fileName Nazwa pliku lua do pobrania "test.lua" lub "test.tar.gz"
4* @param [in] savePath Lokalna ścieżka zapisu pliku "D://Down/"
5* @return Kod błędu
6*/
7int LuaDownLoad(String fileName, String savePath);

10.12. Usuwanie programu LUA

1/**
2* @brief Usuwanie programu roboczego
3* @param [in] fileName Nazwa programu roboczego do usunięcia "test.lua"
4* @return Kod błędu
5*/
6int LuaDelete(String fileName);

10.13. Pobieranie nazw wszystkich bieżących plików lua

1/**
2* @brief Pobieranie nazw wszystkich bieżących plików lua
3* @param [out] luaNames Lista nazw programów roboczych
4* @return Kod błędu
5*/
6int GetLuaList(List<String> luaNames);

10.14. Przesyłanie programu LUA

1/**
2* @brief Przesyłanie programu roboczego
3* @param [in] filePath Lokalna ścieżka pliku lua ".../test.lua" lub ".../test.tar.gz"
4* @param [out] errStr Informacja o błędzie
5* @return Kod błędu
6*/
7int LuaUpload(String filePath, String errStr);

10.15. Przykład kodu przesyłania i pobierania pliku LUA robota

 1public static int TestLUAUpDownLoad(Robot robot)
 2{
 3    List<String> luaNames=new ArrayList<>();
 4    int rtn = robot.GetLuaList(luaNames);
 5    System.out.println("res is: "+rtn);
 6    System.out.println("size is: "+luaNames.size());
 7    for (int it =1; it < luaNames.size(); it++)
 8    {
 9        System.out.println(luaNames.get(it));
10    }
11
12    rtn = robot.LuaDownLoad("test.lua", "D://zDOWN/");
13    System.out.println("LuaDownLoad rtn is:"+rtn);
14
15    rtn = robot.LuaUpload("D://zUP/XG.lua","");
16    System.out.println("LuaUpload rtn is:"+ rtn);
17
18    rtn = robot.LuaDelete("XG.lua");
19    System.out.println("LuaDelete rtn is:"+ rtn);
20
21    return 0;
22}