假设在工业现场有若干台空调需要监控,首先我们需要监视它的温度,湿度,运行状态;其次我们需要对它进行启停 *** 作;然后我们需要接受它的非停事故报警信息;最后我们常常需要分析某一时段的运行参数来判断空调的状态。运用面向对象编程的思想,我们创建一个类—空调,在这个类中分别定义相应的属性,方法和事件,其中属性即可以是简单的数据,也可以是复杂的结构体。这个类即可理解成OPC UA的信息模型。OPC UA将现场的这些实时数据(DA),历史数据(HDA)还有事故报警数据(A&E),在同一平台进行管理,即为统一架构。
用这种模式来通讯,效果怎么样呢?下面我们做一个简单的演示。在unified automaTIon公司出品的demo server中,已经定义了若干个空调,我们通过该公司出品的客户端UA Expert进行监视。在菜单栏的左侧,列出了该空调的属性,方法和事件;在右侧中,这里只是监视空调的温度,湿度和运行状态。这时,空调是停止(OFF)状态。如果需要将空调启动,并将运行目标温度设定为比较舒服的25℃,只需要调用StartWithSetpoint方法,并在对话框中输入目标值即可。
监控事件与报警信息时,创建事件试图并订阅该空调的事件。空调的启停状态发生会触发一个事件,空调处于停止状态则会触发一个报警,同时在客户端也可以确认报警。
最后,如果在服务器端,将空调某个属性历史存储功能打开,经过一段时间的存储后,在客户端就可以读取历史数据了。
这就是信息模型与统一架构的魅力,让一个通讯软件有了hmi的感觉。
当然,OPC UA的这个信息模型其实也不是在工控界独领风骚的,在PTC的物联网平台Thingworx中的物模型(thing model),罗克韦尔的CIP协议也都是类似的面向对象的模型。所以说好的设计都是相似的,不好的设计各有各的磕碜。
责任编辑:lq
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)