1、Comment R1: 缺少封面和保密协议Comment R2: 2.4GHz南昌大学 2011届本科生论文 基于四轴飞行器无线通讯及上位机设计 余鑫洋1四轴飞行器无线通讯及上位机设计摘要四轴飞行器,又称四旋翼飞行器,因其起飞和降落所需空间少,在障碍物密集环境下的超控性高,以及它飞行姿态保持平稳能力强的优点,在民间和军事领域有广泛的应用前景。其中,小型四轴飞行器的研究近年来趋成熟,并未自动控制,先进传感器技术以及计算机科学等诸多技术领域的融合研究提供了一个平台。本文通过对四轴飞行器的性能指标的分析,明确设计思路及原理,围绕四轴飞行器无线通讯系统、上位机程序等的设计展开讨论,并确定可行方案。最终
2、提出使用以 2.4MHz的无线遥控对其四轴飞行器进行通讯,使用的是NRF24L01无线通讯模块,四轴飞行器的上位机则用 QT进行设计以达成目的。本次毕业设计主要通过设计上位机控制的飞行器,掌握控制系统的一般设计方法,熟悉常用的元器件,对所学单片机知识进一步强化,了解电路调试仿真的基本方法,培养综合应用所学理论知识来指导设计的能力。关键字:四轴飞行器,无线通讯,计算机科学南昌大学 2011 届本科生论文 基于四轴飞行器无线通讯及上位机设计 余鑫洋2Quadrotorswireless communications and software designAbstractAxis aircraft,
3、 also known as four-rotor aircraft,Rotary-wing air-crafts have many military and civilian applications due to their requiring small areas for taking off and landing,great maneuverability in Obstacle-heavy environment and great ability to maintain the position and orientation.The research of small sc
4、ale quad rotors,one kind of rotary wing air-crafts,have gradually become mature in recent years,and also provided an important platform for investigations in such fields as the autonomous control,advanced sensor technology and computer science.This paper analyzes the performance of four-axis aircraf
5、t, a clear design ideas and principles, around quadrocopter wireless communications system designed PC program like to discuss and identify possible options. Finally proposes the use of a wireless remote control aircraft 2.4MHz its axis of communication, using wireless communication module NRF24L01,
6、 four aircraft of the PC is used to achieve the purpose of designing QT.The graduation project is mainly controlled by the PC design aircraft, master control system design methods are generally familiar with common components, to further strengthen the learning MCU knowledge to understand the basic
7、method of circuit simulation and debug, develop comprehensive application theoretical knowledge ability to guide the design.Key words: Quadrocopter, Wireless communication, Computer Science南昌大学 2011 届本科生论文 基于四轴飞行器无线通讯及上位机设计 余鑫洋3目录第一章 绪论 .41.1 四轴飞行器的发展和现状 .41.2 无线通讯概念 .41.3 上位机概念 .5第二章 单片机下位机设计 .72.1
8、 主要芯片 .72.2 无线模块 .82.2.1 主要特点 .82.2.2 引脚功能 .82.2.3 工作模式 .102.2.4 工作原理 .102.2.5 配置字 .112.2 SPI 协议 .122.3 单片机的通讯技术 .132.3.1 并行通信 .132.3.2 串行通信 .142.4 串行通信的方式 .162.4.1 单工模式 .162.4.2 半双工模式 .162.4.2 全双工模式 .172.3 系统电路设计 .182.4.1 控制器无线模块 .182.4.2 四轴飞行器无线模块 .192.4 下位机程序设计 .21第三章 基于 QT 的上位机设计 .223.1 Qt 工具简介
9、.223.2 Qt 窗口部件 .233.3 Qt 对象模型 .233.4 Qt 的容器类 .243.5 Qt2D 绘图 .243.5.1 基本图形的绘制和填充 .253.5.2 坐标系统 .253.5.3 其他绘制 .26第四章 系统整体调试 .274.1 系统整体流程设计 .274.2 系统调试 .294.3 调试结果分析 .29第五章 结束语 .30Comment R3: 小四 宋体Comment R4: 章节标题参考 qq群里格式文档南昌大学 2011届本科生论文 基于四轴飞行器无线通讯及上位机设计 余鑫洋4第一章 绪论1.1 四轴飞行器的发展和现状四轴飞行器是四桨、非共轴多旋翼飞行器,
10、属于多旋翼飞行器的一种,是一种典型的、完全利用电子控制手段取代机械控制手段的飞行器之一。四轴飞行器的空气动力学原理与传统固定翼飞行器及基于桨距控制的直升机系统有很大的区别:在动力来源上,四轴飞行器直接由旋翼产生升力,而不是由机翼产生升力;在姿态控制上,四轴飞行器不是通过改变机翼或者旋翼的空气动力学结构,而是通过协调各旋翼转速而实现飞行器的姿态控制。四轴飞行器使用电子飞行器控制系统,因而彻底抛弃了传统飞行器复杂的机械控制部件,在相当程度上简化了飞行器结构和重量,也极大的降低了制造成本及装配难度;除此之外,其独特的空气动力学原理也使之具备里垂直起降能力,能够完成对其他飞行器而言非常困难甚至不可能完
11、成的任务。正是由于四旋翼飞行器在机体体积、隐蔽性、垂直起降、定点悬停和低速飞行等方面体现出来的不可置疑的优势,因而在侦查监视、同性中继、电子干扰、武器攻击等军事领域和交通监视和应用价值,已经成为目前除了扑翼飞行器外最有前途、最有潜力的微型飞行器之一。1.2 无线通讯概念无线通讯的原理是电磁波信号可以在空气中可以传播的特性进行信息交换的一种通讯方式。本次毕业设计利用的无线通讯模块是 NRF24L01(如图 1.1),它是一款新型单片射频收发器件,工作的频率在 2.4 GHz2.5 GHz ISM之间。里面包含了频率合成、功率放大、晶体振荡、调制等功能,并具有增强型ShockBurst技术。nRF
12、24L01 优点是耗电低,发射时和接收时候的工作电流分别只有 9mA跟 16mA。NRF24L01 具有自动重发丢失数据包的功能和自动产生南昌大学 2011 届本科生论文 基于四轴飞行器无线通讯及上位机设计 余鑫洋5应答信号的功能。这能够确保信号发射成功。NRF24LO1 具有 SPI 接口 ,可以和具有硬件 SPI 功能的单片机连接或者单片机 I/O 口进行模拟。方便与 51 这类没有硬件 SPI 的单片机进行连接。图 1.1 NRF24L011.3 上位机概念上位机是指可以直接发出操控指令的计算机,一般是 PC 机,屏幕上显示温度,压强,高度,等信号。下位机是从现在设备或者传感器或取信息的
13、仪器一般是 PLC 或者单片机。上位机发送指令给下位机,下位机受到指令后执行指令,一般是读取现场设备的状态。就好比 PC 机发送信号给单片机然后单片机发送信号给四轴飞行器,控制它完成各种动作。同时四轴飞行器也可以转化成相应的数据反馈给上位机。上下位机都需要编程。都有专门的开发系统。在概念上上位机是用来控制和提供服务的,相反来说,下位机是被控制者和被提供服务者。也可以理解为主机和从机的关系,但是上位机和下位机是可以转化的。工控机、上位机、工程师站等都是自控术语,工控机是负责现场控制的机器,从字面上就能看出来,上位机的管理功能要高于工控机,上位机就是工控机的管理机构,可以由工程师或者管理人员来操作
14、,具有对工控机修改参数、简单程序,统计多台工控机数据和报表功能的管理计算机。南昌大学 2011 届本科生论文 基于四轴飞行器无线通讯及上位机设计 余鑫洋6图 1.2上下位机的通讯一般都由下位机来决定,TCP/IP 一般是支持的,下位机一般它都具有自己很独特的通讯协议,而它的通讯协议一般都在你买下位机附带的光碟里面,通过观看便可以知道它的通讯协议。实际上它们的通讯协议仅仅是 API 函数的不同,它们都有支持多语言的功能,也支持高级语言为上位机语言。通常上下位机的通讯可以采用不同的协议可以有串口 RS232 通信协议或者也可以采用串口 RS485 通信协议。通信协议可以采用封装好的开发工具就可以实
15、现下位机和上位机之间的通信,但是也可以自己编写驱动类的程序协议编写上下位机之间的通信。本次课题是运用 RS232 作为上下位机的通信协议来控制上下位机之间的通信。南昌大学 2011 届本科生论文 基于四轴飞行器无线通讯及上位机设计 余鑫洋7第二章 单片机下位机设计2.1 主要芯片本课题使用的是由 INTEL 公司生产的 STC89C52 单片机和意法半导体公司生产的 STM32 芯片来控制 NRF24L01 无线模块, STC89C52 作为控制器的芯片(如图 2.1),而 STM32 则作为四轴飞行器的主芯片,两者之间通过NRF24L01 来通讯。 STC89C52 芯片是对于单片机初学者来
16、说最适合的一款芯片,简单易学。它具有 32 个双向的 I/O 口,3 个 16 位的定时计数器,还具有内部 512K 的数据储存器 8K 片内程序储存器,还具有中断功能。具有空闲掉电的模式,这可以之时芯片在部工作时候耗电量更少。STM32 是 32 位的微型控制器,它的功能十分强大,耗能也极低,非常适合四轴飞行器的主芯片。本课题采用的是 STM32F103(如图 2.1)增强型芯片,它具有 72MHz 的时钟,2.0 到 3.3V 的供电电压和 I/接口的驱动电压。除此之外它也具有低功耗的模式,比如掉电模式,待机模式,和空闲模式。本身自带 ADC 转换模块,不再需要添加 ADC 转换芯片,极大
17、的节省了空间同时最多具有 112I/O 口,这致使它能够实现很复杂的功能。同时具有 11 个定时器和 3 个 SPI 通道。可直接利用其SPI 功能与 NRF24L01 进行通讯。所以是四轴飞行器主芯片的不二之选。 图 2.1Comment R5: 三个图,使用三个不同的图号:图 2.2 图 2.3 图 2.4南昌大学 2011届本科生论文 基于四轴飞行器无线通讯及上位机设计 余鑫洋82.2 无线模块NRF24.L01当选取无线模块时候,起初有两个方案,一个是 HC-05蓝牙模块,二就是本次最终选择的 NRF24L01模块,不选择 HC-05蓝牙模块是因为传输距离不够,而且有手机限制。而 NR
18、F24L01模块传输距离短则几十米长则上千米,而且价格低廉。它还具有自动重发的功能。而四轴飞行器的无线通讯对距离有很大的要求。所以 NRF24L01非常适合作为四轴飞行器的无线通讯模块。2.2.1 主要特点 NRF24L01具有自动应答和自动再发射功能;它的片内会自动生成 CRC校验码; 数据传输率为 l Mb/s或 2Mb/s;SPI 速率为 0 Mb/s10 Mb/s;NRF24L01有 125个频道:兼容其他 NRF24L01系列的射频模块;1.9 V3.6 V为它的供电电压。2.2.2 引脚功能CE:使能发射或者接收;CSN,SCK,MOSI,MISO,SPI 引脚端,微处理器可通过此
19、引脚配置 NRF24L01;IRQ:中断标志位;VDD 电源输入端;VSS 电源地;XC1,XC2:晶振振荡器引脚;ANT1,ANT2:天线接口;VDD_PA:为功率放大器供电,输出为 1.8V;IREF:参考电流输入。如图 2.2。南昌大学 2011 届本科生论文 基于四轴飞行器无线通讯及上位机设计 余鑫洋9图 2.2南昌大学 2011 届本科生论文 基于四轴飞行器无线通讯及上位机设计 余鑫洋102.2.3 工作模式通过配置寄存器可将 nRF241L01 配置四种工作模式如表一所示。表 1 NRF24L01 工作模式工作模式 PWR_UP PRIM_RX CE FIFO 寄存器状态接受模式
20、1 1 1 发射模式 1 0 1数据在 TX FIFO 寄存器发射模式 1 010停留在发送模式,直至数据发送完待机模式 1 0 1 TX FIFO 为空待机模式 1 - 0 无数据传输掉电模式 0 - - 在调试程序时候可以将它在不工作时候转为待机模式 1,在这个模式下它的晶振是不工作的;待机模式 2 进入的要求是 FIFO 寄存器为空加上把 CE 置高;在待机模式下,所有的配置字都会跟着保留。所有模式下掉电模式功耗最小,nRF24L01 在此模式下不工作,但配置寄存器的值会保留。2.2.4 工作原理当快要发射信号时候把 nRF24L01 配置为发射方式:然后将有效数据TX_PLD 和节点地址 TX_ADDR 依照 SPI 的时序写入 NRF24L01 的缓冲区当中,当 CSN 为低时 TX_PLD 写入缓冲区,并且 TX_ADDR 写入一次就可以了,然后把 CE 置成高电平并且要让它持续的时间为 10 s 以上才有效,之后要延迟130s 后发射数据;当发射数据后 NRF24L01 会自动的进入接受模式,等待接受对面发来的应答信号。如果接收到应答信号的话,那么这一次通讯就算是成