Example #1
0
        /// <summary>
        /// 推焦开始时PushInfo数据
        /// 已考虑当StokingPlanIndex小于0时对信息的记录
        /// </summary>
        private void PingDataPart1()
        {
            DateTime     invalidTime = Convert.ToDateTime("2012-04-03 13:14");
            bool         valid       = StokingPlanIndex >= 0;
            MStokingPlan m           = valid ? CokeRoom.StokingPlan[StokingPlanIndex] : (CokeRoom.StokingPlan.Count > 0 ? new MStokingPlan(CokeRoom.StokingPlan[0]) : new MStokingPlan(1, Convert.ToDateTime("2012-04-03 13:14"), 1, 1));

            pgInfo              = new PgInfo();
            pgInfo.Room         = m.RoomNum;//20171122应为计划装煤炉号;
            pgInfo.PlanPushTime = m.StokingTime.AddMinutes(-5);
            pgInfo.PlanPingTime = m.StokingTime;
            pgInfo.TRoom        = (byte)RoomNum;
            pgInfo.TPRoom       = (byte)PingRoomNum;
            pgInfo.MRoom        = (byte)Communication.MJob.RoomNum;
            pgInfo.TAddr        = DataRead.PhysicalAddr;
            //pInfo.mAddr = Communication.JobCar[3].DataRead.PhysicalAddr;//20170904 和装煤车的通讯还未调试完毕
            pgInfo.MAddr     = Communication.MJob.DataRead.PhysicalAddr;
            pgInfo.BeginTime = Convert.ToDateTime(StokingTime);
            pgInfo.LockInfo  = 0;//0906
            pgInfo.Period    = valid ? m.Period : (byte)0;
            pgInfo.Group     = valid ? m.Group : (byte)0;
            pgInfo.PlanIndex = StokingPlanIndex;
            pgInfo.PlanCount = CokeRoom.StokingPlan.Count;
            PingInfoHelper p = new PingInfoHelper(new DbAppDataContext(Setting.ConnectionStr), pgInfo, true);

            p.RecToDB();
        }
Example #2
0
 public Communication()
 {
     //加载错误日志记录帮助,20170924
     Log.LogSys.Info("启动时间:" + DateTime.Now.ToString("g"));
     CommLst = new List <CommExamine>();
     UITime  = new SysTime();
     //初始地址字典,对应炉号的各生产时间
     Room        = new CokeRoom();
     PushPlan    = new TPushPlan();
     StokingPlan = new MStokingPlan();
     //开启TCP/IP通讯;20180115 服务器端不用开启
     if (!Setting.IsServer)
     {
         CommHelper = new SocketHelper();
         CommHelper.StartListening();
     }
     OPCInfo = new OPC();
     //初始化8辆车
     InitCars();
     IniTogetherInfo();
     //得到工作车的联锁信息
     GetCarTogetherInfo(JobCarTogetherInfo, true);
     GetMTogetherInfo(MJobCarTogetherInfo, true);
     //得到非工作车的联锁信息********
     GetCarTogetherInfo(NonJobCarTogetherInfo, false);
     GetMTogetherInfo(MNonJobCarTogetherInfo, false);
     DataWrite  = new DataWrite();
     CommStatus = new List <CommStatus>();
     IniTimer();
     if (Setting.IsServer)
     {
         PushAndStokingPlan();                  //20180115 服务器端处理计划推焦和计划装煤炉号
     }
     //测试用方法 正式编译前应注释掉 20171021
     //_BindingTest();
 }