控制器局域网络CAN(Controller Area Network)是德国BOSCH公司为解决现代汽车中众多电子设备之间的数据交换而开发的一种串行数据通信协议,它具有高可靠性和良好的错误检测能力。汽车上主要有高速(500 kb/s)和低速(125 kb/s)两种CAN总线,这两种总线通过网关连接,实现两个局域网间的数据共享。
目前,随着对系统复杂化、精细化的要求越来越高,传统的集中控制从实时性和可靠性上越来越不能满足要求,分布控制逐渐得到了广泛应用。分布控制就是系统由一个主控制器和若干个分控制器组成,分控制器分别处理一部分系统功能,以并行或串行的方式与主控制器进行数据和信息的交互。
1 系统的总体设计
本设计主要完成了智能车在预先铺贴的道路上行驶。整个系统硬件组成框图如图1所示,包括采集节点和控制节点,它们之间通过CAN总线完成数据的交互。采集节点通过传感器采集道路信息,经过信号调理电路传送到微控制器,微控制器对信息进行处理后把数据发送到CAN总线上。控制节点读取总线上的数据并转换成控制命令,控制执行机构以确保智能车不偏离道路并且保持较高的速度。
2 节点的硬件接口设计
2.1 采集节点SST89E564RD与CAN总线接口
SST89E564RD自身不具有CAN模块,因此扩展了CAN总线控制器,通过CAN总线收发器接入总线。本设计采用的CAN控制器是SJA1000,其兼容CAN2.0B协议,通过单片机对其进行初始化,主要实现数据的接收和发送等通信任务。收发器选用PCA82C250,它是一种应用广泛的CAN控制器与物理总线间的接口芯片,能够对总线的信息进行差动发送和接收。为了进一步提高系统的抗干扰能力,在PCA82C250和SJA1000之间用高速光耦6N137进行隔离,以降低由于不同节点的高共模电压引起的串扰甚至对器件的损坏,提高系统的可靠性,其通信速率高达10 Mb/s,完全能满足CAN总线需要。SST89E564RD与CAN总线的硬件接口如图2所示。
2.2 控制节点DSP 与CAN 总线接口
TMS320F2812 DSP 芯片内部集成了一个完整的增强型CAN 控制器, 称之为eCAN, 在硬件设计中,不需要再加入独立的CAN 控制器来实现CAN 总线的底层协议, 直接通过收发器PCA82C250 连接总线。DSP 与CAN总线接口设计如图3 所示。
[page]
3 CAN节点软件设计
3.1 CAN总线通信数据格式
CAN协议通信格式中有数据帧、远程帧、出错帧和超载帧4种帧格式。其中,数据帧和远程帧的发送需要在CPU控制下进行,而出错帧和超载帧的发送则是在错误发生和超载发生时自动进行的。一个有效的CAN的数据帧由起始帧、仲裁域、控制域、数据域、应答域和结束帧组成。一帧信息除仲裁域、控制域和数据域外,其他信息都是CAN控制器发送数据时自动加上去的,而仲裁域、控制域和数据域则必须由CPU给出。TMS320F2812的CAN控制器支持标准格式和扩展格式两种不同的帧格式,本设计采用标准格式。标识符作为报文的名称,在仲裁过程期间,它首先被发送到总线,在接收器的验收判断中和仲裁过程确定访问优先权中都要用到。远程发送请求位RTR决定发送的是远程帧还是数据帧。数据长度码DLC用来确定每帧发送几个字节的数据,最多8 B。SJA1000可以工作在标准CAN模式和增强型CAN模式两种模式。标准CAN模式提供11 bit标识符的识别,而增强型CAN模式支持29 bit标识符识别。本设计选择SJA1000工作在标准CAN模式,与DSP的CAN模块选择的数据格式相吻合。
3.2 SST89E564RD软件设计
SST89E564RD软件的设计是在KeilC下完成的,主要由初始化模块、采集模块和通信模块组成。
(1)初始化模块。单片机在SJA1000的复位模式下完成对CAN控制器的初始化,向其控制寄存器写入控制字,确定CAN控制器的工作方式。
(2)采集模块。摄像头传感器采集到的信息经信号调理电路处理后传输到单片机,单片机采用图像滤波算法对所有信息进行预处理。
(3)通信模块。把采集模块处理完的信息通过CAN总线与其他节点进行信息交互。
3.3 TMS320F2812软件设计
TMS320F2812的eCAN模块主要由CAN协议内核和消息控制器构成。协议内核主要完成消息解码并向接收缓冲器发送解码后的消息,同时根据CAN协议向总线发送消息,消息控制器决定对接收到的消息的取舍。TMS320F2812软件主要由初始化模块、通信模块和驱动模块组成。
(1)初始化模块。其完成对CAN控制层中的寄存器进行初始化,包括时钟使能、引脚定义、波特率的设定和收发邮箱的配置等。初始化模块流程图如图4所示。
(2)通信模块。它包括报文发送模块、报文接收模块和CAN出错管理模块。
(3)驱动模块。它包括转向控制模块和速度控制模块。由于智能车处于弯道和直道的转向模型不同,本系统在转向控制模块中采用了分段比例控制算法,而对智能车速度的调整既要快速又要准确,还不能频繁波动,本系统在速度控制模块中采用了PID控制算法。
系统采用SST89E564RD微处理器实时采集道路信息,采用TMS320F2812进行数据的综合处理,输出相应命令给执行机构,所有数据通过CAN总线交互,方便功能拓展。通过模拟测试和大量环境试验,以及对记录、实时检测、数据分析的整理,该智能车目前运行可靠。后续将增添无线模块节点,为该智能车添加遥控功能。
关键字:CAN总线 智能车 SST89E564RD
引用地址:
基于CAN总线的智能车的设计与实现
推荐阅读最新更新时间:2024-05-02 22:20
基于ARM处理器和CAN总线的电子结算终端设计
0 引言 农副产品电子交易系统数字交易终端简称为IC卡智能交易一体机或者POS机。它应用在农副产品交易过程中,系统在供电和通信正常的情况下,可以为买卖双方提供可靠、快捷、方便的交易平台。买卖双方在IC卡交易终端机上进行交易,数字交易终端机通过读取并处理电子磅秤的数据能进行同一品种多笔累加过磅、去皮、预置去皮、按公斤过磅。IC卡数字交易终端在交易过程中自动识别买卖双方管理费费率,将交易双方的成交金额自动从买方IC卡转入卖方IC卡中,并从双方IC中自动扣除市场应收的管理费。 1 系统总体结构设计 电子结算系统是一个实时性很强的系统,如果逻辑和时序出现偏差将会引起严重后果。本文搭建一个集读卡、显示、键盘、称重、打印及通信功能于
[单片机]
CAN总线原理简介
一、CAN总线原理- -简介
CAN(Controller Area Network),中文名称为控制器局域网络,通常称为CAN bus,即CAN总线。是由德国BOSCH(博世)公司研究开发的,现已成为ISO国际标准化的串行通信协议,是目前在国际上应用最广泛的开放式现场总线之一。
二、CAN总线原理- -报文
CAN总线以报文的形式发送数据,每组报文的前十一位字符为标识符(在同一个系统中,标识符是唯一的),不包含具体发送数据,是对报文优先级的定义,我们将报文的这种格式称为面向内容的编址方案。
三、CAN总线原理- -帧结构
帧可以分为数据帧、远程帧、错误帧和过载帧四种类型。CAN总线上传输的
[嵌入式]
基于CAN总线控制器82527实现智能节点的软硬件电路设计
引言 CAN(Controller Area Network,控制局域网)属于工业现场总线,是德国Bosch公司20世纪80年代初作为解决现代汽车中众多的控制与测试仪器间的数据交换而开发的一种通信协议。1993年11月,ISO正式颁布了高速通信控制局域网(CAN)的国际标准(ISO11898)。CAN总线系统中现场数据的采集由传感器完成,目前,带有CAN总线接口的传感器种类还不多,价格也较贵。本文给出一种由8051单片机和82527独立CAN总线控制器为核心构成的智能节点电路,在普通传感器基础上形成可接收8路模拟量输入和智能传感器节点。 1 、独立CAN总线控制器82527介绍 82527是Intel公司生产的独立CAN总线控
[单片机]
利用CAN总线的进行汽车轮速传感器系统设计
引言
目前,网络技术是汽车电子领域发展的一项新技术。它不仅是解决汽车电子化中的线路复杂和线束增加问题的技术,而且其通讯和资源共享能力成为新的电子与计算机技术在车上应用的一个基础,是车上信息与控制系统的支撑。
汽车电子网络按功能可分为面向控制的网络(CON)和面向信息传输的网络(ION)。按网络信息传输速度,美国汽车工程师协会(SAE)将网络分为 A,B,C三类。A类为低速网,波特率在9600bps以下,进而波特率在125kbps以下为中速网B类,125kbps以上为高速网C类。车轮速度 (即车轮绕轮轴旋转的线速度)传感器(简称轮速传感器)信号,可供发动机控制模块、防抱制动系统(ABS)控制模块及仪表控制模块共享
[嵌入式]
STM32的CAN总线的接收双FIFO使用方法
通过下面的框图我们可以看到,STM32F013有两个接收FIFO 但是实际的使用中如何让着两个FIFO都被使用呢,解决办法就在这里, 1. STM32F103有0-13共14个过滤器组,每个过滤器组都可以绑定指定的FIFO。 2. 特别需要注意的一点是,FIFO0和FIFO1的接收对应不同的中断入口,切记。 分别是 DCD USB_LP_CAN1_RX0_IRQHandler ; USB Low Priority or CAN1 RX0 DCD CAN1_RX1_IRQHandler ; CAN1 RX1 ================================================
[单片机]
基于VI的智能车仿真系统设计
1 引言 全国高等学校自动化专业教学指导分委员会受国家教育部委托,举办第一届“飞思卡尔”杯大学生智能车邀请赛。为了给参加本次智能车邀请赛的各支队伍提供一个可离线/在线仿真的平台以及理论试验平台,我们开发了基于LabVIEW虚拟仪器技术的智能车仿真系统Plastid(以下简称Plastid)。 本仿真系统基于LabVIEW虚拟仪器技术开发完成,用于智能车的算法仿真及分析。主要有以下几大特点: 1. 赛道与赛车环境模拟 系统对赛道与赛车分别建立了模型,使用者可以按照指示方便地自行设计赛道以及赛车,将赛道设计成各种各样的直路、弯路、坡路,将赛车设计成各种尺寸、形状,从而使得系统的适用性更广泛。另一方面,本软件更适用于没有条件制作试验赛道
[测试测量]
基于CAN总线的送经卷取的系统设计
纺织业是我国一大传统行业,随着国际棉纺织技术向优质、高产、自动化、连续化方向的迅速发展,提高我国纺织产业的机电一体化水平,实现工艺参数的智能化是各纺织企业的工作重点。 电子送经卷取系统是纺织工艺流程的一个重要环节,其控制性能的优劣直接影响着工艺过程及织机的效率。然而,通信又是该系统的关键技术,使得电子送经卷取系统通信的设计受到国内外纺织公司(德国的百格拉,意大利的舒美特等公司)的高度重视,提出了多种设计方案。然而,中国用户仍然面临着剑杆织机送经和卷取系统的价格昂贵、操作复杂,数据传输效率低等问题。 CAN(控制器局域网)总线是一种有效支持分布式控制和实时控制的串行通信网络,与其它通讯相比,其数据通信具有突出的灵活性和可靠性
[单片机]
基于PIC单片机的RS-232转CAN通信适配卡设计
CAN总线-控制器局部网(CAN)国际标准(ISO11898)。CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。其特点可概括如下:CAN为多主方式工作。在报文标识符上,各节点分成不同的优先级。采用非破坏总线仲裁技术。只需通过对报文的标识符滤波即可实现点对点、一点对多点方式传送接收数据。直接通信距离最远可达零10km(速率5kbps以下);通信速率最高可达到1Mbps(此时通讯距离最长为40m)。CAN上的节点数主要取决于总线驱动电路,目前可达110个。报文采用短帧结构,传输时间短,受到干扰的概率低。每帧信息都有CRC校验及其他检错措施,具有极好的检错效果。通信介质可为双绞线、同轴电缆或光纤,选择灵
[单片机]