public static Dictionary <string, List <string[]> > readProgramData(bool run, string[] controllerData) { List <string[]> progData = new List <string[]> { }; ///List<string[]> currData = new List<string[]> { }; if (run == true) { Guid systemId = new Guid(controllerData[1]); Controller controller = new Controller(systemId); controller.Logon(UserInfo.DefaultUser); Task newTask = controller.Rapid.GetTask("T_ROB1"); using (Mastership.Request(controller.Rapid)) { RapidSymbolSearchProperties sProp = RapidSymbolSearchProperties.CreateDefault(); sProp.Types = SymbolTypes.Data; RapidSymbol[] progDatas = newTask.GetModule("MainModule").SearchRapidSymbol(sProp); foreach (RapidSymbol rs in progDatas) { RapidData rd = controller.Rapid.GetTask("T_ROB1").GetModule("MainModule").GetRapidData(rs); if ((rd.Value is ToolData) | (rd.Value is WobjData)) { string[] eachProg = new string[3] { rd.RapidType, rd.Name, rd.Value.ToString() }; progData.Add(eachProg); } } /* * RapidSymbol[] currDatas = newTask.GetModule("MainModule").SearchRapidSymbol(sProp); * foreach (RapidSymbol rs in currDatas) * { * RapidData rd = controller.Rapid.GetTask("T_ROB1").GetModule("MainModule").GetRapidData(rs); * if ((rd.Value is ToolData) | (rd.Value is WobjData)) * { * string[] eachCurr = new string[3] * { * rd.RapidType, * rd.Name, * rd.Value.ToString() * }; * currData.Add(eachCurr); * } * } */ } } return(new Dictionary <string, List <string[]> > { { "programData", progData } /*,{"currentData", currData}*/ }); }
public static Dictionary <string, List <string> > readTargetData(bool run, string[] controllerData) { List <string> rTargets = new List <string>(); List <string> jTargets = new List <string>(); if (run == true) { Guid systemId = new Guid(controllerData[1]); Controller controller = new Controller(systemId); controller.Logon(UserInfo.DefaultUser); Task newTask = controller.Rapid.GetTask("T_ROB1"); using (Mastership.Request(controller.Rapid)) { RapidSymbolSearchProperties sProp = RapidSymbolSearchProperties.CreateDefault(); sProp.Types = SymbolTypes.Data; RapidSymbol[] datas = newTask.GetModule("MainModule").SearchRapidSymbol(sProp); foreach (RapidSymbol rs in datas) { RapidData rd = controller.Rapid.GetTask("T_ROB1").GetModule("MainModule").GetRapidData(rs); if (rd.Value is RobTarget) { rTargets.Add(rd.Value.ToString()); } if (rd.Value is JointTarget) { jTargets.Add(rd.Value.ToString()); } } } } return(new Dictionary <string, List <string> > { { "robTargets", rTargets }, { "jointTargets", jTargets } }); }