您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 基于STM32的自动浇花器设计
信电学院电子信息工程专业CDIO三级项目项目设计说明书(2016/2017学年第二学期)项目名称:基于STM32的自动浇花器设计专业班级:学生姓名:学号:指导教师:设计成绩:2017年7月13日11、项目设计目的以stm32单片机为核心,利用雨滴传感器及外围电路,完成花草周围湿度情况监测。要求通过雨滴传感器反馈的数据通过单片机处理进行实时控制。实现当湿度过低时,单片机自动控制外围电路水泵进行浇水,湿度高时停止浇水。然后将每一时刻的湿度情况通过串口显示在PC上。2、项目设计正文2.1设计要求1、绘制电路原理图以及PCB图。2、搭建实际硬件电路,实现功能。3、确定元器件参数。2.2电路设计2.2.1STM32单片机介绍STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARMCortex-M3内核。按性能分成两个不同的系列:STM32F103―增强型‖系列和STM32F101―基本型‖系列。增强型系列时钟频率达到72MHz,是同类产品中性能最高的产品;基本型时钟频率为36MHz,以16位产品的价格得到比16位产品大幅提升的性能,是16位产品用户的最佳选择。两个系列都内置32K到128K的闪存,不同的是SRAM的最大容量和外设接口的组合。时钟频率72MHz时,从闪存执行代码,STM32功耗36mA,是32位市场上功耗最低的产品,相当于0.5mA/MHz。单片机最小单元模块图,如2-1所示:图2-1:单片机最小模块图22.1.2系统晶振电路设计将STM32单片机上PD0和PD1连接到外部晶振电路上,系统选取的外部晶振为8MHz,外部晶振电路如图2-2所示:图2-2外部晶振电路2.1.3系统复位电路设计将单片机的NRST引脚连接复位电路,复位电路如图2-3所示:图2-3复位电路2.2.4雨滴传感器模块模块功能介绍:模块采用5V&9V&12V供电静态电流为5-12mA,继电器负载能力为250V10A(AC)~30V10A(DC),接上电源,电源指示灯亮,感应板上没有水滴时,继电器不动作,开关指示灯灭,滴上一滴水,继电器吸合,启动相关设备,开关指示灯亮,擦掉上面的水滴,又恢复到原始状态。3模块供电:5V&9V&12V静态电流:5-12mA继电器负载能力:250V10A(AC)30V10A(DC)D0:是通过LM393芯片输出的TTL开关信号。A0:传感器的模拟信号输出,可接到单片机上利用AD读取该值。电位器:可以根据实际的应用需要改变阈值,配电位器调节灵敏度,控制在不同水份时,控制继电器的开启。继电器开关输出说明:继电器线圈没有电压时,继电器没有吸合,公共端与常闭端接通,当有电压时,继电器吸合,公共端与常开端接通。继电器接常开端电路接法:当继电器没有吸合时,公共端与常闭端接通,相当于开关断开,控制设备没电不工作。当继电器吸合时,公共端与常开端接通,相当于开关接通,设备有电工作。继电器接常闭端电路接法:当继电器没有吸合时,公共端与常闭端接通,相当于开关闭合,电路接通,控制设备将有电工作。当继电器吸合时相当于开关断开,电路没电不工作。功能介绍:接上5V电源,电源指示灯亮,感应板上没有水滴时,DO输出为高电平,开关指示灯灭,滴上一滴水,DO输出为低电平,开关指示灯亮,刷掉上面的水滴,又恢复到,输出高电平状态。。。。AO模拟输出,可以连接单片机的AD口检测滴在上面的雨量大小。DOTTL数字输出也可以连接单片机检测是否有雨雨滴传感器单元模块图,如2-4所示:图2-4二:雨滴传感器单元模块图42.2.5稳压电源电路直流稳压电源是常用的电子设备,它能保证在电网电压波动或负载发生变化时,输出稳定的电压。MC7805芯片,三端固定式集成稳压器将不稳定的直流电压转换成稳定的直流电压,REG1117-3.3芯片与电容进行滤波处理,使电路输出稳定的直流电压。稳压电源电路模块图,如图2-5所示:图2-5:稳压电源电路模块图2.2.6系统下载器设计系统的下载器电路,如图2-6所示:图2-6:下载器电路2.2.7系统电路原理图1.系统电路原理图,如图五所示。5图2-7:数字电压表实际原理图2.数字电压表实际电路PCB图,如图2-8所示。图2-9:数字电压表实际PCB图2.3程序设计2.3.1STM32内部ADC控制原理STM32内部12位ADC是一种逐次逼近型模拟数字转换器。它有多达18个通道,可测量16个外部和2个内部信号源。各通道的A/D转换可以单次、连续、扫描或间断模6式执行。ADC的结果可以左对齐或右对齐方式存储在16位数据寄存器中。模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高/低阀值。ADC供电要求是2.4V-3.6VADC使用若干个ADC_CLK周期对输入电压采样,采样周期数目可以通过ADC_SMPR1和ADC_SMPR1寄存器中的SMP[2:0]为更改每个通道可以分别用不同的时间采样总的转换时间如下计算:Tconv=采样时间+12.5个周期例如:当ADCCLK=14MHz,采样时间为1.5周期Tconv=1.5+12.5=14周期=1us以规则通道为例,一旦所选择的通道转换完成,转换结果将存放在ADC_DR寄存器中EOC(转换结束)标志将被置位,如果设置了EOCIE,则会产生中断。然后ADC将停止,直到下次启动。ADC的输入时钟不得超过14MHz,它是由PCLK2经分频产生,2.3.2程序中ADC时钟设置如下:RCC_ADCCLKConfig(RCC_PCLK2_Div6);//设置ADC分频因子672M/6=12,ADC最大时间不能超过14M根据本次设计的需求及原理,ADC采样的功能设置如下:ADC_InitStructure.ADC_Mode=ADC_Mode_Independent;ADC_InitStructure.ADC_ScanConvMode=DISABLE;ADC_InitStructure.ADC_ContinuousConvMode=DISABLE;ADC_InitStructure.ADC_ExternalTrigConv=ADC_ExternalTrigConv_None;ADC_InitStructure.ADC_DataAlign=ADC_DataAlign_Right;ADC_InitStructure.ADC_NbrOfChannel=1;ADC_Init(ADC1,&ADC_InitStructure);ADC_Cmd(ADC1,ENABLE);ADC_ResetCalibration(ADC1);while(ADC_GetResetCalibrationStatus(ADC1));ADC_StartCalibration(ADC1);while(ADC_GetCalibrationStatus(ADC1));2.3.3获取AD值函数如下:u16Get_Adc(u8ch){ADC_RegularChannelConfig(ADC1,ch,1,ADC_SampleTime_239Cycles5);ADC_SoftwareStartConvCmd(ADC1,ENABLE);7while(!ADC_GetFlagStatus(ADC1,ADC_FLAG_EOC));returnADC_GetConversionValue(ADC1);}2.3.4读取模块返回值如下:adcx=330.0-Get_Adc(ADC_Channel_1)*330.0/4096;程序流程图,如下图3-1所示:图3-1:主程序流程图2.4测试与调试本设计应用串口助手及KEIL4软件,将单片机的串口与电脑连接,将采样的值通过串口传到上位机上,到模块上没有水时,传感器返回的值如下图4-1:图4-1:无水传感器返回的值截图8当向传感器上滴上一滴水时,传感器返回来的值如下图4-2:图4-2:有水传感器返回值截图3、项目设计总结三个周的实训时间很快就结束了,比起一个学期的单片机学习,真的很短!但这期间的学习及其收获却很多。说句实话,我们这组的几个成员单片机基础也不是很好。因此选题开始对我们有一定难度,而且还是新开课题,新型单片机。要重新学习新的单片机的基本知识,画图,写程序。但是通过这几天的不断学习不断探索,找资料,研究。虽然过程比较艰辛,但通过我们相互的配合最后的结果我们还是比较满意。我们通过这次单片机课程设计,加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去查阅所需的资料。学会了AD这个新软件的使用。这个过程中,我们花费了大量的时间和精力,更重要的是,我们在学会创新的基础上,同时还懂得合作精神的重要性,学会了与他人合作。另外很感谢学校和老师给我们安排了这次课程设计,通过这次实训我们发现现在书本上的知识与实际的应用存在着不小的差距,书本上的知识很多都是理想化后的结论,忽略了很多实际的因素,或者涉及的不全面,可在实际的应用时这些是不能被忽略的,我们不得不考虑这方的问题,这让我们无法根据书上的理论就轻易得到预想中的结果,有时结果甚至差别很大。通过这次实践使我更深刻的体会到了理论联系实际的重要性,我们在今后的学习工作中会更加的注重实际,努力提高自己的动手能力。4、参考文献[1]蒋廷彪,刘电霆,高富强,方华.单片机原理及应用.出版社:重庆大学出版社.出版时间:2005年1月第2次印刷[2]徐爱钧.智能化测量控制仪表原理与设计(第二版)[M].北京:北京航空航天大学出版社,20049[3]吴金戌,沈庆阳,郭庭吉.8051单片机实践与应用[M].北京:清华大学出版社,2002[4]张国勋.缩短ICL7135A/D采样程序时间的一种方法[J].电子技术应用.1993.第一期[5]高峰.单片微型计算机与接口技术[M].北京科学出版社,2003.[6]刘伟,赵俊逸,黄勇.一种基予C8051F单片机的SOC型数据采录器的设计与实现项目设计评语项目设计成绩指导教师(签字)年月日10
本文标题:基于STM32的自动浇花器设计
链接地址:https://www.777doc.com/doc-4298322 .html