您的位置 首页 知识

根据CAN总线的长途温度收集体系

介绍了CAN总线在远程温度采集系统中的应用,给出一种基于独立的CAN控制器SJA1000和微控制器STC89C52的系统总体结构、硬件设计以及软件设计方法。实验表明,该系统采集温度精确、可靠性高,而且

摘要:介绍了CAN总线在长途温度收集体系中的运用,给出一种依据独立的CAN操控器SJA1000和微操控器STC89C52的体系整体结构、硬件规划以及软件规划办法。试验标明,该体系收集温度精确、可靠性高,并且通讯间隔远,可广泛运用于各种工业操控场合。

温度丈量是人们日常日子中常常遇到的问题,在工农业生产、地质勘探、国防科研等范畴扮演着重要的人物,对温度进行精确的丈量显得尤为重要,而在人工操作不方便的偏远地区、气候恶略地带,需求运用主动测温体系进行温度的丈量。

操控器局域网络(Controller Area Network,CAN)是一种串行双向通讯的总线。它选用多主作业方法,能够支撑散布操控和实时操控。CAN总线能在远间隔传输上坚持较高的通讯速率,其网络节点可达110个。CAN总线协议建立在OSI模型基础上的,已成为国际化规范并在工业测控和工业主动化范畴广泛运用。

本文完结了一种长途温度收集体系。该体系含有多个智能的测温模块,在每个节点方位上的测温模块不只能够独立的进行温度丈量收集,并且它们还可经过CAN总线衔接起来会集的办理和监控。

1 体系整体结构

温度收集体系整体结构如图1所示。坐落现场的智能节点构成单个温度收集模块,许多温度收集模块构成了整个温度收集体系,体系经过CAN总线对各节点的数据进行实时地收集和传输,发送到CAN总线上的数据可传送到上位计算机,经过上位计算机完结会集监控和办理。

依据CAN总线的长途温度收集体系

2 体系硬件规划

体系的智能节点由STC89C52微操控器和其外围电路组成。外围电路包含测温电路、CAN总线接口电路、LCD显现模块等部分。下面就首要部分进行详细地介绍。

2.1 微处理器

本体系选用能够兼容8051的STC系列中的STC89C52微处理器。STC89C52微处理器集成了微处理器模块、存储器模块和输入/输出接口模块的8位嵌入式微操控器芯片。其存储器模块包含8 kB内部程序存储器、512数据存储器以及内置4KB的EEPROM;输入/输出接口模块包含4个8位并行的I/O端口、32个可编程的I/O引脚。

2. 2 测温电路

测温电路选用单总线器材DS18B20完结。DS18B20内部集成了温度传感器和模数转换器,其温度丈量规模包含在-55℃+125℃与之间。它在必定的温度规模其精度可达0.5℃ DS18B20选用单一总线方法传输,接线方法经济灵敏,既降低了硬件的本钱又提高了体系的可靠性。DS18B20经过位片序列号,可完结将多个 DS18B20挂接在一根单总线上,因而能够将该温度传感器放在不同的当地,进行多节点温度的收集。STC89C52可依照DS18B20的序列号得到不同节点上的温度值。这是本文完结长途温度收集体系的要害。DS18B20与STC 89C252的衔接如图2所示。数字输入输出端DQ与单片机的P2.3口相连。

依据CAN总线的长途温度收集体系

2.3 CAN总线接口电路

本体系选用了CAN总线通讯技能,以便于数据及时而有用的传输。CAN总线接口电路由CAN总线操控器SJA1000和CAN总线收发器82C50两部分组成。其结构如图3所示。

依据CAN总线的长途温度收集体系

CAN总线操控器芯片SJA1000是一种独立操控器。其具有完结CAN通讯协议所要求的悉数特性。CAN总线收发操控器82C50是CAN总线操控器与物理总线之间的接口。其具有差动发送和差动接纳才能。CAN总线通讯协议由CAN操控器芯片和接口芯片一起效果完结,本体系在C言语编程规划中选用的是 BasicCAN协议形式。

3 体系软件规划

本长途温度收集体系的软件规划首要包含两部分:CAN总线接口软件部分和温度收集软件部分。CAN总线接口软件规划包含:SJA1000的初始化、CAN总线数据的发送和温度的接纳。体系软件规划是在STC系列单片机的C言语编程环境下编写的。

3.1 CAN操控器SJA1000的初始化

CAN总线节点的软件规划首要要进行CAN操控器SJA1000初始化。SJA1000初始化是在复位情况下默许的BasicCAN形式下进行的。其首要包含设置CAN形式位挑选作业形式,设置相应的寄存器界说接纳滤波方法和总线守时器。别的还有中止答应寄存器和输出形式的设置等。

首要SJA1000在上电复位进入默许BasicCAN形式,设置总线守时寄存器BTR0和BTRl值。一切节点的这两个总线守时寄存器设置都应相同,不然体系或许无法通讯。经过设置这两个寄存器然后确认体系的通讯波特率和同步跳转宽度。在复位形式中总线守时寄存器可被读/写访问。检验滤波器经过检验代码寄存器ACR和检验屏蔽寄存器AMR来设置。其次设置OCR确认CAN操控器输出方法。SJA1000初始化结束,体系即可成功传输报文。

3.2 CAN总线数据发送/接纳子程序

CAN总线发送子程序完结报文的发送。CAN总线数据发送子程序流程图如图4所示。程序先把待发送的信息依照要求的格局组成单帧报文,并将其写入SJA1000的发送缓存寄存器。将SJA1000的指令寄存器CMR第0方位1提出发送恳求,开端发送报文。

依据CAN总线的长途温度收集体系

CAN总线数据接纳子程序完结报文的接纳。CAN总线接纳子程序流程图如图5所示。接纳数据选用中止方法。当SJA1000收到一帧报文时,将报文滤波后存放在接纳缓冲器内,再开释接纳缓冲区,等候下面的报文接纳。程序在接纳报文时,还要处理单片机中止封闭、过错正告、数据溢出等各种情况。详细来讲,首要将CPU关中止,判别状况寄存器的RBS位是否为1,假如为1,就能够接纳数据;接纳完之后开释缓冲寄存器,敞开CPU中止。

3.3 温度收集软件

依据DS18B20的通讯协议,单片机STC89C52操控DS18B20完结温度收集。温度收集软件流程图如图6所示。读写前要对DS18B20进行初始化,初始化成功后发送温度转化指令。由此方可对DS18B20进行预订的操作。主机运用时隙来读写DS18B20的数据位和写指令字的位。

依据CAN总线的长途温度收集体系

4 结束语

本文介绍了该体系的硬软件规划及其完结进程。其运用STC89C52作为主控芯片,合作DS18820温度传感器、CAN总线电路,完结依据CAN总线协议的长途温度收集。试验标明,该温度收集体系可收集多个长途温度收集模块的数据,每一温度收集模块都可对各个节点的数据进行长途收集、远间隔传输和数字显现,体系经过CAN总线对其进行实时地的监控和办理。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/294958.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部