public static void StartNewTrain()
        {
            if (ModbusProtocol.GetDataCoils(1) == true)
            {
                TrainViewModel.nextTrain = 2;
                num++;
                switch (ModbusProtocol.availableTrack)
                {
                case 401:
                    visualization.DoStartNewTrain1(num, TrackSensorsViewModel.xTrack401, TrackSensorsViewModel.yTrack401, 1); break;

                case 403:
                    visualization.DoStartNewTrain1(num, TrackSensorsViewModel.xTrack403, TrackSensorsViewModel.yTrack403, 1); break;

                case 405:
                    visualization.DoStartNewTrain1(num, TrackSensorsViewModel.xTrack405, TrackSensorsViewModel.yTrack405, 1); break;
                }
                ModbusProtocol.SetDataCoils(19, false);
            }
            else
            {
                ViewModel.VisualizationViewModel.ShowMessage("Error");
                ModbusProtocol.SetDataCoils(16, true);
                ModbusProtocol.SetDataCoils(19, false);
            }
        }
 private static void ChangeLight(int number)
 {
     if (ModbusProtocol.GetDataCoils(number) == true)
     {
         ViewModel.VisualizationViewModel.ChangeLightOnGreen(number);
     }
     else if (ModbusProtocol.GetDataCoils(number) == false)
     {
         ViewModel.VisualizationViewModel.ChangeLightOnRed(number);
     }
 }
