当前位置:首页 > 嵌入式 > 嵌入式硬件

摘要:介绍了CAN总线技术及特点,提出了一种基于CAN总线的温度测量节点的设计,该系统采用单片机技术和CAN总线技术实现,给出了温度测量节点的硬件、软件的设计。经实际应用,使用CAN总线的温度测量节点在信号传输的实时性、可靠性、传输距离和测量精度有着显著的提高。
关键词:CAN总线;节点;CAN通信

0 引言
CAN是Controller Area Network的缩写,即控制器局部网,通常称为CAN bus(CAN总线),是一种支持分布式控制的串行通信协议。CAN最初出现在汽车工业中,是20世纪80年代德国Boech公司为汽车的监控、控制系统而设计的,主要是解决汽车中的电子控制装置之间的通信,减少不断增加的信号线。CAN总线的直接通信距离最远可以达到10 km,此时通信速率为5 kbps以下;而通信速率最高可达1 Mbps,此时通信距离长为40 m。同时CAN总线的通信媒介采用双绞线或光纤,选择灵活,其结构较简单,总线接口芯片支持8位、16位的CPU。
由于CAN总线采用短帧结构,在标准格式中,短帧的字节数为8个,因此传输时间短,受干扰的概率低,重新发数据帧的时间短,并且每帧信息都有CBC校验及其他检错措施,这样可以保证极低的数据出错率。CAN总线上的节点在错误严重时,可以自动关闭总线的功能,使总线上的其它操作不受到影响。由于CAN总线的数据通信具有卓越的特性及极高的可靠性,因而非常适合工业过程监控设备互连,也是最有前途的现场总线之一。由于CAN总线的特点,使得其广泛地应用于电力、航空航天、治金、交通工具、机器人、医疗设备、环境监控和家用电器等众多领域。本文提出基于CAN总线的温度测量节点的设计。

1 系统总体结构设计
根据系统的设计要求,其总体设计结构如图1所示。整个系统由主站节点、分布式温度测量节点两部分组成。由于基于CAN总线的温度测量节点是一种分布式、实时的通信系统,可采用主从方式通信,其特点就是系统中任一节点设一为主站节点,其余均为从站节点,主站节点通过CAN总线与各个从站节点进行通信。我们只需设一个主站节点作为主监控器,以点对点方式进行通信,其余的从站均为各个温度测量节点。各个节点都通过CAN总线实现信号数据的连接,各个温度测量节点具有较强的独立性,具有工作可靠性、性能稳定、测量精确、安装调试方便、造价低廉等特点。



2 温度测量节点的硬件电路设计
CAN总线温度测量节点主要任务是温度采集与CAN通信,其硬件结构框图如图2所示。硬件电路由微处理器STC89C52、总线控制器SJA10 00、总线驱动器PCA82CS0和传感器DS18B20四个部份组成。微处理器负责对SJA1000和DS18B20进行初始化,通过总线控制器SJA1000实现数据的接收和发送等通信任务。

2.1 温度传感器DS18B20
DS18B20是美国DALLAS公司推出的第一片支持“一线总线”接口的温度传感器,该传感器只需一个端口引脚进行通信,就可以实现多点分布的应用,具有低功耗、高性能、抗干扰强等优点。其传感器的特性为:
(1)温度测量范围宽,能测到-55℃~125℃的温度,在-10℃~+85℃时精度为正负0.5℃。
(2)提供9—12位的测量分辩率,对应的温度精度分别为0.5℃、0.25℃、0.125℃和0.0625℃,实现了高精度的测量。
(3)接口方式独特,仅需一条信号线就可以实现与微处理器的双向通信。
(4)测量出的温度能直接转化成串行数字信号供CPU处理,同时还传送CRC校验码,具有很强的抗干扰纠错能力。
温度传感器的电路设计由单片机的引脚P3.5与传感器DS18B20的DQ脚相连,实现微处理器与传感器的双向数据的通信。同时DQ单总线外接一4.7 k的上拉电阻。温度传感器的电路图如图3所示。


2.2 CAN通信电路的设计
CAN通信电路是整个系统实现通信的关键部分,系统中各个节点和节点控制器是通过CAN通信电路接入CAN总线网络上的,实现信号数据的传输。CAN通信电路采用STC89C52处理器、PHILIPS公司的总线控制器SJA1000、NXP公司的总线收发器82C250和高速光电耦合器6N137等器件组成。在CAN通信电路中微处理器负责对SJA1000进行初始化,各信号通过CAN总线控制器实现信号数据的接收和发送等通信任务。同时为了增加CAN总线节点的抗干扰能力,更好地实现了总线上各CAN节点间的电气隔离,SJA1000的TX和RX引脚通过连接光耦6N137后再与总线收发器PCA82C250相连,总线收发器82C250的TXD和RXD分别接光耦6N137的输出OUT和输入IN端,再通过具有差动发送和接收功能的总线终端CAN_H和CAN_L连接入总线电缆中,完成通信的传输。

