首页 全天候太阳能跟踪系统设计毕业设计论文

全天候太阳能跟踪系统设计毕业设计论文

举报
开通vip

全天候太阳能跟踪系统设计毕业设计论文北京理工大学珠海学院2008届本科生毕业设计(论文) 毕业设计(论文) 全天候太阳能跟踪系统设计 毕业设计 诚信承诺书 本人郑重承诺:我所呈交的毕业设计《太阳跟踪系统》是在李福教师的指导下,独立开展研究取得的成果,文中引用他人的观点和材料,均在文后按顺序列出其参考文献,设计使用的数据真实可靠。 承诺人签名: 日期: 年 月 全天候太阳能跟踪系统设计 摘 要 全天候太阳能跟踪系统是针对太...

全天候太阳能跟踪系统设计毕业设计论文
北京理工大学珠海学院2008届本科生毕业设计(论文) 毕业设计(论文) 全天候太阳能跟踪系统设计 毕业设计 诚信承诺书 本人郑重承诺:我所呈交的毕业设计《太阳跟踪系统》是在李福教师的指导下,独立开展研究取得的成果,文中引用他人的观点和材料,均在文后按顺序列出其参考文献,设计使用的数据真实可靠。 承诺人签名: 日期: 年 月 全天候太阳能跟踪系统设计 摘 要 全天候太阳能跟踪系统是针对太阳能空调、太阳能制氢、太阳辐照度测量、材料老化实验、高效太阳能光伏发电、高效太阳能热水器等需要对太阳进行实时跟踪的应用领域而设计的。 太阳能跟踪系统的设计是综合运用物理学、光学,运动学、控制理论等学科体现,是当前国内外研究的热点问题之一。太阳能既是一次能源,又是可再生能源。它资源丰富,既可免费使用,又无需运输,对环境无任何污染。为人类创造了一种新的生活形态,使社会及人类进入一个节约能源减少污染的时代。所以实现对太阳全天候跟踪,是提高对太阳能运用,利用率有重大意义。 本人制作全天候太阳能跟踪系统,该系统可以对太阳全方位跟踪,具有两个自由度的跟踪能力。经过黑夜或阴天后,只要太阳一出即可跟踪,工作可靠稳定。 该系统运用ATMEL公司AT89C52控制芯片,通过对运放器LM354N,LM358组成比较模块对光敏电阻对光线的感应强度和设定基准电压比较结果的检测,并对检测结果进行逻辑运算后,对负责方位角和高度角的步进电机进行控制,从而实现对太阳全方位跟踪。1602液晶显示模块,显示系统当前的工作状态及时间。在该论文中详细阐述了控制系统的组成结构和工作原理。该 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 利用九个光敏电阻对当前环境光线强度进行感应,在不同强度亮度下,光敏电阻的阻值不一样,所以比较器的正输入电压也不同。如果跟踪板不是正对的太阳,那么九个光敏电阻的阻值也不一样,比较器正输入的电压也不一样,如果正输入电压高于设定的基准电压,比较器将输出一个信号给单片机,单片机根据比较器输入的信号进行逻辑运算,然后控制相应步进电机旋转,直到九个光敏电阻感应光线强度一样。 在接受控制电路中引入单片机,通过充分利用其软、硬件资源,使系统具有优异的智能性、可扩展性、可升级性和操作方便,为对太阳全天候跟踪提供了合理、廉价的解决 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 等特点。 最后进行了系统联合调试,结果表明:系统的软、硬件设计合理可行,为后续的研究工作奠定了基础。 关键词:光敏电阻组合检测元件 比较器模块 单片机(AT89C52) 液晶显示屏(1602) All-weather Solar Tracking System ABSTRACT All-weather solar tracking system for solar air conditioning、Solar hydrogen production、Solar irradiance measurements、materials aging test、solar photovoltaic、 solar water heaters and other high need for solar applications in real-time tracking designed. Solar Tracking System is a comprehensive application of physics, optics, kinematics, control theory and other disciplines reflected, is the current hot topic of research at home and abroad. Solar is an energy, is renewable energy. It is rich in resources, both free, then no transport, no pollution on the environment. To create a new human life forms, and human society into a era of energy conservation to reduce pollution. So, all-weather track to realize the sun is to improve the use of solar energy, utilization of great significance。 I made all-weather solar tracking system, the system can track the sun all-round, with two degrees of freedom tracking. Through the night or cloudy days, the only one you can track the sun, reliable stability. ATMEL Corporation AT89C52 use of the system control chip, through the op amp device LM354N, LM358 module composed of relatively light on the photosensitive sensor resistance on the intensity and set the comparison reference voltage detection, and test results of logical operations, the responsible position angle and elevation angle of the stepping motor control, in order to achieve full-track the sun. 1602 LCD Module, Display System on the current work status and time. In the method described in detail the composition of the control system structure and working principle. The method uses nine photosensitive resistance on the current ambient light intensity sensor, at different intensity of light, the photosensitive resistor not the same, so the positive comparator input voltage is different. If the trackpad is not working on the sun, then the resistance of nine photosensitive not the same, the comparator input voltage is not the same, if the input voltage is higher than the set reference voltage, the comparator will output a signal to the SCM, SCM comparator input signal according to logical operations, and then control the corresponding stepper motor rotation, until 9 photosensitive resistance as light intensity sensor. In an interview with the introduction of single chip control circuit, by taking advantage of its software and hardware resources, the system has superior intelligence, scalability, scalable and easy to operatly weather Genzong the sun provides a reasonable, affordable solutions characteristics.Finally, a joint trial, the results show that: the system software and hardware design is reasonably practicable, for the follow-up research foundation. Key words: photosensitive detection elements combined resistance comparator module microcontroller (AT89C52) liquid crystal display (1602) 目 录 摘要……………………………………………………………I ABSTRACT ……………………………………………………II 1 概论…………………………………………………………1 1.1 太阳能全天候跟踪系统发展现状……………………………1 1.2 太阳能全天候跟踪系统设计思想…………………………1 1.3 太阳能全天候跟踪系统研究意义…………………………2 1.4 研究目标.研究内容及拟解决关键问题…………………2 2 系统主控制器…………………………………………………2 2.1 主控制器选用………………………………………………2 2.2 控制器介绍…………………………………………………3 2. 3AT89C52……………………………………………………3 3 系统显示模块…………………………………………………5 3.1 显示模块选用………………………………………………5 4 驱动元件………………………………………………………7 4.1 直流电机与步进电机的比较………………………………7 4.2 步进电机控制原理…………………………………………7 4.3 步进电机正反转控制时序……………………… …8 5 比较器与光敏电阻………………………………… ………9 6 检测模块设计………………………………………………10 6.1方案……………………………………………………10 6.1方案论证…………………………………………………11 6.2 光敏电阻与板夹角…………………………………………11 7 太阳能全天候跟踪系统电源设计………………………12 7.1 方案…………………………………………………………12 7.2 方案论证……………………………………………………12 8 系统组成原理…………………………………………………12 8.1 接收系统……………………………………………………12 8.2 用户控制系统………………………………………………14 8.3显示系统……………………………………………………14 9系统软件设计…………………………………………………15 9.1软件流程图…………………………………………………15 9.2程序清单……………………………………………………18 结束语……………………………………………………………33 参考文献……………………………………………………34 附录………………………………………………………………35 谢辞………………………………………………………………36 1 概论 太阳能既是一次能源,又是可再生能源。它资源丰富,既可免费使用,又无需运输,对环境无任何污染。为人类创造了一种新的生活形态,使社会及人类进入一个节约能源减少污染的时代。所以实现对太阳全天候跟踪具有重大意义。 1.1太阳全天候跟踪系统的发展现状 目前对太阳进行跟踪的仪器有: · 单轴太阳能自动跟踪器 · 步进式太阳能自动跟踪 · 可自动跟踪的太阳灶 · 五像限法太阳自动跟踪仪 · 单轴液压式自动跟踪 · 极轴式跟踪 不足:结构复杂,跟踪精度不高,不能全自动跟踪 1.2太阳跟踪系统的设计思想 · 检测规划 检测规划是跟踪系统的一个重要问题。它的目标是在一个光亮强度差不多环境中,为跟踪系统寻找太阳的具体位置。一个重要的解决方法就是采用多元法三维,多元法三维就把检测系统接受板分成九个单元,太阳光线从不同角照射到接受板,检测元件感应光线强度不同。当考虑到元件误差时,跟踪系统与太阳实际位置可能会出现偏差。 · 定位 步进电机的步进角,是太阳跟踪系统精确定位的一个基本问题,也可以说,太阳偏移一个微小的角度,步进转动角度应该比太阳偏移角度相等,这就要求步进电机的步进角要足够小。 1.3全天候太阳能跟踪系统的研究意义: 燃烧煤炭,石油等能源不仅污染环境,而且它们属于不可再生能源,照2003年的煤炭开采速度,中国的煤炭再开采80多年即将枯竭。太阳能既是一次能源,又是可再生能源。它资源丰富,既可免费使用,又无需运输,对环境无任何污染。作为能源消耗大国,如何提高对太阳能利用率是解决能源危机的可行方法之一。设计一个对太阳实现全天候跟踪系统,是提高太阳能利用率根本方法。 本研究课题是集机电、光学,计算机,控制理论为一体的,体现了电子信息专业多学科相结合,相互渗透的特点。 科技以人为本,是为人类服务的,本人设计的太阳能全天候跟踪系统充分的体现了该特点,体现出人类与环境的和平相处,解决能源危机,造福于人类和社会,所以太阳能全天候跟踪系统是值得研究和实际运用的。 本课题的研究成功,对创建能源节约型,环境友好型社会具有较大的意义,也有较好的市场发展前景 1.4研究目标、研究内容和拟解决的关键问题 · 研究的目标 本课题主要是利用单片机知识,设计一个太阳能全天候跟踪系统,其突破点在对太阳精确位置检测的系统的设计、步进电机动作指令系统(与太阳同步偏移)的设计、实时显示系统工作状态与人性化时间调节的设计。 · 研究的关键问题 本课题需要重点研究的、关键的问题及解决的思路 · 太阳高度角跟踪的实现。 · 太阳方位角跟踪的实现。 · 经过阴雨天气后,太阳一出来立即跟踪的实现。 · 人性化界面的设计,分为人与单片机沟通和时间显示程序。 · 总体分析方案的设计: 太阳控制系统总体方案的设计主要涉及到核心控制器和外围器件的选择和应用,外围零部件的选用,电源供电方案的确定等,这些因素的确定有益于系统开发初期具体方案的实施。 2 系统主控制器 2.1主控制器的选用 本系统的主要控制器件采用89C52单片机。在51系列的单片机中,目前很流行一种内含flash程序存储器的单片机。因为内有flash程序存储器,可以通过编程器十分方便的写代码或擦除代码,擦除次数达10000次以上,而且还提供了禁止读写两层保密技术,其空间大小从1KB到64KB不等,有的甚至更大。这种芯片一般都提供了片上和在线修改的功能。该系列的芯片,创建的有138B或256B的片内RAM,当处理的数据不十分复杂时,一个芯片就组成了一个最小的单片机系统。89C5X型单片机既节省了数据线和存储器等外围器件,缩小了嵌如式系统的体积,又提高了工作的可靠性、开发的方便性和程序的保密性,其价格也便宜。 基于以上原因和这次研究系统的实际情况,选择该系列的89C52单片机作为水面打捞垃圾机器人的核心控制器件。 2.2控制器的介绍 目前有许多种类的微控制器,微控制器的组成与一般的计算机相同,其动作也由程序来完成。如图2-1所示的微处理器有输入、输出、存储、运算及控制功能,输入、输出仅由端口出入。在存储器以外可以追加外部存储器。如图虚线所包围的部分相当于一个微控制器 图2-1 单片机的构成 微控制器在机器人中完成的主要功能是:首先,把由光传感器或超声波传感器、无线接收机取得的信号通过微控制器的输入端口读入。然后,根据存储器所存储的程序进行运算、控制,再将结果作为信号从输出端输出。输出信号通过电子电路使执行机构(电机、继电器)动作。在上述过程中,微控制器与电气电路之间的桥梁被称为接口,其任务是通过输入输出端口实现信号的进出。 微控制器根据写入存储器的程序产生不同的动作,而程序则是根据微控制器内部的“0”和“1”所组合成的二进制数进行操作。在电路中,二进制数“1”表示高电压状态,“0”表示低电压。换句话说,可将开关的状态变化表示为“0”和“1”两种方式,计算机通过许多种开关的组合来表示。 2.3 AT89C52 2.3.1 89C52的特点 89C52是一种小型单片机。其主要特点为:采用Flash储存器技术,降低了制造成本;其软件、硬件与MCS-51完全兼容,其程序的电可擦特性,使得开发与试验比较容易。 图2-2 AT89C52引脚图 在引脚的驱动能力上,89C52具有很强的下拉能力。P1、P3的下拉能力均可达到20mA;相比之下,89C51/87C51的端口下拉能力最大只有15 mA,而且限定9脚电流之间要小于81 mA,这样,引脚的平均电流只9 mA。89C52驱动能力的增强,使得它可以直接驱动LED数码管。 对于一些不太复杂的控制电路,我们就可以增加少量元件来实现,例如,对温度的控制,过压的控制等。 2.3.2 89C52单片机的电源系统 89C52有很宽的工作电源电压,当工作在3V时,电流相当于6V工作时的1/4。89C52工作于12MHZ时,动态电路为5.5mA,空闲态电流为1 mA,掉电状态电流仅为20nA。这样小的功耗很适合电池供电的小型控制系统。 2.3.3 89C52单片机的储存系统 89C52单片机内含有4K字节的Flash程序存储器,128字节的片内RAM,与80C31内部类似。由于52内部设计全静态工作,所以允许工作的时钟为0~20MHZ,也就是说,允许在低速工作时,不破坏RAM内容。相比之下,一般8031对最低工作时钟限制为3.5MHZ,因为其内部的RAM是动态刷新的。 2.3.4 89C2051单片机的内部I/O控制 89C52有32个I/O线,在内部I/O控制上继承了MCS-31的特征:5路三级中断源结构,1个全双工串行口,2路16位定时器/计数器。 3 系统显示模块 3.1显示模块选用 显示模块有数码显示和液晶屏显示,显示同样字符,数码管占用单片机资源比液晶屏多很多,功耗也大很多。液晶显示模块已作为很多电子产品的通过器件,如在计算器、万用表、电子表及很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。在单片机的人机交流界面中,一般的输出方式有以下几种:发光管、LED数码管、液晶显示器。发光管和LED数码管比较常用,软硬件都比较简单,在单片机系统中应用液晶显示器作为显示器件有以下几个优点: · 显示质量高 由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器(CRT)那样需要不断刷新新亮点。因此,液晶显示器画质高且不会闪烁。 · 数字式接口      液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。 体积小、重量轻,液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上比相同显示面积的传统显示器要轻得多。 · 功耗低 相对而言,液晶显示器的功耗主要消耗在其内部的电极和驱动IC上,因而耗电量比其它显示器要少得多。 · 字符的显示 用LCD显示一个字符时比较复杂,因为一个字符由6×8或8×8点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,还要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮。这样一来就组成某个字符。但由于内带字符发生器的控制器来说,显示字符就比较简单了,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标。   字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。本系统采用1602字符型液晶显示器,图1,图2,图3分别是1602的实物,显示地址,字符代码与图形对应图。 · 图3-1 液晶屏显示 · 图3-2 1602LCD内部显示地址 表3-1字符代码与图形对应图 4 驱动元件 4.1直流电机与步进电机的比较 电机是我们的生活中不可或缺的动力源,常用的有交流电机,步进电机和直流电机。 直流电机是日常生活中广泛使用的一个电气产品,太阳能全天候跟踪系统跟踪太阳这样的动作,需要能进行转动控制和立刻停止控制的电路,实际中通常采用微控制器和专用IC芯片。单独使用直流电机尚不能达到精确的定位控制,只有将它与旋转编码器组合起来,才能实现精确的位置控制和速度控制。 步进电机是一种能够根据脉冲(通常为方波)控制转角和转速、并适合微控制器控制的电机。步进电机(也称脉冲电机)是一种跟踪给定脉冲信号转动的电机。因此,单纯向它施加电压是不会导致转动的。换句话说,要使它转动必须借助控制电路,在这个控制电路中,往往需要微控制器或专用芯片。 步进电机能根据给定的脉冲信号实现精确的定位控制,而且即使在停止时也有制动转矩,这些特性全天候跟踪系统转动控制都是很有利的。 由于全天候控制系统是随的太阳转动的,因为太阳离地球太远了,在很短时间内,检测系统是感觉不到太阳在移动,需过一段时间才能感觉到太阳已经偏移原来位置,所以要求电机隔一段时间转一个角度后马上停下来。综合上面对直流和步进电机的性能等进行的比较分析,我选用步进电机。 4.2步进电机控制原理 步进电机是机电控制中一种常用的执行机构,它的用途是将电脉冲转化为角位移,通俗地说:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。通过控制脉冲个数即可以控制角位移量,从而达到准确定位的目的;同时通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。 · 结构: 电机转子均匀分布着很多小齿,定子齿有三个励磁绕阻,其几何轴线依次分别与转子齿轴线错开。 0、1/3て、2/3て,(相邻两转子齿轴线间的距离为齿距以て表示),即A与齿1相对齐,B与齿2向右错开1/3て,C与齿3向右错开2/3て,A'与齿5相对齐,(A'就是A,齿5就是齿1) · 旋转: 如A相通电,B,C相不通电时,由于磁场作用,齿1与A对齐,(转子不受任何力以下均同)。 如B相通电,A,C相不通电时,齿2应与B对齐,此时转子向右移过1/3て,此时齿3与C偏移为1/3て,齿4与A偏移(て-1/3て)=2/3て。 如C相通电,A,B相不通电,齿3应与C对齐,此时转子又向右移过1/3て,此时齿4与A偏移为1/3て对齐。 如A相通电,B,C相不通电,齿4与A对齐,转子又向右移过1/3て 这样经过A、B、C、A分别通电状态,齿4(即齿1前一齿)移到A相,电机转子向右转过一个齿距,如果不断地按A,B,C,A……通电,电机就每步(每脉冲)1/3て,向右旋转。如按A,C,B,A……通电,电机就反转。 由此可见:电机的位置和速度由导电次数(脉冲数)和频率成一一对应关系。而方向由导电顺序决定。 不过,出于对力矩、平稳、噪音及减少角度等方面考虑。往往采用A-AB-B-BC-C-CA-A这种导电状态,这样将原来每步1/3て改变为1/6て。甚至于通过二相电流不同的组合,使其1/3て变为1/12て,1/24て,这就是电机细分驱动的基本理论依据。 不难推出:电机定子上有m相励磁绕阻,其轴线分别与转子齿轴线偏移1/m,2/m……(m-1)/m,1。并且导电按一定的相序电机就能正反转被控制——这是旋转的物理条件。只要符合这一条件我们理论上可以制造任何相的步进电机,出于成本等多方面考虑,市场上一般以二、三、四、五相为多。 · 力矩: 电机一旦通电,在定转子间将产生磁场(磁通量Ф)当转子与定子错开一定角度产生力 F与(dФ/dθ)成正比 S 其磁通量Ф=Br*S Br为磁密,S为导磁面积 F与L*D*Br成正比 L为铁芯有效长度,D为转子直径 Br=N·I/R N·I为励磁绕阻安匝数(电流乘匝数)R为磁阻。 力矩=力*半径 力矩与电机有效体积*安匝数*磁密 成正比(只考虑线性状态) 因此,电机有效体积越大,励磁安匝数越大,定转子间气隙越小,电机力矩越大,反之亦然。 图5是两相步进内部结构 图4-1 同步电机电路及外形 4.3步进电机的正反转动控制时序 · 8拍的方式 八个状态:1、在A与A-正电压,B与B-不给电悬空;2、在A与A-正电压,B与B-也给正电压;3、A与A-不给电压悬空,B与B-正电压;4、A与A-给负电压,B与B-给正电压;5、A与A-给负电压,B与B-不给悬空;6、A与A-给负电压,B与B-给负电压;7、A与A-不 给电悬空,B与B-给负电压;8、A与给正电压,B与B-给负电压;按以上八个状态轮流供电,控制一下脉宽应该就可以了。 四个引脚各一根控制线:A~H表示各线时序          A     B     C D     E     F     G     H A       1     1     0     0     0     0     0     1 A-      0     0     0     1     1     1     0     0 B       0     1     1     1     0     0     0     0 B-      0     0     0     0     0     1     1     1 · 4拍的方式两相双二拍: 两相四拍时序: A B C D A 1 0 0 1 A- 0 1 1 0 B 1 1 0 0 B- 0 0 1 1 要实现电机反转,只要相应时序取反即可。 本系统采用步进电机型号:2S42Q-03848,具体参数如表4-1所示。 表4-1 步进电机型号:2S42Q-03848的技术参数 5 比较器及光敏元件 5.1 比较器 电压比较器可以看作是放大倍数接近“无穷大”的运算放大器。电压比较器的功能:比较两个电压的大小(用输出电压的高或低电平,表示两个输入电压的大小关系): 当”+”输入端电压高于”-”输入端时,电压比较器输出为高电平; 当”+”输入端电压低于”-”输入端时,电压比较器输出为低电平;   电压比较器的作用:它可用作模拟电路和数字电路的接口,还可以用作波形产生和变换电路等。利用简单电压比较器可将正弦波变为同频率的方波或矩形波。简单的电压比较器结构简单,灵敏度高,但是抗干扰能力差,因此人们就要对它进行改进。改进后的电压比较器有:滞回比较器和窗口比较器。运放,是通过反馈回路和输入回路的确定“运算参数”,比如放大倍数,反馈量可以是输出的电流或电压的部分或全部。而比较器则不需要反馈,直接比较两个输入端的量,如果同相输入大于反相,则输出高电平,否则输出低电平。电压比较器输入是线性量,而输出是开关(高低电平)量。一般应用中,有时也可以用线性运算放大器,在不加负反馈的情况下,构成电压比较器来使用。 5.2 光敏电阻 光敏(photovaristor)又叫光感电阻,是利用半导体的光电效应制成的一种电阻值随入射光的强弱而改变的电阻器;入射光强,电阻减小,入射光弱,电阻增大。光敏电阻器一般用于光的测量、光的控制和光电转换(将光的变化转换为电的变化)。 在黑暗环境里,它的电阻值很高,当受到光照时,只要光子能量大于半导体材料的禁带宽度,则价带中的电子吸收一个光子的能量后可跃迁到导带,并在价带中产生一个带正电荷的空穴,这种由光照产生的电子—空穴对增加了半导体材料中载流子的数目,使其电阻率变小,从而造成光敏电阻阻值下降。光照愈强,阻值愈低。入射光消失后,由光子激发产生的电子—空穴对将逐渐复合,光敏电阻的阻值也就逐渐恢复原值。 6 检测模块设计 检测模块检测准确性是太阳能全天候跟踪准确跟踪的基础,所以太阳定位十分重要。 6.1方案: · 最大能量积分,如图6-1所示。 · “多元法三维”太阳自动跟踪系统 如图6-2所示。 · 两者结合如图6-3所示。 图6-1 “多元法”太阳能定位装置图 图6-2 单方向定位装置示意图 图6-3 “二者结合”示意图 6.2方案论证 三种方案逐一比较,“两者结合”方案控制方便,检测准确,而且制作简单,所以检测模块的太阳定位模式采用“二者结合”的方案。 6.3光敏电阻与板的夹角( 正中央的光敏电阻中心线与电池板垂直,最边上的两上光敏电阻的连线与板的夹角(可由下公式确定 : (——某地黄昏时电池板与地面的夹角,(电池板的极大转角) (——当地早晨光线与地面的夹角(太阳高度角) R——半圆柱体的半径 L——电池板的长度 图6-4 (角的计算图 7 全天候太阳能跟踪系统的电源设计 电源供给系统是为太阳跟踪系统步进电机提供能源的装置,而在本系统中既涉及到信号电信号,又涉及到功率电信号,为了保证系统能够稳定正常的工作,电源的设计部分也是一个关键要解决的问题。 7.1方案: 综合电源的质量、重量及价格等因素,选用220V TO 15V集成电源模块组作为15V直流电源,5V是15V电源经LM7805线性稳压得到。 在信号处理的部分,由于单片机和检测模块需要的是5V的电源,而电机驱动部分需要的是15V的电源,所以我们在系统中采用LM7805模块,实现了15V和5V的转换,如图7-1所示。 图7-1 电源电路图 7.2方案论证: 此方案在接通电源后LM7805发热量大,造成功耗很大,太阳能全天候跟踪系统中,电动机为强干扰源,电压源共地很容易给单片机系统带来干扰。为了提高单片机系统的可靠性就采用独立的5V电压给单片机供电,而单片机系统所需的5V直流电源则由4节超霸蓄电池串联 (毕业演示时由电脑USB) 提供,其电压范围为4.7V~5.4V且电压波动很小,很适合单片机系统的供电。 8 系统的组成原理 8.1接收系统 本课题接收系由运算放大器LM324N、LM358,可调电阻,光敏电阻,普通电阻组成。电路原理图如图8-1所示。 接收系统主要功能是对不同强度光线进行感应,把阳光强度转化成电压伏特值,将把感应的伏特值与我们设定的基准电压进行比较。如果感应的伏特值比我们设定的值,接收系统将输出一个信号给单片机,单片机接收到该信号后进行处理,然后控制步进电机旋转接收板沿光线强烈地方转,直到九个感敏电阻感应光线强度一样。该电路中的核心元件是光敏电阻,它可以把不同强度光线转化成不同幅值的电压。合适调整可调电阻的值,当阳光照到光敏电阻R1比照到光敏电阻R2或其他光敏电阻,比较器LM324或LM358将输出一个信号给单片机。也即照到这个九个光敏电阻光线强度不一样。单片机将会控制接收板向阳光强度地方偏转,直到它们受光强度一样。(不要遮光板,光强能有差别吗?) 光敏电阻R1,R2,R3,R4,R5,R6,R7,R8,R9感应环境光度,耦合比较器LM324N,LM358进行比较,从比较器P1.0-P1.7,P3.1端输出比较数据。P1.0-P1.7,P3.1端输出的数据送至单片机的P1.0~P1.7,P3.1中。单片机根据输入数据进行处理,然后通过P2.4-P2.7,P3.5-P3.6输出控制信号,控制步进电机旋转。 图8—1 接收系统的电路原理 8.2 用户控制系统 用户控制系统主要功能是实现设定系统时间,系统根据用户设定时间旋转接收板,实现全天候跟踪太阳。按键与单片机输入端口及相应功能对应关系如表8—2所示。 表8—2 按键与单片机输入端口及相应功能对应关系 开关按键 单片机端口 对应功能 K1 P3.3 调节时间按钮 K2 P3.7 确定时间 K3 P2.4 时间的增减 系统默认时间是00:00,当系统通电时,如果时间与实际时间不对,用户可以通过控制按钮进行时间调整。当按下K1键时,系统进入调节时间状态,按K3键进行时间调整。系统首先对小时进行调整,用户每按K3一次,系统增加一小时,并且蜂鸣器“滴“一声,提醒用户系统时间已经增加1了。小时调整完毕,用户按K2进行确认,同时蜂鸣器”滴“一声,系统进入分钟调整,同样,用户每按K3一次,系统时间增加一分钟,同时蜂鸣器也滴一声。当时间调整完毕,用户按K1,蜂鸣器”滴“一声系统退出时间调整状态,如图8-2所示。 图8-2 按钮及蜂鸣器原理图: 8.3 显示系统 单片机刚上电,显示屏显示太阳能全天候跟踪系统(Automatic Tracked,System of Sun),过了3秒钟,显示系统当前时间和工作状态。当电机转动时,显示自动跟踪,运行状态(Automatic Tracked,RUNNING,当前时间),当电机停止时,显示(Automatic Tracked,STOP和当前时间)。显示屏与单片机连接原理图如图8-3所示。 图8-3 显示屏与单片机连接原理图 9系统软件的设计 9.1系统软件的设计 系统软件的设计主要是通过C语言编程实现单片机对步进电机控制以及系统状态的显示。软件设计流程图如图9-1所示。 图9-1 软件设计流程图 图9-2 外部中断2 定时器1中断 定时器0中断 图9-3 外部中断2 图9-4 外部中断2 9.2程序清单: #include //51芯片管脚定义头文件 #include //内部包含延时函数 _nop_(); #define uchar unsigned char #define uint unsigned int #define delayNOP(); {_nop_();_nop_();_nop_();_nop_();}; uchar n, m,data_temp1,data_temp2,flag; uchar cout0=0,cout1=0,cout2=0; /********************************************************/ /* /* 定义电机转动时序 /* /********************************************************/ uchar code FFW[8]={0x1F,0x3F,0x2F,0x6F,0x4F,0xCF,0x8F,0x9F}; uchar code REV[8]={0x9F,0x8F,0xCF,0x4F,0x6F,0x2F,0x3F,0x1F}; uchar code timer[2]={15,100}; /********************************************************/ /* /* 光敏电阻与单片机接口定义 /* /********************************************************/ sbit K1 =P1^0; sbit K2 =P1^1; sbit K3 =P1^2; sbit K4 =P1^3; sbit K5 = P1^4; sbit K6 = P1^5; sbit K7 = P1^6; sbit K8 = P1^7; sbit K9 = P3^1; /********************************************************/ /* /* 按钮端口定义 /* /********************************************************/ sbit STIMER=P3^7;//时间确定 sbit ATIMER=P2^3;//调节时间 sbit BEEP=P3^3;//外部中断和风鸣器 sbit PULE = P3^2; // T1发出脉冲接口 /********************************************************/ /* /* 方位角电机接口定义 /* /********************************************************/ sbit DIR=P3^5; //第二个电机的控制线接口 sbit PLS=P3^6; /********************************************************/ /* /* LCD控制端口定义 /* /********************************************************/ sbit LCD_RS = P2^0; //lcd接口 sbit LCD_RW = P2^1; sbit LCD_EN = P2^2; /********************************************************/ /* /* LCD显示字符定义 /* /********************************************************/ uchar code cdis1[ ] = {"Automatic Tracked"}; uchar code cdis2[ ] = {" System of Sun"}; uchar code cdis3[ ] = {" 00:00"}; uchar code cdis4[ ] = {" STOP "}; uchar code cdis5[ ] = {"RUNNING "}; /********************************************************/ /* /* 11.0592MHz时钟,程序 /* /********************************************************/ void delay(uint t)//1ms { uchar k; while(t--) { for(k=0; k<125; k++) { } } } void delayB(uchar x) //x*0.14MS { uchar i; while(x--) { for (i=0; i<13; i++) { } } } /********************************************************/ /* /* 蜂鸣器 /* /********************************************************/ void beep() { uchar j; for (j=0;j<100;j++) { delayB(4); BEEP=!BEEP; } BEEP=1; delay(170); } /********************************************************/ /* /*检查LCD忙状态 /*lcd_busy为1时,忙,等待。为0时,闲,可写指令与数据。 /* /********************************************************/ bit lcd_busy() { bit result; LCD_RS = 0; LCD_RW = 1; LCD_EN = 1; delayNOP(); result = (bit)(P0&0x80); LCD_EN = 0; return(result); } /********************************************************/ /* /*写指令数据到LCD /*RS=L,RW=L,E=高脉冲,D0-D7=指令码。 /* /********************************************************/ void lcd_wcmd(uchar cmd) { while(lcd_busy()); LCD_RS = 0; LCD_RW = 0; LCD_EN = 0; _nop_(); _nop_(); P0 = cmd; delayNOP(); LCD_EN = 1; delayNOP(); LCD_EN = 0; } /********************************************************/ /* /*写显示数据到LCD /*RS=H,RW=L,E=高脉冲,D0-D7=数据。 /* /********************************************************/ void lcd_wdat(uchar dat) { while(lcd_busy()); LCD_RS = 1; LCD_RW = 0; LCD_EN = 0; P0 = dat; delayNOP(); LCD_EN = 1; delayNOP(); LCD_EN = 0; } /********************************************************/ /* /* LCD初始化设定 /* /********************************************************/ void lcd_init() { delay(30); lcd_wcmd(0x38); //16*2显示,5*7点阵,8位数据 delay(5); lcd_wcmd(0x38); delay(5); lcd_wcmd(0x38); delay(5); lcd_wcmd(0x0c); //显示开,关光标 delay(5); lcd_wcmd(0x06); //移动光标 delay(5); lcd_wcmd(0x01); //清除LCD的显示内容 delay(5); } /********************************************************/ /* /* 设定显示位置 /* /********************************************************/ void lcd_pos(uchar pos) { lcd_wcmd(pos | 0x80); //数据指针=80+地址变量 } /********************************************************/ /* /* LCD1602初始显示子程序 /* /********************************************************/ void LCD_init_DIS() { delay(10); lcd_init(); lcd_pos(0); m = 0; while(cdis1[m] != '\0') { lcd_wdat(cdis1[m]); m++; } lcd_pos(0x40); m = 0; while(cdis2[m] != '\0') { lcd_wdat(cdis2[m]); m++; } delay(3000); lcd_pos(0x40); m = 0; while(cdis3[m] != '\0') { lcd_wdat(cdis3[m]); m++; } } /********************************************************/ /* /* 显示RUNNING /* /********************************************************/ void lcd_wtrunning() { lcd_pos(0X40); m = 0; while(cdis5[m] != '\0') { lcd_wdat(cdis5[m]); m++; } for(m=0;m<2;m++) { lcd_pos(0x48+m); lcd_wdat(0x3E); } } void lcd_wtstopping() { lcd_pos(0X40); m = 0; while(cdis4[m] != '\0') { lcd_wdat(cdis4[m]); m++; } } /********************************************************/ /* /*数据转换子程序 /* /********************************************************/ void data_conv(uchar data_cout) { data_temp1=data_cout/10; data_temp1=data_temp1+0x30; data_temp2=data_cout%10; data_temp2=data_temp2+0x30; } /********************************************************/ /* /*秒钟显示程序 /* /********************************************************/ void second_dis(){lcd_pos(0x4D); lcd_wdat(0x20); if(cout0%2==1) {lcd_pos(0x4D); lcd_wdat(0x3a); } } /********************************************************/ /* /*数据显示子程序 /* /********************************************************/ void data_dis()//时间显示 { data_conv(cout2); lcd_pos(0x4b); lcd_wdat(data_temp1); lcd_pos(0x4c); lcd_wdat(data_temp2); second_dis(); data_conv(cout1); lcd_pos(0x4e); lcd_wdat(data_temp1); lcd_pos(0x4f); lcd_wdat(data_temp2); } /********************************************************/ /* /*设置时间 /* /********************************************************/ void set_timer() { while(STIMER==1)//调节小时 { if(ATIMER==0) { cout2+=1; beep(); if(cout2>24) cout2=0; data_dis(); } while(ATIMER==0); } beep(); while(STIMER==0); while(STIMER==1)//调节分钟 { if(ATIMER==0) { cout1+=1; beep(); if(cout1>60) cout1=0; data_dis(); } while(ATIMER==0); } beep(); while(STIMER==0); } /********************************************************/ /* /*定时器初始化 /* /********************************************************/ void init_timer() { TMOD=0X16;//T1为定时 TH0=0XF1; TL0=0XF1; TR0=1; TR1=1; ET0=1; ET1=1; } /******************************************************** /* /* 电机向东转,即顺时针。 /* /********************************************************/ void motor_ffw(uint j) { uchar i=0; while( (K4==1&K3==0)|(K8==1&K7==0)) {if(flag==1) lcd_wtrunning(); flag=0; P2= FFW[i]; delay(timer[j]); //调节转速 i++; if(K4==1) j=0; if(i==7) i=0; if(K8==1) j=1; } } /******************************************************** /* /* 电机向/向西转,即顺时针。 /* /********************************************************/ void motor_rev(uint j) { uchar i=0; if(flag==1) lcd_wtrunning(); flag=0; while((K3==1&K4==0)|(K7==1&K8==0)) { P2= REV[i]; delay(timer[j]); i++; if(i==7) i=0; if(K3==1) j=0; if(K7==1) j=1; } } /******************************************************** /* /* 主函数 /* /********************************************************/ int main() { uint n; LCD_init_DIS(); delay(1000); init_timer(); P1=0XFF; P3=0XFF; IT0=0; EX1=1; PX1=1; EA=1; while(1) { flag=1; if(K4==1) {n=0; motor_ffw(n);//向东快速转 } if(K8==1) {n=1; motor_ffw(n);//向东微调 } if(K3==1)//向西快速转 { n=0; motor_rev(n); } if(K7==1)//向西微调 { n=1; motor_rev(n); } while(K1==1&K2==0|K5==1&K6==0)//向东偏 { if(flag==1) lcd_wtrunning(); flag=0; if(K1==1)//快速东偏 n=0; if(K5==1) n=1; DIR=0; PLS=~PLS; delay(timer[n]); } while(K1==0&K2==1|K5==0&K6==1)//向西偏 { if(flag==1) lcd_wtrunning(); flag=0; if(K2==1)//快速西偏 n=0; if(K6==1) n=1; DIR=1; PLS=!PLS; delay(timer[n]); } flag=1; while(K9==1)//停止转动 { if(flag==1) { flag=0; lcd_wtstopping(); } DIR=0; PLS=0; P2=0; } } } /******************************************************** /* /* 中断程序 /* /********************************************************/ void timer1_ovf() interrupt 3//定时器2溢出中断 { PULE=!PULE; } void timer0_ovf() interrupt 1 { cout0++; data_dis(); if(cout0==60) { cout0=0; cout1++; if(cout1==60) {cout2++; cout1=0; } if(cout2==24) cout2=0; } } void stimer() interrupt 2 //外部中断2 {EA=0; IE1=1; EX1=0; P2=0X0F; delay(300); beep(); set_timer(); EA=1; EX1=1; } 结 束 语 为了解决步进电机转动实时性和准确性问题,本文在理论和功能上实现了“太阳能全天候”的设计研制,不但大大的太阳能利用效率,降低对不可再生能源消耗,提高人们生活质量,更使得环境得到了保护,因此本次设计的太阳能全天候跟踪系统体现科技以人为本的设计思想。 A.在本次设计中贯彻了以下设计理念: 1.太阳能全天候跟踪系统的结构设计要在能步进电机准确跟踪太阳偏移的前提下兼顾结构设计的简单化,使其便于加工制造。 2.在运动控制系统设计和选择中,首先要先分析制定太阳能全天候跟踪系统控制运动需求,综合考虑价格性能比,使其简单易行且与系统总体相协调。 3.接收系统安装面积不是很大,我们只要安装在要控制旋转的板子上,并在板子上固定一个方便固定的槽,步进电机工作时,只需要移动,就可以旋转控制板子转动,简单而且方便。 B.己完成的工作主要体现在在以下几个方面: 1.在参考图书馆、网上资源的基础上,收集国内外的相关信息,提出了太阳能全天候跟踪系统的设计思想和方案。 2.对直流电机的驱动电路进行了深入了解,对驱动部件的控制部分和信号处理的接口部分进行了分析,并绘制出驱动原理图。 3.完成了太阳能全天候跟踪系统的软硬件设计工作,并将其和单片机系统进行了 结合,以满足系统的需要。 4.根据控制系统的要求,设计人性化用户操作界面,实现人机交流,并绘制其电路原理图。 C.结论及尚存在的问题 1.步进电机转动存在误差,不能精确对准光源。 参考文献 【1】 李全利、迟荣强编著.《单片机原理及接口技术》.高等教育出版社,2008 【2】葛伟亮 编著.《自动控制元件》.北京理工大学出版社,北京航空航天大学出版社,西北工业大学出版社,哈尔滨工业大学出版社,哈尔滨工程大学出版社,2007 【3】徐文灿.编著.《太阳能自动跟踪系统的探索与模拟实验》 南京大学出版社 【4】 施耐德电气公司 编著.《自动化解决方案 指南 验证指南下载验证指南下载验证指南下载星度指南下载审查指南PDF 》.北京:机械工业出版社,2007 【5】 胡耀辉编著.《单片机系统开发实例经典》.北京:冶金工业出版社,2006 【6】 李军编著.《51系列单片机高级实例开发指南》.北京航空航天大学出版社,2005 【7】 梁恩主,梁恩维等编著.《Protel 99 SE电路设计与仿真教程》.北京:清华大学 2002年11月 【9】张继和、封志宏编.《电机与控制》. 西南交通大学出版社,2002年5月 【10】Introduction to Electronic Circuit Design . Richard R.Senturia Beijing:Beijing Aerospace University Press, July.2002 【11】Reinhard Wilhelm. Springer.《Compiler Construction》. 2001, First Edition 【12】ThinasArts, Markus Mohnen, Springer.《Implementation of Functional Languge》. 2002, First Edition 附 录 附录:太阳能跟踪系统原理图 谢 辞 随着时间的流逝,转眼四年的大学生活即将结束。在此,仅已“太阳能全天候跟踪系统为自己的大学生涯划一个圆满的句号。这篇论文的完成与导师李福教授的悉心指导是分不开的。本课题研究是在导师李福教授指导下完成的。在整个课题的设计和论文的写作过程中,李福教授在各个方面都给予了我极大的帮助。教授还在繁忙的工作之余给我提供了解决本设计的众多思路并帮我寻找很多宝贵的资料,帮助我精心点拨、热忱鼓励。并且严谨的治学态度,渊博的学识,和无私的关怀给我树立了做人的榜样,在此衷心感谢利老师!衷心感谢导师在我大学学习阶段给予我的学习和生活上的关心,支持。 感谢在我大学学习阶段与我一起欢笑过、奋斗过的室友、同学,与你们一起度过的快乐时光是我美好的回忆。 在此,我还要特别感谢我的父母,是你们对我的关心、支持、期望和鼓励给予我前进的决心和力量。 感谢我所热爱的北京理工大学珠海学院,在这里我度过了人生中最为灿烂的时刻,向所有的帮助过我的老师,朋友表示衷心的感谢 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作 者 签 名:       日  期:        ​​​​​​​​​​​​ 指导教师签名:        日  期:        使用授权说明 本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:        日  期:        ​​​​​​​​​​​​ 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名: 日期: 年 月 日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权      大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名: 日期: 年 月 日 导师签名: 日期: 年 月 日 注 意 事 项 1.设计(论文)的内容包括: 1)封面(按教务处制定的 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 封面格式制作) 2)原创性声明 3)中文摘要(300字左右)、关键词 4)外文摘要、关键词 5)目次页(附件不统一编入) 6)论文主体部分:引言(或绪论)、正文、结论 7)参考文献 8)致谢 9)附录(对论文支持必要时) 2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。 3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。 4.文字、图表要求: 1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写 2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画 3)毕业论文须用A4单面打印,论文50页以上的双面打印 4)图表应绘制于无格子的页面上 5)软件工程类课题应有程序清单,并提供电子文档 5.装订顺序 1)设计(论文) 2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订 3)其它 控 制 运 算 存 储 输 入 输 出 外部存储 圆筒里面光敏电阻 光敏电阻 开 始 LCD初始化 端口初始化 开中断 P1.3=1或p1.7=1 YSE K4=1&K3=0或K8=1&K7=0 电机向东转 并显示RUNNING NO P1.2=1或P1.6=1 YES K3=1&K4=0或K7=1&K8=0 电机向西转并显示 RUNNING 返回并重新检测各输入端口 NO P3.1=1 电机停止转动 并显示STOP NO YES 中断处理 关中断 P2.3=0 P3.7=1 P2.3=0 加一小时 同时响一声 开中断并返回 加一分钟 同时响一声 P3.7=1 YSE YES YES YSE NO NO NO NO 中断处理 中断处理 P3.3输脉冲 显示时间 退出中断并 返回 退出中断并返回 PAGE _1271528261.unknown
本文档为【全天候太阳能跟踪系统设计毕业设计论文】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
不系舟红枫
从教近30年,经验丰富,教学水平较高
格式:doc
大小:611KB
软件:Word
页数:49
分类:
上传时间:2019-01-20
浏览量:8