fpga语音识别的四旋翼飞行器控制系统设计

上传人:小** 文档编号:34131258 上传时间:2018-02-21 格式:DOC 页数:9 大小:132KB
返回 下载 相关 举报
fpga语音识别的四旋翼飞行器控制系统设计_第1页
第1页 / 共9页
fpga语音识别的四旋翼飞行器控制系统设计_第2页
第2页 / 共9页
fpga语音识别的四旋翼飞行器控制系统设计_第3页
第3页 / 共9页
fpga语音识别的四旋翼飞行器控制系统设计_第4页
第4页 / 共9页
fpga语音识别的四旋翼飞行器控制系统设计_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《fpga语音识别的四旋翼飞行器控制系统设计》由会员分享,可在线阅读,更多相关《fpga语音识别的四旋翼飞行器控制系统设计(9页珍藏版)》请在金锄头文库上搜索。

1、FPGA 语音识别的四旋翼飞行器控制系统设计 靖固 张学松 哈尔滨理工大学计算机科学与技术学院 摘 要: 以 FPGA 语音识别命令作为四旋翼的航拍遥控命令, 将 FPGA 快速处理信息的能力与语音控制的简单、准确、灵活特点相结合。控制系统分为 2 部分, 四旋翼飞行器利用单片机, 采用模糊神经网络 PID 控制四旋翼螺旋桨的转速达到对机身的飞行高度和方向的控制;语音遥控命令利用 FPGA, 采用优化的隐马尔可夫模型完成对机身的飞行姿态的命令控制。经仿真验证语音控制四旋翼控制系统具有很强的实时性, 能很好地控制四旋翼飞行器完成航拍任务。关键词: FPGA; 四旋翼控制系统; 模糊神经网络 PI

2、D; 优化的隐马尔可夫模型; 作者简介:靖固 (1961) , 女, 博士, 教授;E-mail:;作者简介:张学松 (1990) , 男, 硕士研究生.收稿日期:2016-04-06基金:黑龙江自然科学基金 (F222805) Design of FPGA Speech Recognition Four Rotor Aircraft Control SystemJING Gu ZHANG Xue-song School of Computer Science and Technology, Harbin University of Science and Technology; Abstra

3、ct: This paper uses FPGA speech recognition command as the four-rotor aerial remote control command.The FPGA can quickly process information combined voice control of the simple, accurate and flexible features. The control system is divided into two parts. The four-rotor craft uses the single-chip c

4、omputer and it uses the fuzzy neural network PID to control the speed of the four-rotor propeller to achieve the control of the flying height and direction of the fuselage. The voice remote command uses FPGA to optimize the hidden markov model that completes the command control of the flight attitud

5、e of the fuselage. The simulation of the four-rotor control system has a strong real-time, and the system can control the four rotorcraft to complete the aerial mission better.Keyword: FPGA; four-rotor control system; fuzzy neural network PID; optimized hidden Markov model; Received: 2016-04-060 引言伴

6、随着航拍等新型技术的崛起, 四旋翼飞行器成为近年来的热点研究主题1。本文就是利用 FP-GA 的快速处理信息的能力2, 将信息量较大的语音航拍遥控命令3在 FPGA 上识别处理, 将 FPGA 快速处理信息的能力与语音控制的简单、准确、灵活性特点相结合, 使四旋翼飞行器控制系统更能满足特定系统的实时性、准确性和灵活性的要求4。1 系统整体设计基于 FPGA 语音识别的四旋翼飞行器控制系统是由四旋翼飞行器系统和语音控制系统组成。语音控制系统是由 FPGA 语音识别2模块进行语音识别控制, 首先由麦克风采集语音控制命令, 通过 FPGA 处理转换成数字控制信号, 通过 2.4 GHz 无线模块发送

