基于CAN总线的FSAE赛车数据采集与控制系统的设计
2015-01-03杨仲源王海林曾文豪张广龙叶卓凡
杨仲源,王海林,曾文豪,张广龙,叶卓凡
(华南农业大学,广东 广州 510642)
基于CAN总线的FSAE赛车数据采集与控制系统的设计
杨仲源,王海林,曾文豪,张广龙,叶卓凡
(华南农业大学,广东 广州 510642)
为了在一辆FSAE纯电动赛车上采集电机、电池、车速等整车工作参数,并进行相应的控制和实时数据显示,本文设计了一个基于CAN总线的数据采集系统,其中以STM32为核心处理器,进行5个智能节点的设计。最后在本设计赛车上基本实现了CAN总线通讯,赛车运行中各工作参数的采集能实时显示并供车手参考进行相应的操作,数据采集也为后面赛车的设计和优化提供有效的参考实验值。
CAN总线;STM32;FSAE;电动赛车
CLC NO.: U463.6 Document Code: A Article ID: 1671-7988(2015)04-55-03
前言
Formula SAE(FSAE)始于1978年,其中文名称为大学生方程式汽车比赛,由国际汽车工程师学会(SAE International)开办,向所有大学生设计团队征集设计制造一辆小型的类似于标准方程式的赛车。中国在2010年引入该赛事,同时在2013年增加电车组。在电动车中,电气安全保障以及相关信息的采集已成为必要。本文介绍的设计赛车中采用CAN总线连接各个节点,能使其中连接的模块运行更加可靠以及方便通讯。
1、设计要求
本设计需要采集的数据有:车速、加速度、电池温度、电池电压、电池电流、电池故障信息、电机转速、电机转矩、电机控制器温度、电机故障信息等等。在数据采集的基础上,部分数据需要实时显示,总控制器能够对电池的充电方式、电机的转速和转矩等进行控制。此外数据采集系统要有一定的屏蔽性,不能对电机等其它的电路产生干扰等。
2、设计方案的选择
2.1 方案设计
电机控制器和电池管理模块是由厂家提供的,这两个系统中自带有CAN接口和串行接口,为此本文就两种接口进行了两个方案的设计和方案的确定。
(1)方案一:采用51单片机,通过串口通讯,对整车其他节点的数据采集与控制,另外利用51单片机的其他IO口进行轮速传感器的数据读取等。
(2)方案二:采用意法半导体的STM32F1系列单片机,通过CAN总线通讯技术,与电机控制器、电池管理系统、测速模块等连接,实现数据的采集与控制。
2.2 方案的确定
方案一通过51单片机和串口通信,技术成熟,成本低,开发相对容易[2],但是因为本设计赛车中至少需要5个CAN节点并有可能在以后增加一定数量的节点,串行通信难以在原有的设计基础上增加节点,同时普通的串行口需要分时复用,数据存在延迟,难以适应赛车在高速行驶时实时显示的要求。
方案二的微处理器不同于51系列,其已内置CAN控制器,CAN总线网络具有反应快、可靠度高的特性,有高位速率、高抗电磁干扰性, 而且能够检测出产生的任何错误,应用于要求实时处理的场合[3]。同时其较串口通讯能减少可观的线束,这样节省一定的布线空间,能降低与电动赛车其它电路信号干扰的可能性。
综上比较,本设计采用方案二,同时使用STM32F103作为微处理器。
3、结构设计
下图1为本设计赛车的5个CAN智能节点的结构设计图。
图1中总控制器经过总线能获得各节点模块的信息,同时直接通过IO连接获得油门踏板和制动踏板的位置信息,并参考起动、制动、车速等信号进行控制电池的充电方式等动作,同时也对电机的转速和转矩进行信息采集以及控制。在显示模块中可以直接通过总线获得电池状态(如电量、温度等)、电机转速、车速等,并显示在显示屏上。
油门踏板传感器和制动踏板传感器采集的数据为模拟信号,要用到模数转换器,然后数据此时就以二进制的形式传给STM32处理器。
4、硬件设计
4.1 部分元配件的选型
(1)本设计的收发器选用SN65HVD230D芯片,具有差分收发能力,最高速率可达 1Mb/s,同时也具备良好抗干扰能力和高可靠性[4]。
(2)轮速传感器采用佑科电气的SC12-20K,其使用了齿轮转速霍尔芯片,单片集成,是一种真正的零速度数字微分霍尔效应传感器。
(3)本设计使用了陀螺仪MPU6050模块作为加速度传感器,其可以测出赛车运动时各个方向上的加速度以及侧偏角,进而计算和校正赛车胎压、预载量、车辆重心布置等。
(4)整车控制器芯片使用的是3.3V直流电源,而部分其他器件使用5V直流电源,赛车低压辅助电源为12V的直流电源,故需要采取一系列的稳压电路来给各部分电路供电。其中12V转5V采用技术成熟的7805稳压芯片,再由5V转3.3V采用LM317稳压芯片。
4.2 电路设计
本文设计的节点共5个,这里只介绍其中一个节点收发器的电路图,如图2所示。
在图2中,TXD接STM32F207ZG的发送管脚,RXD接STM32F207ZG的接收管脚,CANH和CANL分别为输出高电位和低电位。
4.3 印刷电路板
本文使用的PCB绘制软件是Altium Designer,在完成各个电路原理图的绘制后,使用印刷电路板模块进行绘制,最后电路焊接成型,图3展示的是整车总控制器焊接成型图。
5、软件设计
本设计使用的编程软件是Keil MDK,MDK-ARM软件为基于Cortex-M、Cortex-R4、ARM7、ARM9处理器设备提供了一个完整的开发环境。
CAN的软件设计包括CAN的初始化,CAN的接收,CAN的发送[5],此处仅把显示器模块节点的接收程序设计流程展示出来。其流程图如图4所示:
The Design of Data Acquisition and Control system in FSAE Racing Car based on CAN bus
Yang Zhongyuan, Wang Hailin, Zeng Wenhao, Zhang Guanglong, Ye Zhuofan
(South China Agricultural University, Guangdong Guangzhou 510642)
In order to accomplish the data acquisition about the motor, battery, vehicle speed and so on in a FSAE pure electric race car, the corresponding control and real-time data display, this paper designs a data acquisition system based on CAN bus. The system takes STM32 as the core processor with five intelligent nodes. Finally, the race car is basically realized the communication of CAN bus. Some working parameters of the car can display in real time for drivers. Data acquisition also provides the valid value in experiment for the optimization design of the car.
CAN bus; STM32; FSAE; electric race car
U463.6
A
1671-7988(2015)04-55-03
杨仲源,就职于华南农业大学。