0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于CAN总线通讯技术实现汽车四轮独立驱动控制系统的设计

电子设计 来源:电子设计应用 作者:吴志红;新赢;朱元 2021-04-05 17:43 次阅读

作者:吴志红;新赢;朱元;雷达

伴随着电动汽车的发展,CAN总线通讯技术应用越来越广泛,它可为纯电动汽车上四轮独立驱动控制,以及刹车防抱死系统(ABS)、电子稳定装置(ESP)等主动安全系统的实现提供便利。

在设计CAN总线通信系统时,总要面临着CAN数据的诊断与分析问题,不能解决该问题,便不能完成设计。本文基于Kvaser Leaf Professional HS这一USB_CAN工具,借助于Visual Basic环境,在PC机上开发出数据分析系统,并在该分析系统与四轮独立驱动电动车电机控制板之间实现了CAN通信。通过对CAN总线数据进行诊断分析,能够更好地完成CAN总线系统的设计。

四轮独立驱动电动车控制策略

电动车实物模型中使用的分布式四轮电子差速系统由一个中央控制器、四个电动轮控制器及CAN总线网络三个部分组成,其在电动车实物模型上的布局如图1所示。

基于CAN总线通讯技术实现汽车四轮独立驱动控制系统的设计

图1 分布式四轮电子差速系统在车身上的布局

在该分布式系统中,基于四轮独立控制的电子差速算法被分为整车差速算法与转速控制算法两个部分,其中转速控制算法是针对每个电动轮转速。中央控制器与四个电动轮控制器通过CAN总线连接成一个实时控制网络。

在该系统控制过程中,中央控制器通过A/D采样获得来自转向传感器的车辆转向角度信号和来自手柄转把中的车速设定信号,经过整车差速算法,分别获得四个车轮当前各自应有的转速,并将这一结果作为当前时刻对应车轮的转速控制设定值,通过CAN总线发送给相应的电动轮控制器。四个车轮控制器以从CAN总线收到的转速设定值作为控制目标,使用电动转速控制算法对各自的电动轮进行控制,使各个电动轮的实际转速实时满足整车差速算法的要求,进而实现电动车辆的平顺转向。

四轮独立驱动电动车CAN控制网络

通过CAN总线,本四轮驱动电动车中央控制器将车轮的速度等设定值传送给每个车轮的控制器,同时,各电机控制器将实际转速等信息通过CAN总线反馈给中央控制器。CAN网络的拓扑结构如图2所示。

图2 CAN控制网络拓扑结构

整个网络中共含有五个CAN节点:四个电动轮电机控制器a、b、c、d,以及一个电动车中央控制器e。

在设计应用层协议时,必须根据实际应用为总线消息编排一个合理的总线仲裁优先顺序,以改善CAN通讯的实时性。在本应用场合中,下行数据即中央控制器发给各电动轮电机控制器的控制命令,比上行数据即各电动轮电机控制器的反馈信息具有更高的优先级。此外,中央控制器发往四个车轮控制器的指令必须同步,才能为后续控制提供可靠的前提。

综合考虑以上因素,本文设计了如表1所示的CAN数据报文ID体系。

电机控制器a、b、c、d分别控制电动车左前轮、右前轮、左后轮和右后轮。中央控制器发出的CAN消息数据域结构如图3所示。

图3 中央控制器CAN消息数据域结构

中央控制器发出的ID为0x010和0x020的CAN数据,表示转速以及转矩的设定值,对应的实际值为模拟量,这里采用了16位长度的有限精度定点数表示。16位数据中高9位表示整数,低7位表示小数,即9Q7格式的定点数。对于中央控制器发出的ID为0x00F的CAN数据,发给每一个电机控制器的命令也是16位的数据,低8位表示刹车命令,高8位表示控制模式选择命令。

四个电机控制器向中央控制器反馈当前状态信息的CAN消息数据域结构如图4所示。

图4 电机控制反馈状态信息结构

