手册目录
设备:文档里配置的设备,包括了现场站房里面所有需要采集数据和反控的设备,但不包括传输数据到平台用到的设备(DTU/RTU/数采仪)。比如是各种分析仪,水站用到的PLC、留样器,空气站用到的动态校准仪,还有流量计、电极等等。
因子:设备包含了一些属性和控制命令,我们把这个称为因子。比如是采集到的数据、设备的状态、启动测量的命令等。我们把因子分成了实际因子、状态因子、反控因子等若干类别。
实际因子:分析仪的测量结果,比较氨氮分析仪的测量结果是氨氮浓度,水质五参数分析仪的测量结果是pH、溶解氧、温度、浊度和电导率。实际因子一般是一个浮点数。
计算因子:此因子也是分析仪的测量结果,只是它不是分析仪直接测量出来的,而是通过公式计算出来的。比如,流量计测量了瞬时流量,如果我们需要累计流量,我们就需要通过计算得出:累计流量=历史值+瞬时流量*时间。
模拟量因子:此因子其实就是一个计算因子,只是它的计算公式比较固定(根据测量值、量程、模拟量上下限计算),我们把它独立成一个因子。
状态因子:代表了设备的状态,例如是运行状态、故障状态等。
反控因子:一个因子代表了一个控制命令,例如是启动测量、启动校准等。
通讯协议:工控机需要跟设备进行通讯,不是连上一根线就可以。我们需要知道设备是怎么通讯的,也就是工控机发送什么命令,设备才会返回数值,或者启动测量。设备的通讯协议各种各样,比较常见的是Modbus协议,也有一些是厂商自定义的。
附加信息:设备各种各样,使用的通讯协议不尽相同,而且即使表面说用标准的协议,实际上也可能是经过修改的。所以我们提供一个附加信息的选项,以提高软件的灵活性。具体要填入什么内容,根据具体设备确定。
Modbus地址(从机地址):在大多数情况下,我们使用一个串口连接一台设备,而实际上,一个串口是可以同时连接多台设备的,连接结构如下图所示。在这种结构之下,如果主机发送一个命令,那么所有从机都会收到。但工控机其实只想发给其中一台从机,它是怎么区分不同的从机的呢?这里使用的就是Modbus地址,或叫从机地址。主动发送地址为x的命令,只有从机地址为x的设备需要回复,其他设备直接忽略。
在一个串口只连接一台设备的情况下,从机地址也需要跟工控机对应起来,否则无法通讯。
波特率、校验位、停止位、数据位:串口传输的参数。波特率可选9600、19200等,校验位可选无校验(NONE)、偶校验(EVEN)、奇校验(ODD)等,停止位可选1、2等,数据位一般为8。它们的具体意义不在此详述。需保证工控机和设备的设置保持一致,否则无法正常通讯。
因子地址:设备包含了众多因子,这些因子是怎样摆放的呢?我们可以把设备比作一个表格,它有两行,一行是因子地址,另一行是代表意义,如下图所示:
在上表中,温度值的地址是1,设备状态的地址是4,等等。
设备跟工控机的连接方式是多样的,可以使用串口线,也可以使用网线,而在使用网线的时候,可以使用TCP、UDP连接,工控机也可能作为服务端。在这些连接方式中,主要采用串口连接的方式。
设备使用的通讯协议五花八门,但以Modbus协议为主,而且使用此协议的设备越来越多。
根据上面的情况,我们在本文档主要讨论串口连接、使用Modbus协议的设备配置方法。其他设备的配置类似,只需要微调即可。
注意:有些人认为,知道了设备使用Modbus协议,就能够通信了。其实不然。在上一部分的因子地址项中提到,设备类似于一个表格,不同设备的这个表格是不一样的。比如,设备A在地址4中存放测量值,设备B在地址2中存放测量值。所以,要跟设备正常通信,还需要知道设备因子地址的表格。这需要开发者,或是厂商提供。
在日常的使用中,我们一般都会使用第四节所说的简易配置方法。但如果对常规配置方法不了解,后面也是会出现问题的。所以需要先看这一节的内容。
软件组目前已经收集了大量的设备通讯协议,但不一定齐全。在没有通讯协议的情况下,需要先向设备开发人员或厂家索取。
对于使用Modbus协议的设备,我们还需要获得一个地址表,这些表格如下图所示:
有近九成通讯不上的原因都出在通讯线上。如果是自焊的线,需要特别注意线是否是通的、对应的端口是否接对。另外,485转232的模块经常是坏的,还要留意九针串口用平行线还是交叉线。
这里的参数是指串口号、波特率、校验位、从机地址等参数,在第一节已经提过,设备和工控机的这些参数必须对应,否则无法通讯。
由于设备各不一样,查看这些参数的方法也不尽相同。一般要在“设置”、“通讯协议”等字眼的菜单里寻找。如果是没有显示屏的设备,可以查看说明书,看设备的默认参数是什么。
在工控机一端,一般要查看接了哪个串口。如果工控机上没有印刷“COM1”、“COM2”等字符,就只能使用串口调试助手慢慢试了。如果使用了多串口卡(MOXA卡),可在电脑的设备管理器中查看串口号。
在首页点击设备配置按钮,进入设备配置页面。
点击添加设备按钮,根据取得的信息,填写如下图所示(具体根据实际填写):
点击确定以后,将看到如下界面:
在添加因子之前,我们需要先拿到因子地址表。假设我们现在拿到了以下的一张表:
在上表中,水样实测值就是一个因子,我们可以看到它的地址是0x1008,然后类型是浮点数。我们现在添加这个因子。
点击设备右方的因子列表按钮,进入因子配置页面。然后点击添加因子按钮,将会弹出以下窗口:
根据上面的信息,我们填入以下内容:
注意:这里填写的地址要比文档里的地址少1,例如文档地址是40016,这里就填15。
是否显示:是否在流程图界面和因子一览界面中出现。
报表显示:是否在报表查询中出现。
小数位数:显示和上传平台的数据的小数位数。存储在数据库的数据为从仪器读取的原始值,不受此影响。
数据库单位:采集到的原始数据的单位。
显示单位:显示在界面上的单位。注意:只要设置了这两项,软件内部会自动对数据进行单位的转换。
报警上下限:超出上下限,软件会报警,如果有留样器,还会进行超标留样。
高低量程:一般在模拟量因子中使用。
在添加状态因子和反控因子的时候,我们需要填写存储格式。
一般在PLC里面会出现线圈,而其他分析仪使用的都是寄存器。状态一般是读,而反控是写。数据的类型根据设备文档进行配置。
如果你还没有看第三节的内容,请先看一遍。
其实大部分种类的设备,我们都已经预先配置好,只需要导入即可。水质设备配置方法
把设备预配置好的dev文件下载到电脑,然后点击导入按钮,选择该文件,设备和该设备的因子都会导入到软件中。
导入之后,需要把设备的真正串口修改正确。
未就绪:设备是隔一段时间(例如是12s)采集一次数据的,看到这个说明还没到采集的时间,等一等再按刷新即可。
串口打开失败:检查工控机上有没有打开了其他软件,使用了系统需要的串口。
串口读写错误:有两种情况,一是没有收到设备发来的数据,二是数据格式有误。在采集消息窗口可以判断是哪种情况。
第一种情况:检查接线是否正确,检查串口配置信息是否有误。
第二种情况:检查是否使用了不匹配的协议。
(1)软件是否在运行状态。
(2)设备配置页面是不会自动更新的,需要点击刷新按钮。
(3)设备配置是否跟实际情况匹配。
(4)使用的协议是否匹配。
(5)串口线是否连通。90%的错误都源自于此。
(6)如果上面的检查都没有问题,那我们还需要检查设备的问题。如果确定是设备的问题,需要让研发的同事或厂家升级程序。
在设备配置页中,选中配置好的设备,点击导出按钮,软件会生成一个dev文件。把这个文件放到其他工控机上,再使用导入功能,即可完全复制配置。
软件默认只显示常用的设备协议。如果需要额外的设备协议,可点击系统设置菜单,然后在设备通讯协议显示选项中选择全部。
仪器是用一个数字代表其状态的,不同的仪器数字的意义不尽相同。例如A仪器用0代表待机、1代表测试中;B仪器用1代表待机,5代表测试中。上位机需要用一个表格,去解析这些数字。因为仪器各种各样,工控机上不一定有跟这种仪器对应的表格,就导致了状态对应不上。
这个表格一般在下载导入文件的时候会附带(一个后缀为xml的文件),把它放在“安装目录/protocol_config”目录下即可。
一般项目使用MOXA或研华的多串口卡,每根线端有个标号,那个标号并不是实际的串口号,我们需要在设备管理器中查看其串口号。
在开始菜单上右击计算机,选择管理。
在弹出的窗口左侧,选择设备管理器,右边展开端口(COM和LPT)节点。我们在这里可以看到多串口卡每根线对应的串口号,例如标号为4的线,即为COM11。