Ejemplo n.º 1
0
        private void RefreshTimer_Tick(object sender, EventArgs e)
        {
            Bitmap bmpGreen     = Properties.Resources.SmallGreen;
            Bitmap bmpDarkGreen = Properties.Resources.SmallDarkGreen;
            Bitmap bmpRed       = Properties.Resources.SmallRed;
            Bitmap bmpDarkRed   = Properties.Resources.SmallDarkRed;

            pictureBoxRobotAlarm.Image  = m_ManualRobot.HasAlarm() ? bmpRed : bmpDarkRed;
            pictureBoxRobotAlarm.Image  = m_ManualRobot.HasWarning() ? bmpRed : bmpDarkRed;
            pictureBoxTemperature.Image = (m_ManualRobot.GetTemperatureStateString() == "过载") ? bmpRed : bmpDarkGreen;
            pictureBoxRobotMove.Image   = m_ManualRobot.GetMovingState() ? bmpGreen : bmpDarkGreen;
            DisplayRobotState(m_ManualRobot.GetExecutorStateString(), pictureBoxRobotExecut);
            RefreshRobotServoPic(m_ManualRobot, pictureBoxServo);

            UpdateRobotCurentMeas();

            //读取全局点位信息,只读一次
            if (m_ManualRobot.IsConnected() && m_ManualRobot.m_PointList == null)
            {
                m_ManualRobot.m_PointList = m_ManualRobot.GetGlobalPointData();
            }
        }
Ejemplo n.º 2
0
        public void InitWorkstatiionAndStart()
        {
            //检查共享文件夹是否存在,存在则直接存储文件,不存在则创建共享文件夹
            if (!Directory.Exists(NsfTrayModule.m_FileFolder))
            {
                //Directory.CreateDirectory(NsfTrayModule.m_FileFolder);
                //m_NetShare.CallShareBatFile(m_CreateShare);
                Global.MessageBoxShow(Global.StrCreateShareFolder);
            }

            //Robot
            m_Robot = RobotDevice.GetInstance();
            bool Re = m_Robot.InitRobot();

            if (!Re)
            {
                DataStruct.SysStat.RobotOk = false;
                m_SysAlarm.SetAlarm(SysAlarm.Type.Robot, true);
                Global.MessageBoxShow(Global.StrRobotInitError);
            }
            else
            {
                DataStruct.SysStat.RobotOk = true;
                m_Robot.ServoOn();
                //m_Robot.RunSelectedProgram(1);
                m_Robot.m_PointList = m_Robot.GetGlobalPointData();
            }

            //RFID
            m_RFID = RFID.GetInstance();
            Re     = m_RFID.Connect(Profile.m_Config.RfidIp);
            if (!Re)
            {
                DataStruct.SysStat.RfidOk = false;
                m_SysAlarm.SetAlarm(SysAlarm.Type.RFID, true);
            }
            else
            {
                m_RFID.m_CurCh = Profile.m_Config.RfidCh;
                m_RFID.Init(m_RFID.m_CurCh);
                m_RFID.Enable(m_RFID.m_CurCh);

                DataStruct.SysStat.RfidOk = true;
                m_SysAlarm.SetAlarm(SysAlarm.Type.RFID, false);
            }

            //二维码
            m_QRCode = QRCode.GetInstance();
            string Port     = Profile.m_Config.QRCodePort;
            string BandRate = Profile.m_Config.QRCodeBandRate;

            m_QRCode.QRCodeCommunParamInit(Port, BandRate);
            Re = m_QRCode.QRCodeInit();
            if (!Re)
            {
                DataStruct.SysStat.QRCodeOk = false;
                m_SysAlarm.SetAlarm(SysAlarm.Type.QRCode, true);
            }
            else
            {
                DataStruct.SysStat.QRCodeOk = true;
                m_SysAlarm.SetAlarm(SysAlarm.Type.QRCode, false);
            }
        }
