您现在的位置是:主页 > 汽车电子 >


基于双MCU架构的智能车自主控制系统设计

2020-03-04 22:54汽车电子 人已围观

简介随着电子信息技术的发展,机器人技术越来越成为现在社会发展的热点,智能车作为轮式机器人的一种备受社会的关注。而智能车在道路行驶过程中控制系统的稳定性和安全行走速度成...

  随着电子信息技术的发展,机器人技术越来越成为现在社会发展的热点,智能车作为轮式机器人的一种备受社会的关注。而智能车在道路行驶过程中控制系统的稳定性和安全行走速度成为关键因素。随着道路信息复杂度的升高,单一控制器采集处理图像、识别赛道元素和执行控制等工作负担过重,较多的中断任务降低程序执行的效率,影响系统的实时性, 以及道路行驶对智能车控制的精度要求越来越高,急需对控制系统的构架加以研究改进。本文设计的双 MCU 架构的智能车系统,实现智能车任务在每个 MCU 上合理分配,参数传递合理实时,充分发挥双 MCU 的资源优势,使得智能车道路行驶更加实时流畅。
  

  1系统总体方案设计

  
  根据智能车在道路行驶中控制任务要求, 设计的双 MCU 架构的智能车系统方案设计如图 1 所示,分为图像处理平台(MCU-1)和决策控制平台(MCU-2)。由于图像传感器采集有严格的时序要求,而且图像处理复杂程度高,所以设计图像处理平台(MCU-1)完成图像相关任务,主要连接有图像采集电路、人机交互电路和双机互联通讯部分;决策控制平台(MCU-2)主要完成与电机相关的各种,有道路规划、速度采集、电机闭环控制、信息显示和双机互联通讯部分。
  图 1:系统总体框图
  图 1:系统总体框图
  

  2双MCU构架智能车系统硬件方案

  
  2.1双MCU互联构架设计
  
  MCU 是智能车系统的核心, 在本方案中采用恩智浦公司生产的 32 位单片机MK60FX,该型号芯片以 ARM Crotex-M4 为内核,功耗低, 集成 DSP 指令和单精度浮点运算单元,可提供高达 180MHZ 的主频, 同时具有 GPIO、UART、I2C、SPI、ADC、DAC、DMA、PIT、FTM 等丰富外设。
  
  双 MCU 互联通讯采用 SPI 模块,即同步串行总线,可利用时钟线 SCK、主发从收数据线 MOSI、主收从发数据线 MISO 以及从机片选信号线 CS 实现四线全双工高速通讯,节约了 MCU 管脚资源,高通讯速率满足了数据流传输的需求。在双 MCU 核心实际搭建过程中,将图像处理平台(MCU-1)定为主机、决策控制平台(MCU-2)定为从机,相应的通讯连接方式如图 2 所示。
  图 2:双 MCU 通讯连接图
  图 2:双 MCU 通讯连接图
  
  2.2多路电源管理模块
  
  稳定可靠的电能供应是智能车控制系统能够正常工作的基础和前提。利用 7.2V 镍镉电池负责系统的电能供应。在整个智能车系统中速度采集模块、蓝牙模块需要 5V 电源,利用 TPS7350 将 7.2V 电池电压将至 5V 供相应模块使用。MCU、图像采集模块、OLED 显示屏需要 3.3V 电源,利用 TPS7333 将转换后的 5V 电源进一步降至 3.3V。伺服舵机的响应速度直接影响到智能车的转向性能,为提高伺服舵机响应速度,利用 LM1084 并适当调整, 供给伺服舵机 6.5V 电压。对于电机驱动电路中 IR2104,利用 MC34063 进行 7.2V 至 12V升压供电。
  
  2.3电机驱动模块
  
  采用性能稳定驱动能力强的 MOS 管驱动 , 使得智能车在加减速方面的性能更加优越,并在输出端增加压敏电阻,防止电机瞬间换向产生峰值电压损坏其他芯片。其次利用74LVC245 隔离芯片将MCU 与驱动电路隔离, 保障了 MCU 的安全。驱动模块接收 MCU 输出的两路 PWM 信号,实现对直流电机调速控制,通过改变两路 PWM 信号极性改变电机转动方向,并利用发光二级管进行正反转状态提示。
  
  2.4图像和速度采集传感器模块
  
  图像采集模块使用灰度摄像头MT9V032。全局快门的特点使得智能车在高速行驶状态下图像不变形。同时具备自动曝光的能力,可根据外界光强自动设定曝光时间, 增强了智能车对外界环境的适应性。
  
  速度采集模块使用逐飞科技公司生产的Mini1024Z 增量式编码器。输出数据为步进脉冲 + 转动方向模式。相比较于普通的光栅编码器,抗干扰能力强,可在多灰尘与潮湿环境下工作,能有效地避免电机工作产生的干扰。
  

  3控制系统软件设计

  
  针对图像数据量大、处理过程繁琐耗时的特点,且智能车在高速行走过程对图像信息的实时性要求苛刻,遂对双 MCU 合理地进行任务规划:将图像的采集处理任务与决策控制任务分离开,双 MCU 之间采用 SPI 通讯方式;图像处理平台(MCU-1)可独立完成摄像头图像采集与处理,人机交互功能,可将图像处理的最终结果通过 SPI 传输给决策控制平台(MCU-2),决策控制平台(MCU-2)接收图像处理平台(MCU-1)的数据并进行校验分析,采集速度信息,结合 PID 算法实现对电机、伺服舵机的实时控制 , 具有较高的并行处理能力。双 MCU 智能车系统软件结构如图 3 所示。
  图 3:系统软件总结构图
  图 3:系统软件总结构图
  
  3.1图像处理平台程序步骤设计
  
  图像处理平台利用场中断 +DMA 模式进行图像数据采集,并进行图像信息处理和双MCU 通讯。
  
  (1)初始化后采取 DMA 模式采集120X188 的灰度图像,此 DMA 采集模式能有效降低单片机的工作负担,提高单片机的工作效率。
  
  (2)将采集到的灰度图像进行基于动态阈值的二值化处理,将赛道与赛道背景分割开, 采用逐行搜线方法获取赛道边线,方法是从图像最低行进行搜线,并记录赛道左右边界的位置,当进行下一行图像赛道边界提取时,根据上一行赛道左右边界的位置,动态地选择搜线的起始坐标,使得当获取某一行图像赛道边界时程序循环次数小于等于 188,该方法优化了图像处理算法,提高了程序执行效率。
  
  (3)由于赛道元素的不同,需进行图像有效区域的选择和边线的修补与校正,而后再进行赛道中线的提取。此外智能车需要在不同的赛道元素上做出有区别的控制策略,所以图像处理平台还需根据赛道元素的不同特征,进行赛道元素识别。
  
  (4)将图像处理结果以数组形式通过SPI 传输至决策控制平台。
  
  3.2决策控制平台程序步骤设计
  
  决策控制程序主要由两个中断程序组成, 一个是 SPI 中断,接收并校验图像处理平台的数据。一个是定时器中断,每 2ms 一次,完成伺服舵机控制、目标速度设定、速度获取、PID 输出 PWM。其中,在每一次定时中断中执行如下步骤。
  
  (1)采集编码器脉冲计数数值,将该脉冲值作为实际速度,为速度闭环控制提供实际值 Real。
  
  (2)根据 SPI 中断中校验分析处理得到的数据,进行控制的目标速度设定,为速度闭环控制提供目标值 Aim。
  
  (3)速度 PID 计算见公式 1 和 2,输出PWM 控制直流电机,为防止控制量过大,导致电路或者电机烧坏,要进行 PWM 波输出限幅。
  
  Pre_error=Aim-Real                                    (1)
  
  PWMOUT=LastPWM+kp(Preerror-Lasterror)+ki Pre_error+kd (Pre_error-2Last_error+LLast_error)             (2)
  
  式中:Pre_error 为当前 k 控制周期目标速度与实际速度的偏差;Last_error 为 k-1 控制周期目标速度与实际速度的偏差;LLast_ error 为 k-2 控制周期目标速度与实际速度的偏差;Last_PWM 为k-1 控制周期PWM 的输出量;PWM_OUT 为当前k 控制周期PWM 的输出量。
  
  (4)系统要求伺服舵机快速反应以适应高速转向的需求,所以伺服舵机采用位置式PD 算法控制,去掉积分环节,减少系统滞后性。给出转向 PWM 数值,控制舵机转向。

Tags:

标签云