长春工业大学人文信息学院毕业设计(论文) 信息工程系
摘 要
本设计是基于AT89S52单片机的家用面包机控制系统,以AT89S52为主控芯片,以Pt100热电阻为温度传感器,采用三线制测温方法,用最小二乘法对温度的非线性进行优化,检测后的数据由8位A/D转换器AD0832转换为数字信号传输给单片机,根据PID控制算法得到输出控制量来控制加热器的功率,实现恒温加热,以压阻式压力传感器检测原料的质量,单片机根据测得质量值控制直流电机的转动和搅拌的时间;时间预约采用低功耗时钟芯片DS1302,单片机通过串行通信来控制DS1302工作,计时准确,而且避免了由于突然停电而造成时钟停止;通过独立式键盘设定预约时间,自由选择烘烤方式;采用四联共阳数码管显示工作的时间;面包制作完成有提示音,并具有自动保温且显示保温的时间。
关键词 面包机 单片机 最小二乘法 温度 压力传感器
I
长春工业大学人文信息学院毕业设计(论文) 信息工程系
Abstract
This design is a bread maker control system which is based on AT89S52 microcontroller. The AT89S52 is the main chip,the hot resistance Pt100 is the temperature sensor,using the method of three-wire for measuring temperature,the nonlinear least square method for temperature optimization.The test data are converted to digital signals by 8-bit A/D converter and sent to MCU,by the way of PID control algorithm getting the output volume and control the heater power,so achieving constant temperature heating; piezoresistive pressure sensor detect the mass of raw materials, MCU based on mass signal to control the motor rotating and stirring timeof the DC gear motor; low-power clock chip DS1302 is the time booking component, MCU control the DS1302 by the serial communication, timing accuracy, and avoiding sudden power outages due caused the clock to stop; independent keypad to set an appointment, choice baking methods free; four cooperating digital display the time; bread was finished after the beep, automatically insulation and display the time of thermal insulation.
Keywords Bread maker MCU Least square method Temperature
Pressure sensor
II
长春工业大学人文信息学院毕业设计(论文) 信息工程系
目 录
摘要..................................................................I Abstract.............................................................II 第1章 绪 论...................................................................1 1.1课题背景.........................................................1 1.2 面包机发展现状..................................................2 1.3 面包机展望......................................................2 1.4 主要研究内容....................................................3 第2章 系统总体结构...................................................4 2.1 系统总体设计方案................................................4 2.2 系统框图及各电路组成............................................4 2.3 芯片选择........................................................5 第3章 系统硬件设计...................................................8 3.1 面包机功能......................................................8 3.2 电源稳压电路....................................................8 3.3 数据采集电路设计................................................9 3.4 电机搅拌电路...................................................13 3.5 加热电路.......................................................14 3.6 键盘和显示电路.................................................15 3.7 提示音电路.....................................................17 第4章 软件设计......................................................19 4.1 主程序设计.....................................................19 4.2 中断服务程序设计...............................................20 4.3 A/D转换程序设计................................................21 4.4 温度控制程序设计...............................................22 4.5 显示程序设计...................................................24 4.6 键盘程序设计...................................................25 结论.................................................................26
I
长春工业大学人文信息学院毕业设计(论文) 信息工程系
参考文献.............................................................27 附 录...............................................................29
II
长春工业大学人文信息学院毕业设计(论文) 信息工程系
第1章 绪论
1.1 课题背景
随着信息社会和知识经济时代的到来,生活水平逐渐提高,节奏加快,人们没有时间来经营自己的生活,特别是上班族,在饮食方面的时间更是少之又少;虽然时间少,但人们追求生活的质量,需要营养可口的饮食,所以厨房电器越来越受欢迎,现在的豆浆机,榨汁机,还有省时的洗碗机,面包机等,家用面包机适应了市场的需求,全面满足人们对面包的要求。用户不需要再去超市挤长队,不用再考虑袋装面包加入了防腐剂,工业化生产面包也许无法再满足个性化的口味,即使糖尿病人也可以吃到自己做的无糖面包,只需将家庭常备厨房原料:水、鸡蛋、面粉等,把喜欢的口味配料放进机器,不用照看,自动运行,就可以做出色香味俱全的面包,它无需专业技能,可轻松操作,使用起来非常简便,而且做的面包卫生,比市场上买的更经济实惠,更重要的是,用户可以吃到新鲜的、可口的、营养的热面包,并且享受DIY自制面包的乐趣。
本课题研究的家用面包机采用微电脑控制,用户只需将原料放入面包桶内,面包机自动完成制作、烘烤面包的全过程,多种烘烤方式选择,方便用户在预定的时间内吃到面包,使用非常方便,完全满足上班族忙碌的生活节奏,省时、省力又省心。
1.2 面包发展现状
面包机的基本功能是搅拌、发酵、烘烤,可实现LCD数字动态显示,微电脑数码控制,可预约面包的制作时间,如需要在明天七点半吃到新鲜的热面包,可以在当晚九点半时设定预约时间为8小时30分;食物的烧色可根据口味设定为“浅色”、“中色”或“深色”,以适应不同人的口味;有15分钟断电记忆,当面包在制作过程中突然断电,面包机保存当前的数据,通电后继续工作;当面包制作完成后,如用户没有取出面包,面包机自动保温,以防止面包硬化及变质;制作面包的质量从400~700g不等,有的大容量的面包机可制作800~900g左右的面包,适合大家庭的
1
长春工业大学人文信息学院毕业设计(论文) 信息工程系
用户。在控制方面,大部分生产的面包机采用COP8系列单片机;也有的使用PIC单片机,这种芯片价格低,性能高,但与C0P8比较起来控制明显复杂;现在基本都采用高性能的单片机,采用智能的控制方法。
在实现这些功能外,在机体和其他方面也有改进,如有的面包机内置高灵敏度的温度控制器,可保持面包机内腔的加热温度稳定,均匀;采用机体和电热管双重接地防漏电保护;当恒温元件失效,导致面包机内异常升温时,限温装置能自动切断电源供给;面包桶使用的不沾涂层铝合金,容易清洁,经久耐用等。
1.3 面包机展望
家用面包机现在日益普及,部分是因为用户希望能够自己制备那些市场上没有供应或未能立即供应的具有特殊风味和家乡风味的面包。这种面包机普及的另一原因是人们希望能在焙烤结束时立即享用热面包,新鲜烤出的热面包具有独特的香味和质地。
尽管存在各种各样的面包机,但现在人们需要一种面包机,其能够使用户轻易地自动添加原料并选择菜单选项,以使制面包机自始至终自动地经历各种面包制作阶段,特别是对于某些类型的面包,例如低碳面包、无鼓质面包或手工面团面包等。将来的面包机具有用户可选择地打开和关闭的活动顶盖,并且具有允许用户在整个面包制作过程中观察该制面包机内部状况的视窗。
韩国申请的面包机专利中,发明的面包机装满面粉,水等等的混合袋的上端和下端连接到揉面滚筒的上端和下端,然后混合袋上下往复运动一个预定的时间,从而在混合袋里揉面团。在结束揉面团之后,混合袋自动地与上部揉面滚筒脱离,完全缠绕在下部揉面滚筒上,面团从混合袋里挤出进入烤盘。之后,加热器加热烘烤室的内部,从而使面团发酵和烘烤在一个预定的时间。
制作面包的过程取决于读取印在混合袋上的条形码。条形码包括根据一个特定制法的关于揉面时间,发酵时间,烘烤时间等信息。条形码由条形码扫描仪读取并且所读取的数据传递给在所读取的数据的基础上控制揉面滚筒,加热器等控制器。
对于面包机的要求越来越高,除了上述的自动加果料和特别制作面包的方法外,对面包机制作时的安全考虑更是十分的在意,在双重保护的前提下,还有对面包机外观和机体的要求,要求造型独特美观、时尚且体积小;采用的材料耐高温、
2
长春工业大学人文信息学院毕业设计(论文) 信息工程系
不粘锅、易清洗等,最好是面包内加入生物酶,不用清洗,面包机便可自动保持干净的表面;面包机可进行语音识别,用声音控制面包机的工作,当停即停,适合行动不方便的人。相信未来的面包机会越来越智能化,适合各种人的需求。
1.4 主要研究
本课题研究的面包机满足一般用户的的需求,使用方便,而且价格实惠。系统采用AT89S52单片机为主控芯片,Pt100热电阻检测面包桶内的温度,采用三线制的接线方法,精度高,以PID控制算法控制加热器,实现恒温加热,主要是通过六个按键实现对时间预约,选择快速烘烤和慢速烘烤,高精度压力传感器自动检测原料质量,单片机根据原料的不同控制继电器的闭合来控制直流减速电机的转动和搅拌的时间,实现均匀搅拌的目的;面包发酵的判断使用温控法,当面包桶内温度上升到35℃时,发酵完成后直接进入下一个制作阶段,温控法简单精确;面包制作完成后能自动保温并通过LED四联共阳数码管显示保温的时间;当温度超过220V时面包机自动断电,面包制作完成后机体发出提示音。
3
长春工业大学人文信息学院毕业设计(论文) 信息工程系
第2章 系统总体结构
2.1 系统总体设计方案
家用面包机是用单片机技术进行开发,通过数据采集系统,对温度进行采集并作A/D转换,再传输给单片机。以加热器为执行器件,通过PID控制算法程序来完成对面包桶内温度的控制。选用AT89S52单片机为中央处理器,压力传感器检测原料的质量,将采集的质量信号给单片机,单片机控制电机转动的速度和时间;在发酵和烘烤阶段,通过温度传感器对面包桶内温度进行采集,采集到的温度信号传输给单片机,得到采集温度与设定温度的偏差,PID根据偏差的比例积分微分来形成控制量,去控制加热器,使对象输出趋于给定,使加热器恒温加热;通过键盘预约时间和选择烘烤方式,用汇编语言完成软件编程。
2.2 系统框图及各电路组成
面包机控制系统主要由数据采集电路,电机搅拌电路,加热电路,提示音电路,电源稳压电路和时钟电路。其系统整体结构设计如图2-1所示。
图2-1 系统控制框图
4
压力传感器继电器电机A/D转换器温度传感器扩展芯片单片机加热器继电器时钟芯片显示电路键盘电路电源稳压电路提示音电路长春工业大学人文信息学院毕业设计(论文) 信息工程系
电源稳压电路:稳压电路由稳压芯片和相应的电容组成,提供给单片机和芯片所需的稳定电压,以防止波动和干扰带来的误差。
数据采集电路:数据采集电路包括温度传感器电路,压力传感器电路。温度传感器电路检测发酵和烘烤时的温度,压力传感器检测原料的质量。
电机搅拌部分:主芯片接到压力传感器的信号后,控制电机的转速和时间,电动机带动搅拌棒转动从而搅拌原料进行和面。
加热电路:采用云母电热丝加热板,主芯片经过驱动电路控制加热丝。加热丝在发酵和烘烤时工作,和温度检测电路形成回路控制面包桶内的温度。
显示电路:显示电路由四联共阳数码管LG5641BH、三极管和电阻组成,显示各阶段工作的时间。
键盘电路:键盘采用独立式键盘,每个按键各接一根输入线,通过检测输入线的电平状态判断哪个按键被按下,从而实现不同的功能。
时钟电路:时钟电路由DS1302芯片和单片机串行通信,计时准确且功耗低。 提示音电路:采用压电陶瓷蜂鸣器和TTL集成电路7406低电平驱动,在压电蜂鸣器2条引线加上近5V的直流电压,由压电效应而发出蜂鸣音。
软件部分:软件主要包括主程序、温度控制程序、A/D转换程序、中断程序、键盘和显示程序。
2.3 芯片选择
2.3.1 放大器
在温度测量电路中,由于测量输出信号较小,且温度变化范围大,本设计选用了LM358对采集来的信号进行放大,LM358 内部包括有两个独立的、高增益、内部频率补偿的双运算放大器,供电范围很大,可以从3~30V,并且可以用单电供应,也可以用双电供应十分方便;LM358具有低耗电电流的优点,一般为0.7mA;具有电压公共输入端,包括接地,并且允许直接接地;具有低输入偏移和补偿量(输入补偿电压3mV、输入补偿电流2nA、输入偏流2nA);共模输入电压范围宽,在温度检测时,由于温度的变化大,使得温度传感器的输出范围大,相比较其他放大器,LM358更加适合,在设计中,也用到了它的减法作用。
5
长春工业大学人文信息学院毕业设计(论文) 信息工程系
2.3.2 时钟芯片
DS1302芯片是美国DALLAS公司推出的低功耗实时时钟芯片,它采用串行通信方式,只需3条线便可以和单片机通信,并且其片内均含RAM,可增加系统的RAM,DS1302 的时钟校准比较容易。DS1302工作时功耗很低,保持数据和时钟信息时,功耗小于1mW。如图2-2所示,DS1302 有两个电源输入端,其中的一个用来做备用电源,这样避免了由于突然停电而造成时钟停止,因此它非常适合于长时间无人职守的监测控制系统或需经常记录某些具有特殊意义的数据及对应时间的场合。
Vcc2 1 8 Vcc1X1 2 7 SCLKDS1302X2 3 6 I/OGND 4 5 RST
图2-2 DS1302引脚图
LED数码管时钟电路采用AT89S52单片机和DS1302实时时钟芯片,使用5V 电源进行供电,采用24小时计时方式,时、分用四位数码管显示,其中小时、分之间用冒号分开,使用两个按键进行调时,调整过程中被调节的分钟或时钟将进入闪亮状态,看上去非常直观,另外,本设计还具有快速调时功能,当按键一直被按下时,便进入快速调时状态。由于本时钟电路的计时是由芯片DS1302来完成的,计时准确,单片机通过串行通信来控制DS1302工作,同时进行键盘和显示的控制。
2.3.3 A/D转换器
ADC0832是一种8位分辨率、双通道A/D转换芯片,其最高分辨率可达256级,非调整误差为±1LSB,在本课题中,系统的精度为±1℃,温度范围为0~200℃,最大引用误差为1/200=0.005,此A/D转换器的精度为5/28=0.0195V,输入电压范围为0~5V,最大引用误差为0.0195/5=0.0039,小于系统的最大引用误差,所以选用8位A/D转换器即可。ADC0832其内部电源输入与参考电压的复用,使得芯片的模拟电压输入在0~5V之间。芯片转换时间仅为32μs,具有双数据输出可作为
6
长春工业大学人文信息学院毕业设计(论文) 信息工程系
数据校验,以减少数据误差。转换速度快且稳定性能强。独立的芯片使能输入,使多器件挂接和处理器控制变得更加方便,通过D0和D1端口数据输入端,可以轻易地实现通道功能的选择。
2.3.3 扩展芯片
在硬件电路中,由于单片机的接口不够用,为此使用了扩展芯片,Intel8155H芯片内包含有256B的RAM存储器(静态),RAM的存取时间为400ns。2个可编程的8位并行口PA和PB,1个可编程的6位并行口PC,以及1个14位减法定时器/计时器。PA口和PB口可工作于基本输入/输出方式或者选通输入/输出方式。8155H可直接与MCS-51单片机相连,不需要增加任何硬件逻辑。由于8155H既有I/O口又具有RAM和定时器/计时器,因而选用作本课题的外围接口芯片。
7
长春工业大学人文信息学院毕业设计(论文) 信息工程系
第3章 系统硬件设计
3.1 面包机功能
面包生产工艺中,对温度的控制非常严格,在各个阶段所需的温度不同,且受面包辅料成分多少、面包的形状、大小等因素的影响,因此面包机最主要的目的是对面包桶内的温度进行控制,除此之外还实现下述功能: (1)电机转动,搅拌面团,额定功率40W (2)具有预约功能,任意设定开机时间 (3)具有LED 数码显示各阶段工作的时间 (4)整体导电薄膜的轻触式按键设计 (5)超温断电保护并报警功能 (6)系统断电能保护设定数据 (7)自动保温,并显示保温的时间
3.2 电源稳压电路
电源稳压电路是为系统提供稳定电源的,当输出电压发生波动及负载电路发生变化时,为了保证数字电路芯片的逻辑电平不受影响,使面包机能正常的工作,要求电源电压尽量保持稳定,有必要使用稳压芯片。
为了给数字部分的电路提供5 V的稳定电源,选用的是美国德州仪器公司生产的芯片:UA7805和其它两种芯片。UA7805的输入电压范围是7~25 V;输出电压的范围是4.8~5.2 V[2]。该芯片除了具有良好的稳压功能外,还包含过载保护电路、散热电路、限流电路等,电源稳压电路如图3-1所示。
电源电路由变压器、桥式整流器、二极管、滤波电容和集成稳压电路7805、7809、7812组成。变压器将220V交流电压转化成12V低压交流电压,整流电路将低压交流电压整流成全波直流脉动电压。该全波直流脉动电压与滤波电容C1和C2相连,形成较平滑的直流电压。该直流电压送入三端稳压器7812的输入端Vin后,在输出端形成12V直流稳定电压,供AT89S52单片机使用;12V电压不能直接接稳
8
长春工业大学人文信息学院毕业设计(论文) 信息工程系
压器7805,需接一个稳压器7809后才能接7805,否则会烧坏稳压器,这样形成的12V直流稳定电压送入三端稳压器7809,在输出端形成9V直流稳定电压,经过电容和7805后形成5V稳定电压,供单片机和其他电路使用,其中的电容都起到滤波的作用。
在电源部分设计一个开关S1,控制面包机的电源,并有一个电源指示灯LED1,当开关S1断开时,电源关闭,指示灯不亮,当开关S1闭合时,电源接通,单片机等其他电路可以工作。
U617809U7317805+5V3R11KC7C8LED1JP121T1D3-D6IN4007412V14U52S11C1C27812+12V3电源开/关GNDAC220VVinVoutC3C40.01uF0.01uF3GNDC52 图3-1 电源稳压电路图
3.3 数据采集电路设计
3.3.1 温度采集电路
温度传感器的种类比较繁杂,各种不同的温度传感器由于其构成材料、构成方式及测温原理的不同,使得其测量温度的范围、测量精度也各不相同。因此在不同的应用场合,应选择不同的温度传感器。Pt100型铂电阻,在-200~850℃范围内是精度最高的温度传感器之一。与热电偶、热敏电阻相比较,铂的物理、化学性能都非常稳定,尤其是耐氧化能力很强,离散性很小,精度最高,灵敏度也较好。这些特点使得铂电阻温度传感器具有信号强、精度高、稳定性和复现性好的特点。由于在本系统中,测温范围较大,在室温到200℃之间,且要求检测精度高、稳定性好,因此选用铂电阻作为本温度控制系统的温度传感器。
9
20.01uFC60.01uFGNDVinVoutVinVout20.01uF0.01uF500uF0.01uF长春工业大学人文信息学院毕业设计(论文) 信息工程系
铂电阻温度传感器利用金属铂在温度变化时自身阻值也随之改变的特性来测量温度的,当被测介质中存在温度梯度时,所测得的温度为感温元件所在范围内介质层中的平均温度。
Pt100温度传感器为正温度系数热敏电阻传感器,最小置入深度≥200mm;允通电流≤5mA;Pt100温度传感器具有抗振动、稳定性好、准确度高、耐高压等优点,对于精确的温度测量非常重要。Pt100热电阻的分度系数A=3.96847×10?3/℃,0℃时电阻值为100Ω,电阻变化率为0.3851Ω/℃,铂热电阻特性方程为:Rt=R0[1+At+Bt2](3-1)式中,Rt为铂热电阻在t℃时的电阻值;R0为铂热电阻在0℃时的电阻值, B=-5.847×10?7/℃2。应用铂热电阻的特性方程式,每个1℃求取一个相应的Rt,便可得到铂热电阻的分度表。铂热电阻的分度特性表如表3-1。
表3-1 铂热电阻分度特性表
温度 (℃) 电阻值(Ω) 0 100.0 100 139.1 200 177.0 103.9 142.9 180.7 107.9 146.7 186.4 110.8 150.4 188.1 115.7 154.4 191.8 119.7 158.2 195.5 123.4 162.0 159.2 127.4 165.7 202.8 131.3 169.5 206.5 135.2 173.2 210.0 0 10 20 30 40 50 60 70 80 90 热电阻采用三线制接法,在Pt100的一端连接两根引线,另一端连接一根引线,此种引线形式称为三线制热电阻。采用三线制是为了消除连接导线电阻引起的测量误差。这是因为测量热电阻的电路一般是不平衡电路,Pt100作为电桥的一个桥臂电阻,其连接导线也成为桥臂电阻的一部分,这一部分电阻是未知的且随环境温度变化,造成测量误差。采用三线制,将导线一根接到电桥的电源端,其余两根分别接到热电阻所在的桥臂及于其相邻的桥臂上,这样消除了导线线路电阻带来的测量误差,测量精度高于三线制。
测温电路如图3-2,测量温度时,R32、R33、R34、R35和铂电阻组成桥式电路,当温度上升时,Pt100阻值变大,电压改变,输出信号改变,放大电路采用LM358集成运算放大器。经过LM358的信号传输给A/D转换器ADC0832的CH1端,传输给
10
长春工业大学人文信息学院毕业设计(论文) 信息工程系
单片机,单片机根据软件查表法,便可测得面包桶内的温度。
R35100R36100R34100PT100VCCR37R321KR331K1K+5VU4AR2P1.01234CSCH0ADC0832CH1GNDVccCLKD1D08765+5VP1.1P1.2P1.3LM358 图3-2 温度检测电路图
由式(3-1)可知,铂电阻温度传感器在其测量范围内具有非线性,即阻值变化具有饱和特性。为了减少铂电阻的饱和特性给温度测量带来的误差,这里采用最小二乘法对铂电阻的非线性进行优化。在0~800℃之间均匀的抽取100个温度点,对应的铂电阻阻值利用(3-1)式计算出来,然后将此电阻值代入图3-2所示采样电路求得电压值,这样就有100组数据点。对这100组温度和电压数据利用最小二乘法进行拟合,求出温度与电压关系的三次多项式为:
2t=-247.703+2399.380U0-68.165U0+460.117U3 (3-2) 0求解出测温多项式后,在0~800℃之间随机抽取10个点,对此多项式进行检验,其结果如表3-2所示。
11
长春工业大学人文信息学院毕业设计(论文) 信息工程系
表3-2 理论温度与测得温度对照表 实际温度(℃)计算温度(℃)误差(℃) 39.00 38.993 -0.007 117.00 117.019 0.019 195.00 195.013 0.013 273.00 272.995 0.005 351.00 350.982 -0.018 429.00 428.982 -0.018 507.00 506.996 -0.004 624.00 624.023 0.023 702.00 702.019 0.019 780.00 779.961 -0.039
由上表可以看到经过最小二乘法优化之后,(3-2)式误差绝对值的最大值仅为0.039℃,测量精度已经满足系统的要求。
3.3.2 质量检测电路
压力传感器用来测量面粉等原料的质量,由一个压力传感器和相应的放大电路组成,如图3-3所示。
压阻式压力传感器采用集成电路工艺技术,在硅片上制造出四个等值的薄膜电阻并组成电桥电路,当不受力作用时,电桥处于平衡状态,无电压输出;当受到压力作用时,电桥失去平衡而输出电压,且输出的电压与压力成比例,引出的压力信号接ADC0832的输入端CH0,信号经过A/D转换器后转换为数字信号,传输给单片机。
本设计使用的压力传感器,其有全温度补偿及标定(-10~80℃),传感器经过特殊加工处理,用坚固的耐高温塑料外壳封装,适合高温时的质量检测。
12
长春工业大学人文信息学院毕业设计(论文) 信息工程系
R231KR251KR221KVD1R2610K+5VR301K+5VR2710KR281KR29AR1LM358P1.01234U4CSCH0ADC0832CH1GNDVccCLKD1D08765+5VP1.1P1.2P1.3R241KVT1VT21KC130.1uFVD2
图3-3 质量检测电路图
R315.1K3.4 电机搅拌电路
面包在烘烤前要进行搅拌,采用电机带动搅拌棒实现。单片机接收压力传感器给出的信号,得到一个数据,单片机根据质量信号控制时钟芯片的时间和控制电机转动。为实现简化,根据经验设定电机的转速,控制时间来实现原料的均匀搅拌。时间随原料质量变化的关系如表3-3。
表3-3 时间和转速与原料质量的关系 (转速:35r/min) 质量(g) 450 500 550 600 650 700 时间(min) 4.5 5.0 5.5 6.0 6.5 7.0
由表3-3可知时间与转速的数学关系式:
t=0.01m (450g?m?700) (3-3)
单片机根据公式将压力传感器得到质量信号转换为电机的转动时间,从而实现自动定时搅拌的功能。
电机采用直流减速电机,额定电压12V,功率为40W。如图3-4,通过直流继电器的闭合来控制电机的转动,继电器型号为XSSR-DD2510,允许最大电流可为10A,继电器由晶体管驱动,动作由AT89S52的P2.5端控制。P2.5端输出高电平时,继电器K1吸合,电机转动;P2.5端输出低电平时,继电器K1释放,电机停
13
长春工业大学人文信息学院毕业设计(论文) 信息工程系
止转动。
继电器K1由晶体管8050驱动,8050可以提供1.5A的驱动电流,适用于继电器线圈工作电流小于1.5A的场合。二极管D1的作用是保护晶体管8050。当继电器K1吸合时,二极管D1截止,不影响电路工作。继电器释放时,由于继电器线圈存在电感,这是晶体管8050已经截止,所以会在线圈的两端产生较高的感应电压。这个感应电压的极性是上负下正,正端接在8050的集电极上。当感应电压与12V之和大于晶体管8050的集电结反向耐压时,晶体管8050就有可能损坏。加入二极管D1后,继电器线圈产生的感应电流由二极管D1流过,因此不会产生很高的感应电压,晶体管8050得到了保护。
C930pFY211.059MHzC1030pFU1P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST(RXD)P3.0(TXD)P3.1(INT0)P3.2(INT1)P3.3(T0)P3.4(T1)P3.5(WR)P3.6(RD)P3.7XTAL2XTAL1GNDAT89S52VccP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EAALEPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0+5VR17+5V510+5R1810KD18050414814MG1+12VK1M图3-4 电机控制电路图
3.5 加热电路
加热器电路由三极管、二极管、继电器和发热板组成,发热板是云母电热丝,型号是YK120,额定功率为650W。加热器放置在面包桶底部,利用220V电压进行供电。通过控制继电器的的吸合和断开来控制加热丝工作的启停动作,加热时间由DS1302来计算,其电路图如图3-5。
14
长春工业大学人文信息学院毕业设计(论文) 信息工程系
C930pFY211.059MHzC1030pFU1P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST(RXD)P3.0(TXD)P3.1(INT0)P3.2(INT1)P3.3(T0)P3.4(T1)P3.5(WR)P3.6(RD)P3.7XTAL2XTAL1GNDAT89S52VccP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EAALEPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0+5V+12R19330R2010K+58050+5VK2D24148K3JP212R38YK120AC220V图3-5 加热电路图
加热电路利用继电器的常开触点来作为接通加热器的开关,采用了三极管8050作为对继电器线圈的控制端。当8050中的三极管导通时,继电器线圈中将有电流流过,使常开触点动作,接通加热器开始加热。二极管D24的作用是为继电器触点动作时产生的动态电压有一个放电的通路。对继电器动作与否的总控信号是AT89S52的P2.2口线。当CPU的输出引脚P2.2输出高电平时,三极管导通,继电器通电,吸合开关K,发热板开始工作;当输出引脚输出低电平时,三极管截止导通,继电器不通电,发热板停止工作。
3.6 键盘和显示电路
设计用芯片8155扩展AT89S52的I/O接口,实现4位LED显示和6按键的键盘/显示接口电路。
键盘电路如图3-6,按键用独立式键盘,如果设置过多按键,将会占用较多I/O口,而且会给布线带来不便,因此,适用于按键较少的情况,在修改时间或设置预约时间时就不能直接输入,只能通过加或减完成,电路相对麻烦,但其程序简单。
15
长春工业大学人文信息学院毕业设计(论文) 信息工程系
U212131415161718197910118AD0AD1AD2AD3AD4AD5AD6AD7IO/MRDWRALECEPB0PB1PB2PB3PB4PB5PB6PB7PC0PC1PC2PC3PC4PC5VCCPA0PA1PA2PA3PA4PA5PA6PA7+5V4021222324252627282930313233343536373839125+5VR21KR31KR41KR51KLED5LED2LED3LED4预约S2快速S3慢速S4启动/停止加减S6S7S563420TIMEROUTTIMERINRESETGND8155图3-6 键盘电路图
键盘选用不同的按键实现不同的功能,本设计有一个单独的电源开关S1,且并有一个LED1指示灯。预约时间、快速烘烤、慢速烘烤和启动按键,分别使用了单刀开关S2、S3和S4,与指示灯一起工作,方便简单,无菜单等繁琐联级功能;预约时间的加减时间按键使用按压式的开关。键盘采用编程扫描工作方式,方法是扫描8155的口PA1~PA6,若有端口为1,单片机扫描到该对应的按键闭合,根据编程实现不同的功能。
显示采用数码管动态显示,选用四联共阳数码管,型号是LG5641BH,这个数码管中间带有冒号,是专门用来显示时间的数码管。电路如图3-7,采用AT89S52与8155接口,用8155的I/O控制数码管的段码和位码,同时,采用动态扫描方式点亮各位数码管。
8155的B口控制段码输出,C口控制位码输出,采用定时器中断方式实现动态扫描,每隔20ms扫描一次,每位数码管点亮的时间为1ms。在单片机内部RAM设置待显示数据缓冲区,由查表程序完成显示译码,将缓冲区内待显示数据转换成相应的段码,再将段码通过AT89S52的P0口送至8155的B口;位码数据由累加器指令产生,在通过P0口送至8155的C口,分别控制LED的显示。
16
长春工业大学人文信息学院毕业设计(论文) 信息工程系
R6R7510510R8U2+5V4021222324252627282930313233343536373839125123456789510×9R951090129012901290129012R11510R12510R13510R14510R15510+5V 12131415161718197AD0AD1AD2AD3AD4AD5AD6AD7IO/MRDWRALECEPB0PB1PB2PB3PB4PB5PB6PB7PC0PC1PC2PC3PC4PC5VCCPA0PA1PA2PA3PA4PA5PA6PA7R105105101411106DS1D1D2D3D4910118 6342018131791641521411312125113108abcdefgdpd-dpTIMEROUTTIMERINRESETGND8155图3-7 显示电路图
3.7 提示音电路
提示音接口电路可以用发光二极管、蜂鸣器、音乐芯片,发光二极管不够直观,音乐芯片供电不方便,而且包装困难,蜂鸣器简单易用,本设计采用简单的压电式蜂鸣器,通过单片机一根口线经过驱动器驱动蜂鸣器发生。压电式蜂鸣器约需10mA的驱动电流,可以使用TTL系列集成电路7046或7047低电平驱动。在正常工作阶段,温度传感器采集的温度与该参数上限给定值进行比较,如果高于上限值则进行报警,且切断电源,否则就作为采样的正常值,进行显示和控制;当烘烤时间结束,单片机控制报警接口线而发出提示音。
在图3-8中,AT89S52的口线P3.5接驱动器的输入端。当P3.5输出高电平时,7046的输出为低电平,在压电蜂鸣器2条引线上加上近5V的直流电压,有压电效应而发出蜂鸣音。当P3.7端输出低电平时,7046的输出端高约+5V,压电蜂鸣音的2条引线间的直流电压降至接近于0V,发音停止。
17
D5R167长春工业大学人文信息学院毕业设计(论文) 信息工程系
LS1U1P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST(RXD)P3.0(TXD)P3.1(INT0)P3.2(INT1)P3.3(T0)P3.4(T1)P3.5(WR)P3.6(RD)P3.7XTAL2XTAL1GNDAT89S52VccP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EAALEPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0+5V 3174LS06+5V
C1630pFY2+5V C1730pF
图3-8 提示音电路图
18
长春工业大学人文信息学院毕业设计(论文) 信息工程系
第4章 软件设计
面包机的软件由主程序、中断程序、A/D转换程序、显示程序、键盘程序和温度控制程序组成。
4.1 主程序设计
主程序主要完成何时调用其它子程序并执行其输出结果的功能,流程图如图4-1。
初始化所有参数开始显示子程序键盘子程序数据处理控制电机 时间到?Y采集温度N稳定控制算法程序N 是否加热?Y加热且时间到是否保温?N结束Y保温图4-1 主程序流程图 19
长春工业大学人文信息学院毕业设计(论文) 信息工程系
程序启动后,调用显示程序显示0,当有按键时,调用键盘子程序,进行相应的键盘处理后,通过A/D转换器后采集质量信号,单片机用软件查表法得到搅拌的时间,由单片机控制显示器,显示工作的时间,系统进入待机状态,调用温度控制程序,将设定温度与采集到的温度进行比较,控制加热系统,控制温度在设定值,如有温度高于上限值,则报警,烘烤结束启动定时器中断报警。
4.2 中断服务程序设计
时间计时、键盘检测、显示器的显示、系统故障和提示音等全程变量的实时监测用中断服务来实现。开机进行单片机中断初始化,设置外部中断和定时器中断的工作模式,当程序进行时,有中断发生,则进入相应的中断子程序,完毕后返回。其流程图如图4-2。
图4-2 中断服务程序流程图
20
中断?Y进入中断N采样开始初始化外部中断设置工作模式初始化定时器设置定时器工作模式设置初值长春工业大学人文信息学院毕业设计(论文) 信息工程系
4.3 A/D转换程序设计
图4-3是A/D转换子程序流程图。AT89S52给出一个脉冲信号启动A/D转换后,AD7705对接受到的模拟信号进行转换,这个转换过程大约需要100 ns,系统采用的是固定延时程序,所以在预先设定的延时后,AT89S52直接从AD7705中读取数据。
开始初始化启动转换采集次数-1EOC=1?NY读转换结果N已采集10次?Y数据处理 返回 图4-3 A/D转换程序流程图
21
长春工业大学人文信息学院毕业设计(论文) 信息工程系
4.4 温度控制程序设计
由于来自外界的各种扰动不断产生,想要达到面包桶内温度保持恒定的目的,控制作用就必须不断的进行。本课题采用PID控制算法,其控制作用是按偏差的比例积分微分来形成控制量,去控制被控对象,使对象输出趋于给定,实现恒温加热。
首先比较实际温度值与设定温度之间的偏差值,偏差作为PID控制器的输入,根据PID计算公式,其结果为控制器的输出,送到加热功率驱动电路,来控制温度。简单的说就是当面包桶内的温度高于设定值时,我们就通过单片机使加热丝断开使温度降低,趋近设定的温度值,当面包桶内的温度低于设定值时,我们就通过单片机控制加热丝使温度升高。总之,如果偏差存在,PID就会对加热功率驱动电路来进行调整,直到偏差为零,其间,如果采集的大于220℃,则系统报警,流程图如图4-4。
22
长春工业大学人文信息学院毕业设计(论文) 信息工程系
算出加热控制差检测温度与设定值有偏差?Y打开A/D设置偏差计算公式设置微分常数Kd设置比例常数KI设置温度值T0初始化外部中断0开始初始化A/D设置温度值KpN?u?T0-T1 控制加热器调节温度N检测达到设定值?Y结束 图4-4 温度控制算法程序流程图
23
长春工业大学人文信息学院毕业设计(论文) 信息工程系
4.5 显示程序设计
显示采用数码管动态显示,用8155的I/O控制数码管的段码和位码,8155的B口控制显示器段码,C口控制位码,采用定时中断方式实现动态扫描,每隔20ms扫描一次,定时是由DS1302来完成的,主程序读键盘信号,判断按键并启动DS1302, ,时间倒计时,时钟显示程序流程图如图4-5所示。
显示缓冲器指针R0加1延迟1ms取显示数据查表转换为段码→8155B口R3→8155C口扫描模式置初值显示器缓冲区指针置初值开始 (R3).3=1?Y N R3左移1位 返回图4-5 显示子程序流程图
24
长春工业大学人文信息学院毕业设计(论文) 信息工程系
4.6 键盘程序设计
本设计的键盘有六个按键,去除键的机械抖动,其方法为判别出键盘上有键闭合后,延迟一段时间在判别键盘的状态,若仍有键闭合,则认为键盘上有一个键处于稳定的闭合期,否则认为是键的抖动。判别闭合键的键号,方法为对键盘进行逐列扫描,扫描口PA1~PA6,相应地依次读PA口的状态,若PA口为1,对应的键闭合,其流程图如图4-6。
N闭合键放否?YN有键闭合?Y判断闭合按键号→堆栈2次调用显示子程序延迟12ms调用显示子程序延迟6ms有键闭合?NY开始 输入键盘→A
返回图4-6 键盘子程序流程图
25
长春工业大学人文信息学院毕业设计(论文) 信息工程系
结 论
本课题围绕家用面包机进行了设计,得到了以下结论:
(1)通过对Pt100热电阻温度传感器和三线制接线的方法,与A/D转换器,加热器配合实现了面包机的温度控制精度为±1℃。并根据面包原料质量的不同,采用高精度压力传感器检测质量,对原料设置不同的时间进行搅拌,实现了均匀搅拌面团的目的。根据经验选择了直流减速电机,并且确定了减速比为90,额定转速为35r/min,根据经验列出的表格确定搅拌电机的转速为35r/min。
(2)家用面包机控制系统硬件部分主要是数据采集电路和电机控制电路和加热电路,数据采集实现温度和质量的检测,采用了具有低输入偏移和补偿量的放大器,达到所需的精度。采用了最小二乘法对温度的非线性进行优化,控制算法采用了增量式PID,提高控制精度。
家用面包机控制系统适应了市场需要,尽量选取典型的、易于扩展和替换的芯片机器件,生产成本低,功能齐全且性能好,在实际生产生活中有一定的应用价值。
26
长春工业大学人文信息学院毕业设计(论文) 信息工程系
参 考 文 献
[1] 王珍梅.COP8单片机控制的全自动家用面包机[J].山西科技,2003(3):78~80
[2] 王海宁.基于单片机的温度控制系统的研究[D].合肥:合肥工业大学硕士学位论文,2008,11~15
[3] 杨占军.基于DS1302的数码管时钟电路设计[J].单片机与可编程器件,2005(9):35~36
[4] 张建民,杨旭.利用单片机实现温度检测系统[J].微计算机信息,2007(2):20~25
[5] 张先臣,王冬云.基于DS1302的太阳能热水器智能控制器的设计[J].自动化技术与应用,2006,25(2):79~81.
[6] 周正林,张昕.基于单片机的电炉温度控制系统设计[J].信息技术,2005(12):15~20.
[7] 余剑敏.PID温度控制系统的设计[J].科学实践,2009,4(8):285~296. [8] 董慧敏,赵文俊,张安年.自整定PID温度控制系统的设计[J].自然科学版,2007(2):37~39
[9] M.M.KailaHigh.Temperature Superconductor THZ Thermal Sensors and Coolers[J].Incorporating Novel Magnetism,2005(4):1~5
[10] Hidetoki Wakamatsu,Takuya Wakatsuki,Tomohiko Utsuki.Comparison of Fuzzy Control Systems for Hypothermal Brain Temperature Regulation[J].Artif Life Robotis, 2007(11):183~189
[11] A.D.Semenov, G.N.Gol'tsman,
R.Sobolewski.Superconduct[J].Science and Technology,2007(1):431~434
[12] M.Lindgreen,M.Currie,C.Williams.Hegman.ThermalSensors.Applphys -Lett,2008(6):36~38
[13] Shinji Yoshiida,Yoshikatsu Okamoto.Time Changeable Device for An Automatic
Baking
Machine.
Market
Information
of
Household
Appliance[N] ,2008,11(3):4~6
27
长春工业大学人文信息学院毕业设计(论文) 信息工程系
[14] S.P.Ghoshal.Application of GA/GA-SA Based Fuzzy Automatic Generation Control of A Multi-area Thermal Generating System.Department of ElectricalEngineering,National Instituteof Technology[J],2005(2):115~127
[15] Katsuhiko Ogata.Moden Control Engineering.Publishing House of Electronic Industry[J], 2000(1):96~102.
28
长春工业大学人文信息学院毕业设计(论文) 信息工程系
附录 程序清单
//-----------------------------------------------------------------//
ORG 0000H AJMP 0100H PtSL EQU 35H PtSH EQU 36H PtFIG EQU 37H A_BIT1 EQU 38H B_BIT1 EQU 39H B_BIT1 EQU 40H D_BIT1 EQU 41H PtCD1 EQU 42H PtCD2 EQU 43H PtCD3 EQU 44H PtCD4 EQU 45H PtCD5 EQU 46H PtCD6 EQU 47H PtCD7 EQU 48H PtCD8 EQU 49H Pt64B EQU 4AH PtADS EQU 4BH PtDQ EQU P1.0
MOD7: MOV SP,#60H
LCALL GET_MASS AJMP MOD6 LCALL GET_MASS LCALL READCODE
29
主程序
长春工业大学人文信息学院毕业设计(论文) 信息工程系
AJMP MOD7
INIT_Pt:SETB PtDQ
CLR PtDQ MOV R7,#250 DJNZ R7,$ MOV R7,#150 DJNZ R7,$ SETB PtDQ LCALL DELAY60US MOV R6,#4
SETDSDQ:LCALL DELAY60US
JNB PtDQ,SETDSDQFH DJNZ R6,SETDSDQ MOV R7,#250 DJNZ R7,$ CLR PtFIG RET
SETDSDQFH:SETB PtFIG
MOV R7,#250 DJNZ R7,$ MOV R7,#100 DJNZ R7,$ RET TEMP0:INC A
AJMP TEMP1
TEMPCOV:MOV A, PtSL TEMPCOV:MOV B,#16
DIV AB JB B.3,TEMP0
TEMP1: MOV 34H,A 34H
30
长春工业大学人文信息学院毕业设计(论文) 信息工程系
MOV A,B MOV B,#10 MUL AB MOV B,#16 DIV AB MOV 30H,A MOV A, PtSH MOV B,#16 MUL AB ADD A,34H MOV B,#10 DIV AB MOV 31H,B MOV B,#10 DIV AB MOV 32H,B MOV B,#10 DIV AB MOV 35H,B MOV A, PtSH MOV 33H,#10H JB ACC.7,EXIT7 MOV 33H,#00H EXIT7:RET GET_TEMPER: SETB PtDQ
LCALL INIT_Pt JB PtFIG,TSS2 RET
TSS2: MOV PtADS,#0 PtJX:LCALL PtCODP
31
长春工业大学人文信息学院毕业设计(论文) 信息工程系
MOV A, PtADS ADD A,#9 MOV PtADS,A CJNE A,#63, PtJX RET
PtCODP:LCALL MRCOVT
LCALL MRRDTEDP RET
TEMP:LCALL INIT_Pt
JB PtFIG,NEXT4 RET
NEXT4:MOV PtADS,#9
MOV A,#0CCH LCALL WRITE_Pt MOV A,#44H LCALL WRITE_Pt LCALL DELAY1S LCALL MRRDTEDP RET
WRITE_Pt:MOV R5,#8 PtJXWE:SETB PtDQ
CLR PtDQ CLR PtDQ MOV R7,#5 DJNZ R7,$ CLR C RRC A MOV PtDQ,C LCALL DELAY60US SETB PtDQ
32
长春工业大学人文信息学院毕业设计(论文) 信息工程系
DJNZ R5, PtJXWE RET
READ_Pt_CODE:MOV R4,#8 MOV R1,# PtCD1
PtJXRD3:MOV R5,#8 PtJXRD2:SETB tDQ
CLR PtDQ NOP NOP SETB PtDQ MOV R7,#5 DJNZ R7,$ MOV C, PtDQ RRC A
LCALL DELAY60US DJNZ R5, PtJXRD2 MOV @R1,A INC R1
DJNZ R4, PtJXRD3 SETB PtDQ RET
READ_Pt:MOV R4,#2 MOV R1,#DS18SL
PtJXRD1: MOV R5,#8
PtJXRD: SETB PtDQ CLR PtDQ NOP
NOP
SETB PtDQ
MOV R7,#5
33
长春工业大学人文信息学院毕业设计(论文) 信息工程系
DJNZ R7,$ MOV C, PtDQ RRC A
LCALL DELAY60US DJNZ R5, PtJXRD MOV @R1,A DEC R1
DJNZ R4, PtJXRD1 SETB PtDQ RET READ_Pt_1: SETB PtDQ CLR PtDQ CLR PtDQ
CLR PtDQ SETB PtDQ MOV R7,#5 DJNZ R7,$ JB PtDQ,WEFH LCALL DELAY10MS WEFH:LCALL DELAY60US
RET
READCODE: SETB PtDQ
LCALL INIT_Pt JB PtFIG,NEXT RET
NEXT:MOV A,#33H
LCALL WRITE_Pt LCALL READ_Pt_CODE LCALL DISPLAYCD RET
34
长春工业大学人文信息学院毕业设计(论文) 信息工程系
Pt64SEN:MOV R4,#8
MOV DPTR,# PtTAB
Pt64SEN1:MOV A, Pt64B
MOVC A,@A+DPTR LCALL WRITE_1820 INC Pt64B DJNZ R4, Pt64SEN1 RET
MATCHROM:LCALL INIT_Pt
MOV A,#55H LCALL WRITE_Pt MOV Pt64B, PtADS LCALL Pt64SEN RET
MRCOVT:LCALL MATCHROM
MOV A,#44H LCALL WRITE_Pt LCALL DELAY1S RET
MRRDTEDP:LCALL INIT_Pt
LCALL MATCHROM MOV A,#0BEH LCALL WRITE_Pt LCALL READ_Pt LCALL TEMPCOV LCALL DISPLAY RET
//-------------------------------------------------------------------------------------------------//
35
断程序中长春工业大学人文信息学院毕业设计(论文) 信息工程系
ORG 0000H LJMP TIM ORG 000BH LJMP TIME0 ORG 0100H TIM: MOV A,#0FFH
MOV R2,#0 MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H SETB ET0 SETB EA SETB TR0 L0:MOV P2,A
SJM P L0 TIME0:MOV TH0,#3CH
MOV TL0,#0B0H INC R2 CJNE R2,#20,L1 CPL A MOV R2,#0 L1:RETI
END
//-------------------------------------------------显示子程序
--------------------------------------------// DISPLAY:MOV R0,#79H MOV R3,#01H MOV A,R3
LD0:MOV DPTR,#7F01H
36
长春工业大学人文信息学院毕业设计(论文) 信息工程系
MOV @DPTR,A INC DPTR MOV A,@R0 ADD A,#0DH
MOVC A,@A+PC
DISPLAY1:MOVX @DPTR,A ACALL DL1ms INC R0 MOV A,R3
JB ACC.5,DISPLAY1
RL A
MOV R3,A
AJMP LD0
DISPLAY 1:RET
DSEG: DB 0c0H,0fgH,0a4H,0b0H,99H
DB 92H,82H,0f8H,80H,90H DISPLAY 1ms:MOV R7,#02H
DL:MOV R6,#0FFH DL6:DJNZ R6,DL6
DJNZ R7,DL RET
//--------------------------------------------------AD转换程序
-------------------------------------------//
ADCS BIT P1.0 ADCLK BIT P1.1 ADD0 BIT P1.3 ADD1 BIT P1.2 MOV B,#00H ADCONV:SETB ADD1
37
长春工业大学人文信息学院毕业设计(论文) 信息工程系
NOP NOP CLR ADCS NOP NOP
SETB ADCLK NOP NOP CLK ADCLK
MOV A,B MOV C,ACC.1
MOV ADD1.C NOP NOP SETB ADCLK NOP NOP CLR ADCLK MOV A,B MOV C,ACC.0 MOV ADD1.C NOP NOP SETB ADCLK NOP NOP CLR ADCLK SETB ADD1 NOP NOP
38
长春工业大学人文信息学院毕业设计(论文) 信息工程系
MOV R7,#8 AD_1: MOV C,ADD0
MOV ACC.0,C RL A SETB ADCLK NOP NOP
DJNZ R7,AD_1 MOV C,ADD0 MOV ACC.0,C MOV B,A MOV R7,#8 AD_13:MOV C,ADD0
MOV ACC.0,C RR A SETB ADCLK NOP NOP CLR ADCLK NOP NOP
DJNZ R7,AD_13 CJNE A,B,ADCONV SETB ADCS CLR ADCLK SETB ADD0 RET
//------------------------------------------------键盘子程序
-----------------------------------------------//
39
长春工业大学人文信息学院毕业设计(论文) 信息工程系
KEY1: ACALL KS1 JNZ LK1
NI:ACALL DIR
AJMP KEY1
LK1:ACALL DIR
ACALL DIR ACALL KS1 JNZ LK2 ACALL DIR
AJMP KEY1 LK4:MOVX A,@DPTR
JB ACC.0,LONE MOV A,#00H AJMP LKP
LONE:JB ACC.1,LTW0
MOV A,#08H
AJMP LKP
LTW0:JB ACC.2,LTHR
MOV A,#10H AJMP LKP
LTHR:JB ACC.3,NEXT
MOV A,#18H
LKP:ADD A,R4
PUSH A
LK3:ACALL DIR
ACALL KS1 JNZ LK3 POP A RET
KS1:MOV DPTR,#7F01H
40
长春工业大学人文信息学院毕业设计(论文) 信息工程系
INC DPTR INC DPTR
MOVX A,@DPTR CPL A ANL A,#0FH RET
//---------------------------------PID算法程序---------------------------//
PID:MOV R5,31H MOV R4,32H
MOV R2 ,#00H ACALL CPL1 ACALL DSUM MOV 39H ,R7 MOV 3AH ,R6 MOV R5 ,35H MOV R4 ,36H MOV R0 ,#4AH ACALL MULT1 MOV R5 ,39H MOV R4 ,3AH MOV R3 ,3BH MOV R3 ,3CH ACALL CPL1 ACALL DSUM MOV R5 ,33H MOV R4 ,DSUM MOV R0, #46H ACALL NULT1
41
MOV R3,2AH
长春工业大学人文信息学院毕业设计(论文) 信息工程系
MOV R5 ,49H MOV R4 ,48H MOV R3 ,4DH MOV R2 4CH ACALL DSUM MOV 4AH ,R7 MOV 4BH,R6 MOV R5,39H MOV R4,3AH MOV R3,3DH MOV R2,3EH ACALL DSUM MOV R5,R7 MOV R4,R6 MOV R3,3BH MOV R2,3CH ACALL CPL1 ACALL DSUM MOV R5,R7 MOV R4,R6 MOV R3,3BH MOV R2,3CH ACALL CPL1 ACALL DSUM MOV R5,37H MOV R4,38H MOV R0,#46H ACALL MULT MOV R5,49H MOV R4,48H
42
长春工业大学人文信息学院毕业设计(论文) 信息工程系
MOV R3,4AH MOV R2,4BH ACALL DSUM MOV R3,R7 MOV R2,R6 MOV R5,2FH MOV R4,30H ACALL DSUM MOV 2FH,R7 MOV 30H,R6 MOV 3DH,3BH MOV 3EH,3CH MOV 3BH ,39H MOV 3CH,3AH RET
43