7、;四旋翼飞行器控制系统由四旋翼上的 2.4GHz 无线接收模块、MPU6050 检测模块和单片机主控器组成。单片机将接收的控制命令解析出姿态角与 MPU6050 检测的当前四旋翼姿态比较后, 通过单片机控制器的整合来控制四旋翼的飞行姿态。系统整体框图如图 1, 通过显示屏当前的图像来调整摄像头的角度, 进而达到想要航拍的图像。图 1 系统整体框图 下载原图2 四旋翼控制器系统设计2.1 四旋翼飞行器工作原理四旋翼飞行器是由一对正桨、一对副桨、4 个无刷电机、4 个无刷电调、电池、机架、2.4GHz 无线接收模块5、MPU60506以及起主要控制的单片机处理器组成。4 个螺旋桨正副桨交替安装,

8、两个螺旋桨顺时针旋转两个螺旋桨逆时针旋转。四旋翼飞行器有“十”字模型和“X”字模型7, 本系统采用“X”字模型。系统通过控制四旋翼四个螺旋桨转速来改变四旋翼 3 个姿态角, 从而改变四旋翼运动轨迹。三个姿态角如图 2、图 3 和图 4 所示。 为俯仰角, 为偏航角, 为横滚角。图 2 俯仰角 下载原图图 3 偏航角 下载原图图 4 横滚角 下载原图2.2 建立四旋翼飞行器的数学模型首先定义“X”字模型坐标系, 在悬停状态下四旋翼受力情况如图 5 所示8。图 5 悬停四旋翼受力分析图 下载原图根据牛顿第二定律分析可得:四旋翼受重力 G=mg, 单个螺旋桨产生的升力F=Kl 和阻力 f=Kr, K

9、 l和 Kr分别为升力系数和阻力系数, 为螺旋桨转速。再由平动动力学模型可得线性方程如公式如式 (1) 所示9:其中:m 为四旋翼飞行器的质量; x y z分别为 3 个轴上的空气阻力系数。四旋翼的升力转换到地面坐标系下的受力如式 (2) 所示:其中:F 为总升力;R 为转换矩阵。实现四旋翼飞行器飞行是要靠电机完成的, 控制四旋翼电机的转速就能控制四旋翼的姿态以及方向。电机的数学模型为10其中: (S) 为电机输出转速;U (S) 为电机的输入电控制量;K sv为常数;T e是电磁时间常数。由此得到 4 个独立的电机控制量 U 与四旋翼飞行器转速 之间的数学模型为其中:U 1为垂直高度输入量;

10、U 2为俯仰角输入量;U 3为偏航角输入量;U 4为横滚角输入量。2.3 模糊神经网络 PID 控制器模糊神经网络 PID 控制器总体结构框图如图 6 所示。图 6 模糊神经网络控制器总体结构框图 下载原图偏差和偏差变化率作为模糊神经网络 PID 控制器的输入, 经过学习和训练的模糊神经网络输出 P、I、D, 再经过比例因子调整后得到最佳的参数, 输入给 PID控制器。模糊神经网络11控制器有输入层、隶属函数层、模糊推理层、归一化层、输出层组成。其结构如图 7 所示12。实现模糊神经网络 PID 控制器的算法设计流程如图 8 所示。图 7 模糊神经网络结构框图 下载原图图 8 模糊神经网络 P

11、ID 控制器的算法设计流程图 下载原图经 MATLAB 仿真得到的阶跃响应仿真图如图 9 所示。图 9 模糊神经网络 PID 控制器的阶跃响应仿真图 下载原图仿真结果表明模糊神经网络控制器能够很好地控制四旋翼飞行器平稳飞行, 当有干扰的时候也能很快的恢复到平稳飞行状态。3 语音控制命令识别系统3.1 优化 MFCC 特征中国有 56 个民族, 每个民族都有自己的方言且各有特点, 对于语音识别加大了识别的难度。在研究中发现, 梅尔倒谱系数能很好地区分这些特征, 并将语音识别出来。梅尔倒谱系数 (MFCC) 13与频率的关系为其中 f 表示频率。实现流程如图 10 所示。图 1 0 MFCC 特征

