CAN总线的多点温度采集.doc_第1页
CAN总线的多点温度采集.doc_第2页
CAN总线的多点温度采集.doc_第3页
CAN总线的多点温度采集.doc_第4页
CAN总线的多点温度采集.doc_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

淮北师范大学2014届学士毕业论文 基于CAN总线的多点温度采集师范大学2014届学士学位论文基于CAN总线的多点温度采集 学院、专业 物理与电子信息学院 电子信息工程 研 究 方 向 自动化及控制领域 学 生 姓 名 李 学 号 201013420 指导教师姓名 苗 指导教师职称 助教 2013年12月20日 - 1 - 基于CAN总线的多点温度采集师范大学物理与电子信息学院 235000摘要 随着科学技术的发展,CAN总线技术也在不断进步,一方面由于CAN总线具有通信速率高、容易实现、且性价比高等诸多特点,逐渐被应用于各个领域。另一方面CAN总线上任意节点可在任意时刻主动地向网络上其它节点发送信息而不分主次,因而能方便、灵活的对数据进行实时采集和监测。基于CAN总线的多点温度采集系统是以51单片机为主控制器,利用温度传感器DS18B20采集温度,通过LCD1602显示温度值;同时利用CAN总线将总线上其它节点采集的温度数据传送至控制中心,从而实现对多点温度数据的采集和监测。关键词 CAN总线;单片机;DS18B20;LCD1602CAN-bus based multi-point temperature acquisitionSchool of Physics and Electronic Information, Normal University, Anhui Huaibei, 235000Abstract With the development of science and technology, CAN bus technology has been steadily progressing, on the one hand due to the high speed CAN bus with communication, easy to implement, and the high cost of many features gradually being used in various fields. CAN bus to any other node on the network reaches out to other nodes send information at any time without any differentiation, which can be convenient and flexible real-time data collection and monitoring. Multi-point temperature acquisition system based on CAN bus is 51 microcontroller-based controller, using a temperature sensor DS18B20 collecting temperature display temperature values by LCD1602; while using CAN bus will collect other nodes on the bus temperature data to the control center, which to achieve multi-point temperature data collection and monitoring. 朗读显示对应的拉丁字符的拼音Keywords CAN bus ; SCM ; DS18B20 ; LCD1602目 录引言11 文献综述21.1课题研究背景21.2课题来源21.3 CAN研究现状32 CAN总线技术概念42.1 CAN总线的特点43 硬件系统的设计53.1 CAN节点设计53.2 硬件设计模块63.2.1 硬件电路63.2.2 STC89C52RC单片机63.2.3 电源电路83.2.4 传感器电路83.2.5 CAN收发器电路93.2.6 CAN控制器电路93.2.7 液晶显示器电路114 软件设计124.1主节点程序流程图124.2从节点程序流程图124.3 CAN初始化程序流程图134.4发送数据中断子程序流程图134.5 接收数据中断子程序流程图144.6 液晶显示模块程序流程图155 系统调试165.1 从节点165.2 主节点16总结17参考文献18致谢19 - 19 -引言在当今的生产与生活中,温度是非常常见且重要的热工参数之一。例如:在工业、农业等诸多领域中,人们都需要对某些地方和某些产品的温度进行检测和控制。温度调控不好就可能导致生产安全,对产品质量和产量产生一连串问题。温度的调控很重要,但要调控好温度往往会碰到意想不到的困难。例如:地域条件,空间条件和人力资源等条件的限制。通过使用CAN总线对温度进行传输,一方面具有控制方便、组态简单和灵活等优点,克服了时间、地理位置和人力资源的限制,另一方面能够很大程度上提高对温度的实时采集与监测,这样可以避免因为温度过高或过低不能及时被发现,而导致问题的出现,影响产品的质量与产量。基于CAN总线的多点温度采集系统使用51单片机加DS18B20温度传感器的模式,为系统对温度信号采集的实时性与准确性提供保障,用CAN总线进行温度信号的传输,使整个系统数据采集的实时性得到保障。1 文献综述当今社会科学的快速发展,导致了自动化领域的很大改变,同时让控制领域慢慢形成了开放系统互联网通信。CAN又被称为控制器局域网络,属于现场总线的范畴,与别的通信总线相比较,CAN总线在数据传输范畴拥有杰出的可靠性、实时性与灵活性。控制器局域网络拥有特别的设计理念和优良的性能,使得它在生产与生活中的使用是非常多的。由于控制器局域网络自身显著的特点,它的应用领域目前已不局限于汽车行业,而向航海、航空、航天农用机械、机器人、数控机床、传感器等领域发展的应用也很显著。本文设计的基于CAN总线的多点温度采集完成了主从节点间数据通信,该系统结构灵活、通用性强。在本系统设计里,利用温度传感器DS18B20采集温度信号,将温度信号传给51单片机,最后单片机将采集到的数据发送到CAN控制器,然后由CAN总线收发器发送到总线上,主节点接受各从节点发到CAN总线上的温度信号并进行显示,从而实现对数据的采集。1.1课题研究背景1950年以前,测控仪器处于初级的发展阶段,仪器一般安装在生产现场,仅仅具有基本测控功能,信号只可以在仪表内使用,不能传输给其他的仪器,不能和外界交换信息,使用人员只能通过生产现场的观察,才能知道生产过程的状况。1960-1969年阶段,单元组合式仪表的出现,中央控制室的建立,使得生产现场中的各参数通过统一的模拟信号送往中央控制室,工作者能够在控制室内了解生产现场的情况。1970年到1979年阶段,数字计算机在测量、模拟和理论控制领域得到运用,出现了集中式控制,数据采集系统是生产过程控制最早的一种类型,把需要采集的信号送入计算机。实践证明,数据采集系统虽然不直接运用于生产过程,但计算机计算速度快、运算便捷等优点,在数据的监测和统计过程中能够取代常早些时期的仪表,对整个生产过程进行统一监测。数据采集系统主要是对传输数据进行监测、数据记录与统计和处理、同时可以对数据进行采集储存和实时分析。1.2课题来源1CAN总线是当今机械化领域技术发展的产物之一,又叫自动化领域的计算机局域网,分布式控制系统能够提供各节点之间实时、可靠的数据通信技术保障。2.自己对51单片机的了解以及对CAN总线有一定的认识, CAN总线的运用不仅仅限制在汽车行业,同时在自动化领域有了一定发展。故一来想借这课题来完成毕业设计,二来想在CAN总线技术方面能够更深入的了解。1.3 CAN研究现状CAN总线最早应用于汽车行业中,当时,因为消费者对于汽车使用功能的要求越发提高,由于大部分功能的实现都是对于电子元器件的控制,这就导致电子装置间的数据通信越来越复杂,同时要求更多的数据传输导线。提出CAN总线的最初目的就是为了解决汽车中大量电子控制器件之间的数据传输,降低因功增多而增加的信号传输线,于是工作者设计了一个单一的网络总线,所有的外围器件都可以挂接在总线上。2 CAN总线技术概念2.1 CAN总线的特点CAN总线与别的总线相比较,在数据传输方面具有突出的优越性其特点如下:1.多主工作模式,网络上任意节点都可以向别的节点传输数据。2.在报文标识符方面,网络节点会被分配不同的优先级,来满足不同的实时要求。3.当多个节点同时向总线发送数据出现冲突时,低优先级的节点会暂停数据的发送,高优先级的节点能够继续发送数据,保证了数据传输的通畅。4.CAN节点可以利用报文的标识符滤波就可实现点对点、一点对多点进行数据的收发。5. 速率在5kbps以下,CAN的信息传输距离能够达到10km;速率在1Mbps时,信息传输距离能够达到40km。6.CAN上的节点数目前可达110个。在标准帧的报文标识符有11位,而在扩展帧的报文标识符个数几乎不受限制。7.报文采用短帧格式,传输时间短,抗干扰能力强,数据出错概率低。8.CRC校验总线上的每帧信息,能够很大程度上降低错误率。9.性价比高,结构简单,采用现有的单片机即可开发。3 硬件系统的设计系统硬件的设计原理:利用传感器DS18B20作为测温元件,使用CAN总线设计一种多节点温度采集系统。该系统可靠性好、结构简洁、成本低廉等优点,其在使用领域可取代以往测温系统的不足。硬件电路由51单片机、CAN控制器、CAN收发器、温度传感器DS18B20、复位电路以及晶振电路组成。其中单片机STC89C52RC作为核心部分,用来对CAN控制器的初始化、数据的发送和接受;CAN总线控制器用于同单片机进行通讯、能够独立的完成CAN总线的接受和发送工作。3.1 CAN节点设计本设计由单片机作为CAN主节点和和从节点,构成节点网络,实现对多节点的温度采集。CAN节点原理框图如3.1所示。 图 3.1 CAN节点原理图 数据结点主要完成以下功能:温度信号实时采集和就地显示,从节点接收主节点命令和从节点向主节点发送采集到的数据。3.2 硬件设计模块3.2.1 硬件电路在所设计电路中采用STC89C52RC单片机为最小控制系统,外围电路加CAN控制器和收发器以及温度传感器DS18B20和液晶1602。从温度传感器接收到的信息可以在单片机STC89C52RC中经过处理后发关到CAN总线上,主节点从CAN总线上接受从节点的信息并显示。硬件模块主要由电源模块,STC89C52RC单片机,CAN控制器,CAN收发器,温度传感器,液晶显示模块构成。3.2.2 STC89C52RC单片机图3.2 STC89C52RC单片机 主要特性如下:1.程序兼容以往的51单片机。 2.工作电压:5.5V3.3V。3.工作频率在040MHz。 4.用户应用程序空间为8K字节5.片上集成512字节RAM6.具有EEPROM功能7.具有看门狗功能8.3个16位定时器。9.通用异步串行口。10.PDIP封装3.2.3 电源电路单片机工作所需要的的电压为+5V。电路如图3.3所示图3.3 电源电路3.2.4 传感器电路图3.4 传感器电路本系统所采用的温度传感器是DS18B20,从单片机到DS1820仅需连接一条线,能实时对温度进行采集,直接将采集信息以数字量的形式输出,简单方便。3.2.5 CAN收发器电路图3.5 TJA1050收发器电路TJA1050为CAN收发器,在从节点和主节点之间作为发送和接受采集的温度信号。3.2.6 CAN控制器电路图3.6 SJA1000控制器电路说明:1接口管理逻辑IML接口管理逻辑解释来自CPU 的命令控制CAN 寄存器的寻址向主控制器提供中断信息和状态信息。2发送缓冲器TXB发送缓冲器是CPU 和BSP 位流处理器之间的接口能够存储发送到CAN 网络上的完整信息缓冲器长13 个字节由CPU 写入BSP 读出。3接收缓冲器RXB RXFIFO接收缓冲器是验收滤波器和CPU 之间的接口用来储存从CAN 总线上接收和接收的信息接收缓冲器RXB 13 个字节作为接收FIFO RXFIFO 长64 字节的一个窗口可被CPU 访问CPU 在此FIFO 的支持下可以在处理信息的时候接收其它信息。4验收滤波器ACF验收滤波器把它其中的数据和接收的识别码的内容相比较以决定是否接收信息在纯粹的接收测试中所有的信息都保存在RXFIFO 中。5. 位流处理器BSP位流处理器是一个在发送缓冲器RXFIFO 和CAN 总线之间控制数据流的程序装置它还在CAN 总线上执行错误检测仲裁填充和错误处理。6位时序逻辑BTL位时序逻辑监视串口的CAN 总线和处理与总线有关的位时序它在信息开头弱势-支配的总线传输时同步CAN 总线位流硬同步接收信息时再次同步下一次传送软同步BTL 还提供了可编程的时间段来补偿传播延迟时间相位转换。7. 错误管理逻辑EMLEML 负责传送层模块的错误管制它接收BSP 的出错报告通知BSP 和IML 进行错误统计。3.2.7 液晶显示器电路图3.7 液晶显示电路该显示电路采用单片机的输入输出口对液晶进行控制。液晶的第三脚用于液晶显示对比度的调节,通过一个10K的可变电阻接到地。4 软件设计4.1主节点程序流程图该系统主要接受从节点采集的温度信号,通过TJA1050接受从节点温度数据,同时在主节点使用液晶1602显示接受的温度数据。开始CAN总线接收显示初始化图4.1 主节点流程图4.2从节点程序流程图该系统主要用来将DS18B20采集的温度信号,经过处理然后发送到主节点。 开始初始化数据采集数据处理CAN收发器发送图4.2 采集系统流程图4.3 CAN初始化程序流程图CAN控制器的初始化是CAN 总线设计的关键步骤,因为要CAN控制器对采集的温度信号进行控制,所以它的工作模式设置、接收滤波方式的设置、接收屏蔽寄存器的设置、波特率参数的设置和中断允许寄存器的设置都需要严格的控制。 关中断置CAN为复位状态初始化寄存器置CAN与运行状态开中断进入工作状态进入复位状态结束NYN图4.3 CAN初始化程序流程图4.4发送数据中断子程序流程图根据CAN协议规范,采集的温度数据由CAN控制器进行传输,然后由CAN收发器将温度信号发送到CAN总线上。单片机只将发送的温度数据发送到数据缓冲区,然后将命令寄存器的“发送请求”标志位置高,启动发送命令即可。发送缓冲区空?把数据写入CAN发送缓冲区启动发送器NY结束开始图 4.4 CAN的发送数据中断流程图4.5 接收数据中断子程序流程图温度数据由CAN总线到CAN接收缓冲区也是CAN控制器控制实现的,接收程序只需从接收缓冲区中读取接收的数据,采用中断方式接收数据。结束接收缓冲区空?读接收缓冲区的信息并保存释放接收缓冲区YN开始图4.5 CAN接收程序流程图4.6 液晶显示模块程序流程图液晶显示模块主要完成信号的主从节点温度显示 。判断液晶1602状态,若不忙,则向液晶发送数据,将数据在液晶上显示,若忙,则重新清屏然后再次查忙。开始清屏显示向显示器发送数据读显示器状态是否空闲初始化NY图 4.6液晶模块流程图5 系统调试经过系统的调试,硬件电路基本搭建完成,主要由2个从节点和一个主节点构成,从节点主要完成数据的采集、就地显示和将数据传输给主节点,主节点主要完成接受从节点传输的温度数据并显示。5.1 从节点采用温度传感器DS18B20采集温度数据,通过LCD1602就地显示温度值,并将采集的温度数据发到CAN总线上,以便主节点接受CAN总线上的温度信号。图5.1 从节点1温度显示图5.2 从节点2温度显示5.2 主节点接受CAN总线上的温度数据,通过LCD1602显示温度值,实现多点温度采集。图5.3 主节点温度显示总结基于CAN总线的多点温度采集系统的完成,让我充分体会到CAN总线作为控制器局域网的强大。因此,设计一种能够运用于实际生产和生活、可以和已有的常见产品想关联是很有必要的,本文论述了CAN总线的发展和对CAN总线的概念进行了简单的介绍,最后论述了CAN总线在众多总线中的优点,并在此基础上完成了基于CAN总线的温度采集系统。本论文对基于CAN总

温馨提示

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

评论

0/150

提交评论