Ejemplo n.º 3
0
        private void RefreshTimer_Tick(object sender, EventArgs e)
        {
            InitUIControlEnableState();

            Bitmap bmpGreen     = Properties.Resources.SmallGreen;
            Bitmap bmpDarkGreen = Properties.Resources.SmallDarkGreen;
            Bitmap bmpRed       = Properties.Resources.SmallRed;
            Bitmap bmpDarkRed   = Properties.Resources.SmallDarkRed;

            //Robot
            pictureBoxRobotAlarm.Image  = (m_ManualRobot.HasAlarm() || m_ManualRobot.HasWarning()) ? bmpRed : bmpDarkRed;
            pictureBoxTemperature.Image = (m_ManualRobot.GetTemperatureStateString() == "过载") ? bmpRed : bmpDarkGreen;
            pictureBoxRobotMove.Image   = m_ManualRobot.GetMovingState() ? bmpGreen : bmpDarkGreen;
            DisplayRobotState(m_ManualRobot.GetExecutorStateString(), pictureBoxRobotExecut);
            RefreshRobotServoPic(m_ManualRobot, pictureBoxServo);
            UpdateRobotCurentMeas();

            if (m_ManualRobot.IsConnected() && m_ManualRobot.m_PointList == null)  //读取全局点位信息,只读一次
            {
                m_ManualRobot.m_PointList = m_ManualRobot.GetGlobalPointData();
            }

            //抓手
            PicBoxRobotGrapGoArrive.Image    = DataStruct.SysStat.RobotCylGoArrive ? bmpGreen : bmpDarkGreen;
            PicBoxRobotGrapBackArrive.Image  = DataStruct.SysStat.RobotCylBackArrive ? bmpGreen : bmpDarkGreen;
            PicBoxRobotGrapVacuumCheck.Image = DataStruct.SysStat.RobotVacuoCheck ? bmpGreen : bmpDarkGreen;

            //二维码
            if (m_QRCode != null && m_QRCode.m_IsConnect)
            {
                lock (this)
                {
                    if (m_QRCode.m_ReadQueue.Count > 0)
                    {
                        ComBoxQRCodeReadShow.Text += m_QRCode.m_ReadQueue.Dequeue();
                    }
                }
            }

            //RFID
            if (m_RFID.IsConnected)
            {
                if (DataStruct.SysStat.ManualDebugReceiveSalverArrive)
                {
                    PicTrayDeviceInRFID.Image     = bmpGreen;
                    CTextBoxTrayDeviceRfidSn.Text = VisualSortingStation.m_RfidRead;
                }
                else
                {
                    PicTrayDeviceInRFID.Image     = bmpDarkGreen;
                    CTextBoxTrayDeviceRfidSn.Text = "";
                }
            }

            //Arm Controler
            //气缸
            PicBoxEmptySalverObstructUpArrive.Image   = DataStruct.SysStat.EmptySalverObstructAirCylUpArrive ? bmpGreen : bmpDarkGreen;
            PicBoxEmptySalverObstructDownArrive.Image = DataStruct.SysStat.EmptySalverObstructAirCylDownArrive ? bmpGreen : bmpDarkGreen;
            PicBoxEmptySalverUpArrive.Image           = DataStruct.SysStat.ReceiveSalverLiftingAirCylUpArrive ? bmpGreen : bmpDarkGreen;
            PicBoxEmptySalverDownArrive.Image         = DataStruct.SysStat.ReceiveSalverLiftingAirCylDownArrive ? bmpGreen : bmpDarkGreen;
            PicBoxConveyorUpArrive.Image   = DataStruct.SysStat.ConveyorLiftingAirCylUpArrive ? bmpGreen : bmpDarkGreen;
            PicBoxConveyorDownArrive.Image = DataStruct.SysStat.ConveyorLiftingAirCylDownArrive ? bmpGreen : bmpDarkGreen;

            //按键
            PicKeyRun.Image   = DataStruct.SysStat.KeyRun ? bmpGreen : bmpDarkGreen;
            PicKeyPause.Image = DataStruct.SysStat.KeyPause ? bmpGreen : bmpDarkGreen;
            PicKeyStop.Image  = DataStruct.SysStat.KeyStop ? bmpGreen : bmpDarkGreen;
            PicKeyReset.Image = DataStruct.SysStat.KeyReset ? bmpGreen : bmpDarkGreen;

            //传感器
            PicBoxEmptySalverObstructSensor.Image = DataStruct.SysStat.EmptySalverObstructSensor ? bmpGreen : bmpDarkGreen;
            PicBoxSalverRunOutStationSensor.Image = DataStruct.SysStat.SalverRunOutStationSensor ? bmpGreen : bmpDarkGreen;

            //翻转机构
            PicOverturn.Image          = DataStruct.SysStat.OverturnSalverTurnArrive ? bmpGreen : bmpDarkGreen;
            PicOverturnCylLock.Image   = DataStruct.SysStat.OverturnSalverLockAirCylGoArrive ? bmpGreen : bmpDarkGreen;
            PicOverturnCylUnLock.Image = DataStruct.SysStat.OverturnSalverLockAirCylBackArrive ? bmpGreen : bmpDarkGreen;

            if (m_ArmControler.IsBoardConnected(Board.Controler))
            {
                CTxtAxisConveyorCurPos.Text = Convert.ToString(VisualSortingStation.m_ConveyorAxisCurPos);

                TextBox[] txtState = new TextBox[(int)Axis.Max] {
                    CTxtAxisConveyorrState, CTxtAxisTurnOverState
                };
                for (int i = 0; i < (int)Axis.Max; i++)
                {
                    txtState[i].Text = m_ArmControler.ReadAxisStateString((Axis)i);
                }
            }
        }