通过CAN-bus总线对室内空调的温/湿度模拟系统进行控制

图 3 系统菜单

三、主要数据对象

建立好一个空调温/湿度控制系统的MCGS 工程后,实现上位机的主要任务就是建立组态工程与OPC设备的连接,实现上位机的主要任务就是建立组态工程与OPC设备的连接,并对采集到的数据进行处理和显示。在这个工程的实时数据库中,要进行显示、操作的数据对象如表1 所示。由于风道的数据对象较多,为了统一管理,将风道当作两个房间节点来处理。这样,每个房间都只有1 个温度值对象、1 个湿度之对象、1 个温度SV 值对象和1 个湿度SV 值对象。

通过CAN-bus总线对室内空调的温/湿度模拟系统进行控制

为了使系统具备记录数据及浏览历史数据、错误数据和异常数据的能力,在实时数据库中建立了save、ErrorSave 和exception 三个数据对象组。其中ErrorSave 和exception 的组对象成员有:RoomID1 、ErrorTemp、ErrorHum 、ErrorTempSV 和ErrorHumSV ,save 的组成员对象如表1 所示。在运行过程中,系统会定时保存save 组对象到数据库。当通信产生错误和房间温/湿度异常时,系统会将ErrorSave 和exception 保存到数据库。

在此系统中的OPC 设备使用的是ZOPC_Server 服务器。ZOPC_Server 是一个OPC 服务器软件本软件,支持操作全系列的ZLGCAN 系列接口卡,只要在一台PC 机上插上ZLGCAN 系列接口卡中的任何一种或几种,再运行本服务器软件,就可以使用任何一种支持OPC 协议的客户端软件(比如组态软件:组态王KingView、昆仑通态MCGS 和Intouch 等)来连接到此服务器通过此服务器,来跟CAN-bus 网络进行数据的传输。

本设计中,ZOPC_Server 在数值存储模式下和字符串存储模式下提供的数据项都不能直接连接到实时数据库中的数据对象,因此必须编写脚本程序对数据进行处理。关于数据项存储模式,这里选用被推荐的字符串存储模式;但是,使用数值存储模式会更容易实现此系统。

在实时数据库添加字符型数据对象In_CANData 和Out_CANData,字符数为30,将In_CANData 和Out_CANData 分别连接到OPC 设备的输入通道和输出通道,In_CANData 的读写属性为只读,Out_CANData的读写属性为只写。由于这两个数据对象是字符型的,不便于进行数据处理,所以应该先将它们转换为数值型对象。在MCGS 脚本程序中,用户不能定义子程序、子函数和变量,而数据对象可以看作是脚本程序中的全局变量,在所有的程序段共用。这给编写较复杂的脚本程序带来不便。要进行类似子程序和子函数的操作,只能用先将要处理的数据放入全局变量,然后调用策略行中的脚本进行处理,最后将返回的数据放入全局变量的方法进行处理。在实时数据库加添以下数值型对象作为中间变量: