private void readyAreaPosHandler(Communication.Message message) { StandardInt32 standardString = (StandardInt32)message; Int32 data = standardString.data; requestRobotLocationInReadyArea(this); }
public override void LostPositionHandler(Communication.Message message) { StandardBoolean data = (StandardBoolean)message; try { if (data.data == true) { SetStopSpeedOrtherRobotLostPosition(); try { Global_Object.mainWindowCtrl.SetTextInfo("Robot :" + properties.Label + " Lost Position"); } catch { } if (!flagLostPosition) { MessageBox.Show("Robot :" + properties.Label + " Lost Position"); } flagLostPosition = true; } else { flagLostPosition = false; } } catch { } }
private void robotParamsHandler(Communication.Message message) { StandardString standardString = (StandardString)message; checkRobotVersion(standardString.data); robotInfo.alive = true; }
/*public void sendPackageGoToDockingLine(String mgs) * { * StandardString messages = new StandardString(); * messages.data = mgs; * rosSocket.Publish(paramsRosSocket.publication_serverRobotGotToLineDockingArea, messages); * } * public void sendPackageGoToPutAwayLine(String mgs) * { * StandardString messages = new StandardString(); * messages.data = mgs; * rosSocket.Publish(paramsRosSocket.publication_serverRobotGotToLinePutAwayArea, messages); * }*/ public void robotStatusHandler(Communication.Message message) { StandardInt32 standardInt32 = (StandardInt32)message; robotInfo.workingStatus = standardInt32.data; updateStatusRobotToReadyArea(NameID, robotInfo.workingStatus); }
private void batteryVolHandler(Communication.Message message) { StandardFloat32 standardFloat32 = (StandardFloat32)message; robotInfo.batteryPercentage = (double)standardFloat32.data; if (robotInfo.batteryPercentage <= CriticalEnergyAt) { statusFlag.flagCharge = true; } }
public override void RequestGotoReadyHandler(Communication.Message message) { /* StandardInt32 rqVal = (StandardInt32)message; * if (rqVal.data == 1) * { * DisposeF(); * AddWaitTask(); * //Console.WriteLine("request goto ready"); * }*/ }
private void AmclPoseHandler(Communication.Message message) { GeometryPoseWithCovarianceStamped standardString = (GeometryPoseWithCovarianceStamped)message; double posX = (double)standardString.pose.pose.position.x; double posY = (double)standardString.pose.pose.position.y; double posThetaZ = (double)standardString.pose.pose.orientation.z; double posThetaW = (double)standardString.pose.pose.orientation.w; double posTheta = (double)2 * Math.Atan2(posThetaZ, posThetaW); properties.pose.Position = new Point(posX, posY); properties.pose.AngleW = posTheta; }
public void zoneCheckerHandler(Communication.Message message) // request order to go docking line or putaway line { StandardString standardString = (StandardString)message; String road = standardString.data; dynamic stuff = JObject.Parse(road); robotInfo.atRoadName = (String)stuff.zone; //robotInfo.atRoadName = road; Console.WriteLine(robotInfo.atRoadName); switch (robotInfo.atRoadName) { case CommandSetsToRobotAgent.ZONE_HANDLER_INSIDEREADY: statusFlag.atReadyArea = true; break; case CommandSetsToRobotAgent.ZONE_HANDLER_CHECKOUT_DOCKING: try { this.orderTask.ReleaseDockingOrder(this.AreaID.ToString(), this.orderInfo.stationNameID, this.orderInfo.lineIndex, this.orderInfo.palletIndex); } catch { Console.WriteLine("Error call ReleaseDockingOrder"); } break; case CommandSetsToRobotAgent.ZONE_HANDLER_CHECKOUT_PUTAWAY: try { this.orderTask.ReleasePutAwayOrder(this.AreaID.ToString(), this.orderInfo.stationNameID, this.orderInfo.lineIndex, this.orderInfo.palletIndex); } catch { Console.WriteLine("Error call ReleasePutAwayOrder"); } break; } }
static void Main(string[] args) { SetInfo(); if (!ProcessingMessage.Connecting()) { Environment.Exit(1); } while (true) { var messageRead = ProcessingMessage._queueReceive.Receive(); Communication.Message message = (Communication.Message)messageRead.Body; foreach (var item in ProcessingMessage._messageHandler) { if (item.Key == message.TypeMessage) { item.Value.DynamicInvoke(message); } } } }
private void batteryRegisterHandler(Communication.Message message) { }
private void driveRobotStatusHandler(Communication.Message message) { }
private void ctrlRobotHardwareStatusHandler(Communication.Message message) { StandardString standardString = (StandardString)message; string row = standardString.data; }
private void testHandler(Communication.Message message) { StandardString standardString = (StandardString)message; System.Windows.MessageBox.Show(standardString.data); }
private void robotInfoHandler(Communication.Message message) { GeometryPoseWithCovarianceStamped standardString = (GeometryPoseWithCovarianceStamped)message; updateRobotInfo(standardString.pose); }
private void requestPutAwayAreaHandler(Communication.Message message) { }
private void emergencyRobotHandler(Communication.Message message) { }
private void subscriptionHandler(Communication.Message message) { StandardString standardString = (StandardString)message; dynamic data = JObject.Parse(standardString.data); int NOL = Convert.ToInt32(data.NOL); int NOPPL = Convert.ToInt32(data.NOPPL); props.cam.numLs = NOL; props.cam.numPsPL = NOPPL; props.cam.ip = data.CAMIP; props.cam.port = data.CAMPORT; props.cam.id = Convert.ToInt32(data.CAMID); List <bool> palletStatusArray = new List <bool>(NOL * NOPPL); if (props.cam.lineArray == null) { props.cam.lineArray = new SortedDictionary <String, LineInfo>(); } for (int lineIndex = 0; lineIndex < NOL; lineIndex++) { String line = "L" + lineIndex; LineInfo lineInfo = new LineInfo(); lineInfo.palletArray = new SortedDictionary <string, string>(); bool first = true; for (int palletIndex = 0; palletIndex < NOPPL; palletIndex++) { String pallet = "PL" + palletIndex; String[] palletStatus = ((String)data[line][pallet]).Split('-'); lineInfo.palletArray.Add(palletIndex.ToString(), palletStatus[0]); palletStatusArray.Add((palletStatus[0] == "yes") ? true : false); if (!((palletStatus[1] == ("available") || palletStatus[1] == ("detected")) && (palletStatus[2] == "stable"))) { if (first == true) { lineInfo.valid = false; lineInfo.palletWarning = palletIndex.ToString(); first = false; } } } if (!props.cam.lineArray.ContainsKey(lineIndex.ToString())) { //NEW props.cam.lineArray.Add(lineIndex.ToString(), lineInfo); props.palletStatusArray = palletStatusArray; props.cam.valid = false; } else { //UPDATE props.cam.lineArray[lineIndex.ToString()].palletArray = lineInfo.palletArray; props.cam.lineArray[lineIndex.ToString()].valid = lineInfo.valid; if (lineInfo.palletWarning != "none") { props.cam.lineArray[lineIndex.ToString()].palletWarning = lineInfo.palletWarning; } props.palletStatusArray = palletStatusArray; props.cam.valid = false; } } props.cam.valid = true; if (RegistrationAgent.areaList.Count != 0) { RegistrationAgent.areaList[props.cam.area].ProcessStation(props.typeName, props.NameID); } }
private void FinishedStatesHandler(Communication.Message message) { }
private void trafficInfoResponseHandler(Communication.Message message) { StandardString standardString = (StandardString)message; String data = standardString.data; }
private void multirulestoserverHandler(Communication.Message message) { StandardString standardString = (StandardString)message; String data = standardString.data; }
private void finishedStatesHandler(Communication.Message message) { StandardInt32 standardInt32 = (StandardInt32)message; processFinishStates(standardInt32.data); }
private void subscriptionHandler(Communication.Message message) { StandardString standardstring = (StandardString)message; dynamic data = JObject.Parse(standardstring.data); int no_lines = Convert.ToInt32(data.NOL); int no_pallets_per_line = Convert.ToInt32(data.NOPPL); properties.camera.no_lines = no_lines; properties.camera.no_pallet_per_lines = no_pallets_per_line; properties.camera.ip = data.CAMIP; properties.camera.port = data.CAMPORT; properties.camera.id = Convert.ToInt32(data.CAMID); List <bool> palletStatusArray = new List <bool>(no_lines * no_pallets_per_line); if (properties.camera.lines_detail == null) { properties.camera.lines_detail = new SortedDictionary <string, LineDetail>(); } for (int lineIndex = 0; lineIndex < no_lines; lineIndex++) { string line = "L" + lineIndex; LineDetail lineDetail = new LineDetail(); //lineDetail.pallets_detail = new SortedDictionary<string, string>(); bool first = true; for (int palletIndex = 0; palletIndex < no_pallets_per_line; palletIndex++) { string pallet = "PL" + palletIndex; string[] palletStatus = ((string)data[line][pallet]).Split('-'); lineDetail.pallets_detail.Add(palletIndex.ToString(), palletStatus[0]); palletStatusArray.Add((palletStatus[0] == "yes") ? true : false); if (!((palletStatus[1] == ("available") || palletStatus[1] == ("detected")) && (palletStatus[2] == "stable"))) { if (first == true) { lineDetail.valid = false; lineDetail.palletWarning = palletIndex.ToString(); first = false; } } } if (!properties.camera.lines_detail.ContainsKey(lineIndex.ToString())) { //NEW properties.camera.lines_detail.Add(lineIndex.ToString(), lineDetail); properties.pallets_status = palletStatusArray; properties.camera.valid = false; } else { //UPDATE properties.camera.lines_detail[lineIndex.ToString()].pallets_detail = lineDetail.pallets_detail; properties.camera.lines_detail[lineIndex.ToString()].valid = lineDetail.valid; if (lineDetail.palletWarning != "none") { properties.camera.lines_detail[lineIndex.ToString()].palletWarning = lineDetail.palletWarning; } properties.pallets_status = palletStatusArray; properties.camera.valid = false; } } properties.camera.valid = true; if (RegistrationAgent.areaList.Count != 0) { RegistrationAgent.areaList[properties.camera.area].ProcessStation(properties.typeName, properties.stationNameID); } }