|
本文最后可以下载本实验报告的完整word版本
|
|
|
|
| 一、系统概述
1.系统简述
采用意法公司推出的STM32单片机作为“室内气体监控系统”的控制核心。模拟环境时采用气体检测模块MQ-2对气体质量进行检测,利用STM32中的输出电平对电机的启动进行控制。
系统以STM32单片机为控制核心,由烟雾传感器进行数据采集,将采集到的数据交由控制器处理,控制器将数据进行分析处理,若超出设定指标,则通过串口将控制量发送到执行机构控制风扇转速,改善空气流通速度。同时在烟雾超标时会有报警显示,当风扇将烟雾降到规定指标以下时,报警取消。上位机实时显示各器件工作状态及当前数据,并通过RS232向STM32发送控制命令。
硬件设计使用塑料收纳盒、风扇,系统整体初始保证平衡,上位机与STM32间的数据通信采用RS232。基于这些完备而可靠的硬件设计,使用了一套独特的软件算法,实现了模拟环境内气体的监控与平衡控制。
2.系统结构
系统整体结构如图1所示。
图 1 系统整体框图
系统实物模拟连接图如图2所示
图 2系统实物模拟连接图
2.1系统结构的组成
本系统主要由主控制器、烟雾检测模块、放大电路、稳压电路、继电器、风扇、报警电路、开关电源等模块组成。
室内气体监控系统期望的功能是当系统内气体质量发生改变时,安装于模拟环境内的MQ-2气体检测模块实时采集数据,并将采集到的气体浓度相关数据传送至主控制器。主控制器将数据进行处理,对比设定指标,得出是否需要对该环境气体质量进行改善,换算为输出的0-3.3V电平信号,通过三极管放大后,将该电平信号传送给5V RU继电器,驱动风扇工作,改善空气流通速度。安装于桶壁上的传感器信号再次反馈到STM32单片机,与设定值相比较,形成一个闭环反馈,从而使桶内气体质量保持一个相对健康的指标。
2.2开关电源
开关电源是利用现代电力技术,控制开关晶体管开通和关断的时间比率,维持稳定输出电压的一种电源,开关电源一般由脉冲宽度调制(PWM)控制IC和MOSFET构成,开关电源与线性电源不同的是,PWM开关电源是让功率晶体管工作在导通和关断的状态,在这两种状态中,加在功率晶体管上的伏-安乘积是很小的(在导通时,电压低,电流大;关断时,电压高,电流小),功率器件上的伏安乘积就是功率半导体器件上所产生的损耗。与线性电源相比,PWM开关电源更为有效的工作过程是通过“斩波”,即把输入的直流电压斩成幅值等于输入电压幅值的脉冲电压来实现的。脉冲的占空比由开关电源的控制器来调节。一旦输入电压被斩成交流方波,其幅值就可以通过变压器来升高或降低。通过增加变压器的二次绕组数就可以增加输出的电压值。最后这些交流波形经过整流滤波后就得到直流输出电压。
控制器的主要目的是保持输出电压稳定,其工作过程与线性形式的控制器很类似。也就是说控制器的功能块、电压参考和误差放大器,可以设计成与线性调节器相同。他们的不同之处在于,误差放大器的输出(误差电压)在驱动功率管之前要经过一个电压/脉冲宽度转换单
2.3烟雾浓度控制分析
本系统采用烟雾传感器模块进行检测烟雾浓度并输出相应的电压,当监测数据大于设定值时,风扇启动进行室内气体与外部环境气体交换,直到达到设定值,电风扇停止,达到气体浓度控制的目的。
本系统采用三极管作为系统的放大电路。
三极管特性是基极控制集电极电流,所以一个NPN型三极管的集电极接电源正极,发射极接电源负极,基极不接电源的任何一端,或者接负极时,集电集和发射极没有电流通过。如集电极和发射极有电流通过,说明三极管漏电或损坏。
基极电流在一定的范围内可以控制集射电流的大小,这个范围就是放大区。当基极电流再增大,管子集射电流会达到饱和,此时基流的再增加已经不能使集射电流增大了,饱和电流的大小不受基极电流的控制而只受外电路的控制。
当外加电源时,比如信号、直流时,必须和发射极对地电位相同,正电时三极管导通,0.6V以下或负电时截止。
由此得出:NPN型三极管在基极电压达到0.7V时,开始导通有电流,随着基极电压增大,三极管进入放大区,集电极电流增大;基极电流增大到一定值时,三极管进入放大饱和区,此时再增大基极电压,集电极电流增加很小。而基极电压小于0.7V,或者为0、负电时,三极管没有电流通过,称为截止。
注:任何时候三极管不应该处于最大电流及最大电压(当然也不能在最大功率)下工作,否则极易永久性损坏。
本系统采用HK4100F-DC5V-SHG型继电器。
继电器主要作为系统的驱动电路,继电器引脚的示意图如图3所示。
图3 继电器引脚的示意图
2、5为线圈 1、6为公共端 3、4一个常开一个常闭
继电器的三维视图及电气图如图4所示。
图4 继电器三视图模型
a 继电器正视图 b继电器侧视图
c 继电器电气图 d 继电器俯视图
其驱动原理如下:
- 当STM32单片机的引脚输出低电平时,三极管饱和导通,+5V电源加到继电器线圈两端,继电器吸合,同时状态指示的发光二极管也点亮,继电器的常开触点闭合,相当于开关闭合。
- 当STM32单片机的引脚输出高电平时,三极管截止,继电器线圈两端没有电位差,继电器衔铁释放,同时状态指示的发光二极管也熄灭,继电器的常开触点释放,相当于开关断开。注:在三极管截止的瞬间,由于线圈中的电流不能突变为零,继电器线圈两端会产生一个较高电压的感应电动势,线圈产生的感应电动势则可以通过二极管IN4148释放,从而保护了三极管免被击穿,也消除了感应电动势对其他电路的干扰,这就是二极管D1的保护作用。
3.系统功能及指标
3.1功能指标
该系统主要由控制中心,检测装置,驱动装置以及执行装置构成,其各个装置所执行的功能如下:
- 控制中心:采用STM32单片机,主要负责对检测装置信号的接受以及对该信号的处理;
- 检测装置:由烟雾检测传感器组成,主要负责系统内部对于烟雾浓度的检测;
- 驱动装置:由三极管9013NPN构成,主要用于单片机输出电平信号的放大;
- 执行装置:由风扇以及继电器组成,继电器用于控制风扇的启动,风扇用于系统内的排风。
3.2技术指标
本次设计所选箱体大小为70L(620*440*330),气体浓度指标为200ppm,将密封箱体中烟雾快速降到指标以下,假定风扇尺寸为80*80*25,额定电压为12V,转速为1800
10%rpm,风量为21CFM,10s内将箱体内气体进行一次更换。
二、系统方案设计
1.实验对象设计
1.1箱体选择:长方体
- 产品材质:聚丙烯原料PP
- 产品尺寸:620×440×330(mm)
- 产品总容量:70L
- 选择理由:与纸箱、铁桶等材质的产品相比较,所选塑料箱子具有以下优点:
- 尺寸形状模拟真实房间比列,具有较实际的试验意义;
- 价格适合,便于携带,样式美观;
- 良好的耐热性、良好的力学性能,其强度和硬度、弹性都比较适宜,后期方便箱子加工、打孔;
- 试验后,还可以重复利用,不浪费,收纳一些生活小物品;
- 材质无毒、无臭、无味,具有健康的实验环境。
1.2 箱体开口位置及开口尺寸
开口位置在箱体的上方,两侧各开一个口安装风扇,分别作为排风口。对于重力场中的不可压缩均质流体 ,方程为p+ρgh+(1/2)*ρv^2=c 式中p、ρ、v分别为流体的压强、密度和速度;h为铅垂高度;g为重力加速度;c为常量。根据伯努利方程可以看出,流速快压力低压强小,流速慢压力高压强大。所以选择此方法排风不会在拐角造成气流回旋。
开口形状近似为八边形,故其面积可由风扇的尺寸减去四个边角的面积得到,具体效果如图5所示。
排风口尺寸大小由计算得出为:
- 风扇的面积为:80mm*80mm=64cm2
- 四个边角的面积:1/2*2.67*2.67=3.56cm2
- 单个排风口尺寸的大小:64-3.56=60.44cm2
- 总排风口大小:60.44*2=120.88cm2
为确保箱体有足够进风量,在箱体一侧开有进风口,其尺寸大小为:107*94=100.58cm2,箱体总开口尺寸为100.58+120.88=221.46cm2
图5 风扇开口效果图
1.3 风扇的选择
根据公式P=Q*P(压力)/60*1000*风机效率*传动效率可得到风扇功率,进而选择合适的风扇。
假设风扇风量为21CFM,由1CMM=60CMH=35.245CFM=1000LM可得,风量Q为0.6CMM。由此可大致算出风扇功率为0.9w。
该风扇的风量可换算为:1000/35.245*21.8=618.53LM。
将箱体内气体排出的时间为:t=70L/618.53LM*60s=6.8s,
风扇出风口的风速计算公式:
V=Q/F (3-1)
(V为风扇的风速,Q为风扇的风量,F为箱体的横截面积,代入数据可得,V=0.515m/s)
综上选择XFAN80型风扇,该风扇为电压12V,电流0.08A,转速为1800npm,风量21.8CFM。两个风扇同时工作可在7s将箱体内气体更换,考虑开口及其他影响时间或许有出入,但满足预期设计要求。
2.控制系统设计
2.1电源电路的设计
本系统的电源选用S-75-12型开关电源。开关电源功耗小,效率高;体积小,重量轻;稳压范围宽。
- 需要供电的器件为:负载风扇12v,继电器、传感器以及STM32单片机各5V,所以电源电路供电分为以下三部分:
- 风扇部分:本系统使用外部220V交流供电,利用S-75-12型开关电源将220V交流电压转换为风扇工作的连续直流12V电压。
- 三极管部分:经过L7805CV三端稳压集成电路将12V电压转换为5V电压以供C9013型三极管放大电路工作使用。
- 传感器部分:经过L7805CV三端稳压集成电路将12V电压转换为5V电压同时供MQ-2型烟雾传感器工作使用。
开关电源可以对风扇进行直接供电,对于继电器、传感器以及STM32单片机所需要的5v电压可通过芯片7805将其转换成5v。这里继电器由相应的三极管来驱动,开机时,单片机初始化后的端口为高电平,+5伏电源通过电阻使三极管导通,所以开机后继电器始终处于吸合状态,如果我们在程序中给单片机一条:CLR Pn或者CLR Pn的指令的话,相应三极管的基极就会被拉低到零伏左右,使相应的三极管截至,继电器就会断电释放,每个继电器都有一个常开转常闭的接点,便于在其他电路中使用,继电器线圈两端反相并联的二极管是起到吸收反向电动势的功能,保护相应的驱动三极管,这种继电器驱动方式硬件结构比较简单。
2.2 MCU最小系统的设计
本系统采用STM32 PZ6806L型开发板,其中STM32F103ZET为核心板,其管脚图如图6所示。并分别应用了蜂鸣器、RS232模块、LCD液晶显示屏、ADC模块、DAC模块等。
- 具有LCD彩屏显示功能。
- 具有蜂鸣器来完成系统报警的功能。
- 可以利用串行下载完成编程。
- 具有复位功能。
- 具备据终端设备和数据通讯设备之间串行二进制数据交换接口技术标准。
- 数模、模数转换。
- 显示功能,我们可以利用开发板上LCD液晶显示屏来现这个功能;
- 报警功能可以采用P2.0这个引脚接一蜂鸣器来实现。
- 利用单片机的第25脚可以设计成复位系统,并采用按键复位;
- 利用单片机的23、24脚可以设计成时钟电路,利用单片机的内部振荡方式设计的。
图6 STM32管脚图
2.3三极管放大模块的设计
系统利用C9013型三极管将3.3V电压放大到5V电压来控制继电器工作,从而控制风扇的运行与停止,其结构图如图7所示。三极管各极所需电压如下:
- 集电极-发射极电压:25V;
- 集电极-基极电压:45V;
- 发射极-基极电:5V;
三极管放大电路中,3.3V不能直接加到三极管B极,应当在基极串一个限流电阻限制基极电流,以达到保护三极管的作用;C极也应该串一个10KΩ上拉电阻达到输出电压5V的目的。
图7 9013 - NPN型三极管结构图
2.4烟雾传感器模块的设计
本系统采用MQ-2型烟雾传感器模块,用于检测系统空间内的烟雾浓度值,其工作原理图如图8所示。烟雾传感器将检测到的数据所输出的0-5V至STM32进行数据处理后输出控制信号进行风扇控制。与设定值进行比较,以确定风扇工作与否。
MQ-2型烟雾传感器模块采用优质双面板设计,具有电源指示和TTL信号输出指示;双路信号输出;(模拟量输出及TTL电平输出)TTL输出有效信号为低电平,可接直接接单片机IO口;模拟量输出0~5V电压,浓度越高电压越高;对液化气、丁烷、甲烷、烟雾等有较好的灵敏度;使用寿命长、稳定性好;具有快速响应恢复特性。
图8 工作原理图
烟雾传感器工作要求:
- 烟雾传感器模块正常工作需提供5V直流电。
- 当传感器检测被测气体时,当浓度值超过电位器RP设定的阀值时,比较器2脚的点位高于3脚的点位,此时,比较器1脚输出低电平,LED灯亮,传感器输出低电平。反之,当没有信号的时候,传感器输出高电平,等于电源电压。
- 在正常环境中,没有被测气体的环境,设定传感器输出电压值为参考电压,这时,AOUT端的电压在1V左右,当传感器检测到被测气体时,电压每升高0.1V,实际被测气体的浓度增加200ppm。特别提醒:传感器通电后,需要预热20S左右,测量的数据才稳定。
三、上位机设计
随着计算机系统的普及与外围设备技术的发展,计算机与外围设备之间的通信就显得越来越重要了。智能机器人少不了一个控制的遥控器,这就需要设计上位机来控制机器人。现在设计上位机的软件一般有labview、matlab、vc、vb、vs、java等。对于labview来说虚拟仪器没有常规仪器的控制面板,而是利用计算机强大的图形环境,采用可视化的图形编程语言和平台,以在计算机屏幕上建立图形化的软面板来替代常规的传统仪器面板。软面板上具有与实际仪器相似的旋钮、开关、指示灯及其他控制部件。在操作时,用户通过鼠标或键盘操作软面板,来检验仪器的通信和操作。对于matlab来说主要存在优势是:1、编程效率高;2、高效方便的矩阵和数组运算; 3、用户使用方便 ; 4、扩充性强,交互性好 。 缺点是:1、循环运算效率低 ;2、封装性不好。对于上位机设计需要用到MATLAB提供了一定量的交互界面制作途径如GUI等,但是作为一件真正的商品,最终的代码将不可避免的移植到较为“低级”的语言中,例如C、C++。对于vc,要求执行效率和稳定的程序,在Win平台下,一般都是VC开发的。一般是VC开发核心组件,其它平台开发界面。就是有些数据库程序,如果要求特别稳定,也是VC++开发的。VC++使用微软的编译器,对微软的操作系统支持的最好。VC++用C++,保证了强大的执行效率。对于vb,优点是可视化界面,操作简单,易学。缺点是隐藏了许多 Windows 内部和底层的知识,也就是说,VB 的许多功能是靠调用已经编辑好的 Windows 模块或dll 实现的,VB 本身无法编辑这些东西,对底层操作极其不便。另外,运行速度较 C 或其他 语言慢。Java一般用于手机平台的软件开发。本次设计使用较为简便的VS2103,下面简单介绍一下VS模块。
Visual Studio 2013 是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具。创建满足关键性要求的多层次的智能客户端、Web、移动或基于Microsoft Office的应用程序。Visual Studio能够使改进后的可视化设计工具、编程语言和代码编辑器,享受高效率的开发环境, 在统一的开发环境中,开发并调试多层次的服务器应用程序 。
本项目是一个基于vs2013平台的室内气体检测系统的上位机设计。通过本次设计主要达到以下目的: 掌握串行口的的编程、查表和查询程序的设计方法;了解STM-32串行口的应用; 掌握usart串口硬件线路设计方法;熟悉电风扇的工作特性;掌握VC的编程,以及人际界面的设计。 主要设计内容 : 1、基于Visual Studio语言的人机界面设计和通信软件程序设计; 2、重点掌握在Visual Studio语言环境下如何通过MSComm控件来实现对串口的操作。
上位机软件设计方案为:第一步设计好可视化界面,并且界面设计合理美观,了解各个按键的属性和功能,界面上有基本的开始、停止、调节设定值等基本功能。第二步进行界面的复杂化,在实现基本功能的基础上进行功能扩展,提高其应用的普遍性。第三步用vs2012软件对各个功能按钮进行程序设计,实现各部分功能,完成调试,实现PC机与单片机的串行通信,最终实现人机界面的交互。 上位机系统的组成主要有PC人机界面、usart串口组成。 所谓人机界面,就是将窗体、命令按钮、文本框、选择框等对象按照用户的需要有机的组合在一起。VC人机界面用到的元素主要包括:窗体、控件和菜单。窗体:是人机界面的基础,是一个容器,控件和菜单都安放在窗体的适当位置。 控件是人机界面的主要对象。
通过RS232链接室内检测系统,使用VS2013编程上位机控制软件。上位机设计原理如图9所示。
图9 上位机设计原理图
RS232是串口来使用,从上位机端发送功能指令,当室内空气检测系统接收指令后来完成相对应的功能。首先启动电脑打开电源。上位机选择对应的串口和波特率,等和HC-05的串口通道打通之后就可以使用上位机控制检测系统了。检测系统可以通过单击上位机界面上的开始和停止来控制。这个方法是通过程序编辑来实现。同时上位机也具备键盘输入的功能,可以调节设定值。控制软件界面如图10所示。
图10 控制软件界面图
2、对子系统或部件计划进度要求
- 第一天:初步方案设计。
- 第二天:完善方案设计并完成设备的采购(包括STM32,电机,电源,传感器等)。
- 第三天:硬件设计与搭建,完成基本算法设计。
- 第四~七天:硬件完善与软件调试,仿真分析,上位机软件算法设计。
- 第八天:产品完善及报告撰写。
- 第九天:产品验收
表1项目分工
成员
| 工作内容
| 工作时间
|
| 胡文涛
| 负责实习期间整体安排和协调
|
全员按照上班时间正常上下班,个人工作时间具体依照整体安排执行。
|
| 马姗
| 负责实习进度安排以及上位机的操作
|
| 杨林艳
| 负责财务规划和核算
|
| 刘次明
| 负责实习方案的设计
|
| 欧鹏鹏
| 负责具体控制算法和编程
|
| 于亚奇
| 负责实习器件采购
|
| 刘鑫
| 负责文案整理
|
| 4、原件采购
表2 项目费用
设备名称
| 单价(元)
| 数量
| 合计(元)
| 备注
| STM32最小系统
| 185
| 1
| 185
| 控制核心
| 塑料箱
| 55
| 1
| 55
| 模拟真实环境
| 风扇XFAN80
| 15
| 2
| 30
|
| 三极管9013NPN
| 1
| 2
| 2
| 放大信号
| RU继电器HK4100F-DC5V
| 5
| 2
| 10
|
| 气体检测模块MQ-2
| 12
| 2
| 24
|
| 稳压块L7805CV
| 3
| 1
| 3
|
| 开关电源S-75-12
| 65
| 1
| 65
|
| 电路板
| 3
| 1
| 3
| 焊接元器件
| 总计:372
|
| 完成人签名
| 指导老师审查意见
| 详细设计报告
| 共15页
| 第15页
|
|
| 西安海禄科技-西安建大培训
|
|
评分
-
查看全部评分
|