示例#3
0
 public void buildVarHashSet()
 {
     for (UInt16 i = startTag; i < startTag + tagNum; i++)
     {
         Space         space = ModbusProtocol.getSpace(function);
         ModbusAddress addr  = new ModbusAddress(space, i);
         if (globalObject.addrVarMap.ContainsKey(addr))
         {
             mVarSet.Add(globalObject.addrVarMap[addr]);
         }
     }
 }
 public static void Track410(double xPoint, double yPoint)
 {
     if (xPoint > 90 && xPoint < 200 && yPoint > 290 && yPoint < 330)
     {
         ModbusProtocol.SetInputStatus(23, true);
         ViewModel.VisualizationViewModel.TrackOnRed("410");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("410");
         ModbusProtocol.SetInputStatus(23, false);
     }
 }
 public static void Track441(double xPoint, double yPoint)
 {
     if (xPoint > 1350 && xPoint < 1420 && yPoint > 238 && yPoint < 242)
     {
         ModbusProtocol.SetInputStatus(29, true);
         ViewModel.VisualizationViewModel.TrackOnRed("441");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("441");
         ModbusProtocol.SetInputStatus(29, false);
     }
 }
 public static void Track446(double xPoint, double yPoint)
 {
     if (xPoint > 1250 && xPoint < 1500 && yPoint > 282 && yPoint < 290)
     {
         ModbusProtocol.SetInputStatus(26, true);
         ViewModel.VisualizationViewModel.TrackOnRed("446");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("446");
         ModbusProtocol.SetInputStatus(26, false);
     }
 }
        // ------------------------------60--------------------------------- //

        public static void Track406a(double xPoint, double yPoint)
        {
            if (xPoint > 310 && xPoint < 570 && yPoint > 245 && yPoint < 286)
            {
                ModbusProtocol.SetInputStatus(61, true);
                ViewModel.VisualizationViewModel.TrackOnRed("406a");
            }
            else
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("406a");
                ModbusProtocol.SetInputStatus(61, false);
            }
        }
 public static void Track403a_e(double xPoint, double yPoint)
 {
     if (xPoint > 950 && xPoint < 1220 && yPoint > 282 && yPoint < 290)
     {
         ModbusProtocol.SetInputStatus(60, true);
         ViewModel.VisualizationViewModel.TrackOnRed("403a_e");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("403a_e");
         ModbusProtocol.SetInputStatus(60, false);
     }
 }
 // --------------------------------40---------------------------------------------- //
 public static void Track408(double xPoint, double yPoint)
 {
     if (xPoint > 10 && xPoint < 70 && yPoint > 285 && yPoint < 290)
     {
         ModbusProtocol.SetInputStatus(21, true);
         ViewModel.VisualizationViewModel.TrackOnRed("408");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("408");
         ModbusProtocol.SetInputStatus(21, false);
     }
 }
 public static void Track405d(double xPoint, double yPoint)
 {
     if (xPoint > 950 && xPoint < 1150 && yPoint > 378 && yPoint < 382)
     {
         ModbusProtocol.SetInputStatus(54, true);
         ViewModel.VisualizationViewModel.TrackOnRed("405d");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("405d");
         ModbusProtocol.SetInputStatus(54, false);
     }
 }
 public static void Track405e(double xPoint, double yPoint)
 {
     if (xPoint > 1200 && xPoint < 1300 && yPoint > 280 && yPoint < 380)
     {
         ModbusProtocol.SetInputStatus(55, true);
         ViewModel.VisualizationViewModel.TrackOnRed("405e");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("405e");
         ModbusProtocol.SetInputStatus(55, false);
     }
 }
 public static void Track402e(double xPoint, double yPoint)
 {
     if (xPoint > 1160 && xPoint < 1280 && yPoint > 238 && yPoint < 242)
     {
         ModbusProtocol.SetInputStatus(50, true);
         ViewModel.VisualizationViewModel.TrackOnRed("402e");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("402e");
         ModbusProtocol.SetInputStatus(50, false);
     }
 }
        // ----------------------------50----------------------------------- //


        public static void Track405a(double xPoint, double yPoint)
        {
            if (xPoint > 220 && xPoint < 380 && yPoint > 332 && yPoint < 390)
            {
                ModbusProtocol.SetInputStatus(51, true);
                ViewModel.VisualizationViewModel.TrackOnRed("405a");
            }
            else
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("405a");
                ModbusProtocol.SetInputStatus(51, false);
            }
        }
 public static void Track404c(double xPoint, double yPoint)
 {
     if (xPoint > 700 && xPoint < 930 && yPoint > 195 && yPoint < 197)
     {
         ModbusProtocol.SetInputStatus(43, true);
         ViewModel.VisualizationViewModel.TrackOnRed("404c");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("404c");
         ModbusProtocol.SetInputStatus(43, false);
     }
 }
        // ------------------------40--------------------------------------- //


        public static void Track404a(double xPoint, double yPoint)
        {
            if (xPoint > 260 && xPoint < 400 && yPoint > 200 && yPoint < 240)
            {
                ModbusProtocol.SetInputStatus(41, true);
                ViewModel.VisualizationViewModel.TrackOnRed("404a");
            }
            else
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("404a");
                ModbusProtocol.SetInputStatus(41, false);
            }
        }
 public static void Track403b(double xPoint, double yPoint)
 {
     if (xPoint > 440 && xPoint < 670 && yPoint > 330 && yPoint < 335)
     {
         ModbusProtocol.SetInputStatus(37, true);
         ViewModel.VisualizationViewModel.TrackOnRed("403b");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("403b");
         ModbusProtocol.SetInputStatus(37, false);
     }
 }
 public static void Track412(double xPoint, double yPoint)
 {
     if (xPoint > 195 && xPoint < 250 && yPoint > 235 && yPoint < 287)
     {
         ModbusProtocol.SetInputStatus(24, true);
         ViewModel.VisualizationViewModel.TrackOnRed("412");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("412");
         ModbusProtocol.SetInputStatus(24, false);
     }
 }
 public static void Track406c(double xPoint, double yPoint)
 {
     if (xPoint > 940 && xPoint < 1220 && yPoint > 245 && yPoint < 288)
     {
         ModbusProtocol.SetInputStatus(63, true);
         ViewModel.VisualizationViewModel.TrackOnRed("406c");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("406c");
         ModbusProtocol.SetInputStatus(63, false);
     }
 }
 public static void Track406b(double xPoint, double yPoint)
 {
     if (xPoint > 600 && xPoint < 900 && yPoint > 245 && yPoint < 247)
     {
         ModbusProtocol.SetInputStatus(62, true);
         ViewModel.VisualizationViewModel.TrackOnRed("406b");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("406b");
         ModbusProtocol.SetInputStatus(62, false);
     }
 }
 public static void Track442(double xPoint, double yPoint)
 {
     if (xPoint > 1330 && xPoint < 1400 && yPoint > 245 && yPoint < 330)
     {
         ModbusProtocol.SetInputStatus(28, true);
         ViewModel.VisualizationViewModel.TrackOnRed("442");
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("442");
         ModbusProtocol.SetInputStatus(28, false);
     }
 }
        private static void StartTrainHelp()
        {
            TrainViewModel.nextTrain = 1;
            ModbusProtocol.SetDataCoils(20, false);
            num++;
            switch (ModbusProtocol.availableTrack2)
            {
            case 406:
                visualization.DoStartNewTrain2(num, TrackSensorsViewModel.xTrack406Return, TrackSensorsViewModel.yTrack406Return); break;

            case 403:
                visualization.DoStartNewTrain2(num, TrackSensorsViewModel.xTrack403aReturn, TrackSensorsViewModel.yTrack403aReturn); break;
            }
        }
