一种基于屏幕模拟技术的通用型自动化设备远程监控***
(一)技术领域
本发明涉及一种基于屏幕模拟技术的通用型自动化设备远程监控***。
(二)背景技术
计算机技术与通信技术的紧密结合使计算机网络得以迅速普及与发展,计算机网络进入工业控制领域,出现了以网络为基础的远程监控***。计算机网络为自动化设备的远程监控提供了分布式的通讯环境和良好的扩展性。
自动化设备远程监控方式包括以下四种:
(1)保持型的远程监控方式:远程监控仅仅向设备控制***发出控制命令,而由设备自主的完成这个命令,监控设备只对设备进行监视,在必要时对设备进行干预。这样就要求设备不断向远程监控***发送设备运行信息,远程监控***保持对设备的监控能力。这种模式可实现远程设备的无人控制,可应用于危险环境和人力不能到达的地方等。
(2)完成型的远程监控方式:远程监控***仅仅向设备控制***发出控制命令,而由设备自主的完成这个命令,远程监控***不对设备的具体实现过程进行监控,设备完成任务后向远程监控***报告。设备的操作控制完全在本地进行,设备在本地操作人员的监控下完成加工任务。
(3)完全型的远程控制方式:设备的本地控制***仅仅控制设备的执行机构,全部的操作控制由远程监控***完成。在这种方式中,设备控制***和设备是分离的,而在设备控制***内信号的传递速度要求很高,要求***能够立刻对现场做出反应。这种控制方式用在一些特殊的行业。
(4)人机交互式远程监控方式:设备在本地操作人员和远程监控***的协同控制下工作,即设备在远程监控***的指挥下工作,由本地操作人员对设备进行控制和维护工作。在任务执行过程中,可随时建立连接,进行设备之间和人员之间的交互,设备的状态信息可随时在远程监控端采集。这是目前使用比较多的一种监控方式。
远程监控***的特点是:远距离、不确定网及生产中信息的实时性,因此开发该远程监控***要涉及以下三方面:网络通信技术、网络数据传输及数据传输安全。
(1)网络通信问题:***要具有远程控制的功能,即要能够实现监控中心异地监控另外一个控制***的工作。
(2)数据传输问题:在具有远程控制功能的***中,控制端用户要想知道被控端用户目前的情况,通常采用两种方式:图形方式和文本方式。
(3)网络安全问题:保证数据在网络上传输是安全的,***应当采取一些安全措施,如使用数据传输加密技术、数据完整性鉴别技术及防抵赖技术等。多年来,在自动化设备的远程监控研究中,涌现出了各种监视和控制方法。然而,几乎所有的监控软件都是依据特定的自动化设备专门设计的。因此,对于每套自动化设备都需要重新设计、开发专用的远程监控软件,继而大大提高了软件开发的成本,增加了远程监控***的开发周期。
普通的自动化设备远程监控软件在设计之初就限定了被控设备的类型和数量,所以基本不具备对未知设备的自适应功能。事实上,在工厂和企业的实际生产过程中,经常会部分更新或更换设备。对于这种情况,只能根据设备变更情况修改远程监控软件,甚至重新设计远程监控软件。所以,针对一个或几个特定自动化设备所设计的远程监控***功能有限,不利于新设备拓展,缺乏通用性。
在微机控制领域,随着网络应用的发展,人们开始利用网络去实现诸如远程监视、控制等方面的应用。这方面的应用需求直接促使了屏幕共享技术的出现。屏幕共享的目的是在远端客户机上重现主机屏幕的界面显示内容,也就是一种虚拟终端的概念,使得远端的用户感觉是坐在主机旁边一样。目前有很多基于屏幕模拟技术的产品。例如X window和Windows的远程终端服务、NetMeeting、Symatic的PC Anywhere、Remote Administrator、VNC以及国内的红蜘蛛教学***等。
基于屏幕模拟技术的微机控制软件的设计目的是为了实现对微机或网站服务器的远程操作,其特点是采用一对一的操作方式。这类软件并不适合应用于自动化设备的远程监控中。因为自动化设备的远程监控在***稳定性方面要求更高,而且还需要具备多主控端和多被控端的并发工作,以及特殊的控制操作,包括设备紧急处理等。
控制方法应当包括:设备的远程数据采集;工业流程的远程监视;设备控制***的远程调试和配置;设备的远程控制和设备的远程维护;信息的集中管理与高层监控;以及设备之间全方位信息的融合。实现技术人员无须亲临现场或恶劣的环境就可以对现场设备的生产情况进行监视、参数调节、故障恢复等操作;实现专家在远程即可对现场技术员进行技术指导,甚至直接控制设备。从而提高信息管理决策水平,满足整个生产***向自动化、综合化、智能化的方向发展,适应未来发展的需求。
(三)发明内容
为了克服已有技术中自动化设备远程监控***不具备通用性和自适应性的不足,本发明提供一种具有良好自适应性的基于屏幕模拟技术的通用型自动化设备远程监控***。
本发明解决的技术方案是:
一种基于屏幕模拟技术的通用型自动化设备远程监控***,包括主控端和被控端,主控端和被控端通讯连接,被控端包括:
自动化设备组,包括若干个自动化设备;
设备操作单元组:包括若干个设备操作单元,用于在本地直接监视与操作自动化设备;
设备驱动单元组:包括若干个设备驱动单元,用于在设备操作单元组与自动化设备组之间建立连接;
初始化单元,用于检查可用的自动化设备及其对应的设备驱动单元,为每个自动化设备设定设备序号,并分别开启对应的设备操作单元;
图形界面实时截取单元,用于截取设备操作单元组的监视和控制界面,整理为虚拟图像信息;
发送单元,用于将被控端虚拟图像信息发送到主控端;
虚拟操作实现单元,用于接收主控端***的指令序列,检查主控端***虚拟操作命令的正确性和时效性,转换并执行。
主控端包括:
屏幕虚拟界面模拟单元,用于接收被控端的虚拟图像信息展示虚拟的被控端操作界面;
监控设备管理单元,用于通过虚拟的被控端操作界面操作设备操作单元组,控制自动化设备组的监控循环和操作,并生成操作信息;
虚拟操作发送单元,用于将监控设备管理单元生成的操作信息转换为被控端可识别的指令序列,并发送到被控端。
所述的被控端还包括图像压缩单元,用于将图形界面实时截取单元截取的虚拟图像信息进行压缩;
所述的主控端还包括图像解压单元,用于将接收到的虚拟图像信息进行解压。
一种基于屏幕模拟技术的通用型自动化设备远程监控***的工作流程:
检查可用的自动化设备及其对应的设备驱动单元,为每个自动化设备设定设备序号k,并分别开启对应的设备操作单元Pk。
截取t时刻的设备操作单元操作界面Tk。
将图像Tk通过网络通讯在一定时限内传送到远程主控端,并在主控端展示虚拟的控制程序界面。
主控端通过虚拟的被控端操作界面,远程操作设备操作单元组,控制完成自动化设备组的监控循环和操作操作人员在t+1时刻的操作命令。操作命令可以是1个也可以是1组,即在一定时限内的操作命令向量Ct+1=(c1,c2,...cn)T。
通过网络通讯将操作命令向量Ct+1从主控端虚拟操作发送单元传送回被控端,经过正确性和时效性检测,逐一在设备操作单元组中执行远程操作。
循环以上步骤,并控制每次步骤的完整实施时间在较短时间内完成,则可实现自动化设备的虚拟远程监控。
本发明所述的一种基于屏幕模拟技术的通用型自动化设备远程监控***的有益效果主要表现在:1、设有初始化单元,可自动检查可用的自动化设备并开启对应的设备操作单元,具有良好的自适应性和通用性;2、基于屏幕模拟技术,可实现多对多的设备控制。
(四)附图说明
图1是本发明一种基于屏幕模拟技术的通用型自动化设备远程监控***的结构图。
图2是本发明一种基于屏幕模拟技术的通用型自动化设备远程监控***的流程图。
(五)具体实施方式
下面结合附图对本发明作进一步描述。
参见附图:一种基于屏幕模拟技术的通用型自动化设备远程监控***,包括主控端和被控端,主控端和被控端通讯连接,被控端包括:
自动化设备组,包括若干个自动化设备;
设备操作单元组:包括若干个设备操作单元,用于在本地直接监视与操作自动化设备;
设备驱动单元组:包括若干个设备驱动单元,用于在设备操作单元组与自动化设备组之间建立连接;
初始化单元,用于检查可用的自动化设备及其对应的设备驱动单元,为每个自动化设备设定设备序号,并分别开启对应的设备操作单元;
图形界面实时截取单元,用于截取设备操作单元组的监视和控制界面,整理为虚拟图像信息;
图像压缩单元,用于将图形界面实时截取单元截取的虚拟图像信息进行压缩;
发送单元,用于将被控端虚拟图像信息发送到主控端;
虚拟操作实现单元,用于接收主控端***的指令序列,检查主控端***虚拟操作命令的正确性和时效性,转换并执行。
主控端包括:
图像解压单元,用于将接收到的虚拟图像信息进行解压;
屏幕虚拟界面模拟单元,用于接收被控端的虚拟图像信息展示虚拟的被控端操作界面;
监控设备管理单元,用于通过虚拟的被控端操作界面操作设备操作单元组,控制自动化设备组的监控循环和操作,并生成操作信息;
虚拟操作发送单元,用于将监控设备管理单元生成的操作信息转换为被控端可识别的指令序列,并发送到被控端。
工作流程包括以下步骤:
第一步:初始化现场自动化设备所用的工控机,可以是一台或者几台,一个工控机控制一个或多个自动化设备。
第二步:初始化需要运作的各个自动化设备。
第三步:检测设备启动是否正常,若不正常则重复第二步。
第四步:开启1-n的所有设备驱动单元组,每个设备驱动程序对应一个自动化设备。
第五步:检测每个驱动程序启动是否正常,若不正常则重复第四步。
第六步:开始当前一次远程监控周期,指定需要监控的被控端设备Dk。
第七步:开启设备Dk对应的设备操作单元Pk。设备操作单元Pk是可以在被控端工控机上对设备进行直接监视和操作的程序,并且具备图形化的显示和控制界面。
第八步:截取操作程序Pk在t时刻的界面图像Tk。再内存中定位操作***图形界面所使用的内存区域。获取控制程序Pk所占用屏幕的大小:左边距、顶边距、宽度和高度。根据控制程序界面大小在屏幕图像中截取对应参数大小的光栅图Tk。
第九步:使用静态图像压缩算法压缩图像Tk。
第十步:将被控端获得的界面图像Tk通过网络通讯手段在一定时限内传送到远程主控端。
第十一步:控制端接收压缩后的图像数据。
第十二步:根据不同的压缩算法分别对图像进行解压,还原为控制界面Tk。
第十三步:通过虚拟的被控端操作界面远程操作设备操作单元组,刷新操作端界面图像,使之与现场操作界面直接对应,控制完成自动化设备组的监控循环和操作。
第十四步:主控端直接操作虚拟的被控端控制程序,捕捉操作人员的t+1时刻的操作命令。操作命令可以是1个也可以是1组,即在一定时限内的操作命令向量Ct+1=(c1,c2,...Cn)T。
第十五步:通过网络通讯将操作命令向量Ct+1从主控端虚拟操作发送单元传送回被控端。
第十六步:被控端虚拟操作实现单元检查命令Ct+1的正确性和时效性。
第十七步:转换Ct+1为控制程序Pk所能接收的指令序列,按先后顺序执行操作Ct+1。
第十八步:检测是否继续监控,若继续监控则跳转至第六步。
第十九步:关闭操作。