Ejemplo n.º 1
0
        private void Btn_SaveCOM_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("确定保存参数?", "Warning", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);

            if (result != DialogResult.OK)
            {
                return;
            }
            ////串口通讯
            try
            {
                CommunicationParam rs232Param = UserSetting.Instance.MainDeviceComParam;
                rs232Param.Use = chkUsePlc.Checked;
                if (chkUsePlc.Checked)
                {
                    rs232Param.ComName  = drpComList.Text;
                    rs232Param.BaudRate = drpBaudRate.Text;

                    rs232Param.Parity   = drpParity.SelectedIndex.ToString();
                    rs232Param.DataBits = drpDataBits.Text;
                    rs232Param.StopBits = drpStopBits.Text;
                }

                AppManger.ProjectData.Instance.SaveProject(UserSetting.Instance.ProjectPath);

                MessageBox.Show("保存成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception ex)
            {
                MessageBox.Show("保存失败 :" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            UpdateOnce.Enabled = true;
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 串口初始化
        /// </summary>
        public void InitSerial(CommunicationParam rs232Param)
        {
            try
            {
                if (com.IsOpen)
                {
                    Close();
                }

                com.PortName = rs232Param.ComName;
                com.BaudRate = Convert.ToInt32(rs232Param.BaudRate);
                com.Parity   = (Parity)Convert.ToInt32(rs232Param.Parity);
                com.DataBits = Convert.ToInt32(rs232Param.DataBits);
                com.StopBits = (StopBits)Convert.ToInt32(rs232Param.StopBits);
                //com.NewLine = "\r\n";
                com.NewLine       = "\r";
                isReadOK          = false;
                com.DataReceived += new SerialDataReceivedEventHandler(this.OnDataReceived);

                com.Open();
            }
            catch (Exception ex)
            {
                throw new ApplicationException("串口打开失败," + ex.Message);
            }
        }
Ejemplo n.º 3
0
        private void btnSavePLCData_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("确定保存参数?", "Warning", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);

            if (result != DialogResult.OK)
            {
                return;
            }
            ////串口通讯
            try
            {
                CommunicationParam rs232Param = UserSetting.Instance.MainDeviceComParam;
                rs232Param.PlcData[0] = int.Parse(txtPlcData1.Text);
                rs232Param.PlcData[1] = int.Parse(txtPlcData2.Text);
                rs232Param.PlcData[2] = int.Parse(txtPlcData3.Text);
                rs232Param.PlcData[3] = int.Parse(txtPlcData4.Text);
                rs232Param.PlcData[4] = int.Parse(txtPlcData5.Text);

                AppManger.ProjectData.Instance.SaveProject(UserSetting.Instance.ProjectPath);
                MessageBox.Show("保存成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);

                PLC.PanasonicSerial.Instance.WriteDT("D2400", "D2409", rs232Param.PlcData);
                MessageBox.Show("数据写入成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            catch (Exception ex)
            {
                MessageBox.Show("发生异常 :" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        /// <summary>
        /// 串口初始化
        /// </summary>
        public void InitSerial(CommunicationParam rs232Param)
        {
            try
            {
                if (Com.IsOpen)
                {
                    Close();
                }
                isLink           = false;
                Com.PortName     = rs232Param.ComName;
                Com.BaudRate     = Convert.ToInt32(rs232Param.BaudRate);
                Com.Parity       = (Parity)Convert.ToInt32(rs232Param.Parity);
                Com.DataBits     = Convert.ToInt32(rs232Param.DataBits);
                Com.StopBits     = (StopBits)Convert.ToInt32(rs232Param.StopBits);
                Com.ReadTimeout  = 200;
                Com.WriteTimeout = 200;
                //Com.NewLine = "\r\n";
                //Com.NewLine = "\r";
                Com.Open();
                isLink = true;

                Com.DataReceived  += new SerialDataReceivedEventHandler(this.OnDataReceived);
                Com.ErrorReceived += new SerialErrorReceivedEventHandler(this.OnErrorReceived);
            }
            catch (Exception ex)
            {
                IsLink = false;
                Util.Notify(Level.Err, string.Format("串口{0}打开失败,", Com.PortName) + ex.Message);
                //throw new ApplicationException("外部通信串口打开失败," + ex.Message);
                //throw new Exception("外部通信串口打开失败," + ex.Message); //
                throw;
            }
        }
        private void btnStart_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("参数修改完成?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);

            if (result != DialogResult.OK)
            {
                return;
            }
            ////串口通讯
            try
            {
                CommunicationParam communicationParam = UserSetting.Instance.MainDeviceComParam;

                communicationParam.ComName  = drpComList.Text;
                communicationParam.BaudRate = drpBaudRate.Text;

                communicationParam.Parity   = drpParity.SelectedIndex.ToString();
                communicationParam.DataBits = drpDataBits.Text;
                communicationParam.StopBits = drpStopBits.Text;

                communicationParam.TcpIP           = ipTextBoxExt1.Text;
                communicationParam.TcpPort         = nmServerPort.Value.ToString();
                communicationParam.InterlockMode   = (InterlockMode)Enum.Parse(typeof(InterlockMode), cmbCommType.SelectedItem.ToString(), false);
                communicationParam.IsExtTrigger    = this.chkIsExtTrigger.Checked;
                communicationParam.IsCamIOOutput   = this.checkBox_CamIOOutput.Checked;
                mainCommHandler.CommunicationParam = communicationParam;

                //SerialHelper.Instance.Rs232Param = AppManger.ProjectData.Instance.Rs232Param;
                try
                {
                    mainCommHandler.Open();
                }
                catch (Exception /*ex*/)
                {
                }
                if (mainCommHandler.IsLink)
                {
                    //AppManger.ProjectData.Instance.SaveProject(UserSetting.Instance.ProjectPath);

                    UserSetting.Instance.SaveSetting();

                    MessageBox.Show("通信已打开,参数保存成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    this.Close();
                }
                else
                {
                    MessageBox.Show("通信打开失败,请检查设置", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("保存失败 :" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Ejemplo n.º 6
0
        public void RefushSetting()
        {
            #region 设置数据加载
            //串口数据初始化
            //  drpComList.Items.AddRange(SerialPort.GetPortNames());
            if (drpComList.Items.Count > 0)
            {
                drpComList.SelectedIndex = 0;
            }
            //数据设置默认值
            if (drpComList.Items.Count > 0)
            {
                drpComList.SelectedIndex = 0;
            }
            //数据加载设置数据
            try//第一次加载时候无setting数据
            {
                CommunicationParam rs232Param = UserSetting.Instance.MainDeviceComParam;
                drpComList.Text  = rs232Param.ComName;
                drpBaudRate.Text = rs232Param.BaudRate;
                // int x= Convert.ToInt16(Tools.ToolsFactory.Rs232Param.Parity);
                drpParity.SelectedIndex = Convert.ToInt16(rs232Param.Parity);
                drpDataBits.Text        = rs232Param.DataBits;
                drpStopBits.Text        = rs232Param.StopBits;

                chkUsePlc.Checked = rs232Param.Use;
                groupBox6.Enabled = chkUsePlc.Checked;

                txtPlcData1.Text = rs232Param.PlcData[0].ToString();
                txtPlcData2.Text = rs232Param.PlcData[1].ToString();
                txtPlcData3.Text = rs232Param.PlcData[2].ToString();
                txtPlcData4.Text = rs232Param.PlcData[3].ToString();
                txtPlcData5.Text = rs232Param.PlcData[4].ToString();


                drpComList1.Text         = UserSetting.Instance.MainDeviceComParam.ComName;
                drpBaudRate1.Text        = UserSetting.Instance.MainDeviceComParam.BaudRate;
                drpParity1.SelectedIndex = Convert.ToInt16(UserSetting.Instance.MainDeviceComParam.Parity);
                drpDataBits1.Text        = UserSetting.Instance.MainDeviceComParam.DataBits;
                drpStopBits1.Text        = UserSetting.Instance.MainDeviceComParam.StopBits;

                chkUseIO.Checked  = UserSetting.Instance.MainDeviceComParam.Use;
                groupBox3.Enabled = chkUseIO.Checked;
            }
            catch
            {
            }
            #endregion
        }
        public void RefushSetting()
        {
            #region 设置数据加载
            //串口数据初始化
            drpComList.Items.AddRange(SerialPort.GetPortNames());
            if (drpComList.Items.Count > 0)
            {
                drpComList.SelectedIndex = 0;
            }
            //数据加载设置数据
            try//第一次加载时候无setting数据
            {
                CommunicationParam communicationParam = UserSetting.Instance.MainDeviceComParam;
                if (!drpComList.Items.Contains(communicationParam.ComName))
                {
                    drpComList.Items.Add(communicationParam.ComName);
                }
                drpComList.Text  = communicationParam.ComName;
                drpBaudRate.Text = communicationParam.BaudRate;
                // int x= Convert.ToInt16(Tools.ToolsFactory.Rs232Param.Parity);
                drpParity.SelectedIndex = Convert.ToInt16(communicationParam.Parity);
                drpDataBits.Text        = communicationParam.DataBits;
                drpStopBits.Text        = communicationParam.StopBits;

                ipTextBoxExt1.Text = communicationParam.TcpIP;
                nmServerPort.Value = ushort.Parse(communicationParam.TcpPort);

                chkIsExtTrigger.Checked      = communicationParam.IsExtTrigger;
                checkBox_CamIOOutput.Checked = communicationParam.IsCamIOOutput;

                cmbCommType.DataSource    = System.Enum.GetNames(typeof(InterlockMode));
                cmbCommType.SelectedIndex = this.cmbCommType.FindString(communicationParam.InterlockMode.ToString());
            }
            catch
            {
            }
            #endregion
        }