版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第1章绪论1.1研究目的及意义本设计针对内河水质环保溢油监测浮岛为参照,为提升内河船舶溢油监测能力为目的,通过传统浮岛结构设计为蓝本,加以各种不同类型和作用原理的传感器设计一种新型内河船舶溢油监测浮岛概念。内河船舶在行驶中通常会溢出少部分油类物如:(高温机油,防腐油,等等)。内河水质环境尤其是人工运河,其自然降解能力以及水体环境承载能力远不如海洋环境。排除极端运输事故,随着内河船舶流量增加应实时掌握内河水环境各项参数的数据以确保水域安全。相较于传统海上监测浮岛以及人工取样检测,本设计可针对小规模环境提供实时监测数据,并确保监测数据的准确性和全面性。通过软件可指定采样方案和监测计划以提高内河水体监测能效,可大幅促进相关部件技术创新和内河水环境维护。1.2国内外研究现状我国国内内河浮岛暂时未试装和应用普及。目前国内主流采用的是海洋浮岛(近海浮岛),用来监测近海海况以及海洋水环境。内河包括人工运河以及港口均采用分体独立采集方式监测内河水环境(即单个功能类型传感器采集数据后,多个部分导出数据并由人工收集分析)。一些落后难以覆盖区域依然采用人工采集抽检的方法。我国自宣布海洋公约后大力推进领海控制能力和航运保障能力。尤其在海洋环境监测方面进步巨大,建成了以北斗定位和哨兵通讯为一体的沿海全控网络。对海上钻井平台溢油事故以及海洋潮汐水质变化保护做出巨大贡献。山上个世纪初(二十世纪)以美国为首的众多外国开展了对战后海洋环境的监测计划。其中早在海湾战争以及伊拉克战争中。通过对航道布下大量一次性水体监测器。通过反馈数据成功封锁重要海域达成战略目标。其中,一种类圆盘可浮在海面的监视器应用最为成功,成为海上浮标(浮岛)。当下为满足众多运河,港口,内河的水环境监测需求。多采用浮船式水质监测系统。其系统体积极大,另配备太阳能供电和国际水质检测标准功能,长配备与大型港口和重要航运枢纽。可在极端天气情况下依然维持正常工作状态,具有稳定性强,可靠性高的优势。与常见的传统监测浮筒以及河边检测器相互配合,为内河船舶航运提供充分保障。图1-1河上浮岛1.3研究内容随着社会经济的发展,船舶数量不断的增加,使通航环境更加复杂,这大大增加了水上溢油的风险。本次内河船舶溢油监测新型智能浮岛设计,主要目的是设计一款可以检测内河船舶是否溢油的新型智能浮岛系统。该系统使用STM32单片机作为主控,外接GSM短信模块可以实现远程通讯,系统还带有温湿度检测传感器、PH传感器及浑浊度传感器、溢油检测传感器可以检测河流的水质及是否溢油。在了解内河船舶溢油监测新型智能浮岛系统的发展概况及在工业上的应用和要求的基础上,熟悉内河船舶溢油监测新型智能浮岛系统的结构及工作原理,确定内河船舶溢油监测新型智能浮岛系统的整体设计方案:首先使用keil5编写系统程序并烧录后调试,其次使用AD绘图工具绘制系统PCB电路板,最后亲自动手将实物焊接成功并进行实物调试。通过网络索引与内河船舶溢油监测浮岛相关的信息。充分收集分析并学习相关的技术知识,将其精炼并应用在毕业设计中并了解内河船舶溢油监测新型智能浮岛系统的研究现状及设计方法。第2章系统整体方案设计2.1设计需求STM32单片机实现数据采集,打包,传送;溢油传感器监测水质是否有油料吸附,监测是否溢油;浊度控制器收集水体的浊度;温湿度传感器采集温湿度信息;数据通信采用GSM;检测水体PH值;2.2硬件选型2.2.1单片机选型方案一:用AT89C51芯片作为本设计的核心器件,C51单片机在我们平时学习中比较常接触,优点在于指令比较简单,对于初学者来说易懂,能够在短时间内上手掌握,它可以在3V的低压环境下面继续工作运行,可以很好地兼容各类MCS-51系列单片机,但是该单片机也存在不实用的确定,原因在于其本身不具有ISP在线编程技术,在运行或计算过程中,不论是调试错误程序,在程序中新加功能,都需要手动拔插芯片烧制,这是非常容易造成芯片损坏的。倘若芯片损害,设计会受到很大影响。方案二:核心器件采用STM32单片机,这个单片机虽然在学习中并不常见,但是也不难学会,可以通过教程学习,短时间内便可掌握简单的原理及用法,STM32单片机通C51单片机相比,控制性能要好非常多,而且它的性价比超高,成本更低,其寄存器和外设功能比C51系列多,功耗也低了不少。由于该设计需要较高的处理速度以及数据精度,而STM32作为一款拥有ARM内核的单片机,它的程序都是模块化的,工作速度比传统的C51单片机快很多,由此,将STM32作为本设计的核心器件。实物图如下图2-1所示图2-1STM32F103C8T6单片机实物图2.2.2溢油传感器溢油传感器为:AMT-Y300智能型水中传感器。相较于传统的光电原理和液位电导率原理的传感器方案,具有更高的应用范围(对复杂以及极端水环境的适应能力)。相较于传统光电原理方案,更具备一定的智慧识别能力,可以分辨大部分漂浮吸附颗粒物是否为油料物。其中渗透膜组件可以有效节流河道水体中的污泥,有机物,高价盐。使其与生物反应器反应被荧光标记并采集数据。实物图如2-2所示图2-2AMT-Y300智能型水中油传感器实物图2.2.3浊度传感器本设计采用的GE公司生产的TSW-30浊度传感器,传感器的端部是由红外发射二极管和光敏二极管组成。在温度为二十五摄氏度的情况下,他的测量范围(NTU)为0-1000±30,红外发射二极管峰值发射波长为940nm。传感器输出的电压大小跟温度和环境光照有关,所以在使用前要进行温补和注意使用环境的光照亮度。在内河水环境下浊度传感器作为辅助定位传感器,船舶长期的油污,油类防腐液甚至原油泄漏都会大幅增加水体的浑浊度。由于油料物具有一定的吸附性,所以其长期处于河道内会积蓄大量不透光物质,大大提高了浊度传感器的监测效率和准确性。TSW-30浊度传感器实物图如图2-3所示。图2-3TSW-30浊度传感器实物图2.2.4温湿度传感器温湿度传感器为DHT11型复合传感器,其特性为:1、出厂原生自带一定范围的基础值,无需再次校准2、20米以内串联5KΩ电阻3、体积小功耗低。温湿度传感器作为辅助信息传感器,添加了常规两项水体监测的指标。使得溢油监测浮岛平台的实用性和信息丰度大大提高。实物图如下图2-4DHT11温湿度传感器实物图2.2.5PH值传感器PH值传感器(酸碱度传感器)。其型号为E-201-C型,常用于简单水环境人工数据采样或大学实验。其特色为:采用参比电极以及玻璃电极的融合电极,特点为可充式复合电极抗外电场干扰强。其中本设计采用的DIY型号附带电容板可以有效缓解对于不同温度下的数据测量误差。原油以及油类物大多为酯类物质。所以其一个大气压标准实验室环境下不产生电离,所以不产生H+粒子,无法直接测得。但在内河水环境中,油类物质在水中会吸附大量其他物质,尤其是船舶作业所使用的油类物和工业制品在存储以及运输过程中,从外界混入的可溶于水的无机酸和无机碱,学名:“水溶性酸碱值”。所以实际条件下,长期通航的内河以及运河的油类物的水环境通常显弱酸性,酸碱值在6—7之间,所以本毕业设计添加了PH试笔测定水体酸碱值的功能。PH值试笔实物图如下图2-5PH值传感器实物图2.2.6GSM通信GSM是全球移动通讯系统英文缩写,是一种运用比较成熟可靠的无线通信技术。自GSM问世以来,它使得人们之间的通信交流变得方便快捷。目前在我国移动通信运营商,移动和联通公司中的网络也采用GSM标准。频谱效率增强,带宽容量增大,通信开放接口数量以及授权安全性都大大增加。在本课题里系统设计中采用了短信功能,主要优点是快捷、价格低廉,从项目整体上节约成本。通过向管理人员或部门负责人发送短信的方式,可以实现在异地进行监管。实物图如下:图2-6SIM800-GSM短信模块实物图2.2.7显示模块SSD1306是一个单片CMOSOLED/PLED驱动芯片可以驱动有机/聚合发光二极管点阵图形显示系统。由GDDRAM是一个为映射静态RAM保存位模式来显示。该RAM的大小为128*64为,RAM分为8页,从PAFE0到PAGE7,用于单色128*64点阵显示该芯片专为共阴极OLED面板设计。SSD1306中嵌入了对比度控制器、显示RAM和晶振,并因此减少了外部器件和功耗。多应用于嵌入式环境,常见与音乐播放器(MP5),随身听(walkman),儿童玩具等需要显示简单文字信息的人机交互显示画面,相较于传统LCD点阵显示屏具有高亮度、高对比度、多彩自发光清晰的优势。图2-7毕设采用的SSD1306显示模块实物图2.3系统整体方案设计本次内河船舶溢油监测新型智能浮岛设计,主要目的是设计一款可以检测内河船舶是否溢油的新型智能浮岛系统。该系统使用STM32单片机作为主控,外接GSM短信模块可以实现远程通讯,系统还带有温湿度检测传感器、PH传感器及浑浊度传感器、溢油检测传感器可以检测河流的水质及是否溢油。系统框图如下图2-8系统整体框图本毕业设计所采用的各个模块均能实现开题预期目标。其中电源模块采用外部接入(5V1A)的DC直流电源不计入图中。各模块的元件接口考虑到模块数量和制作难度均有所简化,其中溢油监测模块采用湿敏电阻作为同类型替代。各个模块所采用的主要元器件的原理图如下图所示:图2-9毕设系统硬件原理图第3章系统硬件电路设计3.1主控模块电路设计3.1.1STM32F103C8T6芯片简介本项目采用STM32系列的F103C8T6芯片,由于其低功耗、效率高等特点,故将其运用到本项目中。STM32F103C8T6芯片采用图3-1所示结构:图3-1STM32F103C8T6管脚图3.1.2引脚功能说明为更加简洁、之间展现各引脚功能,做了此表展示,STM32F103C8T6芯片总共有48个引脚,其对应引脚功能下:BOOT1和BOOT0两个重要端口在芯片复位后的电平状态决定了功能区域先后执行顺序。启动PIN44控制芯片,引脚设置为。设置B00T1=“x”,BOOT0=“0”时,为正常工作模式,从用户Flash启动,即启动区域在主闪存存储器;设置B00T1=“0”,BOOT0=“1”时,为厂家预设程序功能模式。其芯片内部预制了Bootloader(ISP程序),属于ROM区无法后期修改擦除,即启动区域在系统存储器;设置B00T1=“1”,BOOT0=“1”时,为调试功能模式,在此模式下由于RAM特性会掉电导致数据丢失。多数情况下该模式还可以用于特殊目的(故障局部诊断、读写Flash和EEPROM、解除Flash内部读写保护等),所以该模式被称为调试模式,且启动区域在内置SRAM。3.1.3电路设计时钟是芯片的核心,时钟源提供的时钟信号如同心脏向大脑和全身提供的血液一样,维持芯片和外部设备的运转。STM32F103C8T6一共有五个时钟源,其中主要有两个时钟源分别为内部RC振荡器(内部时钟)和外部晶振(外部时钟电路)。1.外部时钟电路(HSE)一般可外接陶瓷或石英谐振器以及其他外部时钟源,其频率运行范围4MHz-16MHz,输入、输出端连接STM32F103C单片机的引脚5、引脚6,高速外部时钟电路如图3-2所示。图3-2高速外部时钟电路2.高速内部时钟信号提供的时钟信号精度相较于高速外部时钟较差(通常偏差值在1%左右),而高速外部时钟信号所能提供的时钟信号精度为高速内部时钟的低十倍以上(<0.1%)。其输入输出引脚连接图如图3-3所示。图3-3低速外部时钟电路3.PLL用于对进行时钟频率倍频、锁频作用,因为HSE、HIS的时钟频率远远达不到72MHz,PLL对其进行倍频,达到标准频率。4.LSE用于给RTC模块接32.768kHz的石英晶体外部低速电路。5.LSI的作用是系统休眠时提供时钟信号源。ARM的Cortex™-M3处理器是最新一代的嵌入式ARM处理器,在针对嵌入式开发,ARM架构在性能较高的同时还将功耗和商业成本下降到最低,例如本设计所采用的开发板的主处理器的单个采购价格可低至10元左右,可以说在性能升级的同时兼顾了成本要求。3.2溢油传感器电路设计溢油传感器是利用光电原理(溶解与水中的油料物光照下的光谱图会得到特殊峰段的波峰以及波谷),溶解水中的油料(可溶性油)在吸收一定光源后会反射出不同的一种光,其光谱特性与吸收光源的光谱特性一致(即成正比)。技术参数如下型号AMT-Y300量程范围0-40.00ppm分辨率0.01ppm校准方式两点校准传感器接口RS-485线缆长度5米外壳材质PVC传感器安装规格以及鼠疫事项参照操作手册以及安装说明。传感器线材一般采用四芯双屏蔽线。3.3TSW-30浊度传感器电路设计浊度传感器利用光电感应原理,在传感器两个凸起点两条对称的光电通道互相感应,测量差值不变。外界光线射入监测水样时,水中的浑浊物质使光线散射,通过测量与射入光线垂直角方向的散射光强度和内部标定值做比对,并计算出水体的浑浊度。浊度采集模块电路图如下图3-4所示。图3-4浊度采集模块电路图光电传感器由透镜、光源、光电元件等组成,其作用原理为利用光电效应监测被测物体是否存在、所处的规范区域,作用范围转状态信息等。光在透过传感器后会被过滤为预定波长的光源。特定波长的光源对传感器内置的对应的光敏电阻产生电信号(又称光信号)。该电信号由于过于短暂且模糊,所以通过内置的放大电路将其进行信号放大、线性处理、动态降噪后与内置标定值进行对比后,就可以判断监测目标的所处位置,是否存在等信息。其中对模拟信号进行数字化处理的为内置集成电子电路。并配有将三项交流转化为直流的逆变器。I/myADC.c//STM32ADC多通道转换//描述:用ADC连续采集3路模拟信号,并由DMA传输到内存H/ADC配置为扫描并且连续转换模式,ADC的时钟配置为12MHz在每次转换结束后,由DMA循环将转换的数据传输到内存中IADC可以连续采集N次求平均值。最后通过串口传输出最后转换的结果I/温度传感器和通道ADC1IN16相连接,内部参照电压VREFINT和ADC1IN17相连接1/用来存放ADC转换结果,也是DMA的目标地址//用来存放求平均值之后的结果/ADC1、USART1相关GPIO引脚初始化H/ADC的引脚必须定义为GPIOModeAINI/USART的引脚必须定义为GPIO_ModeAFPP(TXD)、GPIo_Mode_IN_FLOATING(RXD)//这里定义了3路,可根据需要裁剪。浊度传感器模块的组成如下图所示。该模块通过3PinXH-2.54接头与浊度传感器进行连接。调节10K蓝色电位器的旋钮可以对数字量输出触发阈值进行调节。3.4DHT11传感器电路设计DHT11复合型温湿度传感器一般串联电阻并与STM32单片机并联,单片机对采集的信息进行整理对比,以此实现整体的智能化、数字化设计应用。DHT11传感器由于其自带基准值无需多次校准;体积小巧且功耗极低;复合功能多应用场景;严格制造的工艺等特点,使其应用广泛。工作与储存条件为超出建议的工作范围可能导致高达3%RH的临时性漂移信号。返回正常工作条后,传感器会缓慢地向校准状态恢复。要加速恢复进程/可参阅7.3小节的“恢复处理”。在非正常工作条件下长时间使用会加速产品的老化过程。该传感器不能长时间暴露在强紫外线环境以及强自然光光照环境下。长时间处于该环境下,会使传感器性能降低,数据偏差过大。1、传感器采用DHT11a.传感器参数b.采样周期:1.5Sc.温度分辨率:1℃/8位d.湿度分辨率:1%RH/8位2、接口说明a.VCC:接5.5V电源,电源为正极b.GND:接地线,充当负极c.DATA:外接STM32单片机DHT11传感器电路原理如图3-5:图3-5DHT11温湿度传感器电路图3.5PH传感器电路设计采用双电极的复合电极,使得该传感器使用方便,大专以及本科实验室多采用该型号。由于采集的PH值信号微弱,所以设计一个放大电路来提升数据线性和精度。维护以及使用条件:电极在初次使用或久置不用重新使用时,把电极球泡及砂芯,浸在3NKCL溶液中活化8小时。取下电极保护套后要注意,在塑料保护栅内的敏感玻璃泡不与硬物接触,任何破损和擦毛都会使电极失效。电极的引出端,必须保持清洁和干燥,绝对防止输出两端短路,否则将导致测量结果失准或失效。电极避免长期浸在蒸馏水中货蛋白质溶液和酸性氟化物溶液中,并防止和有机硅油脂接触。笔头电极经长时间使用后,如果出先阶梯式偏差,则应使用弱酸性水溶液浸泡笔头5分钟左右,然后在氯化钾溶液中浸泡,重新校准避免误差干扰。被测溶液中如含有易污染敏感球泡货堵塞液接界的物质,而使电极钝化,其现象是敏感梯度降低,货读数不准。因此,在测量完试剂后应当选用对应的洗涤剂或清洁剂消除污染物。但由于传感末端的材质特性,常见的含有氯酸或氯化合物如四氯化碳,三氯乙烯等,可能溶解终端树脂材料,而使电极失效!图3-6PH传感器电路当PH采集到当前的数据后,会把模拟量传输给单片机内部进行处理,部分处理程序为:#include"stm32f10x.h"#include"stdio.h"#definePH_ADC_CHANNEL16//PH传感器连接的ADC通道voidGPIO_Configuration(void);voidADC_Configuration(void);voidUSART_Configuration(void);intmain(void){floatph_value=0.0f;uint16_tadc_value=0;GPIO_Configuration();ADC_Configuration();USART_Configuration();while(1){ADC_SoftwareStartConvCmd(ADC1,ENABLE);//启动ADC转换while(ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC)==RESET);//等待转换完成adc_value=ADC_GetConversionValue(ADC1);//获取ADC转换结果ph_value=(float)adc_value/4095.0f*3.3f;//将ADC值转换成电压值ph_value=ph_value*6.0f-2.0f;//将电压值转换成PH值printf("PHvalue=%.2f\r",ph_value);//通过USART将PH值输出}}voidGPIO_Configuration(void){GPIO_InitTypeDefGPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;//ADC1-IN0GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AIN;GPIO_Init(GPIOA,&GPIO_InitStructure);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_9;//USART1-TXGPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;GPIO_Init(GPIOA,&GPIO_InitStructure);}voidADC_Configuration(void){ADC_InitTypeDefADC_InitStructure;GPIO_InitTypeDefGPIO_InitStructure;3.6GSM短信模块电路设计GSM通信主要采用SA7670C模块与电路如图3-7所示。V_IN为电流输入端口,最大支持五伏到十八伏的电压,本设计采用五伏一安,即V_IN连接至+5V电流。通讯模块AIM800C等与PA2和PA3端口相连。PWK引脚做模块的开关口,GUN短路一秒以上可开关机。这样做可以减少资源端口的浪费,切合本设计的低功耗特色。特别注意事项:1.模块(DCE)的CTS连接主控(DTE)的CTS,模块(DCE)的RTS连接主控(DTE)的RTS。2.A7670系列模块主串口支持如下波特率:300,600,1200,,2400,4800,9600等。默认波特率为115200bps。3.由于三极管寄生电容的存在,会对高速数字信号的边沿产生影响,信号速度高于115200bps时不建议使用该电路。图3-7SA7670C模块电路图3.7显示模块电路设计本设计使用了SSD1603的直接控制的方式,其连接方式如图3-8所示。VDD、VSS引脚分别和电源的正负极相连,在VDD、VSS和VO之间接了一个1KΩ的可调电阻,这样做的目的是可以通过调节可变电阻的阻值来调节LCD的亮度。LCD-1602的背光引脚(BLA、BLK)既可以连接和电源相接,也可以不接,对其运行没有多大影响。另外,SSD1603的三个控制端口(RS、R/、E)依次接到了单片机的P1.0~1.2引脚,7个数据端口接到了P0口上。图3-8SSD1603显示电路设计第4章系统软件设计4.1编程语言选择C语言作为本设计的编程语言,依托于其易学易用性。绝大数初学者以及大学学生都采用C语言作为单片机开发的首选语言,其原因一般如下:1.高效性:C语言是一种功能强大还高效的语言,贴切语言逻辑使其非常适合嵌入式系统(单片机系统)中有限的端口资源调用。C语言中包含有丰富的数学函数和可搭建数学模型以强大的内联汇编功能,可以大幅优化代码运行效率并提高提高程序的运行速度。2.可移植性:C语言是一种高级的语言,且目前是应用最为广泛的高级语言,不局限于单个硬件平台的对应限制,可以非常方便的显示复制粘贴移植于其他硬件和软件。得益于次此编写好的程序可以快速移植到其他单片机系统中稍加修改后,即可直接运行启用得到相功能。3.灵活性:C语言支持指针、函数、宏等高级特性,可以进行动态内存的分配、包括机械语言嵌入的操作,使得在硬件软件的开发过程中变得非常灵活通用。4.安全性:C语言中有强大的错误检测和处理机制,可以有效防止程序中出现缓冲区溢出、内存泄漏等问题,提高程序的稳定性和可靠性。5.资源丰富:C语言拥有目前世界最大规模的开发者社区以及爱好者资源库,有许多代表性的IDE和编译器以及大量源程序可以直接被开发员调用,开发者可以非常轻松地对硬件功能进行软件的编写,调试和维护。4.2Keil程序开发环境本毕业设计的软件编程采用的是KEIL5.该软件对常见民用处理器都支持,添加学习包即可轻松编程驱动处理器,这使得Keil是一款非常成熟的编程软件开发系统。Keil还为程序编写提供了各种各样的方便工具,例如:可以将多种高级语言转换成对应机器码的编译器(keil一般有C518051ARM等);用于调试程序,可以执行单步执行,设置断点和查看变量值等的调试器;可以实现软件环境下硬件仿真功能的仿真器;可以安插外加大量学习包的代码库;集合了一个强大的集成开发环境,将以上种种工具进行集合一体,极大程度的为开发人员的工作提供了便利。Keil的开发编程环境具有以下特点特点:a.Keil软件的开发环境(IDE)能够兼容并完美运行常见民用平台的软件系统,这使其成为初学者以及大学专业学院的首选软件。b.Keil能够完成编写、编译、烧录、调试的完整的开发流程,并具有极强的学习包拓展能力。c.并为开发人员提供了多种功能强大的内置工具以及丰富的函数库和数学模型。4.3系统主程序流程图主程序开始对各个端口进行初始化操作。主程序流程步骤:1)初始化;2)调用数据采集子程序;3)调用ADC子程序;4)调用液晶显示程序;5)调用延时函数;6)输出显示数据。主程序的系统流程图如图4-1所示:图4-1主程序系统流程图根据流程图,可以知道,编写主程序是通过调用各种子程序来实现的。对该流程图做简单的解释为:进行while延时函数、各串口、显示屏、ADC、按键以及ds18b20的初始化,然后进行按键扫描,执行按键操作,接着调用ADC串口,调用子程序运行。4.41603显示子程序我们通过定义STM32的GPIO口对显示屏的引脚进行相应的控制。2初始化程序流程图如图4-2所示:图4-21603初始化流程图在进行初始化的过程中,我们需要反复的调用write_com函数,该函数实现向OLED写入命令的功能。需要注意的是,RS、RW、EN的时序问题。本设计采用的液晶显示屏内置了34446位的驱动程序,可以显示一共32位字符。OLED液晶显示流程图如图4-3所示:图4-31602显示程序流程图对此流程图,做以下简单解释:第一步编写各类函数,如延时、写入字符等。第二部通按照流程图4-3的子程序顺序对第一步中的函数进行调用。4.5各检测模块A/D转换子程序A/D转换的作用是将传感器采集到的模拟信号转换为数字信号,本设计的STM32处理器自带ADS转换器。我们编程需要从开启PA口时钟,设置PA0为模拟输入直到完成读取ADC值。A/D转换子程序流程图如图4-4所示:图4-4A/D转换子程序流程图对于该程序流程图,做以下解释:1)首先使用PORTA的时钟源,设置PA0=1。2)然后使用ADC1的时钟源,完成复位操作。设置ADC1的分频银子不超过上行至。并设置单通工作模式ADC1。3)开启AD转换器,复位校准AD,执行AD转换操作。4.6短信子程序设计本设计的反馈回路采用短信播报的形式链接上位机(手机)进行通讯,达成系统报警功能。短播报流程图如图4-5所示:图4-5短信发送子程序流程图第5章系统调试5.1硬件测试5.1.1硬件测试方案本次设计根据需要一共绘制了一幅原理图。本设计的硬件测试分为两个部分:(1)通过对组转好的系统模块进行电源等基本状态的测试。(2)通过对模块进行简单指令的测试,测量模块信号线连接是否正常首先对电路进行基本测试,整个系统采用电压为5V,当上电之前首先要对电源和地之间进行阻抗的测试,若测得电阻为0,则电路可能存在短路。通过采用万用表对5V和地之间进行测试,测得阻抗为无穷大,证明没有短路存在,进而对电路施加5V电压。接下来用示波器对晶振部分进行测试,测得晶振部分有正弦样式的信号,证明晶振电路正常工作,单片机部分已经实现了基本的工作。本毕业设计的终端硬件传感器的具体使用步骤如下:浑浊度传感器的工作原理是光电感应原理。其感应终端的两极分别处于漂浮物的的两个凸起物,采集部分位于凸起物之间。使用前应置于标准室温蒸馏水中校准。本设计环境出现问题时基本处于1000以上,通常来讲自来水的数值在400-600之间。图5-1浊度传感器实操图(组)注:浑浊度传感器终端不能完全没入水中。顶部空气校准开口不能进水。我们可以看到本设计实际试验时,纯净水浊度为0,而悬于空气中为509。PH试笔在使用时应当处于纯净水中校准,减小切换误差。本毕业设计的目标环境一般处于6-7之间。图5-2PH试笔传感器实操图(组)注:本设计的目标环境为弱酸性环境,试验环境为室内环境。酸性环境采用碳酸和醋酸,碱性环境为小苏打(碳酸氢钠)和氢氧化钠。溢油传感器采用荧光生物标定法。置于水中后,随着油类物吸附量数值越来越高将会提高电流并显示是否溢油。图5-3溢油传感器实操图(组)注:原AMT-Y300采用同类型替代。接触目标物会显示溢油,反之则否。温湿度传感器采用的复合型,且自带出厂校准,可以直接读取数值。(因为合成了湿电阻,所以传感器表面不能直接接触液体)。图5-4温湿度传感器实际数据图(组)最终各个传感器数值将在显示屏上显示,上位机发送短信即可获得回报信息。图5-5GSM短信收发实操图(组)5.1.2硬件测试结果利用开发者套件焊接单片机板,并链接对应传感器的接口。检查各部分硬件是否正常后开始检查调试传感器。E-201-C型PH试笔采用独特结构。笔头的透镜部分带有保护液防止爆裂,在实验前应处于完好状态,并在试验使用中应准备清水中和剂防止试笔灵敏度不足;浊度传感器该型号的结构应漂浮水面,内部的空气校准开口不应进水烧坏电路元件,且两对称凸起中间不应有遮挡物或处于空气中;温湿度传感器由于该型自带校准数据,所以可以直接使用,测温功能可直接接触体表;完成以上各传感器测试后,应开机并链接上位机监测各功能是否正常,数值反馈是否及时,数据变化是否灵敏。该设计采用STM32单片机开发,其中出现过传感器不兼容以及接口错误的问题。针对该问题积极采用同类型传感器进行替换并完成同类工作流。仔细检查程序编写备注后发现错误及时进行了更正处理。各部分模块驱动烧录完成后,接通外部直流电源后,GSM模块连接基站注册SIM信息并成功进入待机状态,其状态如下图所示:图5-6硬件测试实物展示图5.2软件系统测试软件测试的部分,其中代码编写采用KEIL5进行编写,终端传感器所生成的信息将显示在OLED显示屏上,通信模块在收到上位机(手机)的指令信息后将会以短报文的形式回复相关的信息数据并进行硬件调试和试验。Keil5调试软件窗口如图5-7所示:图5-7Keil5软件的界面单片机型号选为:STM32型,如图5-8所示。图5-8单片机型号选择部分程序编写:内河船舶溢油监测新型智能浮岛设计程序编写如图5-9所示。图5-9程序的编写程序编写完成后进行编译,程序编译如图5-10所示。图5-10程序编译成功界面将程序烧录至STM32寄存器中,如图5-11所示。图5-11烧录成功界面第6章结论本设计对当下常见的民用以及工业用水质检测浮岛、浮船、浮筒等设计和实物进行了充分的调研以及学习。本设计针对传统同类型功能的浮岛设计进行了一定的革新以及独特的应用:根据国内外研究现状以及现实生活的应用以及低功耗的目的,所以采用单片机(嵌入式微处理器)作为本系统平台的核心数据处理器。本设计采用STM32单片机开发板硬件构成,并与其他传感器硬件对应接口连接,搭建一套溢油监测水环境系统平台。(1)首先运行硬件平台,系统功能一切正常完全满足预期监测目标(溢油水环境监测)。在设计实物时,遇到了传感器不灵敏以及传感器报废的问题,都以学习原理及更换硬件传感器解决。(2)本设计除了特色功能溢油监测外,还可以加入国际标准酸镉等高级参数标准传感器。本设计由于STM32系列的功能局限性添加了如PH值,温湿度等常见参数,丰富设计内容以及监测浮岛的功能强度。(3)本设计使用GSM作为通讯模块,相较于常见蓝牙模块或者WIFI模块,数据传输更加灵活稳定。参考文献[1]王红,潘安君,杨占才,封锦琦,陈洪全,高倩.国外航空电子系统嵌入式在线监测技术[J/OL].测控技术:1-9[2022-11-18].[2]崔祜海,王豫.单片机在电气自动化控制中的应用[J].电气技术与经济,2022(05):77-79+84.[3]阮承治,吴鸿兴,陈飞,郝佳莹,邓瑶铃,欧阳林群.游弋式小船水质监测控制系统的设计[J].黑龙江工业学院学报(综合版),2022,22(10):33-39.[4]栗忍,段本昌.基于单片机的间歇制动控制系统设计[J].机电工程技术,2022,51(10):196-198.[5]李燕萍.基于遥感技术的地表水水质检测方法分析[J].粘接,2022,49(10):122-125.[6]朱小亮,潘涛.提高水质检测结果准确性及稳定性的探讨[J].现代盐化工,2022,49(05):95-97.[7]张博洋.复杂嵌入式检测系统的设计与验证[J].现代信息科技,2022,6(19):31-33+37.[8]卢锡,胡石建,王凡,胡敦欣,刘海龙,刁新源,于仁成.基于漂流浮标观测分析日本福岛以东表层海洋物质的散播轨迹[J].海洋与湖沼,2022,53(05):1027-1044.[9]唐自霖,易艺,付金松,熊依玲,曹旺,王运辉.多传感器融合的水质检测分流控制系统设计[J].电子设计工程,2022,30(17):50-54.[10]朱建跃.废水水质检测实验误差分析与数据处理探究[J].低碳世界,2022,12(07):61-63.[11]王军成.新一代海洋监测技术——综合智能观测浮标[J].智能系统学报,2022,17(03):447.[12]许娟,廖铭胜,郭婧,李栋.利用北斗传输的海洋观测航道浮标[J].珠江水运,2021(07):88-91.[13]张红斌,王秀利.养殖鱼塘水质动态检测与分析[J].渔业致富指南,20191963-68.[14]李海锋.基于ZigBee技术的鱼塘水质监测系统研究[D].西安:西安科技大学,2019.[15]梁祺轩.基于单片机的水质检测仪研究[J].科技经济导刊2020,28(32).[16].ClarifyHealthAcquiresEmbeddedHealthcare[J].WirelessNews,2022.[17].AlviereRollsOutAutomotiveEmbeddedFinancePlatform[J].ManufacturingClose-Up,2022.[18].AlviereUnveilsAutomotiveEmbeddedFinancePlatform[J].ManufacturingClose-Up,2022.[19]NomiyamaKoji,TomiokaKeisuke,NakahoKazuhiro.Generationandsoildetectionofnitrate-nonutilizingmutantsofDiaporthedestruenscausingfootrotofsweetpotato[J].JournalofGeneralPlantPathology,2022,88(2).[20]BakhshianSahar,RomanakKatherine.DeepSense:APhysics-GuidedDeepLearningParadigmforAnomalyDetectioninSoilGasDataatGeologicCO2StorageSites.[J].Environmentalscience&technology,2021.附录A主程序#include"led.h"#include"delay.h"#include"sys.h"#include"usart.h"#include"oled.h"#include"key.h"#include"adc.h"#include"sim800c.h"#include"dht11.h"#include"usart3.h" #include"timer.h"u8temperature; //温度值u8humidity; //湿度值floatPH_ad; //PH值intPH_Value;floatTur_ad; //浑浊度值intTur_Value;u8buf1[39];intmain(void){ u8i; u16adcx0,adcx1,adcx2; delay_init();// KEY_Init();// LED_Init(); I2C_Configuration(); OLED_Init(); OLED_ShowStr(32,16,"注册信号",16); OLED_ShowStr(32,32,"请等待",16); NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置中断优先级分组2 usart3_init(9600); //串口初始化 for(i=0;i<10;i++) { delay_ms(1000); } Receive_message(); OLED_Clear(); while(DHT11_Init()){OLED_ShowStr(16,16,"Error",16);} //DHT11初始化 OLED_Clear(); //清屏 OLED_ShowStr(0,0,"温度:C",16); OLED_ShowStr(0,16,"湿度:%RH",16); OLED_ShowStr(0,32,"PH:.溢油:",16); OLED_ShowStr(0,48,"浑浊度:",16); DHT11_Read_Data(&temperature,&humidity); //读取温湿度值 Adc_Init(); //ADC初始化 buf1[0]='T';buf1[1]=':';buf1[4]='C';buf1[5]='\r';buf1[6]='\n'; buf1[7]='H';buf1[8]=':';buf1[11]='%';buf1[12]='R';buf1[13]='H';buf1[14]='\r';buf1[15]='\n'; buf1[16]='P';buf1[17]='H';buf1[18]=':';buf1[21]='.';buf1[23]='\r';buf1[24]='\n'; buf1[25]='T';buf1[26]='u';buf1[27]='r';buf1[28]=':';buf1[33]='\r';buf1[34]=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 搬家服务满意度合同模板
- 2025年度个人与个人个人护理用品购销合同3篇
- 2025版挖掘机买卖合同及挖掘机操作规范监督与评估3篇
- 2025年度个人对公司投资借款及收益分成合同4篇
- 2025版文化产业信托借款合同范本系列2篇
- 2025年个人退伙商业合同(电商行业适用版)4篇
- 2025年度个人网络平台内容发布授权合同4篇
- 681062024年度企业运营管理咨询合同版B版
- 2025年度新型环保注塑机设备购置与转让合同样本4篇
- 二零二五年焊接钢管行业人才培训与合作合同3篇
- 副总经理招聘面试题与参考回答(某大型国企)2024年
- PDCA循环提高护士培训率
- 2024-2030年中国智慧水务行业应用需求分析发展规划研究报告
- 《狮子王》电影赏析
- 河北省保定市定州市2025届高二数学第一学期期末监测试题含解析
- 中医护理人文
- 2024-2030年中国路亚用品市场销售模式与竞争前景分析报告
- 货物运输安全培训课件
- 前端年终述职报告
- 2024小说推文行业白皮书
- 市人民医院关于开展“改善就医感受提升患者体验主题活动”2023-2025年实施方案及资料汇编
评论
0/150
提交评论