本书汇集了编者多年指导智能小车设计的案例和经验,依托模块可替换的智能车实训平台实现硬件电路原理及算法验证。全书共分8章,第1章是智能车参赛平台简介,第2~6章按照由浅入深的原则,分模块介绍智能车系统硬件设计及相应软件驱动开发,第7章介绍了智能车系统的控制策略,第8章介绍了人机交互接口和本实验室设计的一款上位机调测实用软件。
全国大学生智能车竞赛是以智能车为研究对象的创意性科技竞赛,是面向全国大学生具有探索性的工程实践活动,是教育部倡导的大学生科技竞赛之一。竞赛融科学性、趣味性和观赏性为一体,是以迅猛发展、前景广阔的汽车电子为背景,涵盖自动控制、模式识别、传感技术、电子、电气、计算机、机械与汽车等多学科专业的创意性比赛。
编者从2006年第一届智能车竞赛开始,指导学生参加该项赛事,至今已成功参与十一届。在指导学生参赛的过程中,始终存在一些解决起来较为棘手的共性问题。比如刚刚接触智能车的学生,缺少相应的基础课程支撑,或仅有少量理论基础,入门难度较大,而已有的参考书籍或资料又大多注重系统性和完整性,内容广而范,导致学生刚开始学习时觉得无处下手,进而失去学习动力。
针对上述问题,编者总结这些年指导智能车设计的经验,结合学生需求开发了智能车调试实验平台,创新性地包含Kinetis和MC9S12两个系列的主流微控制器,为学生提供全面的硬件基础和更多的选择空间。平台采用模块化设计,在标准接口下可实现逐级设计、模块替换、渐进组合,最终设计出自己的智能车全部组件。实验平台包含了电源管理、传感器信号采集与调试、电机及舵机驱动等控制模块和驱动电路,提供了设计智能车所需的全部电路单元,切实提升了学习效果。平台本体的示教及互动功能可加深学生对智能车及嵌入式系统的认识,提升对控制策略及方法研究的兴趣,同时也促进学生对自动控制应用技术的学习,深入理解智能车结构建模、控制方法及算法的基本知识。
本书基于该实验平台进行了原理和策略验证,包括智能车硬件设计、智能车相关理论算法分析、自动控制理论基本知识等多方面、多层次的内容,让学生在实践中提升对理论的理解深度,方便学习者进一步开展控制算法及策略学习和研究。本书相关章节内容在我校创新创业学院的机电创新实践班(智能车实验室)以及辽宁重大装备制造协同中心实验班开课教学,取得了良好教学效果。
本书共分为8章,第1章介绍智能车竞赛与智能车,第2~6章按照由浅入深的逻辑,分模块讲解了智能车系统的硬件设计与软件开发,第7章介绍了智能车算法设计,第8章介绍了智能车交互接口和一款实用的上位机调试软件。
本书由大连理工大学创新、创业学院副院长吴振宇拟定大纲和目录,统筹全书编写。李胜铭完成了部分文档收集和整理,智能车研究室的同学们帮助完成了实验例程的编写,特别感谢智能车实验室的宋曦、黄佳卿、王东旭、王若、高元龙、张煜耀、连家鑫、吴凡、周小群、张淑慧、倪壮、张林、应振强、刘柳、林清客、翟鹏飞、于海鹏、杨晖、潘建龙等同学,郗万武教授、杜猛、李航等老师为本书提出了很多宝贵意见和建议,在此向他们表示最衷心的感谢!
吴振宇,大连理工大学创新创业学院副院长,中国电子教育学会理事,中国机器人大赛及ROBOCUP小型组委员,全国电子设计竞赛辽宁赛区责任专家,长期从事智能控制、机器人、嵌入式应用等方向的研究工作。先后完成电缆沟巡检机器人、异形轮式机器人、六足异形足式机器人等项目,先后在国内外期刊及国际会议发表论文50余篇,负责的智能车团队在全国大学生智能汽车竞赛、电子设计竞赛中多次获得一等奖。2015年指导学生获得全国电子设计竞赛奖“瑞萨杯”,多次获得挑战杯、全国电子设计竞赛、全国“互联网+”创新创业大赛的教师奖,2016年获得宝钢教育教师奖。
第1章 智能车竞赛与智能车简介
1.1 “飞思卡尔”杯全国大学生智能车竞赛简介
1.1.1 “飞思卡尔”杯智能车竞赛介绍
1.1.2 智能车竞赛规则介绍
习题
1.2 智能车系统构成介绍
1.2.1 智能车的机械组成
1.2.2 智能车的硬件组成
1.2.3 智能车的软件实现
习题
第2章 智能车的基本硬件电路
2.1 系统电源电路设计
2.1.1 电源分类
2.1.2 线性稳压电路设计
2.1.3 开关稳压电路设计
2.1.4 基准电压电路设计
习题
2.2 微控制器最小系统板设计
2.2.1 MC9S12XS系列微控制器简介
2.2.2 MC9S12XS微控制器最小系统板设计
2.2.3 Kinetis K60微控制器介绍
2.2.4 K60微控制器最小系统板设计
习题
第3章 软件平台的安装和使用
3.1 软件平台的介绍与安装
3.1.1 Codewarfior集成开发环境的安装
3.1.2 LJSBDM仿真器驱动的安装
3.1.3 IAR集成开发环境的安装
3.1.4 J.Link仿真器驱动的安装
习题
3.2 系统工程的建立与仿真调试
3.2.1 Codewarrior环境下建立新工程
3.2.2 使用LISBDM下载调试程序
3.2.3 IAR环境下建立新工程
3.2.4 J.Link的下载调试程序功能
习题
3.3 系统时钟设置
3.3.1 微控制器时钟模块简介
3.3.2 MC9S12XS微控制器的时钟设置
3.3.3 Kinetis K60微控制器的时钟设置
习题
3.4 GPIO的使用实例
3.4.1 GPIO的功能介绍
3.4.2 MC9S12XS微控制器GPIO编程实例
3.4.3 Kinetis K60微控制器GPIO编程实例
习题
第4章 执行机构及其驱动
4.1 电机驱动的实现
4.1.1 电机驱动电路的设计
4.1.2 脉冲宽度调制
4.1.3 MC9S12XS微控制器PWM的实现
4.1.4 Kinetis K60微控制器PWM的实现
习题
4.2 舵机驱动的实现
4.2.1 舵机驱动原理
4.2.2 MC9S12XS微控制器舵机驱动程序的实现
4.2.3 Kinetis K60微控制器舵机驱动程序的实现
习题
第5章 赛道识别
5.1 摄像头的应用
5.1.1 模拟摄像头的介绍
5.1.2 数字摄像头的介绍
5.1.3 MC9S12XS微控制器底层驱动程序设计
5.1.4 Kinetis K60微控制器底层驱动程序设计
习题
5.2 光电传感器的应用
5.2.1 光电传感器的介绍
5.2.2 MC9S12XS微控制器底层驱动程序设计
5.2.3 Kinetis K60微控制器底层驱动程序设计
习题
5.3 电磁传感器的应用
5.3.1 电磁传感器简介
5.3.2 Mc9S12XS微控制器底层驱动程序设计
5.3.3 Kinetis K60微控制器底层驱动程序设计
习题
第6章 测速和惯性传感器
6.1 测速功能设计与实现
6.1.1 测速方案的选择
6.1.2 MC9S12XS微控制器测速功能的实现
6.1.3 KJnetis K60微控制器测速功能的实现
习题
6.2 惯性传感器的应用
6.2.1 加速度传感器介绍
6.2.2 陀螺仪传感器介绍
6.2.3 IIc接口程序的实现
习题
第7章 智能车算法设计
7.1 路径识别算法的实现
7.1.1 摄像头类别算法设计
7.1.2 光电类识别算法设计
7.1.3 电磁类别算法设计
习题
7.2 控制算法设计
7.2.1 PID控制理论介绍
7.2.2 速度闭环控制
7.2.3 转向控制策略
7.2.4 直立车控制算法
习题
第8章 智能车交互接口和调试软件
8.1 人机接口设计
8.1.1 按键及拨码开关设计
8.1.2 液晶屏电路设计
8.1.3 串行通信接口电路
8.1.4 无线通信电路设计
8.1.5 存储电路设计
习题
8.2 智能车数据分析软件的使用说明
8.2.1 软件简介
8.2.2 软件使用功能说明
8.2.3 软件下位机的实现说明
习题
参考文献