public override void LoopContent()
        {
            _dict.Clear();
            _dict.Add(CHART_REMOTE_PORT1, string.Format("{0},{1:f3},{2:f3},{3:f3}", Config.MachineName, Const.GnssInfo.LocalCoor_Tipx, Const.GnssInfo.LocalCoor_Tipy, Const.StrategyDataSource.MaterialHeight));
            _dict.Add(CHART_REMOTE_PORT2, string.Format("{0},{1:f3},{2:f3},{3:f3},{4:f3},{5:f3},{6:f3}", Config.MachineName, Const.RadarInfo.DistLeftFront, Const.RadarInfo.DistLeftMiddle, Const.RadarInfo.DistLeftBack, Const.RadarInfo.DistRightFront, Const.RadarInfo.DistRightMiddle, Const.RadarInfo.DistRightBack));
            _dict.Add(CHART_REMOTE_PORT3, string.Format("{0},{1:f3},{2:f3},{3:f3},{4:f3},{5:f3},{6:f3}", Config.MachineName, Const.GnssInfo.LocalCoor_Tipx, Const.GnssInfo.LocalCoor_Tipy, Const.GnssInfo.LocalCoor_Tipz, Const.GnssInfo.LocalCoor_Centrex, Const.GnssInfo.LocalCoor_Centrey, Const.GnssInfo.LocalCoor_Centrez));
            List <int> ports = _dict.Keys.Cast <int>().ToList();

            ports.ForEach(port =>
            {
                _dict[port] = HexHelper.GetStringSumResult(_dict[port]);
                try { _udp.SendString(_dict[port], Const.LocalIp, port); }
                catch (Exception) { }
            });
        }
Beispiel #2
0
        public override void LoopContent()
        {
            string json = JsonConvert.SerializeObject(Const.RcmsDataSource, new JsonSerializerSettings()
            {
                ContractResolver = new DefaultContractResolver()
                {
                    NamingStrategy = new DefaultNamingStrategy()
                },
                Formatting = Formatting.None
            });

            //MachineInfo info = JsonConvert.DeserializeObject<MachineInfo>(json);
            udp.SendString(json, this.RemoteIpAddress, this.RemotePort);

            _taskLogsBuffer.Add(string.Format("已向{0}:{1}发送,长度:{2}", this.RemoteIpAddress, this.RemotePort, string.IsNullOrWhiteSpace(json) ? 0 : json.Length));
        }
        public override void LoopContent()
        {
            string result = string.Format("{0},{1:f3},{2:f3},{3:f3}", Config.MachineName, Const.GnssInfo.LocalCoor_Tipx, Const.GnssInfo.LocalCoor_Tipy, Const.StrategyDataSource.MaterialHeight);

            result = HexHelper.GetStringSumResult(result);
            //雷达数据是否合格
            bool is_radar_valid = !Const.IsStacker || (Const.RadarInfo.DistWheelLeft != 0 && Const.RadarInfo.DistWheelRight != 0 && Const.RadarInfo.DistWheelAverage != 0 && Const.RadarInfo.DistWheelDiff.Between(0, Config.DistDiffThres[1]));
            //附加条件
            bool additional = Const.StrategyDataSource.MaterialHeight != 0;

            //所有条件均符合要求后才发送消息,否则发送随机字符
            result = is_radar_valid && Const.IsGnssValid && additional && Const.IsCoalValid ? result : "#";
            udp.SendString(result, Config.ModelServerIp, Config.UdpModelRemotePort);

            _taskLogsBuffer = new List <string>()
            {
                result
            };
        }
Beispiel #4
0
        /// <summary>
        /// 循环体内容
        /// </summary>
        public override void LoopContent()
        {
            //if (Const.IsGnssValid)
            //{
            //    Const.StrategyDataSource.RunningPosition = Const.GnssInfo.WalkingPosition;
            //    Const.StrategyDataSource.PitchAngle = Const.GnssInfo.PitchAngle;
            //    Const.StrategyDataSource.RotationAngle = Const.GnssInfo.YawAngle;
            //}
            //Const.StrategyDataSource.RunningPosition = Const.OpcDatasource.WalkingPositionLeft_Plc;
            //Const.StrategyDataSource.PitchAngle = Const.OpcDatasource.PitchAngle_Plc;
            //Const.StrategyDataSource.RotationAngle = Const.OpcDatasource.YawAngle_Plc;
            Const.StrategyDataSource.RunningPosition = Posture.WalkingPosition;
            Const.StrategyDataSource.PitchAngle      = Posture.PitchAngle;
            Const.StrategyDataSource.RotationAngle   = Posture.YawAngle;
            Const.StrategyDataSource.CollisionInfo   = Const.RadarInfo.RadarList == null ? string.Empty : string.Join(string.Empty, Const.RadarInfo.RadarList.Select(r => Convert.ToString(r.ThreatLevel, 2).PadLeft(2, '0')));
            Const.StrategyDataSource.WheelLeftDist   = Const.RadarInfo.DistWheelLeft;
            Const.StrategyDataSource.WheelRightDist  = Const.RadarInfo.DistWheelRight;
            string result = JsonConvert.SerializeObject(Const.StrategyDataSource, _jsonSetting);

            udp.SendString(result, Config.StrategyIPCIp, Config.UdpStrategyRemotePort);

            _taskLogsBuffer.Add("已向策略工控机发送:" + result.Length);
            //_taskLogsBuffer = new List<string>() { result };
        }