第1章 概述 1
1.1 智能车竞赛背景 1
1.1.1 汽车与汽车电子 1
1.1.2 智能车研究意义 2
1.1.3 智能与新能源 3
1.2 国内外智能汽车研究与竞赛 6
1.2.1 基于真实车辆 6
1.2.2 基于模型车 8
1.2.3 “飞思卡尔”杯智能车竞赛 9
1.3 车模、规则和赛道概述 10
1.3.1 车模 10
1.3.2 规则 12
1.3.3 赛道 16
1.3.4 参考赛道 22
第2章 机械系统及性能调校 24
2.1 机械系统简介 24
2.2 转向系统 25
2.2.1 舵机转向结构 25
2.2.2 阿克曼转角定律 25
2.2.3 舵机固定方式 26
2.2.4 转向系统设计 27
2.2.5 转向类型 28
2.3 行驶系统 28
2.4 动力传动系统 30
2.5 传感器固定支架 31
2.6 整车系统及调校 32
2.6.1 轮胎 32
2.6.2 外廓尺寸 33
2.6.3 质心位置调校 35
2.6.4 悬架调校 37
2.6.5 前轮定位参数调校 38
2.6.6 直线行驶性能调校 40
2.6.7 动力传动系统调校 40
2.7 车模更改相关规定 41
第3章 智能车总体设计与通用电路 42
3.1 智能车分析 42
3.2 总体设计 43
3.2.1 摄像头组 43
3.2.2 电磁组 44
3.2.3 光电平衡组 47
3.3 单片机最小系统板 48
3.3.1 电源电路 49
3.3.2 时钟电路 49
3.3.3 复位电路 52
3.3.4 JTAG接口电路 53
3.4 电源系统 53
3.4.1 线性电源 53
3.4.2 开关电源 54
第4章 飞思卡尔微控制器 56
4.1 微控制器选择 56
4.2 Kinetis系列微控制器 57
4.2.1 概述 57
4.2.2 K60系列 58
4.2.3 KL25系列 60
4.2.4 Kinetis EA系列 61
4.3 16位微控制器S12X系列 64
4.3.1 概述 64
4.3.2 模块介绍 65
4.4 ColdFire系列单片机 69
4.4.1 概述 69
4.4.2 蓝宙电子公司的ColdFire模块 69
4.5 DSC系列单片机 70
4.5.1 概述 70
4.5.2 龙丘公司的MC56f8300单片机 71
4.6 仿真器 72
4.6.1 BDM仿真器 72
4.6.2 JLINK 73
第5章 编译环境和外设 75
5.1 IDE概述 75
5.2 Code Warrior 76
5.2.1 新建工程 76
5.2.2 工程概览 81
5.3 单片机内部资源配置 82
5.3.1 配置CPU 82
5.3.2 GPIO的使用 83
5.3.3 外部中断的使用 85
5.3.4 定时/计数器的使用 88
5.3.5 PWM 90
5.3.6 通用异步串行口UART 93
5.3.7 A/D转换器 95
5.3.8 同步串行接口SPI 98
5.3.9 I2C总线 99
5.4 Keil μ Vision4 101
第6章 电机与舵机驱动电路 105
6.1 电机驱动电路概述 105
6.1.1 单向控制电路 105
6.1.2 可逆控制电路 106
6.2 基于MC33886的电机驱动模式 107
6.2.1 电机型号 107
6.2.2 MC33886单片H桥驱动芯片 108
6.2.3 单片MC33886应用电路 111
6.3 基于BTS7960的电机驱动方案 112
6.3.1 BTS7960的基本特征和内部框图 112
6.3.2 封装与引脚 114
6.3.3 应用电路 115
6.4 基于普通MOS管电机驱动电路 116
6.4.1 基于CMOS逻辑芯片驱动 116
6.4.2 基于半桥驱动芯片方案 117
6.5 转向模块——舵机 119
6.5.1 基本原理 119
6.5.2 Futaba S3010(A/C车模) 120
6.5.3 S-D5数字舵机(B车模) 120
第7章 赛道传感器及接口设计 122
7.1 摄像头模块 122
7.1.1 摄像头基础知识 122
7.1.2 图像信号相关概念解释 123
7.1.3 OV7620摄像头 125
7.1.4 OV7620摄像头模块 125
7.1.5 OV5116 129
7.2 线性CCD模块 133
7.2.1 TSL1401 134
7.2.2 蓝宙线性CCD模块 136
7.2.3 关于镜头和偏振片 137
7.2.4 线性CCD使用中的一些问题 137
7.3 电磁赛道传感器 142
7.3.1 分立元器件电磁放大检波电路 143
7.3.2 集成运放电磁放大检波电路 143
第8章 通用传感器及接口设计 146
8.1 测速模块——编码器 146
8.1.1 基本原理 146
8.1.2 欧姆龙双相编码器 148
8.1.3 Mini512Z 149
8.2 加速度传感器 151
8.2.1 MMA7260引脚描述 151
8.2.2 MMA7260的硬件设计 152
8.2.3 MMA7260输出电压 153
8.2.4 MMA7260使用方法 155
8.3 陀螺仪 155
8.3.1 陀螺仪应用 156
8.3.2 加速度计与陀螺仪的数据融合 157
8.4 磁场感应传感器 158
8.4.1 干簧管 158
8.4.2 霍尔传感器 159
第9章 控制算法及平衡车实例 163
9.1 PID控制 163
9.1.1 位置式与增量式PID控制算法 163
9.1.2 PID算法的改进形式 165
9.1.3 PID参数调节技巧 168
9.2 滤波算法 168
9.3 卡尔曼滤波算法 170
9.3.1 概述 170
9.3.2 卡尔曼滤波应用实例 171
9.4 PID实施方法(以平衡车控制为例) 176
9.4.1 平衡车直立控制 178
9.4.2 平衡车速度控制 179
9.4.3 平衡车方向控制 180
9.4.4 核心代码参考 181
第10章 调试助手与系统调试 185
10.1 调试方法的改进 185
10.2 摄像头智能车的调试方法 189
10.2.1 赛道提取 189
10.2.2 十字路处理 191
10.3 摄像头智能车控制策略 194
10.3.1 改进的PD算法 194
10.3.2 速度控制方案 195
10.3.3 图像的采集 196
10.3.4 阈值的动态计算 197
10.4 电磁车调试中的问题 198
10.4.1 归一化 198
10.4.2 偏差计算方法 199
10.4.3 信号丢失的处理方法 203
10.4.4 弯道重叠问题 203
参考文献 205