版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机的鱼塘水质检测系统Fishpondwaterqualitytestingsystembasedonsinglechipmicrocomputer目录1前言 [21],该系统采用AT89S52为核心处理器,对温度、溶解氧、PH值和盐度等参数进行监测,然后用RS485总线将采集的数据传输到监控中心,用有线通讯的方式实现了水产养殖环境参数的监测,但是存在布线困难、成本高等问题。1.2.2水产养殖中水质检测的基本趋势在不再遥远的未来,智能、方便、成本低且实用的水质检测系统将成为科学养鱼的不可缺少的系统。本课题设计的系统基本能够实现实时的鱼塘水质检测,利用51单片机及相对应的传感器,可以实现实时实地的复杂需求,有一定的市场应用前景2设计内容与方案2.1设计内容本设计通过研究51单片机系列的的STC12c5a16s2芯片,将其作为系统的控制核心,然后通过串口一来接受PH传感器模块的数据,串口二接受浊度传感器所传来的数据,通过芯片本身所拥有的AD转换功能实现数模转换,和温度传感器的温度数据分别进行一定的处理后得到相应的PH值,浊度值与温度值,将其在LCD1602上显示,且值在一定范围内时,LED显示模块亮灯。2.2设计方案3系统硬件系统设计3.1单片机核心芯片模块选择3.1.1STC12c5a16s2单片机简介STC12c5a16s2单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S,即25万次/秒),针对电机控制,强干扰场合。我们主要选择STC12C5A16S2的原因就是它比起其他简单的51单片机芯片来说,拥有多串口,多AD转换通道,使得采集数据更加方便高效3.1.2STC12c5a16s2单片机最小系统图3.1.2单片机最小系统电路晶振电路是为了提供一个好的稳定的时钟信号,从X1,X2进入单片机.复位电路是保证单片机不可控的关键.电源电路使其正常运行单片机芯片则是其工作的核心3.2温度测量模块功能DS18B20数字温度传感器接线简便,而且封装成后可以应用在多种不同的场合,比如管道式,螺纹式,磁铁吸附式,不锈钢封装式等等,而且型号也是多种多样的,有LTM8877,LTM8874等等。 图3.2.1LTM8877图3.2.2LTM8844在这里我们主要为了在水里面测温度,所以我们主要使用LTM8877型号的传感器,方便实用。DS18B20的引脚介绍序号名称引脚功能描述1GND地信号2DQ数据输入/输出引脚,开漏单总线接口引脚,当被用在寄生电源下,也可以向器件提供电源3VDD可选择的VDD引脚,当工作于寄生电源时,此引脚必须接地DS18B20的工作流程
图3.2.2DS18B20的工作流程3.3ph值测量模块功能PH采集模块由PH探头(传感器)及调理电路组成,PH探头采用E201-C-9电极,如图3-8所示。3.3.1PH传感器介绍E201-C-9电极是由玻璃电极和参比电极组合在一起的复合电极,它是一种PH值测量传感器。其主要技术参数如下:测量范围:0~14测量温度:0~80°C零点:PH=7±0.25碱误差:<=15mVPTS:>=98.5响应时间:<=1min内阻:<=250MQ3.3.2调理电路该调理电路由AD14绘制后如下3.3.3流程图通过该电路,能将PH传感器探头的测量信号放大后输入处理器的AD转换接口,该电路通过校正之后,根据电压与PH值对应表和AD转换电压范围可知,使用该电路的PH测量范围为7±3,这对于鱼塘的水质监测已满足应用需求,此外缩小量程便提高了监测精度,这也是该电路考虑的原因之一3.4浊度测量模块功能3.4.1浊度测量模块介绍 该传感器由传感器及相关电路模块组成(这个浊度传感器模块购买时商家并不提供电路原理图,故而无法画出电路原理图)3.4.1.1TSW-30该传感器模块配套浊度传感器型号为TSW-30,具体可见如下附图3.4.1.2调理电路模块电路处理模块如下图该电路模块引脚定义如下序号引脚定义功能描述备注1VCC供电电压正极,5V不可使用3.3V2A0模拟信号输出输出电压范围0〜5V3DO数字信号输出小于设定值输出高电平:大于设定值输出低电平3GND供电电压负极3.4.2浊度值采集3.4.2.1标准曲线传感器模块输出电压与浑浊度关系如下图所示。浊度值与模块输出电压满足如下关系:KU68.865TU上式中TU为当前浊度值,U为当前温度条件下模块的输出电压值,K为截距值,需通过标定方法得到。(此模块出厂前已经事先校正)3.4.2.2温度校准公式输出电压值大小受温度影响,测量时需进行温度补偿以保证测量精度。温度校正公式:25T0192.0U)(上式中U为温度变化引起的电压差;T为当前测量温度值。3.4.2.3浊度值采集流程图 单片机接受由浊度传感器模块传来的模拟信号并由单片机的某路AD转换通道转换并作温度补偿后,处理后得到浊度值3.5LED灯显示3.5.1.Led显示原理图:3.5.2原理Led灯显示模块使用三个共阳极的并各自接有1千欧姆电阻的l发光二极管,当主控模块给予低电平时亮灯否则熄灭。主控模块接收到AD转换后并处理好的PH值与浊度值,和DS18B20模块传来的处理好的温度值之后,判断是否在设定好的范围之内,若在一定范围内给予该对应端口低电平亮灯,否则熄灭。3.5.3流程图3.6LCD1602模块显示功能Lcd1602原理图LCD1602详细引脚说明引脚作用第1,2GND为地电源,VCC接5V正电源第3VO为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据6E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令第7~14DB0~DB7为8位双向数据线15,16背光源正,负极Lcd1602显示流程图4系统软件设计4.1程序设计第一步:打开Keil软件,开始编写核心代码第二步:在计算机上,利用keil软件对所敲入的源代码进行整合编译,变成可执行的可以运行在单片机上的目标代码第三步:在线调试,发现有可能放下的错误,不断调试至正确。第四步:在检查好硬件后,用下载线和下载程序将hex文件烧录至单片机中。4.2软件代码详见附录一5测试结果致谢我的毕业设计是在唐少先老师的精心指导和耐心解答下完成的。因为我经验的不足和知识的缺乏,在此次毕业设计中遇到了许多自己解决不了的问题。每次老师都是耐心的给我解惑,并提供许多非常详细的资料,从中可以汲取到许多知识,这在我的毕设中起到事半功倍的效果。感谢所有教授我的老师,若是没有这四年知识的积累,我是没有这么大的动力和信心完成这篇论文。在感恩之余,我也诚恳地请老师们能对我的论文多加批评指正,使我及时完善论文的不足之处。感谢我们班主任王老师,大学这四年是她一直对我们的生活进行关心,对我们的学习也是经常关心,偶尔开开班会,了解了解我们的情况。最后,再次向所有关心和帮助过我的老师和同学们致以最诚挚的谢意!参考文献李成春.基于CC2430无线多参数传感器检测网络的设计[D].江苏大学,2010.GislasonD.ZigBeeWirelessNetworking.[M],Newnes.2008.8:42-44.王红旗.基于无线射频技术的鱼塘pH自动监测系统的设计[J].四川理工学院学报(自然科学版),2010,23(05):598-601.PHILIPS公司.LPC2114/2124/2212UserManual,2004.ARM公司,TheARM-THUMBprocedureCallStandard,2000.吴明辉等.基于ARM的嵌入式系统开发与应用.人民邮电出版社,2004CallwayE,GrodayP,HesterL.HomeNetworkingwithIEEE802.15.4:Adevelopmentsforlow-ratewirelesspersonalareanetworks.[J].IEEECommunicationMagazine,2002,40(8):70-77.周立功等.ARM嵌入式系统基础教程.北京航空航天大学出版社,2012.刘波文.ARM嵌入式项目开发实战精讲.北京航空航天大学出版社,2011.晏阳,李坤杰,周平.基于光伏供电的水产养殖水质检测平台设计[J].湖北农业科学,2018,57(20):128-131.李进,徐小龙,曾闵.ZigBee无线网在鱼塘水质监测中的应用[J].自动化与仪表,2018,33(08):63-67.高伟,高磊,周勇,等.基于ZigBee的水产养殖水质控制管理系统设计[J].中国农业科技导报,2018,20(07):74-82.赵军,林瀚刚,西热娜依•白克力.基于ZigBee的水质监测系统研制及复杂环境下在线测试[J].中国测试,2018,44(05):67-70.王帅,杜宇人,李鹏飞,等.基于多源传感器的水产养殖水质监测系统[J].农家参谋,2018(05):99-100.张莹,肖令禄.基于无线传感器网络的水产养殖水质监测系统设计[J].渭南师范学院学扌艮,2016,31(19):49-53.杨琛,白波,匡兴红.基于物联网的水产养殖环境智能监控系统[J].渔业现代化,2014,41(01):35-39.周非凡,王德东.基于GIS与物联网技术的鱼塘水质监测与分[J].中国水运(下半月),2015,15(02):118-120.钟鹏.基于水环境监测的无线传感器网络覆盖研究及应用[D].南京邮电大学,2015.邹建宇.基于ZigBee和Labview技术的水质监测系统研究[D].中国计量大学,2016.董啸宇.基于低功耗无线传感器网络的水产养殖监控系统的研究[D].海南大学,2015.参考文献徐晨虎,崇庆峰,刘星桥,等.基于ZigBee与Android结合远程监测系统设计[J].信息技术,2015(07):40-43.郭孟彩,王宏坡,李唯民,等.养殖水体溶氧量测定方法及其无线监测模式的研究进展[J].天津农学院学报,2015,22(04):41-45.王英杰.基于物联网的水产养殖测控系统的设计与实现[D].江苏大学,2017.张国杰.基于STM32的水产养殖水质监测与预测预警系统的设计与实现[D].杭州电子科技大学,2016.袁崇亮,亓相涛.基于无线传感器网络的智能水质监测系统设计[J].电脑知识与技术,2017,13(20):218-222.掌晓峰.基于物联网的中华绒螯蟹水质环境远程控制系统研究[D].上海海洋大学,2016.强云霄,田丰.矿井下ZigBee的Mesh网络安全监控系统设计[J].西安科技大学学报,2017,37(03):334-338.李金凤,赵海波,曹顺,等.养殖水质自动监控系统设计[J].沈阳化工大学学扌艮,2017,31(02):171-176.李鑫星,王聪,田野,等.基于ZigBee的多参数水质在线监测系统[J].农业机械学扌^,2015,46(81):168-173.[30]孙卓.基于WSN和ZigBee的水质监测系统设计[J].电子设计工程,2017,25(24):96-100.杨辉,陈根,李波,等.基于ZigBee无线传感网络与数据融合的水质监测系统[A].CPCC2017[C],中国自动化学会过程控制专业委员会:,2017:1.肖令禄.基于ARM和ZigBee的水产养殖水质监测系统设计[J].河南科学,2017,35(04):548-553.杨旭辉.基于ZigBee的节能型水产养殖环境监测系统的研究[D].兰州大学,2016.王丹丹.基于ZigBee的水产养殖水质在线监测系统设计[D].哈尔滨理工大学,2018.蔡彬彬,张云.基于无线传感网的水质监测系统的研究与设计[J].自动化与仪器仪表,2015(07):215-217.附录附录一部分软件代码附录二鱼塘水质检测系统实物图附录三整体电路原理图附录一部分软件代码一主函数代码voidmain(){ u16T,PH; u16num; floattemp; UartInit(); //串口初始化 init_ad(2); //ADC端口初始化P1^2 若是P15则是 init_ad(5); 下面ad采集一样需要修改端口 init_ad(4); init1602();//1602初始化 while(1) { delay_ms(1000); // send_num(num); T=readtemp();//测量温度 if(T>=200&&T<=320)led1=0; elseled1=1; dis_temp(1,1,T);//显示温度 num=get_ad(2); temp=1.0*num/1023*5*1;//转化为电压 如果外部的PH输出接分压电阻分压系数*2 PH=(21.16-5.72*temp)*100;//放大一百倍系数根据自己拟合的曲线修改 if(PH>340&&PH<450)PH=400; if(PH>630&&PH<740)PH=680; if(PH>=860&&PH<950)PH=910; if(PH>590&&PH<860)led2=0; elseled2=1; SendData('T'); SendData('='); SendData(T/100%10+48); SendData(T/10%10+48);SendData('.'); SendData(T/1%10+48); SendData('\r');SendData('\n'); SendData('P'); SendData('H');SendData('='); send_num(PH); //send_numSendData(PH/100%10+48); SendData(PH/10%10+48);SendData('\r');SendData('\n'); write_xypos(1,10); write1602_date('P'); write1602_date('H');write1602_date('='); write1602_date(PH/100%10+48);write1602_date('.');write1602_date(PH/10%10+48); TU=get_ad(4);//浊度的ad计算 TU=(TU*5.0)/1024; TU_calibration=-0.0192*(T/10-25)+TU;//温度补偿 TU_value=-865.68*TU_calibration+K_Value;//计算TU TU_value=(650-TU)*3; if(TU_value>10&&TU_value<100)led3=0; elseled3=1; send_num(TU_value); send_num(1111); if(TU_value<=0){TU_value=0;} if(TU_value>=3000){TU_value=3000;} write_xypos(2,1); write1602_date('T'); write1602_date('U');write1602_date('='); write1602_date((int)TU_value/1000%10+48); write1602_date((int)TU_value/100%10+48); }}二一些重要分函数代码1.AD转换函数代码voidinit_ad(unsignedcharch)//ch0-7、如需多个通道、需要多次配置{ P1M0|=0x01<<ch; P1M1|=0x01<<ch;//设置ch通道,开漏输入 ADC_CONTR=0x80;//启动电源 delay_ad1ms(200);}unsignedintget_ad(unsignedcharch)//返回测量AD的值{ unsignedintad_value=0; ADC_CONTR|=ch|0x08;//切换通道开始转换while(!(ADC_CONTR&0x10));//等待转化结束 ADC_CONTR&=0xef;//清除转换完标志 _nop_(); _nop_(); _nop_(); _nop_();//四个延时 ad_value=ADC_RES*4+ADC_RESL; ADC_CONTR&=0x7f;//关闭AD电源 ADC_CONTR=0x80;//启动电源 returnad_value;}2.1602显示代码voidwrite1602_date(unsignedchardat)//写数据{ E=0;//控制使能端口拉低 rs=1;//读写端口拉高 Data_port=dat;//把数据送到显示屏端口 LCDdelay_ms(5);//延时一段时间 E=0;//控制使能端口拉低 LCDdelay_ms(5);//延时一段时间 E=1;//控制使能端口拉g高}voidwrite1602_com(unsignedcharcom)//写命令{ E=0;//控制使能端口拉低 r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 南昌大学上课考勤制度
- 公务员上班打卡考勤制度
- ktv培训期间考勤制度
- 培训考勤制度与奖惩制度
- 商场店铺员工考勤制度
- 大公司考勤制度管理办法
- 建筑项目部员工考勤制度
- 工地夜班考勤制度范本大全
- 员工上班签到考勤制度
- 工程班组劳务考勤制度
- TCEC电力5G轻量化模组通信连接技术要求-2024
- 玻璃加工厂安全生产管理制度
- 2025年福建地生会考试卷及答案
- 6.1.2 有性生殖(教学设计)生物新教材人教版八年级下册
- GB/T 46584-2025精细陶瓷界面恒定振幅下室温拉伸和剪切疲劳性能试验方法十字交叉法
- 2025昆士兰临床指南:产程延长和难产(v1)解读课件
- 程序员私人合同范本
- 截肢护理小讲课
- 脑疝护理应急预案
- 学习与解读国家十五五规划
- 2025年重庆市公务员考试公安岗位专项卷
评论
0/150
提交评论