收藏 分享(赏)

基于CAN总线的智能车的设计与实现.doc

上传人:kpmy5893 文档编号:6783884 上传时间:2019-04-22 格式:DOC 页数:4 大小:103KB
下载 相关 举报
基于CAN总线的智能车的设计与实现.doc_第1页
第1页 / 共4页
基于CAN总线的智能车的设计与实现.doc_第2页
第2页 / 共4页
基于CAN总线的智能车的设计与实现.doc_第3页
第3页 / 共4页
基于CAN总线的智能车的设计与实现.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

1、基于 CAN总线的智能车的设计与实现本文系统采用 SST89E564RD微处理器实时采集道路信息,采用 TMS320F2812进行数据的综合处理,输出相应命令给执行机构,所有数据通过 CAN总线交互,方便功能拓展。通过模拟测试和大量环境试验,以及对记录、实时检测、数据分析的整理,该智能车目前运行可靠。后续将增添无线模块节点,为该智能车添加遥控功能。控制器局域网络 CAN(Controller Area Network)是德国 BOSCH公司为解决现代汽车中众多电子设备之间的数据交换而开发的一种串行数据通信协议,它具有高可靠性和良好的错误检测能力。汽车上主要有高速(500 kb/s)和低速(12

2、5 kb/s)两种 CAN总线,这两种总线通过网关连接,实现两个局域网间的数据共享。目前,随着对系统复杂化、精细化的要求越来越高,传统的集中控制从实时性和可靠性上越来越不能满足要求,分布控制逐渐得到了广泛应用。分布控制就是系统由一个主控制器和若干个分控制器组成,分控制器分别处理一部分系统功能,以并行或串行的方式与主控制器进行数据和信息的交互。1 系统的总体设计本设计主要完成了智能车在预先铺贴的道路上行驶。整个系统硬件组成框图如图1所示,包括采集节点和控制节点,它们之间通过 CAN总线完成数据的交互。采集节点通过传感器采集道路信息,经过信号调理电路传送到微控制器,微控制器对信息进行处理后把数据发

3、送到 CAN总线上。控制节点读取总线上的数据并转换成控制命令,控制执行机构以确保智能车不偏离道路并且保持较高的速度。点击图片查看大图图1 系统硬件组成框图2 节点的硬件接口设计2.1 采集节点 SST89E564RD与 CAN总线接口SST89E564RD自身不具有 CAN模块,因此扩展了 CAN总线控制器,通过 CAN总线收发器接入总线。本设计采用的 CAN控制器是 SJA1000,其兼容 CAN2.0B协议,通过单片机对其进行初始化,主要实现数据的接收和发送等通信任务。收发器选用 PCA82C250,它是一种应用广泛的 CAN控制器与物理总线间的接口芯片,能够对总线的信息进行差动发送和接收

4、。为了进一步提高系统的抗干扰能力,在 PCA82C250和 SJA1000之间用高速光耦6N137进行隔离,以降低由于不同节点的高共模电压引起的串扰甚至对器件的损坏,提高系统的可靠性,其通信速率高达10 Mb/s,完全能满足 CAN总线需要。SST89E564RD 与 CAN总线的硬件接口如图2所示。点击图片查看大图图2 单片机与 CAN总线的硬件接口设计2.2 控制节点 DSP 与 CAN 总线接口TMS320F2812 DSP 芯片内部集成了一个完整的增强型 CAN 控制器, 称之为 eCAN, 在硬件设计中,不需要再加入独立的 CAN 控制器来实现 CAN 总线的底层协议, 直接通过收发

5、器 PCA82C250 连接总线。DSP 与 CAN总线接口设计如图3 所示。点击图片查看大图图3 DSP 与 CAN总线的硬件接口设计3 CAN节点软件设计3.1 CAN总线通信数据格式CAN协议通信格式中有数据帧、远程帧、出错帧和超载帧4种帧格式。其中,数据帧和远程帧的发送需要在 CPU控制下进行,而出错帧和超载帧的发送则是在错误发生和超载发生时自动进行的。一个有效的 CAN的数据帧由起始帧、仲裁域、控制域、数据域、应答域和结束帧组成。一帧信息除仲裁域、控制域和数据域外,其他信息都是 CAN控制器发送数据时自动加上去的,而仲裁域、控制域和数据域则必须由 CPU给出。TMS320F2812的

6、 CAN控制器支持标准格式和扩展格式两种不同的帧格式,本 设计采用标准格式。标识符作为报文的名称,在仲裁过程期间,它首先被发送到总线,在接收器的验收判断中和仲裁过程确定访问优先权中都要用到。远程发送请求位 RTR决定发送的是远程帧还是数据帧。数据长度码 DLC用来确定每帧发送几个字节的数据,最多8 B。SJA1000可以工作在标准 CAN模式和增强型 CAN模式两种模式。标准 CAN模式提供11 bit 标识符的识别,而增强型 CAN模式支持29 bit标识符识别。本设计选择 SJA1000工作在标准 CAN模式,与DSP的 CAN模块选择的数据格式相吻合。3.2 SST89E564RD软件设

7、计SST89E564RD软件的设计是在 KeilC下完成的,主要由初始化模块、采集模块和通信模块组成。(1)初始化模块。单片机在 SJA1000的复位模式下完成对 CAN控制器的初始化,向其控制寄存器写入控制字,确定 CAN控制器的工作方式。(2)采集模块。摄像头传感器采集到的信息经信号调理电路处理后传输到单片机,单片机采用图像滤波算法对所有信息进行预处理。(3)通信模块。把采集模块处理完的信息通过 CAN总线与其他节点进行信息交互。3.3 TMS320F2812软件设计TMS320F2812的 eCAN模块主要由 CAN协议内核和消息控制器构成。协议内核主要完成消息解码并向接收缓冲器发送解码

8、后的消息,同时根据 CAN协议向总线发送消息,消息控制器决定对接收到的消息的取舍。TMS320F2812软件主要由初始化模块、通信模块和驱动模块组成。(1)初始化模块。其完成对 CAN控制层中的寄存器进行初始化,包括时钟使能、引脚定义、波特率的设定和收发邮箱的配置等。初始化模块流程图如图4所示。点击图片查看大图图4 初始化模块流程图(2)通信模块。它包括报文发送模块、报文接收模块和 CAN出错管理模块。(3)驱动模块。它包括转向控制模块和速度控制模块。由于智能车处于弯道和直道的转向模型不同,本系统在转向控制模块中采用了分段比例控制算法,而对智能车速度的调整既要快速又要准确,还不能频繁波动,本系统在速度控制模块中采用了 PID控制算法。系统采用 SST89E564RD微处理器实时采集道路信息,采用 TMS320F2812进行数据的综合处理,输出相应命令给执行机构,所有数据通过 CAN总线交互,方便功能拓展。通过模拟测试和大量环境试验,以及对记录、实时检测、数据分析的整理,该智能车目前运行可靠。后续将增添无线模块节点,为该智能车添加遥控功能。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报