(计算机应用技术专业论文)可编程远程终端单元的设计与实现.pdf_第1页
(计算机应用技术专业论文)可编程远程终端单元的设计与实现.pdf_第2页
(计算机应用技术专业论文)可编程远程终端单元的设计与实现.pdf_第3页
(计算机应用技术专业论文)可编程远程终端单元的设计与实现.pdf_第4页
(计算机应用技术专业论文)可编程远程终端单元的设计与实现.pdf_第5页
已阅读5页,还剩79页未读 继续免费阅读

(计算机应用技术专业论文)可编程远程终端单元的设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 本课题由上海市高校科技发展基金项目“储罐远程监控单元( r t u ) ”、上 海师范大学科研成果产业化( 中试) 项目和上海师大青年基金项目“新型s c a d a 系统的研制和应用 立项和资助。研发目标是设计一种能在无人职守的工业环境 中长期稳定工作的新型r t u ,作为构成s c a d a 系统的核心设备,完成遥控、遥 测、遥信、遥调功能。中试项目将设计开发的r t u 命名为u p r t u 。 本课题研发的这种新型r t u 的硬件、软件都采用模块化设计,支持可编程功 能,具有独立集成开发环境,支持图形化编程语言。 作为课题负责人作者将u p r t u 的设计分为三个部分进行:集成开发环境 ( i d e ) 、主模块( c p u 模块) 和输入输出模块( u o 模块) 。本文所介绍的项目是 整个研发小组协同完成的。笔者主要负责项目的总体设计,包括分析设计需求, 提出整体设计目标以及建立目标模型,给出总体设计方案,定义上下位机通信协 议、伪执行代码以及其他各部分的接口,以协调各部分的并行设计。另外笔者还 参与一些具体研发工作,如c p u 模块、各i o 模块的设计。 作者在i d e 设计中提出了一种树型中间数据结构的方案,实现了梯形图到中 间文件再到伪执行代码文件的转换( 逆转换) ,在c p u 模块嵌入式l i n u x 平台上 设计了r t u 虚拟机以执行这个伪执行代码文件,同时又设计了一个m o d b u s 子 协议实现这个伪执行代码的上传和下载,其作为子协议可以和m o d b u s 很好兼 容,避免多种通信对c o m 口的抢占冲突。本文设计了自定义c a n 应用层协议, 这个协议充分发挥了c a n 总线多主的特点,也适应了数据传输高实时低带宽 的要求,c p u 模块通过这个c a n 应用层协议管理各i o 模块。 本课题设计、研发的u p r t u 样机通过了测试。样机测试表明其性能指标达 到原设计目标,符合应用需求,在国内同类技术中处于先进水平。 关键字:r t u ,s c a d a ,现场总线,嵌入式系统,控制 论文类型:设计报告 a b s t r a c t w i t ht h es u b s i d i z a t i o no fs h a n g h a iu n i v e r s i t yt e c h n o l o g i c a lp r o g r e s sf u n d , i n d u s t r i a l i z a t i o no fr e s e a r c hp r o j e c to fs h n ua n ds h n uy o u t hf u n d t h i si s s u ew a s e s t a b l i s h e d i t sg o a li st od e s i g na l ln e wr t uw i t hl o n g t e r ms t a b i l i t yw h i c hc a nw o r k i nt h ei n d u s t r i a le n v i r o n m e n to fn od u t y ,a n da st h ec o r ee q u p i m e n to fs c 雠s y s t e m , i tc a na c h i e v et h ef u n c t i o na b o u tr e m o t ec o n t r o l i n g , r e m o t es e n s i n g , r e m o t es i g n a l i n g , a n dr e m o t er e g u l a t i n g 1 u uw a sn a m e du p r t ub vp i l o tp r o j e c t s t h eh a r d w a r ea n ds o f t w a r eo ft h er t ua d o p ta l lm o d u l a rd e s i g n ,s u p p o r t p r o g r a m m a b l ef u n c t i o n ,h a v ea ni n d e p e n d e n ti n t e g r a t e dd e v e l o p m e n te n v i r o n m e n ta n d s u p p o r tt - o rg r a p h i c a lp r o g r a m m i n gl a n g u a g e a st h ep r i n c i p a l t h ea u t h o rd i v i d e st h ed e s i g no fu p r t ui n t ot h r e ep a r t s : i n t e g r a t e dd e v e l o p m e n te n v i r o n m e n t ( i d e ) ,c p u m o d u l ea n d i n p u t o u t p u t m o d u l e s ( i o ) 1 n h ep r o j e c tp r e s e n t e db yt h i sp a p e ri sc o m p l e t e db yo u rg r o u pw o r k i n g t o g e t h e r 砀ea u t h o ri s i n c h a r g e o ft h e p r o j e c td e s i g ni n c l u d i n ga n a l y s i n g r e q u i r e m e n t so ft h ed e s i g n ,a d v i s i n gt h ed e s i g ng o a l ,e s t a b l i s h i n gm o d e lo ft h eg o a l , s u g g e s t i n ge n t i r ep r o j e c t ,d e f i n i n gc o m m u n i c a t i o np r o t o c o lb e t w e e nu p r t ua n d c o m p u t e r , p s e u d o - c o d ea sw e l la so t h e rp a r t so ft h ei n t e r f a c ei no r d e rt oc o o r d i n a t e v a r i o u sp a r t so ft h ep a r a l l e ld e s i g n b e s i d et h e s e ,t h ea u t h o ra l s op a r t i c i p a t e si na n u m b e ro fs p e c i f i cr & dw o r k ,s u c ha st h ec p um o d u l e ( p a r t ) a n dt h ei om o d u l e d e s i g n t h ea n t h o ra d v i s e sas c h e m eo ft r e ei n t e r m e d i a t ed a t as t m c t u r et oa c h i e v et h a t l a d d e rd i a g r a mc o m p i l et ot h et r a n s i t i o n a ld o c u m e n ta n dt h e nt r a n s l a t et ot h e p s e u d o c o d ed o c u m e n ti ni d e ;a n dt h ea u t h o rd e s i g n st h ev i r t u a lm a c h i n eo fr t ut o e x e c u t ed o c u m e n to ft h ep s e u d o - c o d ei ne m b e d d e dl i n u xp l a t f o r l no ft h ec p u m o d u l e ; a tt h es a m et i m e ,t h ea u t h o rd e s i g n sam o d b u sp r o t o c o lt oi m p l e m e n tu p l o a da n d d o w n l o a do ft h i sp s e u d o c o d e a sas u b p r o t o c 0 1 i tc a nb ec o m p a t i b l ew i t l lm o d b u s t oa v o i ds e i z i n ga n dc o n f l i c t i n gc o mp o r t t 1 l i sp a p e rd e s i g n sac u s t o mc a n a p p l i c a t i o nl a y e rp r o t o c o l ,w h i c hg i v e sf u l lp l a yt ot h et h ec h a r a c t e r i s t i c so ft h ec a n a b o u tm u c hm a t e r si nb u s ,a n da l s oa d a p t st or e q u i r e m e n t so ft r a n s m i s s i o no fi od a t a c p um o d u l em a n a g e si om o d u l e s t h r o u g ht h ec a na p p l i c a t i o nl a y e rp r o t o c 0 1 t h ep r o t o t y p eo fu p r t uh a sp a s s e dt h et e s t p r o t o t y p et e s t ss h o wt h a ti t s p e r f o r m a n c er e a c h e st h eo b j e c t i v e so ft h ed e s i g n ,a c c o r d sw i t ht h ea p p l i e dd e m a n da n d a c h i e v e st h ea d v a n c e dl e v e lo fs i m i l a rt e c h n o l o g yi nc h i n a k e y w o r d s :r t u ,s c a d a , f i e l d b u s ,e m b e d d e ds y s t e m s ,c o n t r o l p a p e rt y p e :d e s ig nr e p o r t u 主要符号表 序号缩略语英文全称 中文全称 1r i i u r e m o t et e r m i n a lu n i t远程终端单元 2p l c p r o g r a m m a b l el o g i cc o n t r o l l e r 可编程控制器 3d c s d i s t r i b u t e dc o n t r o ls y s t e m集散控制系统 s c a d a s u p e r v i s e rc o n t r o la n d 数据采集与监控系统 4 d a t aa c q u i s i t i o n 5i d e i n t e g r a t e dd e v e l o p m e n te n v i r o n m e n t 集成开发环境 6m c u m i c r oc o n t r o l l e ru n i t微控制器 7e c ue l e c t r o n i cc o n t r o lu n i t电子控制单元 8a r m a d v a n c e dr i s cm a c h i n e先进精简指令集处理器 9c a nc o n t r o l l e ra r e an e t控制局域网 1 0i s p i ns y s t e mp r o g r a m m i n g在系统中编程 1 1i a pi na p p p l i c a t i o np r o g r a m 在应用中编程 u a r t u n i v e r s a la s y n c h r o n o u s通用异步收发器 1 2 r e c e i v e r t r a n s m i t t e r 1 3s p is e r i a lp e r i p h e r a li n t e r f a c e 串行外设接口 1 41 2 c i n t e r i n t e g r a t e dc i r c u i t 芯片问通信 1 5 g p i o ( g i o )g e n e r a lp u r p o s ei n p u t o u t p u t通用输入输出口 1 6舢 e l e c t r o m a g n e t i ci n t e r f e r e n c e 电磁干扰 1 7m i p sm i l l i o ni n s t r u c t i o n sp e rs e c o n d 每秒百万指令 1 8 f s r f u l ls c a l er a n g e满量程精度 1 9p p mp a r t sp e r m i l l i o n 百万分之一 2 0 i u s c r e d u c e di n s t r u c t i o ns e tc o m p u t e r精简指令系统 2 1m of i r s ti nf i r s t0 u t 先进先出 2 2i p c i n t e rp r o c e s sc o m m u n i c a t i o n进程间通信 i v 学位论文独创性声明 本论文是我个人在导师指导下进行的研究工作及取得的研究成果。论文中除 了特别加以标注和致谢的地方外,不包含其他人或机构已经发表或撰写过的研究 成果。其他同志对本研究的启发和所做的贡献均已在论文中做了明确的声明并表 示了谢意。 论文作者签名:碰球嘉日期:口萝年多月2 2 日 论文使用授权声明 本人完全了解上海师范大学有关保留、使用学位论文的规定,即:学校有权 保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部 分内容,可以采用影印、缩印或其它手段保存论文。保密的论文在解密后遵守此 规定。 论文作者 导师签名 矽罗年柏乞铂 年月 日 上海师范大学硕士学位论文第一章前言 第一章前言 1 1 课题背景和来源 随着计算机、微电子和通信网络技术的飞速发展,自动控制系统正走着一条 由集中式控制向分散控制发展的道路,把自动控制系统和信息管理系统紧密结合 的管控一体化的新一代自动控制系统,将是今后自控系统发展的趋势。 控制系统进一步趋向于分散和开放,出现了分布式控制系统。数据采集与监 控系统( s u p e r i o r c o n t r o la n dd a t aa c q u i s i t i o n ,以下简称s c a d a ) 便是一类用 于地理域大、无人职守的工业环境,以进行远程监控的分布式控制系统。这类系 统主要由位于操作室或调度室的中心站计算机和位于各现场监控对象附近的远程 终端单元( r e m o t et e r m i n a lu n i t ,以下简称i 唧) 组成,计算机与各r t u 之间 通过数字通信网络连接。s c a d a 可以实时采集现场数据,对工业对象进行本地 或远程控制,对工业对象进行全面、实时监视,为生产、调度、管理提供必要的 数据,s c a d a 可以就地完成控制算法、控制任务。s c a d a 主要用于水利、自来 水、供电、石油、天然气、煤气等行业,以进行远程监控。 r t u 作为一种远程终端单元,能对现场各种信号进行数据采集、数据预处理 和控制输出。 s c a d a 系统构成如图1 - 1 所示。 图1 - 1s c a d a 系统构成图 其中,中心站可以是一台计算机,也可以是一个由计算机和各种设备组成的 局域网。 我校计算机应用技术研究所在液体物料储运监控管理系统领域做了大量的研 究和推广工作,积累了许多经验。比如在建立罐区监控系统中,现场一般占地面 第一章前言上海师范大学硕士学位论文 积较大,电缆的需求很大,如果用r t u 作为构成分布式罐区监控系统的远程终端 单元,r t u 可以安装在现场储罐、机泵旁边,现场仪表直接连接在r t u 上,而 不必把电缆连接到控制室,可以节约大量电缆,降低了整个系统的费用。 显而易见,采用r t u 构成的s c a d a 系统,对用户而言,至少有以下好处: 1 分布式系统是当今控制系统发展的主要趋势。 2 这种分布式系统结构清晰,设计、施工均方便。 3 所有变送器、执行器连接电缆只要就近接入r t u ,不用拉至远方控制室, 可以节省大量电缆、电缆桥架及其敷设工程的费用。从各个r t u 至控制室只要拉 一根价格便宜的通信电缆( 或光缆) 。如果使用光缆,还可以避免雷电对系统的 损害。 4 这种s c a d a 系统结构,控制室只需要一台p c 机及一套工控组态软件, 今后现场扩容,只要现场增加r t u ,控制室内只要通过软件组态就可以,不必增 加设备。控制室至现场只要一根通信电缆( 或光缆) ,控制室只要求很小空间, 可以布置成精致的办公环境甚至于人性化环境。这些优点对今后需要不断扩容的 用户来说,是极具吸引力的。 由于系统结构简单,系统维护十分方便。用户只要掌握组态软件的组态方法 和r t u 的基本知识,就可以得心应手地维护整个系统。如遇r t u 有故障,只要 花几分钟更换该r t u 就可以了。今后现场扩容,用户只要购买所需r t u 回来自 己安装,再把软件组态一次,就完成了扩容工作。这一点对于用户也极具吸引力。 鉴于s c a d a 系统以及r t u 在工控领域越来越重要的作用和市场对高品质、 高性能r t u 的迫切需求,校计算机应用技术研究所立项进行自主知识产权的r t u 开发,并命名该r t u 为u p r t u ,该项目得到上海市高校科技发展基金项目“储 罐远程监控单元( r t u ) 、上海师范大学科研成果产业化( 中试) 项目和上海师 大青年基金项目“新型s c a d a 系统的研制和应用 的立项和资助。 本课题正是基于这一立项和资助而开展的。 1 2r t u 的组成原理 1 2 1r t u 的定义 r t u ( r e m o t et e r m i n a lu n i t ) 是一种远端测控装置,负责对现场工业设备的 监测和控制【。与常用的可编程控制器( p l c ) 相比,i 汀u 通常用在无人值守的工 业环境中,所以r t u 通常要具有更加优良的通信能力 2 1 ,可以采用多种通信方式( 有 线和无线) ,可以适应较长通信距离,能适用于更恶劣的温度和湿度环境1 3 1 。 2 上海师范大学硕士学位论文 第一章前言 r t u 按容量规模划分有以下两种构成方式:输入输出( 以下简称i o ) 通道固 定的和i 0 通道可组合的,后者i o 模块必须是插拔组配的,适用性更好【4 1 。 1 2 2r t u 的基本功能 r t u ( r e m o t et e r m i n a lu n i t ) 是构成s c a d a 系统的核心装置,通常由微处理 器、信号输入出模块、有线无线通信模块、电源及机壳等组成。它支持与s c a d a 中心站的通信。r t u 是远端控制设备,是一个独立的数据采集与控制单元,能就 地采集现场数据并传送给中心站,就地处理运算,就地接受中心站指令输出控制, 实现遥测( 远程测量) 、遥控( 远程控制) 、遥信( 远程通信) 和遥调( 远程调节) 功能, 即通常所说的四遥功能1 5 j 。 1 2 3 对r t u 的基本要求 1 可靠性:r t u 必须适应恶劣的现场环境,必须连续不间断的工作,特别 是在无人值守时更要求r t u 有很高的可靠性。在国外r t u 的平均无故障时间要 求在5 年以上。 2 实时性:r t u 对各种信息的采集和处理要满足实时性的要求,对现场各 种状态变化要能及时响应【6 j 。 3 模块化:各个控制现场对象规模不一,模块化可以构成不同的规格和功能, 模块化也有利于产品并行开发以及现场变更时的维护升级【6 l 。 4 协议标准化:r t u 最重要功能就是起到“上传下达的作用,采用标准 通信协议能使r t u 更方便地联入不同的控制系统。 5 优良的通信能力:可以采用多种通信方式( 有线和无线) ,可以适应较长 通信距离。 1 3r t u 技术现状 r t u 的发展历程是与“四遥”技术的发展相联系的。“四遥是多学科、多 专业的技术,涉及计算机、无线电、自动控制等技术,还涉及仪器仪表、数据通 信、信息处理等新技术【7 】【8 】。 在我国,随着国内工业企业s c a d a 系统的应用与发展,r t u 产品也受到了 相应的重视,但总的看来,目前还是国外r t u 产品占有较大的市场份额。进入新 世纪以来,由于一批新兴的高新技术产业的出现与发展,这种状况正日益得到改 3 第一章前言上海师范大学硕士学位论文 善,国内的r t u 产品在不断发展和成熟中。 下面是国内外一些r t u 产品的技术概况【9 】【1 0 】: 1 m o s ( 、a di h u m o s c a dr t u 是摩托罗拉公司研发和生产的r t u 产品,m o s c a dr t u 支 持各种通信方式( p s t n 、短波、超短波、微波、卫星、光纤、g s m 、g p r s 等) , m o s c a d 提供的接口比较丰富,支持多种现场仪表和执行机构。m o s c a d 中 m o s c a d m 系列是基于3 2 位微处理器的智能设备,内嵌嵌入式实时多任务操作 系统。 2 i m p 远程测控终端 英国施伦伯杰( s c h e l u m b e r g e r ) 的i m p 远程测控终端是一个软硬件齐全的 r t u ,它的外形是一个密封的铸铝扁平盒体。它可以适应环境较为恶劣的工业现 场,有较高的测量精确度和在一定范围内可变的多种测量参数( 如直流模拟量输 入可测量的参数类型就有直流电流、直流电压、热电偶等,直流电压输入量程又 可以是2 0 m v 、2 0 0 m v 、2 v 、1 2 v ,热电偶输入又可以是分度号b 、e 、j 、k 、n 、 t 、r 、s 的多种热电偶) 。 3 8 9 3 i d c b 远程测控终端 解放军南京工程兵学院微机测控研究所的8 9 3 i d c b 远程测控终端,其结构 与i m p 相似,但价格较低。它采用了i n t e l 8 0 3 1 单片微机,采用钢壳密封,防 尘防潮,较铝壳抗干扰能力更强。其功能不仅有数据采集,还可以完成工程单位 变换、越限报警、历史数据存储、事件顺序记录、量程自动转换、热电偶冷端温 度补偿、零点及增益校正、存贮滤波周期设定、硬件自检、故障显示、掉电保护 和自复位等功能,从而大大减轻和中心站通信的负担。 4 s u p e r e 远程测控终端 北京安控科技发展有限公司的s u p e r e 远程测控终端采用了在终端内部由用 户选择不同类型的输入输出信号通道的方式。多台s u p e r e 远程测控终端可通过 多种通信方式与计算机相连,由于有强大的软件功能,支持梯级逻辑图、p i d 算 法等功能,因而可构成带逻辑控制、p i d 回路控制功能的s c a d a 系统。 其他产品还有西斯耐特( s m 玎) 、c m is q 缸) a n 蛇kr t j 、e l p r o 、 r o s e m o u n t r t u 等。不过,国内产品还存在一些问题,归纳如下: 1 有适用工业环境的产品,但能适用特殊环境的,如防爆、防水等,则较少。 2 能完成监测功能的多,而具有可编程功能特别是支持图形化编程语言的 少。 3 基于8 位单片机的多,基于3 2 位m c u + 嵌入式实时操作系统的少。 4 国产产品中模块化程度不高,智能化不够。 4 上海师范大学硕士学位论文第一章前言 1 4 本论文设计的主要内容及意义 笔者将u p r t u 的设计分为三个部分进行:集成开发环境( i d e ) 、主模块( c p u 模块) 和输入输出( i o ) 模块。i d e 是为用户提供一个计算机( p c ) 上的开发 平台,用户可以利用这个开发平台编写、调试用户程序;c p u 模块是u p r t u 的 处理中心模块,主要功能包括执行用户程序的任务、对外通信、协调管理各i o 模块;i o 模块则主要完成加信号的采集、输出以及数据处理、工程量转换等任 务。 笔者主要负责项目目标u p r t u 的总体设计,包括分析设计需求,提出整体 设计目标以及建立目标模型,给出总体设计方案,定义上下位机通信协议、伪执 行代码以及其他各部分的接口,以协调各部分的并行设计。另外笔者还参与一些 具体研发工作,如c p u 模块、各i o 模块的设计。 u p r t u 采用模块化分层设计的方法,更容易升级、维护、移植,为以后产 品系列化提供一个良好的平台。模块化设计包括硬件的模块化和软件的模块化。 这里所说的硬件的模块化主要是指面向应用,使用户可以灵活配置不同数量、不 同类型的模块以适应于不同工控现场的实际需求和应用。软件的模块化指面向开 发,使系统由模块和组件组成,在此基础上可以快速地开发出一系列产品,使设 计过程更加高效、也使得产品更加稳定。 需要说明的是本文所介绍的项目是整个研发小组协同完成的,本文仅从整体 结构介绍整个项目和其中的设计要点,不是笔者完成的部分的设计由项目组其他 同学进行。 1 5 论文结构 第一章为前言。首先介绍了s c a d a 系统并说明r t u 是系统的核心设备,然 后介绍了r t u 的组成原理以及发展现状,最后介绍的是本文的主要设计内容。 第二章介绍本课题目标u p r t u 的总体设计。提出了整体设计目标以及模型, 接着分析u p r t u 的设计需求,最后给出了总体设计方案,以及上下位机通信协 议和伪执行代码( 确定了这个上下位机的中间桥梁,各部分就可以进行并行设计) 。 第三章为集成开发环境( i d e ) 设计。进一步细化了i d e 的设计要求,并讨 论了i d e 的软件结构设计,就其中算法设计进行了重点说明。 第四章为c p u 模块设计。先进行c p u 模块软硬件平台的构架设计、软件平 台上各模块组成结构的设计,然后进行c p u 模块各软件模块间的中间接口的设 计,最后介绍了c p u 模块的设计流程。 5 第一章前言 上海师范大学硕士学位论文 第五章为输入输出( i o ) 模块设计。就各模块组成的u p r t u 的构架方式以 及各模块之间通信协议进行设计,提出了具体的设计指标和接1 2 1 ( 现场测控对象 是通过i o 模块被r t u 控制的) ,最后介绍一些i o 模块软硬件设计的细节。 第六章介绍u p r t u 的研发成果并用样机进行测试。文中介绍了u p r t u 的 实现流程并给出样机实物照片,对u p r t u 样机进行功能和性能测试,并对测试 结果进行分析。 第七章为总结。总结项目设计及实现的工作、创新点以及需要进一步完善的 工作。 最后是参考文献。 6 上海师范大学硕士学位论文第二章u p r t u 的总体设计 第二章u p r t u 的总体设计 本章重点是进行u p r t u 的总体设计,从设计目标、设计方案、上下位机通 信协议以及伪执行代码等几个方面进行u p r t u 的总体设计。 2 1 u p r t u 的总体设计目标 根据上海市高校科技发展基金项目“储罐远程监控单元( r t u ) 、上海师范 大学科研成果产业化( 中试) 项目和上海师大青年基金项目“新型s c a d a 系统 的研制和应用的要求,确定u p r t u 设计目标如下: , 1 能接入工业现场常见的信号( 开关量、电流、电压、温度、脉冲信号等) 以 完成对各种现场仪表和执行机构的监测和控制。 2 能通过现场总线与s c a d a 系统通信,受中心站监控。 3 同步研发编程调试软件,能支持图形化编程语言( 梯形图) ,由用户编写 的控制程序、控制算法可通过编程软件下载到u p r t u 中执行。 4 可以脱机、联机运行。 5 技术指标满足无人职守的工业环境。 6 可以根据现场信号类型、数量的不同做到i o 的可配置。 图2 1 是u p r t u 的系统模型图。i d e 通过c p u 模块的编程接口对u p r t u 进行程序下载、上传操作以及调试。c p u 模块通过m o d b u s 接口将u p r t u 联 入s c a d a 系统,通过c a n b u s 接口扩展u p r t u 的i 0 。 c p u 模块 c a n , i , 线i m l 绑i 图2 - 1u p r t u 系统模型 络 7 第二章u p r l u 的总体设计 上海师范大学硕士学位论文 2 2 功能需求分析 2 2 1 集成开发环境( m e ) 的功能需求分析 i d e 是为用户提供一个计算机( p c ) 上的开发平台,用户可以利用此平台编 辑、编译、调试用户程序( 梯形图程序) 。该平台主要包括以下功能【1 1 j 【1 2 l : 1 编辑功能:用户可以利用菜单、工具栏按钮、快捷键完成图形元件的插入、 删除、修改、移动、复制、拖拉等操作。 2 程序检查:通过词法分析、语法分析、语义分析对用户编制的梯形图进行 检查,包括实时检查和非实时检查。 3 互译功能:梯形图程序可以转换成u p r t u 可以执行的二进制执行代码, 同时也支持这个过程的反向操作,即把二进制执行代码转换成梯形图程序,包括 其所有的中间过程都有对应的反向操作。 4 程序下载、上传功能:可以将用户程序下载到下位机中,同时也可以从下 位机中把程序读取出来。 5 调试功能:可以通过在线监控模块对下位机进行实时监控调试。 2 2 2c p u 模块的功能需求分析 c p u 模块主要完成对上位机( u p r t u 与计算机通信时,本文把计算机称为 上位机,u p r t u 称为下位机) 通信的功能、用户r t u 程序解释执行的功能、本 地i o 以及扩展o 管理的功能。 对上位机通信主要包括:基于r s 4 8 5 、t c p i p 的m o d b u s 通信功能,即 m o d b u sr t u 以及m o d b u st c p i p ;基于r s 4 8 5 以及t c p i p 的用户程序上传、 下载以及程序调试功能。 r t u 用户程序解释执行功能包括:解释执行用户程序以及之前的数据输入刷 新和之后的数据输出刷新。 2 2 3i o 模块的功能需求分析 i o 模块则主要完成i o 信号的采集、输出以及数据处理、工程量转换等任务。 u p r t u 要求模块化设计,要求可以根据现场信号类型、数量自由配置i ,o 。i o 模块根据信号类型的不同分成如下几种模块: 1 开关量输入( d i ) 模块:具有1 6 路开关量输入端口。 8 上海师范大学硕士学位论文 第二章u p r t u 的总体设计 2 开关量输出( d o ) 模块:具有8 路开关量输出端口。 3 模拟量信号输入( m ) 模块:具有4 路4 - 2 0 m a 模拟信号输入端口。 4 温度信号输入( r t d ) 模块:具有4 路p t l 0 0 温度信号输入端口。 5 模拟量信号输出( a o ) 模块:具有2 路4 - 2 0 m a 模拟信号输出端口。 6 高速模块:具有2 路脉冲信号( 0 - - - 1 0 0 k h z ) 输入端口。 2 3 设计原则 本设计定位在中型以上高端r t u 产品,对于这样一个目标系统的方案选择, 应更加考虑产品的稳定性、安全性、高效性、知识产权、产品系列化等多种问题, 所以本系统设计应该重点考虑以下原则: 1 稳定性 2 高效性 3 扩展性可维护性( 模块化分层设计) 2 4 方案选择 2 4 1 代码执行方式 可编程系统的代码执行方式一般有两种,编译型和解释型。编译型是把用户 程序直接编译成目标机型( c p u ) 的机器码,直接由硬件执行。解释型是指独立 于特定硬件用软件实现代码解析执行的方式。 编译型的好处是代码执行效率高,缺点是软件可移植性差,如果升级了处理 器就需要重新设计编译器,编译型的另一问题是代码经编译和反编译后很难保持 一致,编译型调试比较困难。解释型很好的解决了以上问题但缺点是代码执行效 率比编译型低。 u p r t u 采用解释型作为其代码执行方式,以软件实现一个虚拟的机型来执 行其对应指令,即虚拟机技术1 1 3 】,u p r t u 指令集为这个虚拟机的指令集,指令 表语言相当于虚拟机汇编语言,伪执行代码相当于虚拟机的机器语言。采用此种 技术的好处是能使得系统与目标机型( 其m c u 或c p u ) 以及所选用的操作系统 无关,使系统更容易升级、维护以及移植【1 4 1 。此外采用虚拟机后可以增加更多调 试手段同时克服编译型在上传程序时遇到的一系列反编译问题1 1 5 】。其缺点是系统 效率较低,结合本项目要求u p r t u 通过采用更高主频的芯片的方法来弥补这一 不足。 9 第二章u p r t u 的总体设计上海师范大学硕士学位论文 2 4 2i d e 的运行平台的选择 u p r t u 使用的对象为广大工程技术人员,为了使系统更容易使用,更方便 地对u p r t u 编程调试,i d e 运行的操作系统选用用户所熟悉的w i n d o w s ,软 件框架符合w i n d o w s 应用程序风格,其开发环境也同样采用微软的产品 v c n e t 。 2 4 3c p u 模块软硬件平台的选择 u p r t uc p u 模块无论从硬件实现角度还是从软件实现角度来看,都是非常 复杂的系统。这样复杂的系统很难再用单片机那样功能单一的处理器来实现,即 使单片机可以做到,不论在系统实现的成本上还是系统设计的复杂度上都要远远 超过用3 2 位架构的嵌入式处理器实现的模式。嵌入式a r m 处理器集成度等方面 的独特优越性和相对低廉的价位,是我们选择用它来实现此系统的重要根据。 a t 9 1 r m 9 2 0 0 是a r m 处理器系列当中一款典型且性能优异的嵌入式处理器【1 6 1 , 其工业级特性、丰富外围接口以及高达2 0 0 m h z 的主频正好迎合了本设计的需求, 同时考虑到模块化分层设计要求,本系统采用a t 9 1 r m 9 2 0 0 结合嵌入式l i n u x 操 作系统来完成。所以本c p u 模块采用以a t 9 1 r m 9 2 0 0 为核心的硬件平台、以l i n u x 为核心的软件平台的方案。第一阶段嵌入式操作系统l i n u x 采用2 4 内核,第二 阶段采用2 6 内核,第三阶段实现实时内核补丁r t a i 。 2 4 4 基于现场总线的智能化i o 模块 根据项目要求u p r t u 采用模块化设计,同时为提高智能化程度,各i o 模块 都采用微控制器,但i o 模块要求处理的数据量不大,对软硬件资源要求不高, 没有必要和c p u 模块一样选用3 2 位的高性能微处理器,所以i o 模块采用8 位 单片机作为其主芯片。 i o 模块与主模块数据交换有两种方式:并行方式和串行方式。并行方式由于 走线复杂、抗干扰能力差,不予考虑。现场总线是为i o 数据低带宽、高实时性 要求的特点量身定做的,u p r t u 内部各模块间通信采用现场总线c a n b u s 方 式。 1 0 上海师范大学硕士学位论文第二章u p r t u 的总体设计 2 5 通信协议的设计 u p r t u 无论是接入s c a d a 系统还是通过i d e 进行调试、编程都需要通过 通信方式实现,u p r t u 作为一个通用的产品,选择标准通信协议更方便其联入 s c a d a 系统。m o d b u s 是目前运用最为广泛、技术最为成熟的标准协议之一, 所以u p r t u 选择m o d b u s 作为其对外通信方式。i d e 调试和编程以m o d b u s 子协议方式实现,从而使i o 数据交换和编程调试两种不同通信过程很好的结合 在一起,避免通信口的抢占和冲突。 2 5 1 关于m o d b u s 通信协议 m o d b u s 协议是应用于电子控制器上的一种通用语言。通过此协议,控制 器相互之间、控制器经由网络( 例如以太网) 和其它设备之间可以通信。它已经 成为一通用工业标准【1 7 j 。有了它,不同厂商生产的控制设备可以连成工业网络, 进行集中监控。此协议定义了一个控制器能认识使用的消息结构,而不管它们是 经过何种网络进行通信的1 1 8 l 。它描述了一控制器请求访问其它设备的过程,如何 回应来自其它设备的请求,以及怎样侦测错误并记录。 m o d b u s 通信方式采用主从方式的查询一回应机制,只有主站发出查询时, 从站才能给出响应,从站不能主动发送数据,如图2 2 所示。主站可以向某一个 从站发出查询,也可以向所有从站广播信息【1 9 1 。从站只响应单独发给它的查询, 而不响应广播消息。 第二章u p r t u 的总体设计上海师范大学硕士学位论文 图2 - 2m o d b us 协议查询一回应周期 u p r t u 支持m o d b u s 中的7 个基本功能码,以完成数据交换的功能。功能 码的说明如表2 - 1 所示。 表2 1m o d b u s 功能码 ”:“j i 。, 螺4 1 、 ! 功能码 佟甩 “ 备注 0 x 0 1 读取线圈状态 取得一组逻辑线圈的当前状态( o n o f f ) o x 0 2 读取输入状态 取得一组开关输入的当前状态( o n o f f ) 0 x 0 3 读取保持寄存器在一个或多个保持寄存器中取得当前的二进制值 0 x 0 4读取输入寄存器在一个或多个输入寄存器中取得当前的二进制值 0 x 0 5 强置单线圈强置一个逻辑线圈的通断状态 0 x 0 6预置单寄存器 把具体的二进制值装入一个保持寄存器 0 x 1 0 预置多寄存器把具体的二进制值装入一串连续的保持寄存器 2 5 2 自定义m o d b u s 子协议的设计 为了使i o 数据交换和编程调试两种不同通信过程很好的结合在一起,避免 通信口的抢占和冲突,u p r t ui d e 编程和调试以m o d b u s 协议的子协议方式实 现。自定义m o d b u s 子协议以用户自定义功能码0 x 1 3 ( 编程软件通信) 、0 x 4 4 ( 文件下载) 、0 x 4 5 ( 文件上传) 扩展了m o d b u s 。以下对这几个功能码进行 详细定义。 上海师范大学硕士学位论文第二章u p r t u 的总体设计 2 5 2 1 自定义功能码0 x 1 3 m o d b u s 功能码一帧只能读写连续的地址片,对于地址分散的寄存器读写 效率很低,功能码0 x 1 3 定义了读写不连续地址的方法,以提高通信效率。报文格 式如表2 2 、表2 3 所示,表中第一行是报文字节顺序,第二行是对应字节的内容。 表2 - 2 功能码0 x 1 3 的主站询问帧 ,r 。 , 】: 23 45 一&7 0 黟n 伊n + ln + 2 i n + 3 , 站功能码长度1 1寄存器寄存器寄存器 寄存器地址 c r c lc r c 2 号 ( 0 x 1 3 )( 字节) 地址地址地址 表2 - 3 功能码0 x 1 3 的从站应答帧 i 。j j7 ,。,7 i 。l z墨一5 一&一8n + 3 一舯彭n + 2n + 3 j 站功能码长度n寄存寄存寄存寄存 c r c lc r c l 号 ( 0 x 1 3 ) ( 字节)器值器值器值器值 注:如果要询问的寄存器地址在开关量地址范围,返回以该地址开始连续的1 6 位,低地 址在前,高地址在后。 2 5 2 2 自定义功能码o x 4 4 m o d b u s 的扩展功能码0 ) 【4 4 实现的是文件的下载功能。下载功能通过上位 机的发送和下位机的应答完成。上位机在发送帧发出后收到应答帧,并通过检查 确认无误后,接着发送下一帧数据。同理,下位机在接收到上位机发送过来的报 文后,经过错误检查没有问题后向上位机发送确认帧。如此循环完成整个下载工 作。 上位机发送帧由站号、功能码、帧号、帧大小、文件的内容和c r c 校验组成。 整个传输过程有三种类型的帧: 1 下载请求帧:帧号为o ,只有下位机对该帧数据作出响应,传输状态标识 为成功时,才可以进行文件的传输。 2 ,文件传输帧:文件传输帧的帧号范围是1 - 0 x f f f e ,在传输过程中帧号逐 个递加。 3 结束请求帧:帧号为0 x f f f f ,下位机收到此帧表示文件传输已经完成。 具体的发送帧帧格式定义如表2 4 所示。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论