private void FormDVControlPanel_Load(object sender, EventArgs e) { try { // 初始化控制设备 if (Controller == null) { // 从配置文件中读取设备配置信息并创建对象 spComm = CommonHelper.Instance.CreateSerialPortObject("主控串口"); // 打开串口 spComm.Open(); // 设置读超时 spComm.ReadTimeout = ModbusCommand.DefaultTimeout; // 创建设备控制类:采用串口通信和Modbus RTU协议 Controller = new HZKController(new SerialPortAdapter(spComm), ModbusFactory.Instance.GetProtocalProxy()); } // 初始化命令处理类 commandInvoker = new CommandInvoker(); // 订阅命令处理的事件 commandInvoker.OnCommandError += UpdateCommandErrorInfo; // 命令执行错误的事件 commandInvoker.OnCommandExecute += UpdateCommandExecuteInfo; // 命令执行正确的事件 // 初始化监控类 //deviceMonitor = new Monitor(Controller); //deviceMonitor.OnDeviceMonitorMessage += UpdateClipBoardInfo; // 更新信息栏的事件 } catch (Exception ex) { MessageUtil.ShowWarning(ex.Message); return; } // 初始化表格 InitGridView(); // 信息栏取消焦点 memoClipboard.Select(0, -1); }
/// <summary> /// 窗体加载初始化 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void FormDVDeviceControl_Load(object sender, EventArgs e) { // 初始化数字按键设置 InitButtons(); // 设置数字键状态 SetDigitalButton(Convert.ToInt32(listCabinetInfo[0].CabinetLayers)); try { // 初始化控制设备,采用ModbusRTU协议支持的串口 if (Controller == null) { // 从配置文件中读取设备配置信息并创建对象 spComm = CommonHelper.Instance.CreateSerialPortObject("主控串口"); // 打开串口 spComm.Open(); // 设置读超时 spComm.ReadTimeout = ModbusCommand.DefaultTimeout; // 创建设备控制类:采用以太网的TCP客户端通信和ModbusTCP协议 Controller = new HZKController(new SerialPortAdapter(spComm), ModbusFactory.Instance.GetProtocalProxy()); } // 初始化命令处理类 commandInvoker = new CommandInvoker(); // 订阅命令处理的事件 commandInvoker.OnCommandError += UpdateCommandErrorInfo; // 命令执行错误的事件 commandInvoker.OnCommandExecute += UpdateCommandExecuteInfo; // 命令执行正确的事件 // 初始化监控类 // commandInvoker.OnDeviceMonitorMessage += UpdateClipBoardInfo; // 更新信息栏时间 } catch (Exception ex) { MessageUtil.ShowWarning(ex.Message); return; } }
private MyCache _Cache = new MyCache("colCheck"); //“是否保存”列的列值 #region 初始化 /// <summary> /// 初始化设备控制及监控 /// </summary> private void InitDeviceControl() { try { // 初始化控制设备,采用ModbusRTU协议支持的串口 if (Controller == null) { Controller = new HZKController(CommFactory.Instance.GetCommunicationProxy("主控串口"), ModbusFactory.Instance.GetProtocalProxy()); } // 连接通信口 Controller.Connect(); // 初始化设备监控类 devMonitor = new DeviceMonitor(Controller, MONITOR_PERIOD_TIME); // 订阅设备运行状态信息事件 devMonitor.DeviceRunStatus += UpdateClipBoardInfo; } catch (Exception ex) { MessageUtil.ShowWarning(ex.Message); } }