2013 年全国大学生电子设计竞赛论文
【本科组】
课题:四旋翼自主飞行器 (B 题)
1
摘要
为了满足四旋翼飞行器的设计要求, 设计了以微控制器为核心的控制系统 和算法。首先进行了各单元电路方案的比较论证,确定了硬件设计方案。四旋翼 飞行器采用了固连在刚性十字架交叉结构上的 4 个电机驱动的一种飞行器,以 78K0R CPU 內核为基础,围绕新的 RL78 CPU 內核演化而来的 RL78/G13 作为控 制核心,工作频率高达 32MHz,工作电压 1.6V-5.5V,适合各种类型的消费类电 子和工业应用, 满足 8/16 位微控制器的需求,有助于降低系统功耗,削减总系统 的构建成本。 采用 9926B MOS 管芯片的驱动直流电机, 该驱动芯片具有内阻小、 负载电流大、且控制简单的特性。通过采用 MPU-6050 整合的 3 轴陀螺仪、3 轴加速器,并含可藉由第二个 I2C 端口连接其他厂牌之加速器、磁力传感器、或 其他传感器的数位运动处理(DMP: Digital Motion Processor)硬件加速引擎,由 主要 I2C 端口以单一数据流的形式,向应用端输出完整的 9 轴融合演算技术 InvenSense 的运动处理资料库,可处理运动感测的复杂数据,降低了运动处理 运算对操作系统的负荷,实现了四旋翼飞行器运动速度和转向的精准控制。通过 HC-SR04 超声波测距模块实现了对四旋翼飞行器飞行高度的准确控制。通过激 光传感器, 实现了四旋翼飞行器沿黑线前进, 在规定区域起降, 投放铁片等功能, 所采用的设计方案先进有效,完全达到了设计要求。 关 键词 : 四 旋 翼 自 主 飞行 器 ,红 外,寻线,超车 ,单片机
2
1、系统方案的设计与论证
1.1 系统总体框架
整个系统分为系统模块、角度检测模块、电机驱动模块、电源模块、显示模 块。各模块的系统框图如图 1 所示。
边线检测模 块 标志线线检 测模块
电机驱动
MCU
超声模块
无线通信模块
图1
系统模块框图
1.2 方案论证与比较
(1)控制模块 传统的 51 单片机广为应用,具有使用简便、便宜价格等优点,但是其运算 能力较低, 速度较慢, 功能相对单一, 难以实现较复杂的任务要求。 MC9S12XS128 是一款功能强大的 16 位微控制器,具有非常丰富的片上资源,如:10 位精度的 ADC,节省了片外 AD;强大的定时器,方便对电机进行控制,可以进行浮点型 运算。另外还有精密的比较器,大容量的 RAM 和 ROM,可存储大容量的程序。 (2)电机模块方案 方案一:采用步进电机控制悬挂物体的准确运动,步进电机不需要使用传感 器就能精确定位,但其驱动能有限不适合驱动小车。 方案二:采用低内阻大电流的电机驱动芯片 VNH3SP30 驱动直流电机,相 比于 L298NSP30 优势明天且速度
相应较好。 基于上述理论分析,我们选择方案二。 (4)显示系统方案 方案一:采用 LED 数码管显示器。LED 数码管亮度高,醒目,但是其电路
3
复杂,占用资源较多,显示信息量较小。 方案二:LCD 液晶显示器。LCD 有明显的优点:微功耗、显示信息量大、 字迹清晰、美观、视觉舒适,使整个控制系统更加人性化。 因此,决定选用方 案二。 综合以上各部分的比较结果,决定以 MC9S12XS128 微控制器为核心,通过 驱动芯片控制直流电机实现小车的运动控制, 以红外发射接收管实现边线和标志 线的检测,同时在 LCD 上显示实时信息。
2、系统的硬件设计与实现
2.1 系统的总体设计
根据前面的分析,设计出本系统的总体架构如图 2 所示。
边线检测模 块
标志线线检 测模块
电机驱动
MCU MC9SXS128MAA
超声模块
无线通信模块
图 2. 系统架构框图
2.2 单元电路设计及参数计算
(1)边线检测模块 寻边线模块利用 XL6003 产生的恒流源驱动红外发射管, 接收管采用 1KL3B 高灵敏度红外接收管,再通过 LM393 比较器实现硬件二值化输出,直接输送至 单片机的 IO 口,提高了系统的工作效率。图 3 和图 4 分别给出了寻边线模块的 工作流程及原理图。
4
恒流源驱动 红外管发射 接收管检测
高于比较电 压
比较器判断
输出0
低于比较电压
检测到黑线输出0
图 3 寻边线模块的工作流程
图 4 寻边线模块的原理图
(2) 标志线检测模块 标志线检测采用检测黑线常用的 TCRT5000 对管, 在接收管输出处上拉即可 直接连接单片机 IO 口输入单片机,在单片机内部经过数字滤波实现精准的标志 线检测。该模块的原理图如图 5 所示。
图 5 标志线检测模块原理图
(3)直流电机驱动电路 竞赛之初我们采用 LN298 作为电机驱动, 但经过一天的调试以后发现 LN298 的驱动能力不足且内阻较大, PID 调速很不稳定,因而采用了大电流低内阻的 SP30 芯片实现电机驱动,经过调试获得了良好的速度特性。 电机驱动电路的原理图如图 6 所示。
5
图 6 电机驱动板原理图
(4)液晶显示电路 选取了 48*84 点阵型的 NOKIA5110 液晶,显示与前车距离。
3、软件设计
系统软件采用 C 语言开发,在 CodeWarrior IDE 环境下调试并实现功能。主 程序流程如图 7 所示,进入主程序并初始化后,判断拨码开关键值后执行相应的 程序。软件程序设计采用模块化的结构,便于分析和实现功能。 当拨码开关 5 为 off 是实寻线绕场一周程序,当为 on 的时候为超车程序。 流程图如图 8 所示。
6
开始 寻内侧线匀速前进 识别超车线 寻外侧线减速前进 识别起跑线 停止
图 7 正常行驶一周的系统软件流程
初始化(A车在前) A车出发
沿内边线行驶 发给B车行驶指令 B车出发 AB车寻线 利用超声跟随 逐步提速 A车寻边线超车标记线 减速等待B超车 B车寻到超车标记线 开始超车 超车结束 发送超车结束信息
循 环 超 车
AB车交换序号
图 8 超车程序的流程图
4、系统实测
在系统各部分硬件搭建完毕, 软件调试结束后, 我们对系统进行了实际测试。 数据表格分别如表 1-表 3 所示。
7
表 1. 小车行进一周的时间(单位:秒) 第一圈 第二圈 第三圈 第四圈 第五圈 第六圈 第七圈 第八圈
均值 18.25 18.5
甲车 乙车
19 18
19 18
18 19
18 18
18 18
18 19
18 19
18 19
表 2. 超车一周的时间(单位:秒) 第一圈 第二圈 第三圈 第四圈 第五圈 第六圈 第七圈 第八圈 均值
甲车 乙车
24 23
24 23
24 24
25 24
25 24
25 23
24 23
25 25
24.5 23.6
表 3. 两车间的最大距离(单位:cm) 第一圈 第二圈 第三圈 第四圈 第五圈 第六圈 第七圈 第八圈 均值
间距
223
232
243
231
226
237
234
225
231.4
5. 结论
通过合理的系统构建和软件编程,本系统能够完成题目要求,实现平稳的行 驶和超车过程。实际测试表明,所设计的软件和硬件系统具备良好的稳定性,小 车具有较快的速度,可持续运行 10 圈,超出题目要求。 由于时间的原因,在设计时有部分因素未能实现,如采用探测距离更远的传 感器、实现更好的速度调节等。
8
电源模块
超声波测高 模块
RL78/G13
姿态传感器 模块
光电循迹模块
铁片投放 模块
电机驱动模块
9
开始
起飞姿态调整
拾起铁片起飞姿态调整
调整飞行高度
调整飞行高度
基 础 部 分
循迹前进
循迹前进飞跃示高线
发 挥 部 分
探测着陆区域
探测 B 区投放铁片
降落
返回 A 区着陆
10
开始
11
2013 年全国大学生电子设计竞赛论文
【本科组】
课题:四旋翼自主飞行器 (B 题)
1
摘要
为了满足四旋翼飞行器的设计要求, 设计了以微控制器为核心的控制系统 和算法。首先进行了各单元电路方案的比较论证,确定了硬件设计方案。四旋翼 飞行器采用了固连在刚性十字架交叉结构上的 4 个电机驱动的一种飞行器,以 78K0R CPU 內核为基础,围绕新的 RL78 CPU 內核演化而来的 RL78/G13 作为控 制核心,工作频率高达 32MHz,工作电压 1.6V-5.5V,适合各种类型的消费类电 子和工业应用, 满足 8/16 位微控制器的需求,有助于降低系统功耗,削减总系统 的构建成本。 采用 9926B MOS 管芯片的驱动直流电机, 该驱动芯片具有内阻小、 负载电流大、且控制简单的特性。通过采用 MPU-6050 整合的 3 轴陀螺仪、3 轴加速器,并含可藉由第二个 I2C 端口连接其他厂牌之加速器、磁力传感器、或 其他传感器的数位运动处理(DMP: Digital Motion Processor)硬件加速引擎,由 主要 I2C 端口以单一数据流的形式,向应用端输出完整的 9 轴融合演算技术 InvenSense 的运动处理资料库,可处理运动感测的复杂数据,降低了运动处理 运算对操作系统的负荷,实现了四旋翼飞行器运动速度和转向的精准控制。通过 HC-SR04 超声波测距模块实现了对四旋翼飞行器飞行高度的准确控制。通过激 光传感器, 实现了四旋翼飞行器沿黑线前进, 在规定区域起降, 投放铁片等功能, 所采用的设计方案先进有效,完全达到了设计要求。 关 键词 : 四 旋 翼 自 主 飞行 器 ,红 外,寻线,超车 ,单片机
2
1、系统方案的设计与论证
1.1 系统总体框架
整个系统分为系统模块、角度检测模块、电机驱动模块、电源模块、显示模 块。各模块的系统框图如图 1 所示。
边线检测模 块 标志线线检 测模块
电机驱动
MCU
超声模块
无线通信模块
图1
系统模块框图
1.2 方案论证与比较
(1)控制模块 传统的 51 单片机广为应用,具有使用简便、便宜价格等优点,但是其运算 能力较低, 速度较慢, 功能相对单一, 难以实现较复杂的任务要求。 MC9S12XS128 是一款功能强大的 16 位微控制器,具有非常丰富的片上资源,如:10 位精度的 ADC,节省了片外 AD;强大的定时器,方便对电机进行控制,可以进行浮点型 运算。另外还有精密的比较器,大容量的 RAM 和 ROM,可存储大容量的程序。 (2)电机模块方案 方案一:采用步进电机控制悬挂物体的准确运动,步进电机不需要使用传感 器就能精确定位,但其驱动能有限不适合驱动小车。 方案二:采用低内阻大电流的电机驱动芯片 VNH3SP30 驱动直流电机,相 比于 L298NSP30 优势明天且速度
相应较好。 基于上述理论分析,我们选择方案二。 (4)显示系统方案 方案一:采用 LED 数码管显示器。LED 数码管亮度高,醒目,但是其电路
3
复杂,占用资源较多,显示信息量较小。 方案二:LCD 液晶显示器。LCD 有明显的优点:微功耗、显示信息量大、 字迹清晰、美观、视觉舒适,使整个控制系统更加人性化。 因此,决定选用方 案二。 综合以上各部分的比较结果,决定以 MC9S12XS128 微控制器为核心,通过 驱动芯片控制直流电机实现小车的运动控制, 以红外发射接收管实现边线和标志 线的检测,同时在 LCD 上显示实时信息。
2、系统的硬件设计与实现
2.1 系统的总体设计
根据前面的分析,设计出本系统的总体架构如图 2 所示。
边线检测模 块
标志线线检 测模块
电机驱动
MCU MC9SXS128MAA
超声模块
无线通信模块
图 2. 系统架构框图
2.2 单元电路设计及参数计算
(1)边线检测模块 寻边线模块利用 XL6003 产生的恒流源驱动红外发射管, 接收管采用 1KL3B 高灵敏度红外接收管,再通过 LM393 比较器实现硬件二值化输出,直接输送至 单片机的 IO 口,提高了系统的工作效率。图 3 和图 4 分别给出了寻边线模块的 工作流程及原理图。
4
恒流源驱动 红外管发射 接收管检测
高于比较电 压
比较器判断
输出0
低于比较电压
检测到黑线输出0
图 3 寻边线模块的工作流程
图 4 寻边线模块的原理图
(2) 标志线检测模块 标志线检测采用检测黑线常用的 TCRT5000 对管, 在接收管输出处上拉即可 直接连接单片机 IO 口输入单片机,在单片机内部经过数字滤波实现精准的标志 线检测。该模块的原理图如图 5 所示。
图 5 标志线检测模块原理图
(3)直流电机驱动电路 竞赛之初我们采用 LN298 作为电机驱动, 但经过一天的调试以后发现 LN298 的驱动能力不足且内阻较大, PID 调速很不稳定,因而采用了大电流低内阻的 SP30 芯片实现电机驱动,经过调试获得了良好的速度特性。 电机驱动电路的原理图如图 6 所示。
5
图 6 电机驱动板原理图
(4)液晶显示电路 选取了 48*84 点阵型的 NOKIA5110 液晶,显示与前车距离。
3、软件设计
系统软件采用 C 语言开发,在 CodeWarrior IDE 环境下调试并实现功能。主 程序流程如图 7 所示,进入主程序并初始化后,判断拨码开关键值后执行相应的 程序。软件程序设计采用模块化的结构,便于分析和实现功能。 当拨码开关 5 为 off 是实寻线绕场一周程序,当为 on 的时候为超车程序。 流程图如图 8 所示。
6
开始 寻内侧线匀速前进 识别超车线 寻外侧线减速前进 识别起跑线 停止
图 7 正常行驶一周的系统软件流程
初始化(A车在前) A车出发
沿内边线行驶 发给B车行驶指令 B车出发 AB车寻线 利用超声跟随 逐步提速 A车寻边线超车标记线 减速等待B超车 B车寻到超车标记线 开始超车 超车结束 发送超车结束信息
循 环 超 车
AB车交换序号
图 8 超车程序的流程图
4、系统实测
在系统各部分硬件搭建完毕, 软件调试结束后, 我们对系统进行了实际测试。 数据表格分别如表 1-表 3 所示。
7
表 1. 小车行进一周的时间(单位:秒) 第一圈 第二圈 第三圈 第四圈 第五圈 第六圈 第七圈 第八圈
均值 18.25 18.5
甲车 乙车
19 18
19 18
18 19
18 18
18 18
18 19
18 19
18 19
表 2. 超车一周的时间(单位:秒) 第一圈 第二圈 第三圈 第四圈 第五圈 第六圈 第七圈 第八圈 均值
甲车 乙车
24 23
24 23
24 24
25 24
25 24
25 23
24 23
25 25
24.5 23.6
表 3. 两车间的最大距离(单位:cm) 第一圈 第二圈 第三圈 第四圈 第五圈 第六圈 第七圈 第八圈 均值
间距
223
232
243
231
226
237
234
225
231.4
5. 结论
通过合理的系统构建和软件编程,本系统能够完成题目要求,实现平稳的行 驶和超车过程。实际测试表明,所设计的软件和硬件系统具备良好的稳定性,小 车具有较快的速度,可持续运行 10 圈,超出题目要求。 由于时间的原因,在设计时有部分因素未能实现,如采用探测距离更远的传 感器、实现更好的速度调节等。
8
电源模块
超声波测高 模块
RL78/G13
姿态传感器 模块
光电循迹模块
铁片投放 模块
电机驱动模块
9
开始
起飞姿态调整
拾起铁片起飞姿态调整
调整飞行高度
调整飞行高度
基 础 部 分
循迹前进
循迹前进飞跃示高线
发 挥 部 分
探测着陆区域
探测 B 区投放铁片
降落
返回 A 区着陆
10
开始
11