下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、【Word版本下载可任意编辑】 CAN总线的温度测量节点设计 引言 CAN是Controller Area Network的缩写,即控制器局部网,通常称为CAN bus(CAN总线),是一种支持分布式控制的串行通信协议。CAN初出现在汽车工业中,是20世纪80年代德国Boech公司为汽车的监控、控制系统而设计的,主要是解决汽车中的电子控制装置之间的通信,减少不断增加的信号线。CAN总线的直接通信距离远可以到达10 km,此时通信速率为5 kbps以下;而通信速率可达1 Mbps,此时通信距离长为40 m。同时CAN总线的通信媒介采用双绞线或光纤,选择灵活,其构造较简单,总线接口芯片支持8位、1
2、6位的CPU。 由于CAN总线采用短帧构造,在标准格式中,短帧的字节数为8个,因此传输时间短,受干扰的概率低,重新发数据帧的时间短,并且每帧信息都有CBC校验及其他检错措施,这样可以保证极低的数据出错率。CAN总线上的节点在错误严重时,可以自动关闭总线的功能,使总线上的其它操作不受到影响。由于CAN总线的数据通信具有卓越的特性及极高的可靠性,因而非常适合工业过程监控设备互连,也是有前途的现场总线之一。由于CAN总线的特点,使得其广泛地应用于电力、航空航天、治金、交通工具、机器人、医疗设备、环境监控和家用电器等众多领域。本文提出基于CAN总线的温度测量节点的设计。 1 系统总体构造设计 根据系统
3、的设计要求,其总体设计构造如图1所示。整个系统由主站节点、分布式温度测量节点两部分组成。由于基于CAN总线的温度测量节点是一种分布式、实时的通信系统,可采用主从方式通信,其特点就是系统中任一节点设一为主站节点,其余均为从站节点,主站节点通过CAN总线与各个从站节点开展通信。我们只需设一个主站节点作为主监控器,以点对点方式开展通信,其余的从站均为各个温度测量节点。各个节点都通过CAN总线实现信号数据的连接,各个温度测量节点具有较强的独立性,具有工作可靠性、性能稳定、测量、安装调试方便、造价低廉等特点。 图1 分布式温度测量节点构造框图 2 温度测量节点的硬件电路设计 CAN总线温度测量节点主要任
4、务是温度采集与CAN通信,其硬件构造框图如图2所示。硬件电路由微处理器STC89C52、总线控制器SJA10 00、总线驱动器PCA82CS0和传感器DS18B20四个部份组成。微处理器负责对SJA1000和DS18B20开展初始化,通过总线控制器SJA1000实现数据的接收和发送等通信任务。 图2 温度测量节点硬件电路构造框图 2.1 温度传感器DS18B20 DS18B20是美国DALLAS公司推出的片支持“一线总线”接口的温度传感器,该传感器只需一个端口引脚开展通信,就可以实现多点分布的应用,具有低功耗、高性能、抗干扰强等优点。其传感器的特性为: (1)温度测量范围宽,能测到-55125
5、的温度,在-10+85时精度为正负0.5。 (2)提供912位的测量分辩率,对应的温度精度分别为0.5、0.25、0.125和0.0625,实现了高精度的测量。 (3)接口方式独特,仅需一条信号线就可以实现与微处理器的双向通信。 (4)测量出的温度能直接转化成串行数字信号供CPU处理,同时还传送CRC校验码,具有很强的抗干扰纠错能力。 温度传感器的电路设计由单片机的引脚P3.5与传感器DS18B20的DQ脚相连,实现微处理器与传感器的双向数据的通信。同时DQ单总线外接一4.7 k的上拉电阻。温度传感器的电路图如图3所示。 图3 温度传感器电路 2.2 CAN通信电路的设计 CAN通信电路是整个
6、系统实现通信的关键部分,系统中各个节点和节点控制器是通过CAN通信电路接入CAN总线网络上的,实现信号数据的传输。CAN通信电路采用STC89C52处理器、PHILIPS公司的总线控制器SJA1000、NXP公司的总线收发器82C250和高速光电耦合器6N137等器件组成。在CAN通信电路中微处理器负责对SJA1000开展初始化,各信号通过CAN总线控制器实现信号数据的接收和发送等通信任务。同时为了增加CAN总线节点的抗干扰能力,更好地实现了总线上各CAN节点间的电气隔离,SJA1000的TX和RX引脚通过连接光耦6N137后再与总线收发器PCA82C250相连,总线收发器82C250的TXD
7、和RXD分别接光耦6N137的输出OUT和输入IN端,再通过具有差动发送和接收功能的总线终端CAN_H和CAN_L连接入总线电缆中,完成通信的传输。 3 温度测量节点的软件设计 温度测量节点的软件设计包括CAN总线初始化、发送子程序及中断接收程序软件设计和温度传感器DS18B20的程序设计。其节点流程图如图4所示。 图4 温度测量节点流程图 3.1 CAN初始化程序 CAN初始化即初始化CAN节点。要保证通信正确可靠则必须先对控制器SJA1000开展初始化参数设置。初始化设置是通过微处理器对SJA1 000的存放器开展初始化,这些初始化包括控制存放器的配置、命令存放器的配置、状态存放器的配置、
8、中断管理存放器的设置、总线定时存放器的配置、输出控制存放器的设置以及时钟分频存放器的设置等。 系统上电后,对CAN初始化只有在复位模式下才可以开始,初始化设置完成后,CAN控制器就可以回到工作状态,即进入工作模式,执行正常的通信任务。CAN控制器初始化流程图如图5所示。 图5 CAN 控制器初始化流程图 3.2 CAN通信电路程序 CAN总线节点要完成通信任务则还必须包括发送子程序及中断接收程序。发送子程序负责各节点报文的发送任务。发送时只需将待发送的数据信息按特定的格式组合成一帧报文,送入CAN控制器SJA1000的发送缓冲器中,启动SJA1000发送即可完成发送报文任务。在向SJA1000发送缓冲器发送报文之前,可先做一些判断,判断其是否正在接收数据、先前发送是否成功以及发送缓冲器是否锁定等等,以确保数据发送的可靠性。 中断接收程序主要是负责节点报文的接收以及其它中断情况的处理。当进入中断后要开展是否有数据的判断,以防干扰误中断。 3.3 温度传感器的程序设计 温度测量节点电路上电后也要开展初始化设置,初始化完成后,温度测量节点中的温度传感器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重庆大学美术专业就业前景
- 教育行业职业前景
- 老年人骨折预防
- 组织健康宣教
- 颗粒尿素安全指南讲解
- 商务安全生产管理要点讲解
- AI在经济林培育与利用中的应用
- 属地安全生产责任管理讲解
- 2026年港口航道工程师备考资料
- 绿化安全生产技术交底讲解
- 2026年安全事故案例分享与管理提升
- DB15∕T 1895-2020 建筑消防设施维护保养技术规程
- 2026地勘中心(中国非矿)成员单位招聘129人(一)备考题库完美版
- 子宫内膜恶性肿瘤的个案护理
- 国家开放大学电大《乡镇行政管理》期末题库及答案
- 山东春季高考协议书
- 小学科学部分实验仪器的使用方法
- 数学试卷答案【广西卷】【高二下期末考】广西壮族自治区考阅评南宁部分学校2025年春季学期高二年级期末教学质量监测(6.30-7.1)
- (独家!)2025年3月29日湖南省事业单位联考A类《职测》真题及答案
- 脊柱骨折护理讲解
- 华为公司培训讲师体系构建
评论
0/150
提交评论