示例#22
0
        protected void setVarsState(VarState state)
        {
            if (mGlobalObject != null && mGlobalObject.addrVarMap != null)
            {
                Space space = ModbusProtocol.getSpace(mQuery.function);

                for (UInt16 i = mQuery.startTag; i < mQuery.startTag + mQuery.tagNum; i++)
                {
                    ModbusAddress currAddr = new ModbusAddress(space, i);
                    if (mGlobalObject.addrVarMap.ContainsKey(currAddr))
                    {
                        mGlobalObject.addrVarMap[currAddr].state = VarState.TimeOut;
                    }
                }
            }
        }
 public static void Track403a_c(double xPoint, double yPoint)
 {
     if (xPoint > 710 && xPoint < 810 && yPoint > 282 && yPoint < 290)
     {
         ModbusProtocol.SetInputStatus(64, true);
         ModbusProtocol.SetInputStatus(58, true);
         ViewModel.VisualizationViewModel.TrackOnRed("403a_c");
         ViewModel.VisualizationViewModel.WeightOnRed();
     }
     else
     {
         ViewModel.VisualizationViewModel.TrackOnGreen("403a_c");
         ViewModel.VisualizationViewModel.WeightOnGreen();
         ModbusProtocol.SetInputStatus(58, false);
         ModbusProtocol.SetInputStatus(64, false);
     }
 }
        public static void Steering440()
        {
            if (ModbusProtocol.GetDataCoils(9) == false) // zwrotnica 440
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("401e");
                ViewModel.VisualizationViewModel.TrackOnWhite("402e");

                ModbusProtocol.SetInputStatus(9, true);
                ModbusProtocol.SetInputStatus(10, false);
            }
            else if (ModbusProtocol.GetDataCoils(9) == true) // zwrotnica 440
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("402e");
                ViewModel.VisualizationViewModel.TrackOnWhite("401e");

                ModbusProtocol.SetInputStatus(9, false);
                ModbusProtocol.SetInputStatus(10, true);
            }
        }
        public static void Steering410()
        {
            if (ModbusProtocol.GetDataCoils(7) == false) // zwrotnica 410
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("403a");
                ViewModel.VisualizationViewModel.TrackOnWhite("405a");

                ModbusProtocol.SetInputStatus(5, true);
                ModbusProtocol.SetInputStatus(6, false);
            }
            else if (ModbusProtocol.GetDataCoils(7) == true) // zwrotnica 410
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("405a");
                ViewModel.VisualizationViewModel.TrackOnWhite("403a");

                ModbusProtocol.SetInputStatus(5, false);
                ModbusProtocol.SetInputStatus(6, true);
            }
        }
        public static void Steering412()
        {
            if (ModbusProtocol.GetDataCoils(8) == false) // zwrotnica 412
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("402a");
                ViewModel.VisualizationViewModel.TrackOnWhite("404a");

                ModbusProtocol.SetInputStatus(7, true);
                ModbusProtocol.SetInputStatus(8, false);
            }
            else if (ModbusProtocol.GetDataCoils(8) == true) // zwrotnica 412
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("404a");
                ViewModel.VisualizationViewModel.TrackOnWhite("402a");

                ModbusProtocol.SetInputStatus(7, false);
                ModbusProtocol.SetInputStatus(8, true);
            }
        }
        public static void Steering411()
        {
            if (ModbusProtocol.GetDataCoils(6) == false) // zwrotnica 411
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("401a");
                ViewModel.VisualizationViewModel.TrackOnWhite("412");

                ModbusProtocol.SetInputStatus(3, true);
                ModbusProtocol.SetInputStatus(4, false);
            }
            else if (ModbusProtocol.GetDataCoils(6) == true) // zwrotnica 411
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("412");
                ViewModel.VisualizationViewModel.TrackOnWhite("401a");

                ModbusProtocol.SetInputStatus(3, false);
                ModbusProtocol.SetInputStatus(4, true);
            }
        }
        public static void Steering445()
        {
            if (ModbusProtocol.GetDataCoils(13) == false) // zwrotnica 445
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("403a_a");
                ViewModel.VisualizationViewModel.TrackOnWhite("406a");

                ModbusProtocol.SetInputStatus(17, true);
                ModbusProtocol.SetInputStatus(18, false);
            }
            else if (ModbusProtocol.GetDataCoils(13) == true) // zwrotnica 445
            {
                ViewModel.VisualizationViewModel.TrackOnWhite("403a_a");
                ViewModel.VisualizationViewModel.TrackOnGreen("406a");

                ModbusProtocol.SetInputStatus(17, false);
                ModbusProtocol.SetInputStatus(18, true);
            }
        }
        public static void Steering444()
        {
            if (ModbusProtocol.GetDataCoils(12) == false) // zwrotnica 444
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("441");
                ViewModel.VisualizationViewModel.TrackOnWhite("442");

                ModbusProtocol.SetInputStatus(15, true);
                ModbusProtocol.SetInputStatus(16, false);
            }
            else if (ModbusProtocol.GetDataCoils(12) == true) // zwrotnica 444
            {
                ViewModel.VisualizationViewModel.TrackOnWhite("441");
                ViewModel.VisualizationViewModel.TrackOnGreen("442");

                ModbusProtocol.SetInputStatus(15, false);
                ModbusProtocol.SetInputStatus(16, true);
            }
        }
        public static void Steering442()
        {
            if (ModbusProtocol.GetDataCoils(11) == false) // zwrotnica 442
            {
                ViewModel.VisualizationViewModel.TrackOnGreen("403e");
                ViewModel.VisualizationViewModel.TrackOnWhite("405e");

                ModbusProtocol.SetInputStatus(13, true);
                ModbusProtocol.SetInputStatus(14, false);
            }
            else if (ModbusProtocol.GetDataCoils(11) == true) // zwrotnica 442
            {
                ViewModel.VisualizationViewModel.TrackOnWhite("403e");
                ViewModel.VisualizationViewModel.TrackOnGreen("405e");

                ModbusProtocol.SetInputStatus(13, false);
                ModbusProtocol.SetInputStatus(14, true);
            }
        }
示例#31
0
 public void InitProtocol(ModbusProtocol protocol)
 {
     this._protocol = protocol;
     this.modbusFcn = new ModbusSlaveFunction(protocol);
 }