10. Utilizzo del Programma WebAPP del Robot

10.1. Impostazione Caricamento Automatico Programma Lavoro Predefinito all’Accensione

1/**
2* @brief  Imposta il caricamento automatico del programma lavoro predefinito all'accensione
3* @param  [in] flag  0-Non carica automaticamente il programma predefinito all'accensione, 1-Carica automaticamente il programma predefinito all'accensione
4* @param  [in] program_name Nome e percorso del programma lavoro, es. "/fruser/movej.lua", dove "/fruser/" è il percorso fisso per QX, "/usr/local/etc/controller/lua/" è il percorso fisso per LA
5* @return  Codice errore
6*/
7int LoadDefaultProgConfig(int flag, String program_name);

10.2. Caricamento Programma Lavoro Specificato

1/**
2* @brief  Carica il programma lavoro specificato
3* @param  [in] program_name Nome e percorso del programma lavoro, es. "/fruser/movej.lua", dove "/fruser/" è il percorso fisso per QX, "/usr/local/etc/controller/lua/" è il percorso fisso per LA
4* @return  Codice errore
5*/
6int ProgramLoad(String program_name);

10.3. Ottenimento Nome Programma Lavoro Caricato

1/**
2* @brief  Ottiene il nome del programma lavoro caricato
3* @param  [out] program_name program_name[0]: Nome e percorso del programma lavoro, es. "/fruser/movej.lua", dove "/fruser/" è il percorso fisso per QX, "/usr/local/etc/controller/lua/" è il percorso fisso per LA
4* @return  Codice errore
5*/
6int GetLoadedProgram(String[] program_name);

10.4. Ottenimento Numero di Riga Esecuzione Corrente Programma Lavoro Robot

1/**
2* @brief  Ottiene il numero di riga in esecuzione del programma lavoro corrente del robot
3* @param  [out] List[0]: Codice errore; List[1]: int line numero di riga
4* @return  Codice errore
5*/
6List<Integer> GetCurrentLine();

10.5. Esecuzione Programma Lavoro Corrente Caricato

1/**
2* @brief  Esegue il programma lavoro corrente caricato
3* @return  Codice errore
4*/
5int ProgramRun();

10.6. Sospensione Programma Lavoro Corrente in Esecuzione

1/**
2* @brief  Sospende il programma lavoro corrente in esecuzione
3* @return  Codice errore
4*/
5int PauseMotion();

10.7. Ripresa Programma Lavoro Corrente Sospeso

1/**
2* @brief  Riprende il programma lavoro corrente sospeso
3* @return  Codice errore
4*/
5int ResumeMotion();

10.8. Terminazione Programma Lavoro Corrente in Esecuzione

1/**
2* @brief  Termina il programma lavoro corrente in esecuzione
3* @return  Codice errore
4*/
5int StopMotion();

10.9. Ottenimento Stato di Esecuzione Programma Lavoro Robot

1/**
2* @brief  Ottiene lo stato di esecuzione del programma lavoro del robot
3* @param   [out] state 1-Programma fermo o nessun programma in esecuzione, 2-Programma in esecuzione, 3-Programma sospeso
4* @return  Codice errore
5*/
6public int GetProgramState(int[] state);

10.10. Esempio di Codice per Operazioni Programmi LUA Robot

 1public static int TestLuaOp(Robot robot)
 2{
 3    String program_name = "/fruser/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. Download Programma Lua

1/**
2* @brief Scarica il programma lavoro
3* @param [in] fileName Nome del file Lua da scaricare "test.lua" o "test.tar.gz"
4* @param [in] savePath Percorso locale di salvataggio file "D://Down/"
5* @return Codice errore
6*/
7int LuaDownLoad(String fileName, String savePath);

10.12. Eliminazione Programma Lua

1/**
2* @brief Elimina il programma lavoro
3* @param [in] fileName Nome del programma lavoro da eliminare "test.lua"
4* @return Codice errore
5*/
6int LuaDelete(String fileName);

10.13. Ottenimento Nomi Tutti i File Lua Correnti

1/**
2* @brief Ottiene i nomi di tutti i file Lua correnti
3* @param [out] luaNames Lista nomi programmi lavoro
4* @return Codice errore
5*/
6int GetLuaList(List<String> luaNames);

10.14. Upload Programma Lua

1/**
2* @brief Carica il programma lavoro
3* @param [in] filePath Percorso del file Lua locale ".../test.lua" o ".../test.tar.gz"
4* @param [out] errStr Informazione errore
5* @return Codice errore
6*/
7int LuaUpload(String filePath, String errStr);

10.15. Esempio di Codice per Upload/Download File LUA Robot

 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}