3 温度测量节点的软件设计
温度测量节点的软件设计包括CAN总线初始化、发送子程序及中断接收程序软件设计和温度传感器DS18B20的程序设计。其节点流程图如图4所示。


3.1 CAN初始化程序
CAN初始化即初始化CAN节点。要保证通信正确可靠则必须先对控制器SJA1000进行初始化参数设置。初始化设置是通过微处理器对SJA1 000的寄存器进行初始化,这些初始化包括控制寄存器的配置、命令寄存器的配置、状态寄存器的配置、中断管理寄存器的设置、总线定时寄存器的配置、输出控制寄存器的设置以及时钟分频寄存器的设置等。
系统上电后,对CAN初始化只有在复位模式下才可以开始,初始化设置完成后,CAN控制器就可以回到工作状态,即进入工作模式,执行正常的通信任务。CAN控制器初始化流程图如图5所示。


3.2 CAN通信电路程序
CAN总线节点要完成通信任务则还必须包括发送子程序及中断接收程序。发送子程序负责各节点报文的发送任务。发送时只需将待发送的数据信息按特定的格式组合成一帧报文,送入CAN控制器SJA1000的发送缓冲器中,启动SJA1000发送即可完成发送报文任务。在向SJA1000发送缓冲器发送报文之前,可先做一些判断,判断其是否正在接收数据、先前发送是否成功以及发送缓冲器是否锁定等等,以确保数据发送的可靠性。
中断接收程序主要是负责节点报文的接收以及其它中断情况的处理。当进入中断后要进行是否有数据的判断,以防干扰误中断。
3.3 温度传感器的程序设计
温度测量节点电路上电后也要进行初始化设置,初始化完成后,温度测量节点中的温度传感器对采集到的数据信息实时处理、现场数据实时显示,并判断采集的信息是否超过正常值,如出现异常,则报警提示并通过CAN通信电路进行通信。

4 结束语
本设计应用性很强,在实际应用中表明,其温度测量的精度和稳定性都得到很好的提高,准确地反应了工作状况和实际状况,达到了预期目标。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

冷裂纹和热裂纹的区别主要体现在产生的原因、温度和时间、产生的部位和方向、外观特征以及金相结构等方面。

关键字: 冷裂纹 热裂纹 温度

在这篇文章中,小编将对USB接口的相关内容和情况加以介绍以帮助大家增进对USB接口的了解程度,和小编一起来阅读以下内容吧。

关键字: USB 通用串行总线 总线

今天,小编将在这篇文章中为大家带来嵌入式总线技术的有关报道,通过阅读这篇文章,大家可以对嵌入式总线技术具备清晰的认识,主要内容如下。

关键字: 嵌入式 总线

涡轮流量计是一种广泛用于测量液体和气体流量的仪器,它基于涡轮叶片的旋转来测量流体的速度并计算出流量。这种类型的流量计在工业、化工、石油、天然气、水处理和许多其他领域都得到了广泛的应用。然而,要确保涡轮流量计的准确性和可靠...

关键字: 涡轮流量计 涡轮叶片 测量

北京2023年9月19日 /美通社/ -- 随着科技的快速发展,我们正处在一个数据爆炸的时代。超大规模数据中心作为数据的重要存储和处理场所,其数量在不断增长,与之而来的数据量也在呈指数级增长。这不仅包括原始数据,还包括分...

关键字: 分布式 节点 软件 数据中心

液位变送器是一种常见的工业自动化装置,用于测量液体高度或容器中的液体体积。它广泛应用于石油化工、食品加工、水处理等领域,在生产过程中起到重要的监测和控制作用。本文将介绍液位变送器的基本原理、应用设计步骤以及注意事项,帮助...

关键字: 液位变送器 工业自动化 测量

(全球TMT2023年9月5日讯)在2023年华为云沙特峰会上,华为宣布,华为云利雅得节点正式开服。本次开服后,利雅得节点将成为华为云服务中东、中亚和非洲的核心节点。华为云利雅得节点通过3AZ(可用区)架构,提供了高可...

关键字: 节点 华为云 云服务 GO

沙特阿拉伯利雅得2023年9月4日 /美通社/ -- 在2023年华为云沙特峰会上,华为宣布,华为云利雅得节点正式开服,推动该国数字经济增长。 本次开服后,利雅得节点将成为华为云服务中东、中亚和非洲的核心节点,可提供创...

关键字: 华为云 节点 AI 数字化

深圳2023年8月31日 /美通社/ -- 9月1日,招商信诺人寿保险有限公司(以下简称为“招商信诺人寿”)2023年客户节正式在全国启动。本次客户节活动将持续为期两个月的时间,以“健康生活,诺+掌握”为主题,推出从理赔...

关键字: 医疗服务 APP BSP 温度

全闪存存储的历史性时刻到来! 北京2023年8月30日 /美通社/ -- Gartner最新数据显示,2023年第一季度全球外部存储市场同比增长0.5%;其中,全闪存阵列同比增长3.6%,市场规模超过非全闪存阵列,占整...

关键字: 数据中心 数据存储 节点 机械硬盘
关闭
关闭