《基于CAN总线的数据采集、传输及监控系统设计.pdf》由会员分享,可在线阅读,更多相关《基于CAN总线的数据采集、传输及监控系统设计.pdf(51页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、复旦大学硕士学位论文基于CAN总线的数据采集、传输及监控系统设计姓名:张雪玲申请学位级别:硕士专业:软件工程指导教师:徐如志;牛军钰20070125论文独创性声明本论文是我个人在导师指导下进行的研究工作及取得的研究成果。论文中除了特别加以标注荦日致谢的地方外,不包含其他人或其它机构已经发表或撰写过的研究成果其他同志对本研究的启发和所做的贡献均己在论文中作了明确的声明并表示了谢意。作者签名:盘鱼堡髋幽论文使用授权声明本人完全了解复旦大学有关保留、使用学位论文的规定,即:学校有权保留送交论文的复印件,允许论文搜查阅和借阅;学技可以公布论文的全都或部分内容,可以采用影印、缩印或其它复制手段保存论文。
2、保密的论文在解密后遵守此规定。作者签名:立咝导师签名:日期:2 丝Z 厶!芷基于C A N 总线的液位数据采颦、传输及监控系统设计摘要摘要随着信息化及网络化的发展,越来越多的工业现场过程参数的传输控制采用现场总线技术,其中C A N 总线由于其优越的性能已被广泛地采用。本文根据泵站水池液位连锁问题,提出并设计了一种采用C A N 协议总线作为数据传输手段,对泵站水池液位进行实时采样和显示,超出水位上下限时发出自报警信号,从而达到对水泵电机进行控制目的。本设计为一个分靠式C A N 网络旨中现场数据采集、监控节点,利用C A N 可以很容易扩充以实现分布式数据采集传输系统,为企业进一步实现网络化
3、管理奠定了基础。该系统在结构上主要包括现场液位数据采集、单片机、数据显示及报警、C A N 总线协议转换等单元。液位数据经A D 转换送单片机处理,并实时显示。若超出设定的液位安全限,则产生报警信号,同时对采集数据进行C A N 协议格式转换,经C A N 驱动送到C A N 总线上传输。C A N 网络上其它节点可以接收本节点发出的数据,同时本节点也可以接收其它节点送来的数据,即在C A N 网络上实现多主传送方式。为了减小体积,提高运行的稳定性和可靠性,本系统在电路设计、器件类型制版方面都做了精心的考虑,如采用“看门狗”对系统运行监控,软件上采用了数字滤波等方法。系统软件用C 语言编写,采
4、用模块化结构,在减小软件体积,提高代码效率和运行可靠性方面都有了保证。关键词:C A N 总线,数据传输,数据采集,A D 转换,单片机基于C A N 总线的液位数据采集、传输及监控系统设计A b s t r a c tA b s tr a c tW i t ht h ed e v e l o p m e n to fi n f o r m a t i o na n dn e t w o r k,t h em o r ea n dm o r ea r a m e t e r so fp r o c e s sc o n t r o li ni n d u s t r yu s et h eF
5、i e l dB u st e c h n i q u e,o n eo ft h a t,C A N b u sh a sc o m ei n t ow i d eu s eb e c a u s eo fi t ss u p e r i o r i t yp r o p e r t i e s A c c o r d i n gt oa na c t u a lp r o b l e mo fm o n i t o r i n gw a t e rl e v e la tap u m ps t a t i o n,t h i st h e s i sp r o p o s e sa n d
6、d e s i g n sas y s t e mu s e dt h eC A N b u sa st h em e a no fd a t aa n s m i s s i o n T h es y s t e mc a nd or e a l t i m ec o l l e c ta n dd i s p l a yw a t e rl e v e lo fap o o li na m ps t a t i o na n da l s og i v ea na l a r ms i g n a li ft h ew a t e rl e v e le x c e e d st h eu
7、 p p e ro rl o w e rs a f e t yIi m i to fw a t e rl e v e l,s ot h a te l e c t r i cp u m pa tp u m ps t a t i o nc a nb ec o n t r o l I e do no ro f f T h i ss y s t e mi su s e da san o d eo fl o c a ld a t aa c q u i s i t i o na n dm o n i t o r i n gi nad i s t r i b u t e dC A Nn e t w o r
8、k,a n di t i se a s yt ob ee x p a n d e db yu s i n gC A N b u sf o rc o m p o s i n gd i s t r i b u t e dd a t aa c q u i s i t i o n,t r a n s m i s s i o ns y s t e m T h i sl e a d st h eb a s i so fr e a l i z i n gf u r t h e rn e t w o r k i n gm a n a g e m e n tf o re n t e r p r i s e s
9、T h i ss y s t e mc o n s i s t sm a i n l yo fl o c a lw a t e rl e v e ld a t aa c q u i s i t i o n,s i n g l ec h i pc o m p u t e r,d a t ad i s p l a y,a l a r m,C A N b u sp r o t o c o ln o d eu n i t,e t c T h ew a t e rl e v e ld a t ap r o c e s s e di nm i c r o c o n t r o l l e rA T 8
10、9 C 5 2t h r o u g h1 2b i t ss e r i a lA Dc o n v e r s i o na n dd i s p l a y e di nr e a l t i m eb yL E D。I fw a t e rl e v e le x c e e d st h es a f e t yl i m i to fw a t e rl e v e l,t h es y s t e mg i v e sa na l a r ms i g n a la n dt h e ns a m p l e dd a t aw i l lb et r a n s m i t t
11、 e do nC A N b u sw h e nc o n v e r t e di nf o r m a tu s i n gC A Np r o t o c o lc o n v e r s i o nc h i pS J A l 0 0 0 I nC A Nn e t w o r ko t h e rn o d e sc a nr e c e i v ed a t as e n tf r o mt h i sn o d ea n dt h i sn o d ec a nr e c e i v ed a t af r o mo t h e rn o d e sa l s o S om u
12、 l t i-h o s tt r a n s m i tm o d ei sr e a l i z e di nC A Nn e t w o r k I no r d e rt od e c r e a s ev o lu n l eo fs y s t e mh a r d w a r ea n di m p r o v es t a b i1i t ya n dr e l i a b i l i t yo fs y s t e mo p e r a t i o n,t h ec i r c u i ts t r u c t u r e,d e v i c e sa n dP C Bd e
13、 s i g nu s e di nt h i ss y s t e ma r ec o n s i d e r e dc a r e f u l l y,s u c ha s”w a t c h d o g。m o n i t o r i n ga n dd i g i t a lf i l t e rs o f t w a r e T h es o f t w a r ep r o g r a m m e db yCl a n g u a g ea d o p t sam o d u l a rs t r u c t u r ef o ri n c r e a s i n gv o l u
14、 m eo fs o f t w a r e,i m p r o v i n gc o d ee f f i c i e n c ya n dr e l i a b i l i t yo fo p e r a t i o nK e y w o r d s:C A N b u sD a t at r a n s m i s s i o nD a t aa c q u i s i t i o nA DC o n v e r s i o nS i n g l e c h i pc o m p u t e r2基于C A N 总线的液位数据采集、传输及监拧系统设计第一牵绪论第一章绪论本课题设计研究了内
15、蒙古某一泵站液位连锁系统。该液位连锁系统的结构如图ll 所示。图卜i 液位连锁系统F i g 1 一lW a t e rl e v e ll o c k e ds y s t e m当黄河水量不足时,启用该储水系统为电厂供水。一级泵站将黄河水源泵到距离为5 0 0 米左右的低位水池,二级泵站再泵到距离为6 0 0 米左右高位水池。要求若高位水池高于或低于规定高度,产生报警(这一点尤其重要),并通知二级泵站电机停止或启动,从而保持高位水池的容量在一定范围内。随着低位水池向高位水池供水,要求其容量也要保持在一定限度内,即一旦超过规定上下限,报警并通知一级泵站电机停止或启动,这就要求建立高位与低位水
16、池间的液位连锁系统。同时为了实现集中管理,设立一中心监控机房,负责收集各点的设备的运行状态等数据,包括液位、电机轴温、流量等参数,为将来综合统一管理提供数据。根据实地考察及与企业人员的交流,希望选择一种经济可靠,维护方便,连接线路少,具有将来容易扩充采集多个过程参数的能力,且具有一定抗干扰的通信方式。考虑到水池液位由于容量巨大,其液位变化并不剧烈,对传输速率要求不高,因此选择C A N 总线方式来传输各节点间数据,利用性能稳定可靠,价格低廉的5 1 系列单片机构成现场液位采集、报警及数据转发单元。进行本课题的研究一方面是利用目前广泛使用的现场总线中C A N 总线技术解决具体问题,开发一种基于
17、C A N 总线的数据采集、监控与传输系统。同时为迸一步开展现场总线技术在煤矿企业中的应用做准备。整个液位连锁系统设计分两部分完成,一部分为中心机房上位机控制,另一部分为现场数据采集监控转发。本课题负责后一部分。设计制作以单片机为核心,将前端由现场液位仪采集并转换来的液位信号(O 一5 V)进行A D 转换,经单片机处理,用L E D 数码管实时显示液位高度,并根据设定的水池液位上下限临界值,若超出该临界值就在现场产生报警信号,同时采集数据经C A N 协议格式转换,通过C A N 总线向中基于C A N 总线的液位数据采集、传输及监控系统设计第一章绪论心机房的上位机传递。根据要求目前只需向上
18、位机发送数据,暂不需要接收。另外该系统有1 1 路模拟信号输入通道,系统中暂时使用一个通道用于液位数据的输入,其它通道可用于未来参数采集的扩展。因此本系统可以作为基于C A N 总线上的一个标准采集,传输模块,应用于其它相关场合,有很大的扩展空间。课题的主要工作具体有:设计制作以单片机为核心的数据采集、处理、显示及报警电路:数据通信协议的转换及相关硬件电路的制作以及相关软件的编写。课题中拟解决的技术难题合理设计整体电路,保证系统运行的可靠性、稳定性;仔细研究C A N 总线协议,选择合适的协议转换芯片,设计C A N 总线通信电路;由于功能较多,因而编制程序需要仔细考虑,保证各程序模块执行流畅
19、,维护方便;由于处于现场环境,要求系统具有一定的抗干扰能力,这在电路设计及软件编写上要加以考虑。4基于C A N 总线的液位数据采集、传输及监拄系统设计第_ 二章系统的硬件设计第二章系统的硬件设计本课题设计的内容是整个基于C A N 总线的液位连锁系统中的一个节点。系统的功能框图如图2-i。图2 1 系统总体框图F i g 2 一lB l o c kd i a g r a|l lo fs y s t e m功能结构上主要包括现场液位数据采集,单片机,数据显示及报警,C A N 总线协议转换及驱动等单元。液位数据经1 2 位串行A D 转换送单片机A T 8 9 C 5 2 处理,并用数码管显示
20、液位实时高度,若超出设定的液位高度安全限,则产生报警信号,同时利用C A N 协议转换芯片S J A l 0 0 0 对液位数据进行格式转换,经C A N 驱动8 2 C 2 5 0 送到C A N总线上传输。系统电路原理图如图3 2 所示。2 1 C A N 总线的简介C A N(C o n t r o l l e rA r e aN e t w o r k 控制器局部网)是一种由带C A N 控制器组成的高性能串行数据局部通信网络,是国际上应用最广泛的现场总线之一。C A N 协议最初是由德国B o s c h 公司在2 0 世纪8 0 年代初为解决现代汽车内部大量的控制测试仪器与传感器、
21、执行机构之间的数据交换而开发的一种串行数据通信协议,其总线规范己被I S O标准组织制定为国际标准。C A N 是一种多主总线系统,通信介质可以是双绞线、同轴电缆或光纤,其传输距离在通信速率为5 k b p s 下可达l O k m,且具有抗干扰能力强等诸多优点,因而C A N 总线被认为是最有发展前途的现场总线之一。由于C A N 总线本身的优点,它的应用范围已不再局限于汽车行业,且前已广泛应用于工业自动化、各种控制设备、交通工具、医疗仪器以及建筑、环境控制等领域。2 1 1、C A N 总线的性能特点0 1基于C A N 总线的液位数据采集、传输及监控系统设计第二章系统的硬件设计C A N
22、 协议是建立在国际标准组织的开放系统互连模型(I S O-O S I)基础上的。考虑到现场总线的应用特点,C A N 协议规定的网络系统结构由I S O-O S I 七层中的物理层、数据链路层和应用层组成。“】【2 C A N 总线的主要特点如下:C A N 是一种串行数据通信协议,是一种多主机局部网。通信介质可以是双绞线、同轴电缆或光纤,常用的是第一种。C A N 网络上任意节点均可在任意时刻主动的向网络上其它节点发送信息,而不分主从,通信方式灵活。C A N 的直接通信距离在速率5 k b p s以下最远可达I O K M,通信速率最高可达I M b p s,此时通信距离最长4 0 m。c
23、 A N 协议废除了传统的站地址编码,而代之以对通信数据块进行编码。C A N 采用非破坏性总线仲裁技术,当多个节点同时向总线发送信息时,优先级低的节点会主动地退出发送,而最高优先级的节点可不受影响地继续传输数据,从而大大节省了总线冲突仲裁时间。c A N 网络上的节点信息分成不同的优先级,可满足不同的实时要求,高优先级的数据最多可在1 3 4 u s 内得到传输。C A N 通过报文滤波可实现点对点、一点对多点及全局广播等几种方式传送接收数据。C A N 上的节点数主要取决于总线驱动电路,目前可达i i 0 个;报文标识符(I f)可由l l 位(C A N2 O A)或2 9 位(C A
24、N2 O B)二进制数构成,从而可定义的数据块数量为2 H 和2 2 9。c A N 协议采用短帧数据结构,数据块长度不超过8 个字节,传输时间短,受干扰的几率低,保证了通信的实时性。C A N 协议采用C R C 检验并提供相应错误处理功能,保证了数据通信的可靠性。2 1 2、O A N 总线的技术规范。11 连接和传递方式C A N 是一个多主机的局部网,各单元可同时挂到总线上。理论上单元数目是无限的,但由于总线的负载及数据延迟,其数目是有限的。总线结构广泛采用的是差分驱动的平衡双绞线,采用的数据具有两种互补的逻辑值之一:显性(d o m i n a n t)和隐性(r e c e s s
25、 i v e)。6基于C A N 总线的液位数据采集、传输及监 审系统设计第一二章系统的硬件设计图2 2C A N 总线的传输电平F i g 2 2L e v e lo nC A Nb u s“隐性”表示逻辑“1”,“显性”表示逻辑“0”。在“隐性”状态下V C A N-H和V C A N L 被固定在平均电压电平,V D I F F 近似为0,而“显性状态以大于最小阈值的差分电压表示,如图2 2 所示。但需要注意的是当“隐性位”和“显性位”同时发送时,最后的值将为“显性”,这也是故障界定和错误检测的根本基础。2 报文及帧结构C A N 总线以报文为单位进行信息传送。报文中包含标识符I D,它
26、代表了报文的优先权。C A N 系统中,一个C A N 节点不使用有关系统结构的任何信息,如站地址等。报文中的标识符I D)并不指出报文的目的地址,而是描述数据的含义。网络中的所有节点都可以由I D 来自动决定是否接收该报文。每个节点都有I D 寄存器和屏蔽寄存器,接收到的报文只有与该屏蔽的功能相同时,该节点才开始正式接收报文,否则不会理睬后续的报文。C A N 支持4 种不同类型的报文帧结构。由于C A N 协议有A 和B 两种版本,所以也就有相应的两种帧格式,一种含有1 l位标识符,称为标准帧,而另一种含有2 9 位标识符,则称为扩展帧。本课题C A N 协议中采用的是2 9 位的扩展帧格
27、式。在报文的传输中,报文具体分为数据帧(D a t aF r a m e)、远程帧(R e m o t eF r a m e)、错误帧(E r r o rF r a m e)和超载帧(O v e r l o a dF r a m e)。数据帧数据帧用于在各个节点之间传送命令和数据。它由7 个不同的位场组成:帧起始(S t a r to fF r a m e)、仲裁场(A r b i t r a t i o nF i e l d)、控制场(C o n t r o lF i e l d)、数据场(D a t aF i e l d)、C R C 场(C R CF i e l d)、应答场(A C K
28、F i e l d)和帧结尾(E n do fF r a m e)。其结构如图2 3。帧起始(S O F)标志数据帧和远程帧的起始,仅由一个显性位组成,只有在总线空闲时才允许站点开始发送数据。所有的站同步于首先开始发送报文站点的帧起始前沿。图2-3 扩展报文的数据帧结构F i g 2 3E x t e n d e dF o r m a to fD a t aF r a m e仲裁场在扩展帧格式里,包括2 9 位标识符(I D)S R R 位、I D E 僚和R T R 位。标识符(I D);I D 决定了报文的优先权。标准格式中的标识符长度为Il 位,相当于扩展豁的基本I D。这些位按I D
29、一2 8 到I D 1 8 的顺序发送。7 个最高位(I D 一2 8 I D 一2 2)必须不能全是隐性。7基于C A N 总线的液位数据采集、传输及监控系统设计第二章系统的硬件设计扩展格式的标识符由2 9 位组成,包含两个部分:1 1 位基本l D 和18 位扩展I D。基本I D 有1 1 位,相当于标准标识符的格式,按I D 一2 s 到l D 一1 8 的顺序发送,最高位是l D 一2 8。基本I D 定义了扩展帧的基本优先权。扩展I D 有l8 位,它按l D 1 7 到I D 一。顺序发送。S R R 位:隐性位S S R(代替远程请求倪)是为了版本的兼容性而代替前版本的R T
30、R 伉位置来区分标准帧和扩展帧的优先权。I D E 位:I D E 位为“标识符扩展位”,扩展格式里为隐性。R T R 位:R T R 位为“远程发送请求位”,可根据R T R 分辨数据帧还是远程帧,显性则为数据帧,反之则为远程帧。控制场控制场由6 个位组成,包括数据长度代码D L C 和两个保留位I o 和r l,其结构如图2-4 所示aIr 1r 0D L C 3D L C 2D L C lD L C 0图2 4控制场结构F i g 2 4S t r u c t u r eO fC o n t r O l1F i e l d数据长度代码(D L C 3 D L C 0):数据长度码为4 位
31、,指示了数据场包含的字节数目。其编码与数据字数据字节数目数据长度码D L c 3D L c 2B L C lD L c OOdddd1dddr2ddrd3ddrr4drdd5drdr6drrd7drrr8rddd隐性)C R C 场C R C 场包括1 5 位C R c 序列,其后是C R C 界定符,如图2 5 所示。C R C 序列是目前应用比较广泛的检错措施,通过位流的二进制数代码除以多项式(X l s+X 4+x o+x 8+x 7+x 4+X 3+1)(其系数以模2 计算)得到的余数即为发向总线的C R C 序列基于C A N 总线的液位数据采集传输及监挖系统设进第一章系统的硬件设计
32、图2 5C R C 场结构F i g 掷S t r u c t u r eO fC R CF i e l d答应场(A c K)答应场长度为2 位,包括应答间隙和应答界定符如图2 6 所示,在应答场中,发送站发送两个隐性位,图2-喝应答场结构F i g 2 _ 6S t r u c t u r eO fA C KF i e l d应答间隙:所有接受到匹配C R C 序列的站会在应答间隙间用一显性位写在发送器的隐性位置上来做出回应。应答定界符:应答定界符是应答场的第二位,并且必须是一个隐性位。因此,应答闻隙被两个隐性位所包围,也就是C R C 界定符和应答界定符。帧结尾每一个数据帧和远程帧均由一
33、标志序列界定,这个标志序列由7 个隐性位组成。远程帧作为数据接收器的站,通过发送远程帧可以启动其它节点传送它们各自的数据。远程帧由6 个不同的位场组成:帧起始、仲裁场、控制场、C R C 场、应答场和帧结尾。与数据帧相反,图2 7 远程帧结构F i g 2 7S t r u c t u r eO fR e m o t eF r a m e远程帧的R T R 位是隐性的。它没有数据场,所以数据长度代码的数值没有意义。远程帧的结构如图2 7。错误帧错误帧由两个不同的位场组成,第一个场是不同站提供的错误标志的叠加;第二个场是错误定界符。错误帧结构如图2 8。9基于C A N 总线的液位数据采集,传输
34、及监控系统设计第二章系统的硬件设计图2-8 错误帧结构F i g 2-8S t r u c t u r eo fE r rF r a m e接收站发现总线上的报文出错时,将自动发出“活动错误标志”,为6 个连续的显性位。由于各个接收站发现错误的时间可能不同,总线上的实际错误标志可能由6-一1 2 位显性位组成。在错误标志后为8 个隐性位组成的错误界定符。每个站发送错误标志后,开始发送隐性电平,并监视总线,检测到出错误条件时,将发送“认可错误标志”,它为6 个连续的隐性位。超载帧超载帧包括两个位场:超载标志和超载界定符,其结构如图2 9。图2 9 超载帧结构F i g 2-9S t r u c
35、t u r eo f0 v e r l o a dF r a m e超载帧只能在一个帧的结束开始。在一个接收站要求延迟下一个数据帧或远程帧,或在帧空间的间歇场的第l、2 位检测到显性位及在错误、超载界定符的最后一位采样到显性位,开始发送超载帧。超载标志由6 个显性位组成,而总线上的实际超载标志为6 一一7 位。超载界定符为8 个隐性位。帧间空间数据帧和远程帧与前面的任何帧用帧间空间的位场分隔开。它包括间歇场和总线空闲场。间歇场由3 个隐性位组成。总线空闲场可为任何长度,此时总线处于空闲状态,允许发送站发送报文3 错误检测C A N 为了提高抗干扰能力和数据传输的可靠性,采用了多种错误检测手段。
36、位错误:发送站时刻检测发送的每一位数据,如检测到总线数值与发送的不同,则在该位时刻检出一个位错误。填充错误:在应用位填充方法进行编码的报文字段中,出现第6 个连续相同的1 0基于C A N 总线的液位数据采集、传输及监控系统设计第-=章系统的硬件设计位电平。,C R C 错误:接收站计算得出的C R C 序列与接收到的不同。格式错:固定格式的位场格式与规定不同。应答错误:在应答期间,发送站未检测到显性位。发现错误时,接收站将发送活动出错标志,而发送站将发送认可出错标志。2 2 单片机及定时复位单元系统核心控制由单片机来完成,包括人机接口、启动A D 转换,数据处理,显示并产生报警信号,同时将数
37、据送C A N 接口进行协议转换和总线驱动等,因此单片机模块相当于应用层。1 微处理器A T 8 9 C 5 2 3 这里采用广泛应用的A T M E I 公司生产的低功耗、高性能8 位C M O S 单片机A T 8 9 C 5 2。该单片机与M C S 一5l 系列单片机兼容;在单片机内部有8 K 字节的F l a s h 程序存储器,可重复擦写1 0 0 0 次;有2 5 6 字节的内部R A M;正常工作频率0-2 4 M H z;8 个中断源,3个1 6 位定时计数器,1 个全双工串行接口。在本系统中全部程序写到内部F L A S H 中,不需要外扩程序存贮器,从而减小了系统硬件的体
38、积。2“看门狗”X 5 0 4 5 组成定时复位电路由于单片机自身的抗干扰能力较差,在工作环境恶劣的场合,很容易造成单片机因外界干扰大致”死机”现象,造成系统不能正常工作。设置“看门狗”电路是防止单片机系统死机,提高单片机系统抗干扰能力的一条重要途径。此处选用X I C O R 公司的专用可编程芯片X 5 0 4 5 作为“看门狗”,引脚见图2 1 0。f 专。:,矗建磐一。爹薯辎删喜幸葵磐,|5图2 一1 0X 50 4 5 引脚F i g 2 一1 0P i nc o n f i g u r a t i o no fX 5 0 4 5X 5 0 4 5 带5 1 2 B(4 K b i t
39、 s)的E 2 P R O M,具有四种常用功能:上电复位、看门狗定时器、电压监控和存储器块锁(B l o c kL o c k)保护。定时时间通过软件可选择:2 0 0 m s、6 0 0 m s和L 4 U S。工作时在程序的适当位置定时安排一条,“喂狗”指令,要求其时间间隔小于X 5 0 4 5的预置,这样只要系统死机或程序“跑飞”,X 5 0 4 5 会自动发出溢出脉冲,使单片机复位,从头开始执行程序。由于单片机没有S P I 接口,在硬件上要利用I 0 口线通基于C A N 总线的液位数据采集、传输及监控系统设计第二章系统的硬件设计过软件来产生S P I 接口协议的操作时序,X 5
40、0 4 5 与单片机的连接见下图。1 2茎王曼垒婪璺丝笪堕笪墼堡墨壅:篮笪墨堕鳖墨丝堡盐墨三童墨丝盟壁堡堡盐2 3 数据采集单元该系统主要是采集水池(5 米高)液位的数据。已经安装在现场的超声波液位仪传送来反映液位高度的0 5 V 的电压模拟信号(已标定),处理前首先要进行A D 转换。这里选用的A D 转换芯片为T I 公司的T L C 2 5 4 3。T L C 2 5 4 3 为C M O S1 2 位开关电容逐次逼近A D 转换器,片内含有一个1 4 通道多路选择器,可从1 i 个模拟输入或3 个内部自测电压中选择一个编码。片内还包括采样保持电路,系统时钟由片内产生并由I 0C L O
41、 C K 同步。它与单片机相连时只需4 条连接线:C S、I 0C L O C K、D A I N P U T、D A T A O U T,因此可以大大减少单片机的I 0 资源,这在本系统显得尤为重要。通过对其内部8 位状态寄存器的编程,可以定义输出数据的长度和格式,T L C 2 5 4 3 的引脚排列见图2 一1 1。图2 1IT L c 2 5 4 3:J I 脚F i g 2 11P i nc o n f i g u r a t i o no f T L C 2 5 4 3T L C 2 5 4 3 的主要特点:嘲1 1 个输入通道,1 2 位串行输出;工作温度范围内1 0 ts 转换
42、时间;3 路内置自测方式;采样率为6 6 k b p s;线性误差4 1 L S B(m a x);可编程单、双极性输出;可编程i d S B 或L S B 前导输出,可编程输出数据长度(8、1 2、1 6 b i t)。选用的理由是:由于水池容积很大,同时对液位测量精度要求不太高,液位变化不剧烈,因此采样速率不需要很高;考虑到该系统还会用于采集其它工业设备控制参数,如压力、温度、流量等,因此T L C C l 2 5 4 3 的1 1 个模拟输入通道满足以后扩展要求。系统中单片机A T 8 9 C 5 2 只有3 2 个I O 口,在本系统来说有些紧张,而T L C 2 5 4 3基于C A
43、 N 总线的液位数据采集、传输及监控系统设计第二幸系统的硬件设计只需4 条I 0 线和单片机连接,大大节省了I 0 资源,因此也满足要求。T L C 2 5 4 3 与单片机的连接见图3 2。2 4、键盘输入、数据显示及报警单元这部分完成报警临界值输入、液位数据在4 位数码管实时显示以及若超出规定限度产生报警信号的功能。1 键盘输入由于本系统中单片机的I 0 资源紧张,因而只设了三个按键:换位键(s 瑚孵)、运行键(R U N)和递增键(I N C C)。换位键(S H I F T):指定4 位数码管中对某一位操作;递增键(R U N):对指定的某一位数码管进行循环加l 操作;运行键 I 哪:
44、接受某一位设定值,并脱离该位设定过程转向下一位操作。8 9 C 5 2 采用查询S H I F T 和I N C C 方式输入,R U N 以中断方式(I N T I)与8 9 C 5 2 相连。电路连接见图3-2,键盘处理程序见后续设计流程。2 数据显示本系统中要求将采集到的液位数据以十进制高度形式在4 位数码管实时显示。经过分析决定采用静态显示方式。之所以这么设计是因为本系统为一个实时数据采集、传输、显示系统,这些操作不能间断,而单片机以顺序结构执行各程序模块,因此单片机的机时显得非常紧张。若采用动态显示方式,就要求单片机必须在一个适当循环周期内对数码管动态扫描,才能不出现明显的闪烁感,这
45、对整个系统工作频率提出了苛刻的条件。为了节省单片机机时,使程序结构简单,同时考虑到本系统还用于除液B C D 码输入位选择输入功能B 3B 2B 1B 0D lD 2D 3D 40000不变1001D00)0000位4B C D 码锁存100ID0D100O0位3B c D 码锁存10O1DDl00000位2B C D 码锁存l001DlD30000位lB C D 码锁存1O0113D0D000B C D 码全部锁存1001l11l基于C A N 总线的渡位数据采囊、传输及监拧系统设计第一二章系统的硬件设计图2 1 2I C M 7 2 1 2 日I 脚和功能F i g 2 1 2P i nc
46、 o n f i g u r a t i o na n df u n c t i o nO fI C M 7 2 1 2位以外其它高频率过程参数的采集,因此采用静态显示方式。静态显示芯片采用了M A X I M 公司的4 位共阳极驱动L E D 显示器的I C M 7 2 1 2,图2-1 2为芯片的功能表和引脚排列。I C M 7 2 1 2 为4 位共阳极驱动L E D 显示器芯片,驱动电流大于5 m A,典型值为8 m A,带4 位位选择输入,采用4 位B C D 码译码,具有亮度外部调节。其中位选择输入D 卜一D 4接单片机P 1 口的P 1 0 一P 1 3,4 位B C D 码输入
47、接单片机P l 口的P 1 4,一P 1 7,电路连接见图3-2,显示程序设计流程见后续。”3 报警单元系统中利用无源蜂鸣器和三极管构成了一个简单的报警电路,当液位超出规定的上下限时报警输出。其输入接单片机P 2 口的P 2 7,报警时单片机送出一定频率的脉冲,经三极管构成的放大器驱动可产生报警,电路连接见图3-2,报警程序设计流程见后续。这里需要说明的是本系统为实验样品,在实际中为了能产生功率更大的声光报警效果,应采用可控硅或继电器设计报警电路。2 5、C A N 总线协议实现及总线驱动单元2 5 1、C A N 总线协议实现单片机将采集的液位数据输出显示的同时,还要将数据通过C A N 总
48、线通信接口以符合C A N 协议的数据形式发送到总线上供其它总线单元使用。完成这一功能要利用C A N 总线控控器,这也是本系统最重要的部分。1 C A N 总线控制器及特性 7 儿8 基于C A N 总线的渡位数据采集、传输及监控系统设计第二二章系统的硬件设计本课题中C A N 总线控制器芯片采用了P H L I P S 公司1 9 9 7 年推出的独立式C A N 协议控制器S J A l 0 0 0。它集成了C A N 的物理层和数据链路层功能,可完成对通信数据的成帧处理,包括填充、数据块编码、循环冗余检验、优先级判别等项工作。S J A l 0 0 0 有两种工作模式:B a s i
49、cC A N 模式和P e l iC A N 模式。其中P e l iC A N 模式较以前增添了很多新的特性,全面支持C A N 2 O B 协议规范。它具有以下主要特性:在设计上其软件和硬件与P C A 8 2 C 2 0 0C A N 控制器兼容(B a s i cC A N 模式):扩展接收缓存;支持C A N 2 O B 协议规范;支持l l 位与2 9 位标识符:位速率可达I I g o p s;扩展P e l iC A N;时钟频率最高为2 4 删z:接口兼容多种微处理器:C A N 输出驱动配置可编程;工作环境温度宽(4 0-+1 2 5)。图2 1 3s J A l 0 0
50、0 9l 脚F i g 2 1 3P i nc o n f i g u r a t i o no fS J A l 0 0 0以下方面与B a s i cC A N 相比体现的特点如下:接收和发送采用扩展帧格式;接收F I F O 为6 4 字节;双重验收滤波器:基于C A N 总线的液位数据采瘫、传输及监控系统设计第二章系统的硬件设计错误计数:错误警告限制可编程岩误代码捕捉寄存器:针对每种C A N 总线错误的错误中断;自我测试。2 S J A l 0 0 0 引脚及内部结构图2 1 3 为S J A l 0 0 0 的引脚分配,图2 1 4 为S J A l 0 0 0 的内部结构框图,表