Esempio n. 1
0
        /// <summary>
        /// 設置指示燈狀態
        /// </summary>
        /// <param name="lightType">指示燈類型</param>
        /// <param name="lightStatus">指示燈狀態</param>
        /// <returns></returns>
        private bool SetLightStatus(EnmZWorldLightType lightType, EnmLightStatus lightStatus)
        {
            Thread.Sleep(500);

            lock (m_objSyncRoot)
            {
                try
                {
                    return this.m_ZWorldPLC.PLC_Set_Y((uint)GetLightStatusIntVal(lightStatus), (uint)lightType);
                }
                catch (Exception ex)
                {
                    base.OnException(mc_strClassName, "SetLightStatus", ex);
                    return false;
                }
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 獲取指示燈狀態
        /// </summary>
        /// <param name="lightType">指示燈類型</param>
        /// <returns>指示燈狀態</returns>
        private EnmLightStatus GetLightStatus(EnmZWorldLightType lightType)
        {
            Thread.Sleep(500);

            lock (m_objSyncRoot)
            {
                try
                {
                    bool rvAll = GetPLCConn();
                    uint iStatus = this.m_ZWorldPLC.PLC_Get_Y((uint)lightType);
                    EnmLightStatus lightStatus = GenerateLightStatus(iStatus);
                    return lightStatus;
                }
                catch (Exception ex)
                {
                    base.OnException(mc_strClassName, "GetlightStatus", ex);
                    return EnmLightStatus.Error;
                }
            }
        }