版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ModbusBACnet协议转换网关总体设计方案ModbusBACnet协议转换网关总体设计方案/ModbusBACnet协议转换网关总体设计方案ModbusTOBACnetIP协议转换网关总体设计方案[V1.0]编写:___校对:___审核:____________审批:____________广东××楼宇科技有限公司2009-8-2目录一、项目背景 3二、设计原则 3三、拓扑结构 4四、总体设计方案 54.1产品整体设计 54.2协议转换器功能 5五、硬件设计方案 65.1MTB协议转换器硬件结构 65.2MTB协议转换器功能说明 7六、软件设计方案 86.1软件架构设计 86.2MTB协议转换器系统子模块设计 106.2.1BACnet接口模块 106.2.2Modbus接口模块 126.2.3CGI模块 126.2.4Web模块 126.2.5安全性设计 16七、技术参数 177.1MTB协议转换器主模块技术参数 17八、开发工具 18九、进度安排、项目组成员、与预算 18一、项目背景本产品用于将MODBUSRTU通讯的设备接入BACnetIP网络。本产品在MODBUS网络中为主站,可接8个从站。本产品在BACnetIP网络中为一个网络设备,用户可将从MODBUSRTU网络中的数据点一一对应到BACnetIP网络中的数据点。ModbusRTU转BACnetIP,通过BACnet对象可以读/写任何标准的Modbus寄存器。实现从MODBUSRTU主(Master)到BACnetIP转换。向下提供1个RS485/MODBUSRTU接口,可连接8台MODBUS从(Slave)设备,速率支持2400~38400bps,通讯距离可达1000米。向上提供1个BACnetIP接口,速率支持10/100M。Modbus与BACnet数据映射配置采用web进行配置,支持Modbus的coils、holdingregister、inputregister、discreteinput这四类标准的寄存器;Modbus寄存器的映射关系和ModbusRTU的波特率等参数通过WEB进行配置Modbus轮循的时间间隔可以进行配置二、设计原则总体设计原则是产品必须以市场为导向,满足用户的使用需求,要把握住产品的主流方向,保证产品在生命周期内不会被淘汰。产品开发坚持宏观把控,从各方面考虑风险因素,争取把风险降低到最低。三、拓扑结构图3.1MTB协议转换器3000的系统拓扑图该系统采用二级网络的架构,MTB协议转换器与通用BACnet浏览器软件或客户端通过BACnetIP进行数据交互,并能与第三方标准的BA系统进行无缝集成;系统内嵌WEB服务器,Modbus与BACnet系统配置通过Http协议直接访问、配置,操作直观、简洁。四、总体设计方案4.1产品整体设计该协议转换器核心的功能是实现ModbusRTU与BACnetIP协议数据转换。该系列协议转换器内嵌了功能强大的Web控制软件,用户无需上位机软件,通过Web页面访问系统界面可实现对协议转换器的管理和控制,并可进行参数配置,Modbus从机设备管理等功能,充分发挥Web强大的管理和控制功能。现场人员可以直接通过浏览器对MTB协议转换器系统进行访问、配置,配置完成后可以快速与支持BACnetIP协议的BAS系统进行集成。MTB协议转换器与Modbus从机设备模块之间通过RS485进行通信,带有1条RS485总线,每条总线可扩展8个Modbus从机设备.4.2协议转换器功能Web功能可通过登陆IE浏览器访问、配置协议转换器相关参数。数据对象配置,包括对模拟量、二进制量、多态、输入、输出、值对象进行配置。Modbus配置,配置菜单包括,ModbusRTU数据、ModbusRTU设置、网络通信与Modbus从机设备通信,采用ModbusRTU协议实现数据通信。集成BACnetIP协议,在以太网上采用BACnetIP协议向BAS系统接口。实现Modbus协议到BACnetIP协议的数据映射,把Modbus从机设备数据转换为标准的BACnetIP对象。安全机制密码登陆,经过授权的用户才允许登陆访问MTB协议转换器控制器。辅助功能带有电源、运行和通信指示灯。带有蜂鸣器提示功能。五、硬件设计方案5.1MTB协议转换器硬件结构MTB协议转换器采用模块化设计,主要功能电路有CPU,程序存储电路,数据存储电路,485通信电路,Ethernet通信电路,USB电路,实时时钟电路,复位电路,指示灯电路,硬件结构如图5.1所示:图:5.1硬件结构图5.2MTB协议转换器功能说明电源电路:给MTB协议转换器各个电路提供供电,采用DC-DC电源芯片,输入DC24V,输出5V,再由LDO芯片把5V变换成3.3V和1.8V,供整个MTB协议转换器使用。主要技术参数:供电电压:DC24V,输出电压:DC5.0V,3.3V,1.8V。CPU电路:该模块主要是一个芯片外加一个晶振电路。,这是整个MTB协议转换器控制器的核心部分,实现各种复杂的逻辑运算和通信数据处理,以与对其他外围电路的监测和控制。微处理器芯片内部嵌入32bit的CPU,小容量内部RAM、ROM,具有外部存储扩展接口EBI、I2C、SPI、UART、USB、Ethernet等各种通信外设接口,JTAG和debug调试口等,可以满足复杂的控制和各种通信协议的处理。主要技术指标如下:32bit芯片,主频200MHz,带有MMU功能,支持Linux操作系统,具有EBI接口,可外扩FLASH和SDRAM,1个以上的10M/100M自适应Ethernet通信接口,2个USB接口,其中一个USBHost,一个USBDevice,1—2个I2C接口,1—2个SPI接口。可选的核心芯片:三星:S3C2410,主频200MHz,3个串口,2个以太网接口,带有MMU功能,可扩展NandFlash,SDRAM。本设计中选用三星的S3C2410控制芯片。芯片简介:S3C2410处理器是Samsung公司基于ARM公司的ARM920T处理器核,采用0.18um制造工艺的32位微控制器,该处理器最高可运行在203MHz。功能特点:内部1.8V,存储器3.3V,外部I/O3.3V,16KB数据Cache,16KB指令Cache,MMU,内置外部存储器控制器(SDRAM控制和芯片选择逻辑),4个带外部请求线的DMA,3个通用异步串行端口,2通道SPI,一个多主I2C总线,一个I2S总线控制器,两个USBHOST,一个USBDEVICE,117个通用I/O,带MMU的先进的体系结构支持WinCE、EPOC32、Linux,272-FBGA封装。存储电路:通过EBI接口外扩存储,包括程序存储器、数据存储器,配置如下:采用64M的NandFlash,采用64M的SDRAM。以太网通信电路:2个10M/100M的以太网通信电路,该电路主要由以太网控制芯片,网路变压器与RJ-45接口组成。USB通信电路:一个USBHost接口和USBDevice接口,该接口可用作程序升级或扩展功能用。实时时钟电路:采用实时时钟芯片,给MTB协议转换器提供精准的实时时钟,具有后备电池。指示灯和蜂鸣器电路:指示灯用于MTB协议转换器运行指示、报警指示和通信指示,蜂鸣器用于系统启动提示或其他扩展功能。调试口:Debug通过RS232方式实现,JTAG调试口直接引出即可。六、软件设计方案6.1软件架构设计MTB协议转换器的软件架构采用分层,模块化的设计思想,以降低耦合性和开发难度。MTB协议转换器功能从下到上依次为硬件平台、操作系统层、设备驱动层、通信层和应用层。图6.1为系统软件架构图:图6.1软件架构图MTB协议转换器各层功能描述:硬件平台:由CPU、内存和各种外设组成,是实现MTB协议转换器软件功能的载体。系统驱动层:在MTB协议转换器的硬件平台之上加载Linux操作系统,并在操作系统之上开发出与MTB协议转换器硬件相关的设备驱动,并调用相关的库与SHELL,通过DeviceManagement层进行统一调度和管理,为通信层和应用层提供服务。通信层:也称通信进程,通信进程监听BACnet、Modbus和Http等通信,并收发MTB协议转换器间的互操作"服务"。MTB协议转换器所支持的通信协议有:BACnet协议:采用BACnet协议创建标准的BACnet对象实例集,实现BACnetIP协议,该协议用于MTB协议转换器与BAS之间集成通信。Modbus协议:标准的ModbusRTU协议,通过RS485总线与MODBUS从机设备进行通信,采集现场数据并对现场建筑设备进行控制。Http协议:此协议是访问MTB协议转换器嵌入的web服务器的一种协议,用户可以通过IE浏览器访问MTB协议转换器的Web页面。应用层:包含应用进程、控制对象实例集、配置管理进程和Web服务器几个部分,这是MTB协议转换器核心的内容。对象实例集:表示楼宇自控设备的标准对象实例集,它是通信进程和应用进程相互联系的接口。配置管理进程:楼宇自控设备初始化设置与具体应用有关的参数,以与实现楼宇设备专有的管理功能。CGI:即通用网关接口(CommomGatewayInterface),通过嵌入到Web服务器中的CGI进程,接收CGI参数请求对设备管理层的数据用XML报文进行封装,回传到外部请求组件。WebServer:用户界面的一部分,通过嵌入式的Web服务器实现对控制器各个监控点的监控和系统的设置功能。6.2MTB协议转换器系统子模块设计MTB协议转换器软件主要包括BACnet模块、Modbus模块、web模块、cgi模块。各部分关系如下图:配置文件配置文件共享内存配置参数BACnet设备实时输入缓冲实时输出缓冲Modbus模块Web/CGI模块BACnet模块浏览器BAS系统Modbus设备x如上图,系统工作流程为:BACnet模块,Modbus模块和Web/CGI是三个并发的进程,通过配置文件,共享内存和消息队列实现数据通讯和共享。其中配置文件存放在jffs2/yaffs文件系统中,可修改,掉电数据不丢失;BACnet设备是BACnet模块内部使用的内存数据;实时输入输出缓冲用共享内存实现。用户使用浏览器访问嵌入式web服务器,浏览信息浏览和配置页面。WEB模块通过CGI模块读写配置文件。modbus模块读写配置文件,按照配置的modbus设备个数,地址,数据点,波特率,轮询间隔时间等参数,实时采集各个modbus设备的数据,放入实时输入缓冲中。BACnet模块根据配置文件中数据点的映射关系,创建BACnet设备以与BACnet对象点。BACnet模块响应来自BACnetClient(如BAS系统)的访问,从实时输入缓冲中获取数据更新BACnet对象的数据,并提交给访问者。BACnet模块接收到来自BACnetClient(如BAS系统)的数据输出请求时候,将发送消息给Modbus模块,要求执行数据输出指令。Modbus模块从输出缓冲中取数据,定时刷新输出,或者接收到数据输出指令时候立即执行。6.2.1BACnet接口模块BACnet接口模块,在Cimetrics公司的BACnet协议栈基础上进行开发,该协议栈支持windows和Linux操作系统,支持实现为BACnet网关,BACnetServer设备,或者BACnetClient设备。本应用中,可实现为一个标准的BACnetServer设备,根据配置的映射关系,将modbus设备的数据点映射为该BACnet设备的一个数据对象。首先,调用BACnet协议栈API的初始化配置函数,申请BACnet资源,设置BACnet节点地址相关信息,最大对象个数等。然后读取配置文件,生成BACnet对象列表,并且初始化数据值,数据单位,对象状态等。调用协议栈API,初始化读写属性的回调函数,在回调函数里面可以截获BAS系统对BACnet对象属性的读写访问,从而执行必要的数据更新操作和执行实际的数据输出指令。在读属性回调函数中,从实时输入缓冲中获取数据,更新BACnet对象当前值,并用当前值响应读请求;在写属性回调函数中,分析写属性,向Modbus模块发送执行数据输出的指令。调用协议栈API函数,启动协议栈运行主线程程序。如果系统退出,则调用协议栈API,释放协议栈分配的BACnet资源MTB协议转换器按照BACnet协议一致性类别4进行设计实现:一致性类别4的要求ServiceTypeExecute/InitiateReadpropertyExecuteReadpropertymultipleExecuteWritepropertyExecuteWritepropertymultipleExecuteWhohasExecuteIhaveInitiateWhoisExecuteIamInitiate如表,实现以下服务功能:读对象单个属性服务读对象多个属性服务写对象单个属性服务写对象多个属性服务Who-has报文响应服务Who-is报文响应服务定时广播i-have报文服务定时广播i-am报文服务BACnet模块支持的BACnet标准对象实例如下:AI:模拟量输入AnalogInput,AO:模拟量输出AnalogOutput,AV:模拟变量AnalogValue,用于设定点SetPoint,中间变量等,DI(BI):数字量输入DigitalInput(二进制输入BinaryInput),DO(BO):数字量输出DigitalOutput(二进制输出BinaryOutput),DV(BV):数字变量DigitalValue(二进制变量BinaryValue),用于表示设备的启停命令等,MSI:多状态输入对象MSO:多态输出对象MSV:多状态值对象数Device:设备,用于描述MTB协议转换器与MODBUS从机设备相关信息。MTB协议转换器实现BACnet对象列表如下:对象名称别名最大数量设备对象DEVICE1二进制输入对象BinaryInput300二进制输出对象BinaryOutput100模拟量输入对象AnalogInput300模拟量输出对象AnalogOutput100二进制值对象BinaryValue100模拟值对象类型AnalogValue100多状态输入对象MutileStatsInput300多态输出对象MutileStatsOutput100多状态值对象MutileStatsValue1006.2.2Modbus接口模块 控制器提供标准的ModbusRTU接口,以满足低成本、快速的连接需求。Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。它已经成为一通用工业标准。有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如果回应来自其它设备的请求,以与怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。地址码功能码数据区CRC高字节CRC低字节1字节1字节N字节1字节1字节在MTB协议转换器的Modbus接口模块中,主要实现以下功能码操作。FunctionCodesReadcoilstatusReadinputstatusReadholdingregistersReadinputregistersPresetsingleregisterPresetmultipleregisterPresetsinglecoilsModbus模块读取配置文件,生成modbus设备列表,包含各种通讯配置,数据点配置信息启动485总线通信线程,执行轮询和指令解析逻辑Modbus模块根据配置的设备地址,波特率,数据点位信息,轮询间隔,在485总线上面实时采集数据,放入数据缓冲区;Modbus模块定时刷新输出,或者接收数据输出指令,将数据通过485总线写入modbus设备中。6.2.3CGI模块CGI模块的功能是通过嵌入到Web服务器中的CGI进程,接收CGI参数请求对设备管理层的数据用XML报文进行封装,回传到外部请求组件。功能包括:接收系统命令、系统配置的读取和设置。设备层接口的数据的XML封装,提供给Web页面。使用ApacheWeb服务器,提供页面服务使用CGI库,提供对控制器内配置文件进行读写功能,已经其它配置。CGI分为以下部分:Ini文件访问模块:提供对ini格式配置文件的读写操作函数XML文件生成模块:提供将数据信息组织成XML格式的函数CGIC库函数:实现CGI程序的基本框架库函数。6.2.4Web模块采用AJAX技术,快速稳定的实现设备监控页面的刷新功能。在EXTJS和jQuery的基础上进行开发。支持的浏览器类型为:InternetExplorer6+FireFox1.5+(PC,Mac)主要功能模块划分为:系统设置安全信息网络接口BACnet通讯设置Modbus通讯设置辅助工具重新启动软件升级帮助其中重点描述DataObjects菜单、ModbusRTUData菜单、ModbusRTUSetup菜单A.DataObjects菜单:浏览映射后的BACnet数据点列表Analog:包括InputObjects、OutputObjects、ValueObjectsBinany:包括InputObjects、OutputObjects、ValueObjectsMutileStats:包括InputObjects、OutputObjects、ValueObjects其中AI对象数据点浏览页面参考设计:主要浏览参数如下:Object#:BACnet对象IDObjectName:BACnet对象名称PresentValue:当前值B.ModbusRTUData:用于浏览当前Modbus读写数据点映射表RTURegisters参考设计C.ModbusRTUDataSetup:用于映射Modbus数据点到BACnet数据对象包括选项如下:LocalDevice、RTUReadMap、RTUWriteMapLocalDevice:配置对modbus从设备的访问所需的通讯参数通讯波特率:9600,19200,38400等奇偶校验:无校验,奇校验,偶校验轮询周期:定义总线的轮询周期通讯超时:定义与每个设备进行通讯的超时等待时间FC5/6insteadof15/16:是否使用modbus5/6号功能替代使用15/16号功能对设备进行读写访问。RTUReadMap:建立modbus可读数据点到BACnet数据点的读映射RTUWriteMap:建立modbus可写数据点到BACnet数据点的写映射RemoteTypeModbus数据点类型如线圈,开关量,寄存器RemoteRegisterFormat数据点数据格式整数,浮点数,位变量等RemoteUnit#Modbus设备地址S是否交换浮点数高低寄存器数据Scale模拟量的度量变换参数,为0或1表示不变换转换值=原始寄存器值*度量变换参数比如原始寄存器值为1000,度量变换参数为0.01,则实际转换值为10.00比如原始寄存器值为1000,度量变换参数为0.01,则实际转换值为10.00LocalObject#BACnet对象编号如AIx,BIx等NameBACnet对象名配置文件设计配置文件是控制器的核心数据结构之一,完成控制器地址,通讯参数配置,以与modbus设备数据点和BACnet对象点之间的映射关系。采用Linux下常用的(section,key,value)结构形式的配置文件,可读性强,且可以手工编辑,参考设计配置文件内容和格式如下://Config.ini[common]//普通设置Ip= //IP地址Netmask= //子网掩码Gateway= //网关地址Baudrate= //波特率Parity= //校验位,none,odd,evenPoll_period=//轮询周期,秒为单位Timeout= //modbus通讯等待超时,秒为单位bacnet_device_instance=//BACnet设备编号bacnet_port= //BACnet端口号,默认0xBAC0Bacnet_device_description= //BACnet设备描述Username= //用户名Userpassword= //用户密码[rtu_read_map_xx]//第XX个RTUREADMAPRemote-type=//数据点类型,0-4:none,coiloutput,discreteinput,//inputregister,holdingregisterFormat=//数据格式integer,unsigned,double,float,bitunitNo= //数据点所在modbus设备地址RegisterNo=//数据点寄存器编号S //是否交换double,float高低寄存器值Scale= //度量变换参数objected=//数据点映射对应的BACnet对象IDobjectName=//数据点映射对应的BACnet对象名称[rtu_write_map_xx]//第XX个RTUWRITEMAP//与RTUREADMAP相同七、技术参数7.1MTB协议转换器主模块技术参数功能:规格供电电源DC24V处理器32bitCPU处理器,主频200MHz程序存储64MNandFlash数据存储64MSDRAM以太网通信规格2路10M-100M自适应Ethernet,标准RJ45接口支持协议BACnetIP,TCP/IP,Http等RS-485总线通信总线数量1路RS485总线通信,支持8个modbusslaver,485通信速率支持9600bps、19200bps、38400bps等常用波特率通信线缆采用12-22AWG双绞屏蔽线RVSP支持协议ModusRTU工作环境0°C--50°C,5--90%RH(非凝结)存储环境-20°C--70°C,5--95%RH(非凝结)注:该方案BACnet接口模块,采用国际著名公司Cimetrics公司的BACnet商业协议栈,我公司花巨资引进美国商业协议栈代码,兼容性好,兼容性西门子、江森、艾顿(霍尼韦尔)等厂商楼宇自控系统管理平台,详细资料请参考Cimetrics公司网站。下面内容来自该网站。B1140
-BACstac/32-BACnetSoftwareforEmbeddedSystemsBACstac/32istheindustry'smostrobustandcompleteBACnet
solutionforthedevelopmentofembeddedcontrolproducts.OurcustomershaveportedtheBACstacsourcecodetomany32-bithardware/OSplatforms.
TheBACstac'sOperatingSystemAbstraction
defines
a
cleaninterfacebetweenthecoreBACstaccodeandtheoperatingsystem.ProductDescriptionB1140
BACnetSoftwareforEmbeddedSystemsTheCimetricsBACstacsaves"man-years"ofdevelopmentwhenyourcompanyneedstocreateaBACnetsolutionfora32-bitembeddedplatform.ImplementationoftheBACnetstandardisaachallengingassignmentforeventhemostskilledcomputerprogrammers.
ThedifferencesbetweenBACnetandtraditionalITprotocolscanleadtoasignificantlearningcurvewhenstartingfromscratch.OursoftwareteamhascreatedasetofBACnetlibrarieswhichgreatlysimplifythetaskof
creatingBACnet-compliantproducts.
EventhelargestcompaniesintheHVACindustryuseourcodebecauseitisaverycomplexandtime-consumingtaskkeepingupwiththeongoingchangesthataretakingplaceintheBACnetstandard.
NumerousBACstac-basedproducts
arenow
BTLlisted.
SpecificationsB1140
BACnetSoftwareforEmbeddedSystemsThisisaBACnetprotocolstackdesignedforthedevelopmentofBACnet-compliantapplicationsthatrunon32-bitembeddedplatforms.
CompleteC-languagesourcecodeisincluded.
ThecustomerisresponsibleforportingtheBACnetsoftwaretothetargetplatform.Thefollowingspecificationsareforversion6.1ofB1140
BACnetSoftwareforEmbeddedSystems.BACnetrevision:BACnet2004(allobj
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理核心制度考试试题(含答案)
- 中心城区合流制地区雨污分流改造一期(第一批)水土保持方案报告表
- 企业生产厂房改扩建水土保持报告表
- 大连福地 66kV 输变电工程水土保持报告表
- 新疆天恒星投资管理有限责任公司绿色智能资源再生循环利用标准化厂房建设项目(一期)水土保持方案报告书
- 传承千年痔科古方 守护肛周安康-朱伯庸贴痔乳香膏破解现代肛肠护理难题
- 劳保用品使用准则
- 某水泥厂粉尘排放控制规则
- 木材加工防火管理方法
- 2026殡葬整治面试题及答案
- 2025年贵州省高考物理试卷真题(含答案)
- 《PCB工艺与设计》课件-155.PCB的拼板实例演示
- 2026年台州市永宁产业投资集团有限公司公开招聘国企编制工作人员的备考题库及参考答案详解
- 铁路新职工岗前培训课件
- 舌侧矫治力学机制
- 重症急性胰腺炎超声引导下经皮置管引流专家共识(2024版)
- 2025年北京市房山区中小学教师招聘笔试参考题库及答案解析
- 新疆中考物理5年(2021-2025)真题分类汇编:专题05 电学综合(原卷版)
- 2026年企业增值税普通发票开具规范与开票信息审核技巧
- 2025年辽宁省直机关遴选公务员笔试真题汇编附答案解析
- 超声波雾化器超声波能量计项目可行性研究报告(总投资23000万元)(81亩)
评论
0/150
提交评论