主营:欧姆龙,三菱,安川,Pro-face
会 签
档 号
编 号
保管期限
密 级
阶段标记
F
版 次
1.7
版
名 称
北斗工业控制管理系统平台方案设计报告
单 位
北京航天自动控制研究所15311809316
编 写
校 对
审 核
标 审
批 准
北京航天自动控制研究所
内容摘要:
主题词
北斗工业控制 ModBus 方案设计
更改栏
更改单号
更改日期
更改人
更改办法
1 概述
北斗工业控制管理系统平台旨在提供一套基于北斗短报文数据服务和标准工业控制通信协议的远程工业控制解决方案。平台利用北斗通信链路实现工业现场数据获取和远程控制的目的。北斗工业控制管理系统平台定制开发的软、硬件包括:由北斗工控通信服务软件、北斗工业控制管理系统终端软件、北斗工业控制管理系统终端机三部分组成。
2 设计依据及原则
2.1 设计依据
2.2 设计原则
该设计方案在充分理解任务要求的基础上,贯彻航天型号产品研制的相关规定,在设计中具体遵循以下原则:
3 总体方案
图3.1北斗工业控制平台系统结构框图
服务器监控软件通过Modbus TCP/IP协议连接到北斗工业控制平台,北斗通信链路服务器为服务器监控软件提供链接转换和数据传输服务。北斗工业控制平台向外提供4个独立的以太网口,每个IP地址支持250个PLC/RTU设备,设备号为1-250,北斗工业控制平台根据IP地址和设备号实现目标PLC/RTU设备连接的北斗设备地址的转换;北斗通信链路服务器编码后将数据帧传输至北斗终端,北斗终端设备解码后转换为Modbus TCP/IP协议发送给PLC/RTU设备进行数据采集和控制。
表1 以太网口和设备号与PLC/RTU设备、连接的北斗终端组成的对应关系映射
Modbus 协议指定地址
PLC/RTU设备IP地址
对应的北斗终端地址
以太网端口
Modbus设备号
1
1-250
250个PLC/RTU设备IP地址
250个北斗设备ID
2
1-250
250个PLC/RTU设备IP地址
250个北斗设备ID
3
1-250
250个PLC/RTU设备IP地址
250个北斗设备ID
4
1-250
250个PLC/RTU设备IP地址
250个北斗设备ID
北斗工业控制平台由北斗工控通信服务软件、北斗工业控制管理系统终端软件、北斗工业控制管理系统终端机组成。
软件设计共包括两部分:北斗工控通信服务软件、北斗工业控制管理系统终端软件。其中北斗工控通信服务软件按照功能划分为信道服务器软件设计、信道配置软件设计、自定义协议设计、MODBUS服务器与客户端软件设计。北斗工业控制管理系统终端软件按照功能划分为终端软件设计、MODBUS服务器与客户端软件设计。
图3.2北斗工业控制平台软件结构框图
信道服务器软件负责对服务器监控软件的MODBUS指令进行响应,负责服务器监控软件的MODBUS协议与北斗自定义协议的转换,负责对北斗指挥机进行数据收发控制。软件通过数据映射缓存的方式实现北斗和工控现场带宽不匹配的问题。北斗数据按照用户等级实现不同的数据更新频度,服务器端数据实现秒级更新频度。
终端软件负责控制北斗终端收发北斗自定义协议,负责北斗自定义协议与MODBUS协议的转换,负责与终端PLC/RTU设备通过MODBUS协议进行控制与查询。
信道配置软件负责服务器软件与终端软件的指令配置、资源配置以及通信链路映射关系配置。
基于地址映射的北斗传输协议与MODBUS协议的对应关系,定义读写指令的优先级、请求应答方式。
MODBUS服务器与客户端软件向上通过MODBUS接口为MODBUS客户端提供数据存取服务,使得现场设备的状态可以实时的显示在监控中心平台上。
3.1 软件功能分析
3.1.1 北斗工控通信服务软件方案
图3.3北斗工业控制服务软件结构框图
3.1.1.1 多链接并发
Ø 支持多上位机系统多链接并发访问;
软件按照《基于Modbus协议的工业自动化网络规范》(GB/T 19582-2008)实现C/S服务方式提供通信服务,可以实现1024个以太网连接并发访问。
MODBUS 报文传输服务在502口上提供一个侦听套接字,允许接收新的连接和与其他设备交换数据。当报文传输服务需要与远端服务器交换数据时,它与远端502 口建立一个新的客户连接,以便与远距离交换数据。本地口必须高于1024,并且每个客户连接
各不相同。如果客户机与服务器的连接数量大于授权的连接数量,则最早建立的无用的连接被关闭。激活访问控制机制检查远端客户机的IP 地址是否是经过授权的。如果未经授权,将拒绝新的连接。
基于已经打开的正确的TCP 连接发送MODBUS 请求。远端设备的IP 地址用于寻找所建的TCP 连接。在与同一个远端设备建立多个连接时,选择其中一个连接用于发送MODBUS报文,可以采取不同的选择策略,例如:最早的连接、第一个连接。在MODBUS通信的全过程中,连接必须始终保持打开。一个客户机可以向一个服务器启动多个事务处理,而不必等待前序事物处理结束。本软件支持最大1024个TCP链接。
采用Socket通信来实现Moubus/TCP服务端和Moubus/TCP客户端的互联,Socket (套接字)机制是一种API,其提供的网络通信机制也是客户-服务器模式,本文设计的服务器采用面向连接的服务(TCP)实现数据交换。Socket连接建立和关闭的流程如图所示:
主要步骤为:
(1)服务器端创建Socket套接字,并绑定监听相应端口的输入;
(2)客户端发出建立连接请求,服务器端和客户端建立连接;
(3)客户端发出服务请求,服务器端接收到请求后,处理此请求并把结果返回给客户端;
(4)重复上述过程,直到完成一次会话过程。
Ø 基于TCP/IP协议的C/S服务方式提供通信服务;
北斗服务软件运行于服务器,配置管理软件可以独立运行在客户端或服务器,以C/S访问北斗服务软件。
3.1.1.2 多协议支持
对外通信采用Modbus TCP标准协议进行通信,现场通信数据通过数据缓存区进行读写访问。
3.1.1.3 地址映射管理
将不同的Modbus TCP设备号、OPC设备名映射到北斗通信终端通信,利用北斗通信信息报文的24bit区分不同的现场设备,进行一对一的现场设备管理。
服务软件以终端SIM卡号、终端映射Modbus TCP设备号、服务器SIM卡号、终端IP、终端网关、数据源IP、数据源站地址、OPC设备名等信息为一一对应关系建立关系数据库,提供增删改查功能。
3.1.1.4 Modbus TCP协议
软件按照《基于Modbus协议的工业自动化网络规范》(GB/T 19582-2008)实现配置指令解析、数据指令解析、设置指令解析、设备地址提取。
Modbus/TCP协议使用TCP502端口,查询-应答机制和Modbus协议相同,不同的地方在于组成报文的字节内容和顺序、差错校验方式和地址描述。Modbus/TCP协议中通信采用C/S模式,C/S模型服务方式见图所示:
其中请求(Request):客户端向服务端发送请求;
指示(Indication):服务端标识接收到了客户端请求;
响应(Response):服务端响应请求,开始向客户端发送数据;
证实(Confirmation):标识客户端接收到服务端发送的消息。
ADU(Application Data Unit)应用数据单元,PDU(Protocol DataUnit)协议数据单元,Modbus/TCP协议中有专门的报文头标识MBAP(MocibusApplication Protocol Header)。可见Modbus/TCP数据巾贞中没有专门的错误校验部分,而是在MBAP头中附加了数据长度信息以完成对数据的校验,利用它可以确保接收方可以识别出所传诵的数据的边界,甚至当数据被分割成很多包时也能确保数据的正确性,这些校验措施保证了 Modbus/TCP协议传送数据的正确性和可靠性。
3.1.1.5 OPC协议
OPC DA 3.0规范是2003年3月OPC基金会发布的OPC DA自定义接口规范。该规范制定了OPC服务器和OPC客户程序的COM接口标准,通过制定标准的接口来实现多个厂家的OPC服务器和OPC客户程序开发。
OPC DA以Microsoft的COM/DCOM技术为基础,采用C/S通信模式,并为OPC的服务器和客户端定义了一套标准的COM接口。该规范指出,通过这些标准的数据通信接口,一个OPC客户端可以连接到一个或多个由不同厂家提供的OPC服务器,而多个OPC客户端也可以连接到同一个OPC服务器上,其OPC客户端与OPC服务器之间关系如图所示。
OPC DA规范为OPC服务器定义一个由服务器(Server)、组(Group)、项(Item)三个数据对象组成的三层数据结构体系来管理数据信息,如图3-4所示。其中OPC服务器对象除了管理对象自身的相关信息之外,还作为OPC组对象的一个容器,可以包含多个组对象数据,而组对象除了管理自身的相关信息之外,还作为OPC项的容器,将OPC项包含在组对象之中。
OPC项对象代表的是OPC服务器到数据源的一个物理连接,即我们所要监控的数据点。一个项对象中包含三种属性值(Value)、品质(Quality)和时间戳(Time Stamp)。可是,项对象并没有直接暴露的可用接口,我们要获得项对象的数据信息,必须得通过它的容器——组对象,一个组对象可以任意创建项对象,因此,我们说组对象为OPC客户端程序提供了一种分组管理设备数据的方法。例如,一个组对象代表了一个PLC中需要读写的寄存器组。而其中的项对象便对应寄存器单元。组对象是由服务器对象来管理,这样便构成了OPC服务器对象的三层次结构。
接口是OPC DA数据通信规范的最重要内容,规范规定的三种数据对象——服务器对象、组对象和项对象。以下内容主要介绍服务器对象和组对象的接口定义。
(1)OPC服务器对象
OPC服务器对象是OPC服务器程序对外界可见的主要对象,即客户端程序通过该接口调用OPC服务器对象的功能函数,从而实现对服务器对象的操作。
。
上图所示为一个标准OPC服务器对象及其相应的接口,以下我们来简单介绍一下服务器对象的接口及其功能。
IUnknown接口:微软COM组件必须实现的一个基础接口。
IOPCCommon接口:提供设置客户/服务器对话和查询本地标识的方法。
IOPCServer接口:主要用于组对象的创建、删除、枚举和获取当前状态等操作,是OPC服务器对象的主要接口。
IOPCBrowse接口:提供浏览OPC服务器地址空间的方法。
IOPCItemIO接口:提供读取项对象的值、质量、时间的方法。
IConnectionPointContainer接口:提供向客户程序发送通知或事件的方法。
OPC服务器对象的主要功能:建立和管理OPC组对象;浏览OPC服务器内部的数据组织结构;管理服务器内部的状态信息。
(2)OPC组对象
OPC组对象提供了一种让客户组织数据的方法,是OPC服务器用来管理Item集合的对象。一个标准的OPC组对象及接口如上图所示。以下我们来简单介绍一下服务器对象的接口及其功能。
IUnknown接口:微软COM组件必须实现的一个基础接口。
IOPCItemMgt接口:提供给添加、删除、控制组对象中的项对象的方法。
IOPCGroupStateMgt2接口:提供获取和设置组对象全部状态的方法。
IOPCSyncIO接口:提供对OPC服务器进行同读/写操作的方法。
IOPCSyncIO2接口:继承自IOPCSyncIOPC接口,提供了IOPCSyncIO的全部方法,此外,还提供基于组层次的同步向服务器写入时间戳和质量信息的方法。
IOPCAsyncIO2接口:提供对OPC服务器进行异步的读/写操作的方法。
IOPCAsyncIO3接口:继承自IOPCSyncIO2接口,提供了IOPCASyncIO的全部方法,此外,还提供基于组层次的异步向服务器写入时间戳和质量信息的方法。
IOPCItemDeadBandMgt接口:提供组中某个项对象死区的管理方法。
IOPCItemSamplingMgt接口:这个可选接口提供了管理组中某个项对象的采样周期的方法。
OPC组对象的主要功能:创建和管理Item对象;OPC服务器内部的数据的同步、异步、订阅读取。OPC组对象对象主要面向OPC服务器对底层设备的数据存取,从用户数据源处获取信息。
(3)OPC项对象
OPC项对象没有与外界交流的接口,它只包括三个基本属性——值(Value)、品质(Quality)、时间戳(Timestamp)。值的数据类型为VARIANT,表示实际的数值;品质则标识数值是否有效;时间戳反映了从设备读取数据的时间或者服务器刷新其数据存储区的时间。OPC项并不是实际的数据源,只是表示与数据源的连接。
OPC DA规范规定了三种数据访问方式:同步方式、异步方式、订阅方式。
同步数据访问时,OPC Client程序对OPC Server进行读写操作时,OPC Client程序必须等到OPC Server相应的操作全部完成后才能返回,在此期间OPC Client程序一直处于等待状态,OPC Client的效率比较低。在同步方式时,如果有大量数据读、写操作,必然造成OPC客户程序的阻塞现象,因此同步通讯方式适用于OPC客户程序较少,数据量较小时的场合。
异步数据访问时,OPC Client程序对OPCServer进行数据读写时,OPC Client程序操作后立刻返回,不必等待OPC Server的返回结果,可以立即进行其他操作。当OPCClient完成操作后再通知OPC Client程序。如下图所示。跟同步通讯方式相比,异步通讯的效率更高,适用于进行大量数据访问的场合。
订阅方式进行数据访问时,不需要OPCClient程序向OPC Server发出请求,服务器周期性地扫描数据缓冲区的数据。OPC标签的数据类型是模拟量时,只有标签的当前值与上次值的差的绝对值超过设定的范围时,才更新标签数据并通知OPC Client应用程序。这样OPC Client应用程序就可以自动接到OPC Server送来的变化通知,由此可以忽略模拟值的微小变化,使得网络上的请求包数大大减少,大大降低了对服务器的重复访问次数。从而减轻OPC Server和OPC Client应用程序的负担。订阅式数据采集方式实际上也属于异步读取方式的一种,如下图所示。在数据点很多的情况下,订阅通信方式的优势更能凸现出来。
要开发OPC数据服务器,设计者既需要熟悉OPC规范,又要掌握相应的硬件设备特性。OPC数据服务器大致可以分解为不同的功能模块:OPC对象接口管理模块,数据项和地址空间管理模块、硬件设备通讯模块以及服务器界面模块等。COM组件程序可以用各种语言开发,但最适合COM开发的语言仍然是C++,因此一般都选择采用Visual C++进行开发。
MFC(Microsoft Foundation Classes,微软基础类库)开发一个OPC服务器主要有以下几个步骤:
(1)新建工程,添加对COM的支持,添加从OPC基金会下载的OPC3.0规范的接口文件,然后根据实际情况对各个接口ID进行定义。
(2)创建OPC数据服务器类厂对象。从IClassFactory基类派生出OPCMasterOPCClassFactory类,然后重载CreateInstance()成员函数,通过该函数创建COPCMaster服务器对象。
(3)设计OPC对象。根据实际需要修改OPCServer和OPCGroup类接口查询函数,增加相应的指针成员变量。当客户程序查询某一接口时,实例化该接口类,并返回该接类的接口指针变量,然后,客户程序通过该接口指针变量调用相应的接口成员函数。
(4)数据访问地址空间设计。利用C++标准模板库(STL)中的容器模板,实现对OPC服务器地址空间的树形浏览。
(5)硬件设备驱动程序开发,或者调用硬件厂商提供的“I/O DLL”实现对硬件设备的通讯功能。
(6)界面设计。可以使用MFC中提供的树形列表控件,按照“服务器对象-组对象-项对象”层次在界面左侧用树型结构展示出来,在右侧用列表控件显示具体的项对象信息。此外,还要设计相应的通讯配置对话框。
(1)OPC对象与接口模块:OPC对象与接口由OPC基金会发布的规范规定,它们的主要功能也在规范中体现。在《OPC数据访问接口规范3.0版》中,定义了服务器对象、组对象的接口及功能,只需要按照要求实现即可。项对象,只是说明了主要的功能和一些必须的属性值,具体要根据物理设备的通讯协议的数据格式进行定义,项对象可以用一个类或结构体来描述,该类或结构体应该包含项对象所支持的全部属性。
(2)服务器地址空间和数据管理模块:服务器地址空间和数据管理是OPC服务器中的重要部分。该部分包含了由服务器程序定义的数据项,OPC Client可以通过访问OPC Server对象的IOPCBrwose接口来浏览OPC Server的地址空间及其数据项的属性。地址空间也被称作现场数据缓存区,OPC Client程序通过组对象来访问缓存区中的数据,硬件设备驱动不断地读取现场设备的数据,并将最新的现场数据传送到缓冲管理区中。OPCServer的地址空间是分层次的,跟windows资源管理器的形式类似。采用树型结构来描述这个地址空间,这个树形结构属于多叉树的结构。多叉树又可以转化为二叉树。使用二叉树描述OPCServer32的地址空间,实现的关键是二叉树节点的定义和描述。使用结构体实现,该结构体变量除了存储节点本身的信息外,还应存储其父节点、最左子节点、最右兄弟节点的ID信息。描述地址空间节点的结构体如下:
Typedef struct
{
Dword id;//节点的ID
Char name[100];//节点的名字
Dword dwParent ID;//节点父节点的ID
Dword dwLeftChildID;//节点的最左子节点的ID
Dword dwRightsiblingID;//节点的右边兄弟节点的ID
}Node;
整个OPC Server的地址空间只需要用一个上面的结构体数组就可以存储下来并写入到配置文件中。此外,还必须定义一个类来对服务器地址空间全部节点(亦即节点结构数组)进行管理和操作。这个类主要包括添加、删除、查看、遍历结构体数组的功能。地址空间中的节点实际上就是一个项对象,因此,该类也能对项对象进行管理。在OPCServer接口模块收到OPC Client程序请求后,可以利用该模块提供所请求的OPC Item对应的物理设备数据点的信息。
管理模块是OPC数据存取服务器的一个关键模块,它由五部分组成。
(1)通道定义模块
通道定义是Modbus/TCP服务器(主设备)与远程地Modbus/TCP从设备的连接属性设置项。对Modbus/TCP通讯协议来说,通道由IP地址、IP端口、连接超时时间等组成。对每一个“IP地址-IP端口对”必须定义一个唯一的通道。对于直接连接到TCP/IP网络上的设备来说,使用这些信息就可以唯一地确定连接到OPC服务器的物理设备。
(2)Modbus/TCP从设备映射模块
考虑到OPC服务器连接设备的多样性、可扩充性,地址空间布局的合理性,在管理模块中设计了逻辑标签组对象和逻辑设备对象。由于不同的设备数据处理标准可能有一些差别,支持的Modbus/TCP的功能码可能不同。因此,在管理模块中,物理设备实际上被映射成为属于某一特定通道的逻辑设备,通道的逻辑设备物理设备是一一对应的关系。这种“通道-逻辑设备-标签组-标签”的层次结构与OPC接口的树状地址空间是一一对应的关系,这样只需要在用户界面中为逻辑设备和标签组做配置,对服务器的地址空间也就完成了配置。此外,还可以将逻辑上关联的标签放在同一个标签组中,便于OPC服务器对数据项管理。比如,可以创建一个逻辑设备“PLC01”,将01号PLC中点全部置于该逻辑设备中创建一个标签组“Temperature”,将物理设备中的温度模拟量全部置于该标签组。将相似的数据项进行分类管理,大大提高了存取效率。
(3)数据点映射模块
现场硬件设备的数据直接映射为标签,标签包含了设备数据点的地址、寄存器类型、数据变量类型、读写权限等属性。而OPC项(Item)代表了到数据源(物理设备数据点)的连接。
(4)模拟变量变换模块
硬件设备中的模拟量能以浮点数或整数的形式读出,但这些值有可能只是数据量程范围内的一个相对值,需要经过某种形式的变换才能转换为有实际意义的物理值。
(5)数据点在线监视模块
OPC Server可以在线监视现场设备的数据,并支持对现场设备的数据读写操作。在线监视时,OPC的添加、删除服务器对象、组对象、项对象的操作被禁止。
3.1.1.6 现场数据获取
通过北斗链路获取现场数据、现场设备满足MODBUS访问、通过配置文件完成不同资源的监测等级,不同监测等级数据可按照不同频度进行更新。
下行控制的状态参数及数据返回优先级高于正常数据上传,保证下行控制的及时有效。
现场数据类型分为DI/DO/AI/AO四种类型可选,每种类型可配置最大数量200个。具体的通信指令设置如下:
3.1.1.7 工控指令下发
为保证北斗链路中控制数据准确及时的传递,对控制数据采取下列可靠性保证措施:
3.1.1.8 北斗短报文管理
北斗一号通信能力与用户等级相关,用户等级越低,优先级越低,通信能力越差。
终端->指挥机:60s
指挥机->单个终端:30s
指挥机->全部终端(广播):30s
北斗一号对普通通信的响应时间:小于等于10s
表4 通信类型和指令类型
通信类型
指令类型
备注
上行(终端->指挥机)
控制指令回令
回复关联资源的数据信息
配置文件更新回令
终端状态回令
下行(指挥机->终端)
直接控制指令
配置文件更新指令
资源配置信息直接更新,关联信息按新增、删除操作
终端控制指令
包括握手、系统启动、系统停止等指令
3.1.1.9 北斗通道管理
软件集成对北斗通道添加、删除、修改和查询功能,北斗通道批量添加、删除,启用、停用,方便用户静态和动态管理配置。
3.1.1.10 远程北斗工业控制管理系统终端机管理
软件集成对北斗工业控制管理系统终端机的信息查询、支持远程启动、停止,通过信道配置接口对远程修改北斗工业控制管理系统终端机配置参数、支持北斗工业控制管理系统终端机运行状态监控。
配置文件包括以下几部分内容:
配置文件支持离线更新和通过北斗链路在线更新。由于北斗链路在线更新过程中当前站点无法进行数据查询,且整个系统无法下达控制指令,因此,首次固化配置文件建议离线更新,后续进行配置文件调整时可采用在线更新方式。
3.1.1.11 系统自维护
软件通过监视窗口实时显示系统各服务组件运行状态监视,并实时保存运行状态日志,供用户维护和排查问题定位。
3.1.1.12 通信联络状态监视
软件通过监视窗口实时显示上位机与北斗工业控制管理系统平台服务软件的链路状态、北斗通信联络状态和北斗工业控制管理系统终端机与工控设备的联络状态,提供界面显示。
3.1.1.13 用户权限
软件通过设置管理员、普通用户、监视用户等权限的配置,实现对通信信道、资源配置等的管理。
3.1.1.14 综合管理界面
软件支持图形化的综合管理界面对整个服务软件提供的服务进行可视化管理操作,包括启动、停止和重启;支持各环节策略的可视化管理与维护;支持个模块图形化管理与配置等功能。
3.1.1.15 支持市场主流北斗天线
软件与北斗指挥型用户机接口协议遵循《北斗一号用户机数据接口要求( 4.0 版)》,在前期其它项目设计过程中,与多家天线厂商产品进行了匹配,指标一致性良好。
3.1.2 北斗终端软件设计方案
3.1.2.1 多协议支持
对外通信采用Modbus TCP标准协议进行通信,现场通信数据通过数据缓存区进行读写访问。
3.1.2.2 Modbus TCP协议
同3.1.1.4内容。
3.1.2.3 数据获取指令执行
软件内部设置数据缓存区,解决MODBUS和北斗之间带宽不匹配问题。对上缓存服务软件下发的数据获取指令,对下按照服务软件设定的策略执行对应的协议指令。
现场数据类型分为DI/DO/AI/AO四种类型可选,每种类型可配置最大数量200个。各类型数据优化结构、拼帧传输,减少对北斗带宽的消耗。
按照最大站点数据量计算,完全更新一次有效数据需要更新428Bytes数据,即通过12条报文完成数据的更新,终端数据完全更新周期约为13min。数据查询指令中不同资源可设置不同监测等级,不同监测等级不同的更新频率。当终端数据更新采用不同监测等级查询时,高优先级数据更新周期缩短,低优先级数据更新周期相应延长。
3.1.2.4 工控指令执行
控制指令保持“请求-应答模式”,信道服务器始终向服务器监控软件实时回复控制指令正常回令,并通过北斗通信链路下发控制指令;控制回令通过北斗终端回复至北斗指挥机,回复内容为与控制指令相关的数据查询值。工控指令下发和执行状态返回优先于现场数据获取。
3.1.2.5 远程北斗工业控制管理系统终端机指令执行
通过北斗自定义协议接收服务软件传来的重启指令并执行;接收服务软件传来的修改配置参数指令并执行;收集自身运行状态并传送给服务软件。
3.1.2.6 北斗短报文管理
同3.1.2.7章节内容。
3.1.2.7 系统自维护
软件实时对系统运行状态监视,并提供内部运行寄存器接口,供用户维护和排查问题定位。
3.1.2.8 通信联络状态监视
软件监视北斗通信联络状态及北斗工业控制管理系统终端机与工控设备的联络状态,提供界面显示。
3.1.2.9 终端配置管理
终端配置管理支持北斗工控通信服务软件远程配置和本地Web端配置。
3.2 北斗工业控制管理系统终端机方案
以下针对北斗通信终端设备进行硬件方案设计。
北斗通信终端包括室内单元和室外单元两部分。其中室外单元包括北斗接收机和天线,室内单元包括北斗协议/ModBus协议转换、防雷电路。室内外单元通过电缆(包括供电和RS232通信)相连。
3.2.1 室外单元设计
室外单元包括RDSS天线、低噪放、射频通道、基带处理器、功放,
表6室外单元接口定义
室外单元6芯定义
序号
定义
描述
1
VCC
电源接口。输入电压24V±20%。
2
GND
地
3
RS232-A
RS232通信接口,接收数据。
4
RS232-B
RS232通信接口,发送数据。
5
RS232-GND
信号地
6
NC
NC
3.2.2 低功耗终端设备室内单元设计
采用ARM CORTEX-M(STM32F103VC)架构,外扩CY7C1399B SRAM和29LV320 FLASH、处理器外接1片百兆PHY芯片DM9000扩展1路以太网接口、处理器外扩1个RS232 和1个RS485接口。
通信口:共一路RS232接口,一路RS485接口。RS232和RS485通讯口均采用隔离电源单独供电,高速光耦隔离,波特率9600~115200bps可设。RS232驱动芯片采用MAX232AESE,RS485驱动芯片MAX485ESA、接口示意图如图所示。
串口图
RS232接口图电路图如图,驱动芯片D8采用MAX232AESE,支持最大波特率为120kbps,其中R2~R3为10Ω。
RS232接口图
RS-485接口图如图,波特率范围为1200bps~38400bps。其中R48~R49为47KΩ。
RS485接口图
复位接口:利用电源复位芯片TLC7733监视+3.3V电源,门槛电压达到+2.93V以后460毫秒,复位信号输出无效。电路接口图和复位时序图如图所示。
复位电路和时序图
以太网接口:网络芯片采用DM9000CIEP,支持Modbus/Tcp,采用软件编程,变压器统一选用HX1188。
10~100兆自适应以太网接口,实现标准MODBUS/TCP功能,可实现将本地IO数据映射到远端PLC,或将远端PLC的IO数据映射到本机,组成PLC控制网络。
以太网网络变压器接口图如图,R11~R13为75Ω,C64为0.1uf/2KV,FG为机壳点。
以太网接口图
开入接口:主要由调理、光耦、整形电路组成。
开出接口:提供常开、常闭出点继电器,用来控制负载,每路额定负载电流2A。隔离方式为光电加继电器隔离。
供电及功耗:采用+24V±20%直流电源,要求一、二次电源不共地且均不接机壳,并与二次电源隔离,能够承受40V,不大于1s的电脉冲冲击。设计输出电源为+3.3V对整板供电。为提高电源输入滤波抗干扰能力,除选用了滤波器外,在输入端加电感和电容滤波。
通过综合计算各芯片最大工作功耗为4W。
3.2.3 结构方案
3.2.4 室内单元设计
室内单元采用铝材质,外观尺寸≤200×160×120mm,可固定安装。
3.2.5 室外单元设计
航天拓扑提供,相关技术及环境指标的符合性由航天拓扑保证。
3.3 系统兼容性及可扩展性
本系统对外接口采用标准的MODBUS TCP,并且MODBUS软件均已经过大量工程应用,可以无缝对接现有系统和第三方标准设备。
软件考虑到系统的扩展和延伸,TCP连接数设置为1024。
4 测试及部署方案
4.1 系统测试调试方案
4.1.1 测试调试设备
需要设备除了北斗终端3套+网络监听工具1套外,保障的调测设备如下:
4.1.2 试验测试
低温工作试验
在-40±2℃恒温贮存至4h时,待温箱升至室温(+25±5℃,升温速率≤5℃/min),取出。
低温工作结束后,将产品恢复到常温状态,进行外观检查。
高温工作试验
在+70±2℃恒温贮存至4h时,待温箱降至室温(+25±5℃,降温速率≤5℃/min),取出。
高温工作结束后,将产品恢复到常温状态,进行外观检查和通电测试。
老炼试验
温度:15℃~35℃;相对湿度:20%~80%;老炼时间:200h;
间隔4小时监测
压力测试
并发1000链接,不间断访问24h;
实时检测
4.1.3 系统调试方案
调试服务器软件与仿真主站的TCP/IP连接功能,调试MODBUS协议的解析与回复功能,调试虚拟从站自身状态维护功能。
调试终端软件与仿真从站的TCP/IP连接功能,调试MODBUS协议指令生成与解析功能,调试虚拟主站对从站的数据查询与控制。
调试服务器软件与北斗指挥机的数据收发功能,调试终端软件与北斗终端的数据收发功能,调试北斗自定义通信协议的传输与解析。
调试配置软件生成配置文件的功能,调试服务器软件按照配置文件进行地址转换、虚拟从站建立、配置更新等功能,调试终端软件按照配置文件进行资源配置、数据查询、配置更新等功能。
将调试设备组网,模拟实际使用情况对系统进行操作,调试系统各功能。
4.1.4 现场布置方案
北斗工控一期测试分为实验室、指挥中心、场站三个步骤,具体如下:
北斗终端和数据源Modbus Tcp连接在一个网段,数据源用modsim软件仿真,监控使用modscan软件监视。
图4.1 实验室终端设备布置
北斗终端和数据源Modbus Tcp连接在一个网段,数据源用真实场站上传到交换机侧的真实数据,监控使用Ifix软件(或其他具备Modbus tcp客户端功能的软件)。
图4.2 指挥中心终端设备布置
北斗终端布置在场站现场,和数据源通过Modbus Tcp连接在一个网段。北斗终端将现场采集数据通过北斗发送到北斗服务器软件,监控使用Ifix软件(或其他具备Modbus tcp客户端功能的软件)。
图4.3 场站终端设备布置
4.1.5 现场终端设置
通过配置软件对北斗终端进行现场配置,用于选择读取MODBUS服务器何种数据,界面见图4.4、4.5。
配置参数如下:DI/DO/AI/AO四种类型数据个数(每种类型最大可选255个)、DI/DO/AI/AO四种类型数据偏移地址、数据源IP、数据源站地址、北斗终端IP、北斗终端网关、北斗终端用户SIM卡地址、指挥机SIM卡地址。
图4.4北斗终端参数配置
图4.5数据源偏移地址参数配置
参数设置完毕,回到系统参数设置界面,点击数据保存按钮,然后断电重启北斗终端设备即可。
现场北斗终端与指挥机SIM卡一一对应。
根据现场对终端的配置参数,生成北斗服务的IO点表。IO点表示例内容如下:
序号
数据源地址
北斗服务地址
质量戳
1
40001
41300
03777
2
30001
41000
03521
3
10001
01009
03009
4
00001
02625
03265
4.2 北斗终端配置注意事项
4.2.1 北斗天线安装
北斗天线需垂直安装在南向无遮挡的地方,保障数据通讯畅通。
4.2.2 北斗终端供电
北斗终端供电工作电压:DC+24V±20%,供电线红正-蓝负。
4.2.3 北斗终端数据选择
北斗终端可配置DI/DO/AI/AO四种类型数据,每种类型可选择快变、慢变各100个数据,累计可选择800个原始数据。
4.2.4 北斗终端数据更新时间
在北斗系统不丢帧的情况下,现场最大数据更新约15分钟。
北斗工控作为数据采集监控的应急、安全、备用链路,数据选择应结合工程实际所需,选择必要的数据进行监控,减少传输数据对北斗系统的通讯负荷压力,提高场站数据更新频度,提升数据监控的相应速度。
4.2.5 数据源
4.2.5.1 实验室模拟数据
如图4.6进行北斗终端布置,按4.4进行北斗终端参数设置。模拟数据源配置:运行mod_rssim, 选择simulation-animation-training plc simula,在SCRIP框内输入脚本文件名(如N1.VBS,脚本和EXE放在同一文件夹),确定后查看数据,如数据正常后软件选择为no animation(停止仿真)。一台PC仅能模拟一个MODBUS服务器。
图4.6mod_rssim数据源配置
五台模拟源顺序192.168.1.111-192.168.1.115,五台终端顺序:192.168.1.101-192.168.1.105。
表4.2模拟数据源配置表
终端
模拟源DI
模拟源DO
模拟源AI
模拟源AO
脚本文件
1#
0x12循环
0x34循环
0x0001开始递增0x01
0xFFFF开始递减0x01
N1.VBS
2#
0x56循环
0x78循环
0x0001开始递增0x10
0xFFFF开始递减0x10
N2.VBS
3#
0x89循环
0xab循环
0x0001开始递增0x20
0xFFFF开始递减0x20
N3.VBS
4#
0xcd循环
0xef循环
0x0001开始递增0x30
0xFFFF开始递减0x30
N4.VBS
5#
0x68循环
0x29循环
0x0001开始递增0x40
0xFFFF开始递减0x40
N5.VBS
4.2.5.2 指挥中心数据
现场随机选择四个场站,并按图4.2进行北斗终端布置,按4.4进行北斗终端参数设置。
4.2.5.3 场站数据
将北斗终端按照所需布置在现场终端,按图4.3进行北斗终端布置,按4.4进行北斗终端参数设置。
4.3 部署方案
5 软件工程化及测评
5.1 软件工程化
5.2 软件测评
单元测试的依据:软件详细设计文档
测试类型:
静态测试:文档审查、静态分析、代码审查
动态测试: 功能测试、性能测试、接口测试、安全性测试、强度测试、余量测试、人机交互操作测试等
软件测试提交的文档:
软件测试计、软件测试需求规格说明、软件测试说明、软件测试报告。
按照软件的安全关键等级安排单元测试和配置项测试。在测试类型方面,分为文档审查、静态分析、代码审查、功能测试、性能测试、接口、安全性测试是必选项,人机交互测试、强度测试、余量测试可依据被测软件的情况开展。
6 可靠性设计
6.1 元器件可靠性
6.2 电路可靠性设计
6.3 热设计
6.4 软件可靠性设计
7 安全性和可维修性设计
7.1 安全性设计
7.2 可维修性设计
8 保障性设计
9 可测试性设计
10 环境适应性设计
11 电磁兼容性设计
12 风险分析
经分析,技术方案可行可控,不存在技术风险。
13 培训及质量管理体系
14 售后服务
质保期内,系统运行中出现的问题和不足,提供及时的升级维护和技术支持服务,并承担维护的所有费用。
质保期内提供以下形式的技术服务:
电话咨询:免费提供咨询电话技术支持服务,解答用户在系统使用中遇到的问题,及时提出解决问题的建议和操作方法。
现场响应:自收到用户的服务请求起8小时内,如远程支持不能解决系统故障,指派技术人员赶赴现场进行故障处理。遇到重大技术问题,及时组织技术人员集中处理,并采取相应措施以确保系统的正常运行。
15 主要性能指标
表15.1北斗工控通信服务软件要求满足情况汇总表
序号
技术要求
设计指标
多链接并发
支持多上位机系统并发访问;
基于TCP/IP协议的C/S服务方式提供通信服务。
多协议支持
实现Modbus TCP通信服务
支持OPC通信服务
支持PROFINET、CIP等主流工控协议
Modbus TCP协议支持
支持基于标准Modbus协议的数据采集和控制
OPC协议支持
兼容OPC DA2.0规范
现场数据获取
支持在北斗低带宽条件下数据获取按策略获取
支持数据获取指令优先
支持工控参数数据获取优先
工控指令下发
工控指令的执行状态返回优先于现场数据获取
支持点对点的工控指令发送策略
北斗短报文管理
支持工控指令及返回状态独立组包解包;
支持现场参数独立组包解包;
支持各类数据指令混合组包解包;
支持长包分帧发送;
支持北斗通道管理
支持北斗通道添加、删除、修改和查询;
支持北斗通道批量添加、删除;
支持北斗通道状态管理,启用、停用;
远程北斗工业控制管理系统终端机管理
支持维护北斗工业控制管理系统终端机信息和信息查询
支持远程修改北斗工业控制管理系统终端机配置参数;
支持北斗工业控制管理系统终端机运行状态监控;
系统自维护
系统各服务组件运行状态监视
运行状态日志
通信联络状态监视
上位机与北斗工业控制管理系统平台服务软件的链路状态
北斗通信联络状态
北斗工业控制管理系统终端机与工控设备的联络状态
用户权限
用户管理
权限管理
综合管理界面
支持图形化的综合管理界面对整个服务软件提供的服务进行可视化管理操作;
支持软件服务启动、停止和重启;
支持模块图形化管理与配置;
支持市场主流北斗天线
支持市场主流北斗天线
综合管理界面
支持秒级数据访问频率
支持1000个链接并发访问并发数可扩展
支持1000个终端管理和通信功能并发数可扩展
表 15.2北斗工业控制管理系统终端机软件要求满足情况汇总表
序号
技术要求
设计指标
多协议支持
实现Modbus TCP通信服务
支持OPC通信服务
Modbus TCP协议
支持基于标准MODBUS协议的数据采集和控制
数据获取指令执行
支持在北斗低带宽条件下数据获取按策略获取
数据结果通过北斗链路传给服务软件
工控指令执行
工控指令执行优先;
工控指令执行;
执行状态回传;
远程北斗工业控制管理系统终端机指令执行
接收服务软件传来的修改配置参数指令并执行;
收集自身运行状态并传送给服务软件;
北斗短报文管理
支持工控指令及返回状态独立组包解包;
支持现场参数独立组包解包;
支持各类数据指令混合组包解包;
支持长包分帧发送;
系统自维护
异常状态发送给服务软件
通信联络状态监视
北斗通信联络状态
北斗工业控制管理系统终端机与工控设备的联络状态
16 项目研制计划
17 产品分项报价表
18 结论
本报告针对用户需求和指标进行分析的基础上,结合我们成熟技术及产品工程应用经验,提出了本方案设计报告,通过分析,本项目设计方案合理可行,可以满足用户使用。
专注服务于工控领域 7×8小时售后支持
全方位的技术支持 因为专注所以专业