基于STM32的超声波雷达系统设计(软件部分)毕业论文
2022-02-15 22:20:00
论文总字数:26828字
摘 要
雷达作为一种远距离目标探测和定位技术在军事、气象、导航等领域具有广泛应用。通常,雷达系统将扫瞄探测到的目标的位置信息,以数据的形式传送至终端设备,其显示的方式以圆形饼图为载体,将被测目标以图形化的方式显示在用户面前。本课题通过应用Qt软件,设计并实现一个基于STM32的简易模拟雷达系统的上位机显示软件。系统可接收下位机发送的含有障碍物方位及位置的连续、实时扫描信号,并以图形化的雷达饼图形式进行直观的显示。整个系统包括用户界面、数据通信与处理、实时扫描图形绘制等部分,运行稳定、界面美观,实现了课题的设计目标。
本文首先介绍此次雷达系统软件设计的功能与需且分析,根据预设的用户操作流程确定系统的组成部分:用户界面模块、数据处理模块、图形绘制模块以及任务管理模块,并依次介绍各模块实现的功能,用户界面模块用于显示实时接收的数据、传输端口信息、用户控制区以及雷达系统动态扫描界面。数据处理部分主要负责接收数据和解析数据,将读取的帧格式数据转换为可直接观测的实际值。图形绘制模块用来执行绘图操作,包括系统的后置背景图、扫描线以及障碍物的绘制。任务管理模块用来处理模块与模块之间的连接,包括模块间参数传递、定时添加和删除图元等等管理操作。接下来,从各模块实现的功能与设计思路入手,详细介绍程序设计过程,用户界面部分应用Qt的布局管理器,使得设计的界面简洁美观。图形绘制部分应用图形试图框架,方便实现对图元的添加与管理。任务管理模块应用Qt的信号和槽机制,以便于及时分配各模块之间通信指令。最后对设计的系统进行软硬件联合测试,用户驱动系统工作之后,扫描线随下位机同步旋转,并将上传的数据进行可视化处理,将指定方向上的障碍物清晰准确的显示在屏幕上,测试的结果表明,应用Qt设计的简易雷达显示界面基本实现了传统雷达系统的探测功能,同时设计的界面简洁美观,操作方便。
关键词: 超声波雷达 STM32 Qt界面设计 数据通信 实时显示
The Design of Ultrasonic Radar System Based on STM32 (Software Part)
Abstract
As long-range target detection and positioning technology, Radar has a wide range of applications in the military, weather, navigation and other fields. In generally, the radar system transmits the information of scanning detected target location to the terminal device in the form of data. It displays a circular pie chart as a carrier and sets the measured target in a graphical way to the user. This topic designs a simple analog radar system based on STM32 and achieves it with the application of Qt software. The system has ability of receiving continuous and real-time scanning data which contains both rotation angle and range from detector hardware, and can show the data by graphical user interface.
In this paper, functionalities were analyzed according to user requirements, which led to the whole architecture of our system with four separated modules, User Interface (UI), Data Processing (DP), Plot Drawing (PD) and Session Manager(SM) module. UI takes responsibility with communication configuration, user command interface and dynamic plot display, while DP savers data receiving/sending and parsing. PD is the key module to implement graphics plot using data from DP module. Among these modules, SM is the one who manager task scheduling according data process flow, when real-time detected data received from sensor of the hardware part.
The final tests and experiments show that project designed targets were successfully fulfilled with a pretty fine look and feel of our system.
Key Words : ultrasonic radar; STM32; Qt; data communication; real-time display
目 录
摘 要 I
Abstract II
目 录 III
第一章 绪 论 1
1.1 引言 1
1.2 课题研究的背景 1
1.3 课题研究的现状和意义 1
1.3.1 课题研究的现状 1
1.3.2 课题研究的意义 2
1.4 本文所做的工作 2
1.5 本文的结构 2
第二章 系统总体设计 4
2.1 系统需求与功能分析 4
2.2 开发软件介绍 5
2.3 系统组成框架 7
2.3.1 用户界面模块 8
2.3.2 数据处理模块 8
2.3.3 图形绘制模块 9
2.3.4 任务管理模块 10
第三章 系统软件设计 12
3.1 系统软件总体工作流程 12
3.2 各模块功能分析和设计 13
3.2.1 用户界面设计 13
3.2.2 图像绘制与动态显示 14
3.2.3 数据的实时处理与显示 21
第四章 系统软件测试 24
4.1 串口的发送与接收测试 24
4.2 数据实时处理与显示测试 24
4.3 软硬件调试 26
第五章 总结与展望 28
5.1 总结 28
5.2 展望 29
参考文献 30
致谢 31
第一章 绪 论
引言
雷达是用来探测指定目标并测量目标与观察点之间距离的精确电子仪器,早期多用于军事上,在二战期间,雷达的应用也得到了快速的发展与普及,在现代技术迅猛发展的背景下,卫星和航天飞船等也采用雷达作为勘探和监测的主要方式,超声波雷达作为雷达系统中的一类分支,其应用的前景十分广阔,在超声波雷达探测技术中,对于雷达信号的数据处理技术,也是人们日益关注的焦点,作为用户访问终端设备的接口,雷达系统的软件设计是系统的重要组成部分,也为探测技术的应用提供了良好的使用平台,所以良好的界面设计可以使用户的操作更加方便直接,检测也更为准确,因此设计出用户界面简单、交互友好的雷达系统的显示界面尤为重要,也具有深远的意义。
课题研究的背景
随着雷达探测技术的快速发展,对于该系统中软件设计的功能完善,也在不断出现新的要求,在终端设备的显示窗口中,核心部分是显示雷达动态效果图,同时需要显示经过计算机解析的雷达数据,比如目标距离、运动速度以及点迹等,能够将探测到的位置信息清晰准确的呈现给用户,是现阶段主要的研究方向和关注的焦点,对于超声波雷达系统中,下位机的硬件部分,其探测的原理是:首先设备向探测方向发送脉冲信号,信号遇到障碍物之后会返回脉冲信号,从发送信号到接收信号所用到的时间的一半,再和传输速度相乘即可计算出距离,以此实现对目标的探测,其测量的数据是目标距离和方位角,将数据通过传输端口送至接收设备,本次课题研究的内容就是接收之后的界面显示问题,从接收端获得实时更新的数据之后,将接收数据进行解析,角度信息可以使扫描指针旋转位置与电机同步,距离信息可以确定在该方向上的障碍物坐标,将超声波检测出的障碍物位置清晰准确的显示在屏幕上。
课题研究的现状和意义
课题研究的现状
目前,随着嵌入式系统应用领域的日益扩大,人们对于图形用户界面的设计也在不断提出更高的要求,Qt作为其跨平台应用的界面开发软件,得到了广泛的应用,目前很多公司将Qt用于单一平台的软件开发环境上,例如影视制作、三维立体动画、自动化电路系统设计、油气资源勘测、医学成像等等,都可以基于Qt构建而成。Qt是多平台的C 图形用户界面(CUI)应用框架, Qt是完全面向对象,具有较强的扩展性软件开发功能,基于上述优点,因此,选择在Linux操作系统下使用Qt软件进行超声波雷达系统软件部分界面的设计与开发。
课题研究的意义
雷达系统的显示界面是用户与终端相交互的核心部分,根据其探测目标的性质不同,所设计出的界面也各不相同,对于超声波雷达系统而言,设计的界面最主要的部分是扫描界面的绘图和障碍物的检测与显示,相应的显示界面中由一系列表示的距离映射刻度的同心圆,还包括用来观察角度的分割线,传递的参数主要有两类:角度与距离,目标点以极坐标形式显示在相应的雷达空间位置,界面中有驱动开关,在雷达的工作时,扫描基线与硬件雷达天线有相同的转速以及角度,绕中心点旋转,雷达扫描过程中将障碍物的信息传递给终端设备,经过数据处理之后在界面显示,所以雷达终端显示界面性能的好坏会直接影响整个雷达系统的探测质量。因此,运用Qt软件设计并实现基于STM32的超声波雷达软件系统设计具有很强的研究意义。
本文所做的工作
本次课题中,设计并实现超声波雷达系统的软件部分,通过对界面各部分进行功能需求分析,实现对窗口的设计,绘制扫描界面,绘制相关信息,用户点击开始按钮,驱动电机工作,扫描线与雷达电机同步旋转,本文通过比较几种常见传输数据端口的优缺点,最终确定较为适合的端口用来接收数据,将接收的障碍物位置信息进行数据解析,并将实时更新的数据信息显示在窗口右侧,绘制障碍物轮廓,通过一点坐标将障碍物显示在扫描界面,并通过定时器控制停留时间,实现统一管理。
本文的结构
本文的第一章,主要内容是对课题的研究背景、研究的现状以及研究意义进行说明。
本文的第二章,首先对所设计的软件系统进行功能与需求分析,接下来,通过对其实现的几类功能,进行模块划分,应用Qt软件对各模块进行初步方案的制定,最后确定软硬件数据传输的端口类型。
请支付后下载全文,论文总字数:26828字