学 校:哈尔滨工业大学
队伍名称:紫丁香一队
参赛队员:李洋
赵宁
张磊
带队教师: 张依
摘要
本文详细介绍了哈尔滨工业大学"紫丁香一队"在第十五届全国大学生智能汽车竞赛基础四轮组中的系统方案。本次比赛采用大赛组委会统一指定的C型车模,以飞思卡尔半导体公司生产的32位单片机MK66FX1M0VLQ18为核心控制器,要求智能车识别白色赛道和车库坡道等多个元素,以最快速度完成整个比赛,智能车采用CMOS摄像头对赛道信息检测,根据提取连通域得到赛道中线;
通过编码器检测智能车的实时速度,使用电感采集电磁信息,利用陀螺仪完成小车出入库,通过红外测距模块实时测距辅助判断坡道等元素;使用PID控制算法调节电机的转速和舵机的打角,实现智能车在运动过程中速度和方向的闭环控制;为了提高模型车的速度和稳定性,使用上位机、按键、OLED模块等调试工具,进行了大量硬件与软件测试。实验结果表明,该系统设计方案确实可行。
关键词:MK66FX1M0VLQ18;图像处理;PID;
第一章 绪 论
1.1 智能车研究背景
智能车是一种高新技术密集型的新型汽车,以汽车电子为背景涵盖控制、模式识别、传感技术、电子、电气、计算机、机械等多科学的科技创意性设计,一般主要由路径识别、速度采集、角度控制及车速控制等模块组成。可实现自动驾驶、自动变速及自动识别道路等功能,是现代电子产业发展中一项重要的组成部分。
在我国,教育部为了加强大学生实践、创新能力和团队合作精神的培养,委托教育部高等学校自动化专业教学指导分委员会主办了每年一度的全国大学生智能汽车竞赛。全国大学生智能汽车竞赛是在竞赛组委会提供的统一汽车模型平台上,使用飞思卡尔半导体公司的8位、16位、32位微控制器作为核心控制模块,通过设计道路识别传感器和电机驱动电路、编写相应软件及装配模型车,制作一个能够自主识别道路的模型汽车,按照规定路线(路线赛前未知)行进,以完成时间最短者为优胜。
1.2 方案总体介绍
比赛跑道为表面白色,两边有连续黑线作为引导线,黑线宽为25mm。车模通过采集赛道图像进行路径检测比赛规则限定了跑道宽道区宽度40cm,拐角最小半径50cm,并且规定了各赛道标志的具体指标。参赛队员的目标是使智能车按照规则以最短时间完成单圈赛道。
根据竞赛规则相关规定,本智能车系统采用大赛组委会统一提供的C型车模,以恩智浦公司生产的32位微控制器MK66FX1M0VLQ18作为核心控制器,在IAR开发环境中进行软件开发。通过CMOS图像传感器拍摄赛道图像,将图像信号输入到MK66FX1M0VLQ18微控制器,进行进一步处理获得主要的赛道信息;通过编码器来检测车速,并通过单片机进行正交解码进行脉冲计算获得速度和路程;转向舵机采用PD控制;驱动电机采用PI控制,通过PWM控制驱动电路调整电机的功率;而车速的目标值由默认值、运行安全方案和基于图像处理的优化策略进行综合控制;本次比赛中元素繁多,为了更好得采集赛道元素的信息增加传感器是必然的,我们选择红外模块进行测距,利用陀螺仪获取车身姿态实现出入车库,此外使用两横电感加强环岛的判断稳定性。
根据比赛的基本要求,我们设计了系统总体思路如图1.1所示。
▲ 图1.1 系统结构图
1.3 本文结构
本文共分为六章。第一章主要是介绍了比赛的背景及智能车系统总体方案的介绍;第二章从智能车系统的机械结构出发,详细阐述了智能车系统各部分机械结构的安装和调整;第三章重点介绍了系统中所涉及的硬件设计方案和原理;第四章是介绍了智能系统的软件算法包括图像处理以及电机舵机的控制策略;第五章对调试过程中的一些手段进行了讲解;第六章则是对智能车一些物理参数进行了简单的汇报。
第二章 机械结构设计及调整
智能车的核心是控制策略和算法,但是,机械结构也是限制赛车速度的巨大瓶颈,如果一辆赛车的程序架构很好,但是机械部分做的不好的话,其速度也会被大大的限制。即当车速较高的时候,车模有明显的甩尾和侧滑现象,此时对车的机械结构要求很高。除了对车身姿态的影响外,机械性能影响车的加减速响应速度,运行的对称性和稳定性等,因此,我们在不违反规则的情况下对小车进行了多方面的改造以使小车具有良好的运行性能。
2.1 整车布局
我们组采用的是新C车模,对称性好,尺寸为290184196mm,轮胎尺寸为2961mm,通过对轮胎合适地填充海绵和进行软化处理,具有极好的减震性和耐磨性。驱动电机为RS-380,7.2V的电机功率可达19.25W,额定功率达到0.016kW,额定电压7.2V,额定电流0.5A,额定转速16200rpm,额定转矩可达10.9Nm,外形储存29.237.8mm。伺服电机为S3010舵机,6V电压时扭力可达6.5kgcm,动作速度快,车模整体质量较轻。智能车的外形大致如图2.1。
▲ 图2.1 智能车外形图
(1) 车模底盘降低,用来降低重心。
(2) 舵机采用竖直姿态,方便控制。
(3) 对前轮倾角进行调节,保证车直线行驶的稳定性。
(4) 调整电池位置使中心尽量在车体中心
(5) 用轻便坚固的铝杆作为摄像头传感器的支撑材料。
2.2 电池选型与安装
原装车模使用的是NiCd电池,由于其体积大,质量大,在前期的使用过程中造成车在速度快产生甩尾和侧滑现象,此外NiCd电池质量分布不均,相当于增加车身不对称因素。本届比赛支持使用带保护板的两节18650锂电池进行串联供电,经过尝试,我们绘制了锂电池与保护板的连接PCB,购买动力型锂电池,放电能力强可以轻松带动两个380电机,通过合理选择电池位置以调节车
▲ 图2.2 俯视图
2.3 转向舵机安装
舵机转向是整个控制系统中延迟较大的一个环节,为了减小此时间常数,通过改变舵机的安装位置可以提高舵机的响应速度。通过分析舵机控制转向轮转向的原理可以发现,在相同的舵机转向条件下,转向连杆在舵机一端的连接点离舵机轴心距离越远,转向轮转向变化越快。这相当于增大力臂长度,提高线速度。
舵机安装方式有立式和卧式两种,比较两种方式发现,立式安装效果更好。 舵机安装时要保证左右对称,这样可以保证舵机左右转向时力臂相等且处于最 大范围,提升了舵机的响应速度。经理论分析,功率等于速度与扭矩的乘积,加大转向速度必然减少输出扭矩,扭矩过小会造成迟钝,所以安装时必须考虑到转 向机构的响应速度与舵机扭矩之间的关系,获得最佳转向效果。经过实验,我们的舵机安装如图2.3所示。
▲ 图2.3 转向舵机安装
2.4 前轮倾角调节
为了使汽车直线行驶稳定,转向轻便,转向后能自动回正,减少轮胎和转向系零件的磨损等,在转向轮、转向节和前轴之间须形成一定的相对安装位置,叫车轮定位。本系统所采用的智能车通过四条轮胎与地面接触,两个后轮同轴受到限位,无法调整,与智能车的前进方向保持平行,因此要改变智能车与地面的接触方式,调试出利于车转向、直线的四轮定位,只能通过调整前轮倾角各定位参数来实现。它的安装位置由主销内倾、主销后倾、前轮外倾和前轮前束四个项目决定。
2.4.1 主销后倾
主销后倾如图2.4 所示,是指在纵向平面内主销轴线与地面垂直线之间的夹角,向前为负,向后为正。它在车辆转弯时会产生与车轮偏转方向相反的回正力矩,使车轮自动恢复到原来的中间位置上。所以,主销后倾角越大,车速越高,前轮自动回正的能力就越强,模型车通过增减黄色垫片的数量来改变 主销后倾角。
▲ 图2.4 主销后倾示意图
由于竞赛所用的转向舵机力矩不大,过大的主销后倾角会使转向变得沉重,转弯迟滞。所以我们修改主销后倾大致1~2°如图2.5所示。
▲ 图2.5 修改后的主销后倾
2.4.2 主销内倾
主销内倾如图2.6所示。是将主销(即转向轴线)的上端向内倾斜。从车前方看去,主销轴线与通过前轮中心的垂线之间形成一个夹角,即主销内倾角。轮胎调整为倾斜以后直线行走的时候是轮胎内侧着地,而当过弯的时候,由于惯性车体会要向弯道外侧倾斜,而这时候的外侧轮胎如果倾斜角度事先调整得当则正好可以胎面着地,从而使车辆在弯道获得最佳抓地力。使车轮转向后能及时自动回正和转向轻便。经过多次尝试后我们主销内倾如图2.7所示。
▲ 图2.6主销内倾示意图
2.4.3 前轮前束
车轮前束如图2.7所示。是指两轮之间的后距离数值与前距离数值之差,也指前轮中心线与纵向中心线的夹角。从上往下看,两个车轮指向的方向在前端指向内称为车轮前束,指向外的则称为车轮后束。前轮前束的作用是保证汽车的行驶性能,减少轮胎的磨损。前轮在滚动时,其惯性力自然将轮胎向内偏斜,如果前束适当,轮胎滚动时的偏斜方向就会抵消,轮胎内外侧磨损的现象会减少。
▲ 图2.7 车轮前束示意图
2.5 底盘高度调节
降低车模底盘可以降低重心,车模重心低可以使车模运行更加稳定,获得 更好的转弯特性。所以,在保证车模可以通过灯盘的情况下,底盘尽可能的降低,可以使车更加快速稳定。对于C车模,修改前轮滚动的轴心和车模底盘的高度差,可以修改车模底盘的高度,所以通过在前轮固定处垫垫圈来降低车模底盘高度,如图2.8所示。
▲ 图2.8 底盘高度调节
第三章 硬件电路设计
硬件是基础,只有一个良好、稳定的硬件环境才能保证车能平稳快速的行驶。我们在整个系统设计过程中严格按照规范进行。本着可靠、高效的原则,在满足各个要求的情况下,尽量使设计的电路简单,PCB的效果简洁。
3.1 单片机系统设计
单片机最小系统是智能车系统的核心控制部件。我们采用了M4内核32位的K66芯片。原理图如图3.1所示:
▲ 图3.1 单片机系统原理图
3.2 电源模块设计
电源模块为系统其他各个模块提供所需要的电源。设计中,除了需要考虑电压范围和电流容量等基本参数之外,还要在电源转换效率、降低噪声、防止干扰和电路简单等方面进行优化。可靠的电源方案是整个硬件电路稳定可靠运行的基础。
全部硬件电路的电源由两节18650锂电池串联提供(额定电压7.4V,满电电压8.4V)。由于电路中的不同电路模块所需要的工作电压和电流容量各不相同,因此电源模块应该包含多个稳压电路,将充电电池电压转换成各个模块所需要的电压。为满足需要,本车模上存在6种供电电压:
(1) 智能车使用锂电池供电,选择带均衡功能的保护板可以同时给两节电池充电,正常使用时电压在7.4~8.4V。可直接用于电机供电。
(2) 使用稳压芯片TPS 76850 输出电压5V,用于陀螺仪、蓝牙模块、编码器等供电。原理图如图3.2.1所示
▲ 3.2 转压电路7.2V-5V原理图
(3) 使用稳压芯片TPS 76833 输出电压3.3V,用于OLED、蜂鸣器、摄像头、单片机等供电。