12、提取过程 下载原图首先对采集的语音信号进行 RC 滤波和分帧, 通过 RC 滤波器滤除语音命令输入的干扰信号, 本系统帧长取 256, 帧移 60;其次, 设置预加重滤波器, 能消除部分噪声, 以提升清音部分的能量;再其次, 加汉明窗, 端点检测, 在第 n 帧的短时能量大于噪声的短时能量, 即第 n 帧短时能量 En, 并用短时过零率来区分无声、浊音以及清音。再进行 FFT 变换是为了得到语音信号的功率谱, 而语音信号是在时域下的信号, 必须变到频域下才能进行处理从而得到想要的数据。三角滤波器的作用有两方面:第一, 平滑频谱, 消除谐波, 凸显原语音的共振峰;第二, 降低运算量。Mel 滤波

13、器组有 M 个, 中心频率为 f (m) , 本系统取 m=24。计算滤波器组输出的对数能量, 经 DCT 变换再加一阶动态差分, 构成 MFCC 系数。由于 MFCC 提取的特征维数较大, 对之后的 HMM (隐马尔科夫模型) 语音识别效率带来很大的影响, 所以采用如下优化方法:用主成分分析 PCA 算法对 MFCC 提取的 24 维参数进行优化, 一方面减少 HMM 匹配时的计算量, 另一方面使四旋翼飞行的实时性达到很好的效果。主成分分析 PCA 算法如图 11 所示。图 1 1 优化的 PCA 算法流程图 下载原图其中:r总样本个数 n。实现降维的目的, 且保证了一定的识别率。3.2 优

14、化的隐马尔科夫算法隐马尔科夫模型14是一种双重随机过程: (1) Markov 链是状态与转移矩阵具有一一对应的关系, 是 HMM 的基本随机过程; (2) 第二个随机过程是描述状态与观察值之间的概率关系。在使用者角度来看, HMM 内的随机过程是透明的, 状态转移是看不到的, 因而叫做隐马尔科夫模型。隐马尔科夫模型需要解决的 3 个问题:1) 估计问题:给定观察序列 O=O1, O2, O3, OT和参数模型 = (, A, B) , 如何确定观察序列与模型之间达到最佳匹配, 其中 T 为语音信号帧数, 为初始状态概率矢量, A、B 分别为状态转移概率矩阵和 HMM 模型的观察值概率矩阵;2

15、) 解码问题:已知观察序列 O=O1, O2, O3, OT和参数模型 = (, A, B) , 怎样选择最佳状态序列;3) 模型训练问题:怎样修正观察序列的参数模型 = (, A, B) , 使 P (O|) 概率最大, 达到最佳识别效果。针对以上问题, 本文分别采用前向后向算法、Viterbi 算法、BaumWelsh 算法。由于 BaumWelsh 算法在进行训练时对初始参数要求较高, 此外四旋翼飞行器要求实时性较高, 所以对 BaumWelsh 算法进行优化如下:对于没有约束的随机过程来说, B 矩阵可以是任意值, 但对于本文的约束, 让B 矩阵的值全部为 1, 利用 Viterbi

16、算法划分状态序列, 再利用 K均值算法对B 矩阵进行重新估计, 得到新的 B1矩阵和新的 1, 用 1代入 BaumWelsh 算法中重新计算, 得到 2, 比较 1和 2的差值与设定的阈值的大小, 得最佳值。具体优化的 HMM 流程图如图 12 所示。图 1 2 优化 HMM 参考模板程序流程图 下载原图整体语音识别程序流程图如图 13 所示。图 1 3 优化的隐马尔科夫算法流程图 下载原图对 HMM 孤立词识别的结果, 发送到四旋翼上进行控制。由摄像头当前的位置以及控制者想要的位置对四旋翼进行命令编码。当前的指令系统由 14 条指令组成, 分别为起飞、降落、前进、后退、左行、右行、上升、下降、停止、左旋、右旋、悬停、拍照和摄像。对 14 条指令进行编码, 用 5 位二进

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 管理论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号