CAN总线消息的触发方式有两种:事件触发与时间触发。前者适用于发送时间上离散变化的开关状态量,如刹车命令与控制模式选择命令;后者适用于发送时间上连续变化的模拟量,如转速设定值与转矩设定值。由于本控制系统中兼有上述两类总线信息,故采用事件触发与时间触发相结合的方式来进行发送。

Kvaser Leaf Professional HS简介

Kvaser Leaf Professional是用于CAN和LIN的单通道USB接口,该设备提供了把几个接口简单接入PC的可能性,可以方便地实现同一个USB Hub上连接多个Kvaser Leaf设备,并且无需额外的连接。此外,它还具有很好的EMC(Electro Magnetic Compatibility)性能以及即插即拔的特点。同时,由于一个USB Hub上可以连接多个设备,因此各个设备都可以由该Hub进行供电,具有很低的功耗。

Kvaser提供的库函数非常丰富,用户可以根据自己的需要调用相应的库函数,灵活地处理CAN总线数据。

PC机CAN数据分析系统设计

该数据分析系统根据电轮独立驱动车中央控制器与四个电机控制器之间的CAN通信数据,动态地显示中央控制器发出的命令,以及各个电机的当前运转信息。同时,还可以显示各个电机转速的变化曲线,并具有数据保存功能,便于离线分析。

该系统基于Visual Basic语言设计开发,应用了Measurement Studio软件中的CWGraph控件来显示转速曲线。通过Kvaser Leaf Professional HS,PC机与控制板之间的CAN通信得以实现。电机运转数据的保存则通过VB编程连接Microsoft Access数据库完成。这样,系统就可以由一个主窗体和五个显示电机转速曲线的子窗体组成,如图5所示。

图5 窗体结构图

这里,主窗体是启动窗体,子窗体A、B、C、D、E在主窗体启动时并不显示,通过主窗体上的相应按键可以控制子窗体的启动以及关闭,亦即显示和关闭各车轮转速曲线。

系统运行时,最先启动的是主窗体,通过主窗体上对相应按键的点击等操作,可以方便地与各控制板之间建立CAN通信,接收主控板与电机控制板之间的CAN消息,通过界面内部数据处理函数处理后,在相应显示区域加以显示。

CAN通信正常后,五个显示区域便会根据CAN总线上的消息动态更新并显示相应信息。

当需要进行数据保存时,单击Data_Record按键,便会弹出选择数据库的窗口,选择已经建立好的数据库后,电机的状态数据便可以保存在被选择的数据库中,还可以随时中止数据保存。需要注意的是,被保存的电机运转状态数据是在单击Data_Record按键并选择好数据库后界面收到的数据,这之前的数据并没有保存。也就是说,如果想把整个电机运转过程的数据都保存下来的话,在电机开始运转之前就要先单击Data_Record按键,并选择好数据库。

在退出界面时,首先应该断开CAN总线的连接,单击Disconnect按键断开。然后单击Quit按键便可以正常退出界面。

本系统的设计采用了在VB中使用ADO(ActiveX Data Object)对象模型的方法,连接Microsoft Access数据库,进行数据保存。只要在一个数据库中建立一系列的表,便可以将数据很方便地保存在相应的表中。比如,本设计中为四个电机分别建立了一个独立的表,用以存储其运转的状态信息,包括转速、转矩、电池电压以及控制模式等信息。利用Access数据库的数据处理功能可以很方便地进行离线的数据分析和处理。

为了方便不同用户对系统的使用,在数据保存之前,系统提供了一个对话框让用户选择已有的数据库,便于用户自定义数据保存的路径。

结语

在本设计的软件方面,在VB环境下,MeasurementStudio提供了功能强大的控件;硬件方面,具有Kvaser Leaf Professional HS以及Peak_CAN等工具,使得本系统的实现变得容易,且效果也比常规的设计方法更好。经过联机调试证明,本系统能有效地对CAN总线的数据进行分析处理。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电动汽车
    +关注

    关注

    155

    文章

    11138

    浏览量

    222982
  • 控制器
    +关注

    关注

    112

    文章

    15195

    浏览量

    171094
  • CAN总线
    +关注

    关注

    145

    文章

    1811

    浏览量

    129582
收藏 人收藏

    评论

    相关推荐

    基于DSP的高低速CAN总线汽车控制系统设计

    通信控制网络,实现了全部节点之间的数据共享以及相互之间的协同工作,并可在不同节点间实现高效数据传输。试验结果表明总线利用率较高,系统响应速度
    发表于 10-06 14:57

    CAN总线汽车电子灯光控制技术

    线束,实现整车信息共享,降低系统成本,而且还能大大降低车辆的故障率。基于CAN总线的灯光控制系统,不仅大大降低了车灯故障率,而且延长了车灯的
    发表于 10-25 11:06

    基于CAN总线的分散型控制系统的设计

    基于CAN总线的分散型控制系统的设计-国防科学技术大学研究生院本文以CAN总路线分散型控制系统
    发表于 10-31 09:51

    混合动力电动汽车CAN总线开发实践

    混合动力电动汽车CAN总线开发实践摘要:在对CAN总线技术以及混合动力
    发表于 11-26 17:18

    全时驱动控制系统设计

    大家好,本人想做一个全时驱动控制系统,目的是通过软plc控制驱动器,从而
    发表于 04-18 08:57

    汽车CAN总线技术

    达到20MBPS.况且还要涉及到系统的安全性,类似冗余,BUS安全等。所以综合考虑,汽车选择了CAN总线技术。4. 采用
    发表于 06-24 13:56

    汽车电子与CAN总线-汽车车身网络系统

    ,SPI以及在系统编程等技术汽车CAN总线系统架构现代
    发表于 08-18 14:10

    汽车CAN总线系统原理、设计与应用

    控制器局域网(CAN)是现代汽车网络通信与控制系统中的重要组成部分,《汽车CAN
    发表于 04-09 22:27

    怎么实现基于CAN总线的电动汽车控制系统设计?

    CAN总线的特点是什么?CAN总线在电动汽车上的应用是什么?怎么实现基于
    发表于 05-17 07:07

    怎么实现基于DSP的电动汽车CAN总线通讯技术设计?

    怎么实现基于DSP的电动汽车CAN总线通讯技术设计?
    发表于 05-18 06:34

    基于CAN总线通讯的变桨距风力发电控制系统

    基于CAN 总线通讯的变桨距风力发电控制系统:变桨距控制器用于实现功率调节和桨角
    发表于 05-31 12:52 32次下载

    CAN总线在液压支架电液控制系统的应用

    本文首先分析了国际上几种主要的液压支架电液控制系统通讯实现方法,指出原有方法中存在的不足。采用了CAN 总线实现综采面支架
    发表于 08-11 10:40 13次下载

    工程设备CAN总线控制系统设计

    针对CAN 总线技术应用的蓬勃发展,本文设计了一种基于CAN 总线的工程设备控制系统,对
    发表于 09-03 10:14 16次下载

    CAN总线DSP系统与上位机CAN通讯

    字电机伺服驱动系统,使用CANopen通讯协议实现CAN总线数字信号处理器(DSP)
    发表于 10-31 11:00 16次下载
    <b class='flag-5'>CAN</b><b class='flag-5'>总线</b>DSP<b class='flag-5'>系统</b>与上位机<b class='flag-5'>CAN</b>的<b class='flag-5'>通讯</b>

    汽车电子控制系统上的CAN总线通讯介绍

    汽车控制功能的网络化、智能化已经成为现代汽车工业发展的必然趋势,由于 CAN 总线通讯协议废除了
    发表于 05-07 09:57 1.3w次阅读
    <b class='flag-5'>汽车</b>电子<b class='flag-5'>控制系统</b>上的<b class='flag-5'>CAN</b><b class='flag-5'>总线</b><b class='flag-5'>通讯</b>介绍