基于单片机的温度控制系统毕业设计
《基于单片机的温度控制系统毕业设计》由会员分享,可在线阅读,更多相关《基于单片机的温度控制系统毕业设计(53页珍藏版)》请在装配图网上搜索。
1、基于单片机的温度控制系统毕业设计 XXXXXXXX毕业设计题目基于单片机的温度控制系统姓 名 X X X 学 院 电气工程与自动化摘 要随着国民经济的发展人们需要对各种加热炉热处理炉反应炉和锅炉中温度进行监测和控制采用单片机来对他们控制不仅具有控制方便简单和灵活性大等优点而且可以大幅度提高被控温度的技术指标从而能够大大的提高产品的质量和数量为了适应工业控制发展的需要本文在分析单片机对电加热炉温度控制的基础上将整个系统分为温度测量AD转换单片机系统键盘操作系统温度显示电路报警电路DA转换等若干个功能模块同时分别阐述其结构体系工作原理设计集成方法以及它们之间的共性和特点由于温控技术与自动化技术的发
2、展非常迅速本文一方面结合实际应用经验力求做到较为系统和全面的介绍系统设计与实施技术另一方面尽可能反应出温控系统的发展趋势以及其先进性和实用性本设计的控制对象为电加热炉通过控制加在电阻丝两端电压的工作时间来对电阻丝输出的平均功率加以控制以单片机为核心采用固态继电器控温电路实现对电炉的自动控制本文将采用PID控制阐述了PID控制器的设计硬件结构和软件设计实现了一套温度采集和控制的方案该系统具有硬件成本低控温精度较高可靠性好抗干扰能力强等特点关键词电加热炉单片机温度控制固态继续电器目 录前 言1第一章 单片机温度控制系统方案简介2第二章 单片机的选型421 MCS51单片机内部结构与功能422 MC
3、S51输入输出端口的结构与功能523 MCS51单片机的引脚及其功能524 MCS51的存储器结构6241 程序存储器7242 数据存储器725 8031系统扩展计划8251 单片机外总线结构8252 MCS51系列单片机的扩展10253 芯片的扩展设计11第三章 带有IO接口和计时器的静态RAM81551331 8155的结构1332 8155的引脚功能1333 8155的命令格式与状态字1534 8155 IO端口的应用1635 MCS51和8155的接口方法16第四章 ADC0809转换芯片1741 ADC0809的引脚1742 ADC0809的内部组成1843 ADC0809与系统总线
4、的连接2044 ADC0809与8031的接口20第五章 温度的检测和控制2251 温度检测元件的选择2252 变送器2353 温度的控制24第六章 温度控制程序和算法2661 温度控制的算法2662 温度控制程序2663 T0中断的服务程序CT02864子程序3165 PID算法程序34651 PID算法程序34652双字节带符号乘法子程序MUL137结论40参考文献41致谢42前 言在现代化的工业生产中温度是常用的主要被控参数例如在冶金工业化工生产电力工程造纸行业机械制造和食品加工等诸多领域中人们都需要对各类加热炉热处理炉反应炉和锅炉中的温度进行检测和控制虽然温度控制系统的制作方案有很多但
5、是经过对比各个方案的优劣还是采用单片机更好因为采用单片机来对温度进行控制不仅具有控制方便组态简单和灵活性大等优点而且可以大幅度提高被控温度的技术指标从而能够大大提高产品的质量和数量因此单片机对温度的控制问题是一个工业生产中经常会遇到的问题单片机体积小功能齐全价格低廉可靠性高等方面具有独特的优点在各个领域获得了广泛的应用在我国近几年单片机的应用研究发展进展很快特别是在工业控制智能化仪表产品自动化分布式控制系统中都已取得了一些可喜的成果现在一个学习和应用单片机的热潮正在一些工厂企业科研单位高等院校中兴起本设计使用单片机8031作为核心进行控制加热器件是电炉丝功率为三千瓦要求温度在4001000静态
6、控制精度为243算法采用目前工业生产过程控制系统中应用最广泛的PID算法并利用测量误差改变调节器步长的方法实现PID参数的自动整定在温度曲线控制中取得了非常满意的效果本设计说明书共有六章第一章温度控制系统方面简介第二章单片机的选型介绍主芯片的选择第三章介绍主芯片端口的扩张芯片8155第四章主要对模数转换芯片ADC0809的介绍第五章是对温度检测和变送器的设计第六章是对温度控制电路的设计第七章是软件设计包括主程序子程序滤波程序等程序的设计希望本设计说明书能给大家带来帮助第一章 单片机温度控制系统方案简介单片机温度控制系统是数控系统的一个简单应用在冶金化工建材机械食品石油等各类工业中广泛使用着加热
7、炉热处理炉反应炉等因此温度是工业对象中一个主要的被控参数由于炉子的种类不同因而所使用的燃料和加热方法也不同例如煤气天然气油电等由于工业不同所需要的温度高低不同因而所采用的测温原件和测温方法也不同产品工业不同控制温度的精度也不同因而对数据采集的精度和所采用的控制算法也不同本系统所使用的加热炉为电加热路炉丝功率为2kw系统要求炉膛恒温误差为VC超调量可能小温度上升较快且有良好的稳定性单片机温度控制系统是以MS51单片机为控制核心辅以采样反馈电路驱动电路晶闸管主电路对电炉炉温进行控制的微机控制系统其系统结构框图可表示为系统采用单闭环形式其基本控制原理为将温度设定值即输入控制量和温度反馈值同时送入控制
8、电路部分然后经过调节器运算得到输出控制量输出控制量控制驱动电路得到控制电压施加到被控制对象上电炉因此达到一定的温度其控制电路如图11所示图11 控制电路的设计系统控制主电路是由8031及其外围芯片及一些辅助的部分构成的其系统设计原理图如12所示12 系统设计原理图第二章 单片机的选型单片微机是单片微型计算机SCMC single chip micro computer 的译名简称在国内也常简称为单片机它包括中央处理器CPU随机存储器RAM只读存储器ROM中断系统定时器计数器串行口和IO等等单片机主要应用于工业控制领域用来实现对信号的检测数据的采集以及对应用对象的控制由于单片机扩展了各种控制功能
9、如ADPWM计数器的捕获比较逻辑高速IO口WDT等以突破了微型计算机传统的内容所以更准确的反映其本质的叫法应是微控制器它具有体积小重量轻价格低可靠性高耗电少和灵活机动等许多优点因此如果能利用微型计算机进行温度的测量和控制将会大大提高温度测控的可靠性和灵活性单片微型计算机简称单片机是微型计算机的一个重要分支也是一种非常活跃和颇具生命力的机种特别适合用于智能控制系统与PC机用于控制系统相比其具有明显的性能价格比21 单片机在本设计中从经济上以及性能上考虑我选用8031作为CPU8031是MCS51系列单片机的一种型号MCS51单片机的类型有805180318751等8051内部有4K ROM875
10、1内部有4K EPROM8031片内无ROM除此之外三者内部结构引脚完全相同21 MCS51单片机内部结构与功能8051单片机内部结构见图21含CPU震荡器和时序电路4KB的ROM256B的RAM两个16定时计数器T0和T14个8位IO端口P0P1P2P3串行口等组成其中震荡时序与时钟组成定时控制部件图21 单片机功能方框图22 MCS51输入输出端口的结构与功能MSC51单片机有4个IO端口共32根IO线4个端口都是准双向口每个口都包含一个锁存器即专用寄存器P0P3一个输出驱动器和输入缓冲器为方便起见我们把4个端口和其中的锁存器都统称P0P3 在访问片外扩展存储器时低8位地址和数据由P0口分
11、时传送高8位地址由P2口传送在无片外扩展存储器的系统中者4个口的每一位均可作为双向的IO口使用P0口可作为一般的IO口使用但应用系统采用外部总线结构时它分时作低8位地址和8位双向数据总线用P1口每一位均可独立作为IO口P2口作为一般IO口用但应用系统采用外部系统采用总线结构时它分时作为高8位地址线P3口双功能口作为第一功能使用时同P1口每一位均可独立作为IO口另外每一位均具有第二功能每一位的两个功能不能同时使用23 MCS51单片机的引脚及其功能MCS51单片机采用40引脚的双例直插封装形式如图22所示22 CS-51引脚图主电源引脚VCC和VSSVCC40脚主电源5V正常操作的对EPROM编
12、程及验证时均接5V电源VSS20脚接地XTAL119脚和XTAL218脚接外部晶振的两个引脚RSTVPDALE 控制信号引脚RSTVPD 9脚 单片机复位备用电源引脚刚接上电源时其内部寄存器处于随机状态在引脚上输入持续两个机器周期的高电平见使单片机复位VCC掉电期间此引脚可接上备用电源一旦芯片在使用中VCC电压突然下降或断电能保护片内RAM中信息不丢失使恢复电后能继续正常进行 ALE30脚当访问片外存储器时ALE的输出用于锁存字节地址信号即使不访问片外存储器ALE端仍以不变的频率周期性地出现脉冲信号其频率为振荡器频率16因此它可用作对外输出的时钟或用于定时的目的应注意的是当访问片外数据存储器时
13、将跳过一个ALE脉冲ALE端可以驱动8个LSET负载对含有EPROM的单片机片内EPROM编程期间此引脚用于输入编程脉冲PROG29脚输出访问片外程序存储器的读选通信号CPU在从片外程序存储器取指令或常数期间每个机器周期两次有效每当访问片外存储器时这两次有效的PROG信号将不会出现该端同样可驱动8个LSTTL负载VPP31脚当EA输入端输入高电平时CPU可访问片内程序存储器4KB的地址范围若PC值超出4KB地址时将自动转向片外程序存储器当EA输入低电平时不论片内是否有程序存储器则CPU只是访问片外程序存储器对含有EPROM的单片机在对EPROM编程期间此引脚用于施加21V的编程电压VPP4输入
14、输出引脚P00P07对应3932脚P10P17对应18脚P20P27对应2128脚P30P37对应1017脚24 MCS51的存储器结构MCS51存储器空间分布与一般的微机的存储器配置方法大不相同一般微机通常只有一个逻辑空间可以随意安排ROM或RAM访问存储器时同一地址对应唯一的存储单元可以是ROM也可以是RAM并用同类指令访问而MCS51单片机的存储器配置在物理结构上有四个存储空间即片内程序存储器片外程序存储器片内数据存储器片外数据存储器从用户使用的角度即逻辑上MCS51有三个存储器地址空间即片内统一地址的64K字节的编程存储地址空间片内256B字节的数据存储器和64K字节的数据存储器地址空
15、间访问三个不同的逻辑空间应采用不同形式的指令241 程序存储器MCS51的程序存储器Program Memory用于存放编好的应用程序和表格常数由于采用16位的地址总线因而其可扩展的地址空间是64KB这64KB的地址是连续统一的MSC51的片外最多能扩展64字节片内的ROM是同一编值的如果EAfei端保持高电平8051的程序计数器PC在0000H0FFFH地址范围内是执行片内ROM中的程序当PC在1000HFFFFH地址范围时自动执行片外程序存储器中的程序当EAfei保持低电平时只能寻址外部程序存储器片外存储器可以从0000H开始编址对片内无ROM的单片机如803180C31和80C32等应用
16、时应将EAfei引脚固定接低电平且使系统全部执行片外程序存储器中的程序242 数据存储器数据存储器用于存放运算中间结果数据暂存和缓冲标志位待调试的程序数据存储器在物理上和逻辑上都分为两个地址空间一个是片内256字节的RAM另一个是片外最大可扩充64K字节的RAM访问片内RAM使用MOVX指令片内数据存储器在物理上又可分为两个不同的区00H7FH单元组成低128字节的片内RAM区和80HFFH单元组成的高128字节的专用寄存器SFR区1低128字节的片内RAM区在低128字节RAM中00H1FH共32个单元通常作为工作寄存器区共分为四组每组8个单元组成通用寄存器R0R720H2FH共16个字节可
17、用位寻址方式访问共有128个位的位地址30H7FH共80个单元为用户RAM区作堆栈或数据缓冲A 工作寄存器的地址表与工作区设置工作寄存器的地址表每组寄存器均可选作为CPU的当前工作寄存器通过PSW程序状态字寄存器中RS1RS0的设置来改变CPU当前使用的工作寄存器这样的设置为程序中保护现场提供了方便B 位寻址区与位地址低128字节中的20H2FH共16个字节可用为寻址方式访问这16个字节的每个位共128个位的地址每个位均匀对应地址这128个位的地址范围为00H7FH这些位单元可以构成布尔处理器的存储器空间这种位寻址能力是MCS51的一个重要特点2高128字节的专用寄存器SFH区高128字节的专
18、用寄存器区的地址范围为80HFFH有23个专用寄存器25 8031系统扩展计划通常情况下采用MCS51系列单片机的最小系统只能用于一些很简单应用场合在此情况下直接使用单片机内部存储器数据存储器定时功能中断功能IO端口等组成的应用系统的成本较低但在许多应用场合构成一个工业测控系统时考虑到传感器接口伺服控制接口以及人机对话等需要仅靠单片机内部资源是不能满足要求的因此系统扩展是单片机应用系统硬件设计中最常遇到的问题系统扩展是指当单片机内部的功能不能满足应用系统要求时在片外连接相应的外围芯片以满足应用系统的要求MCS51系列单片机有很强的外部扩展功能大部分常规芯片都可以都可以作为单片机外围扩充电路芯片
19、扩展的内容主要有总线扩展程序存储器和数据存储器以及IO口的扩展等单片机系统扩展的方法有并行扩展法和串行扩展法两种并行扩展法是利用单片机的三种线ABDBCB进行的系统扩展串行扩展法是利用SPI三线总线或I2C双总线的串行系统扩展但是一般串行接口器件速度慢在需要高速应用的场合还是并行扩展法占主导地位在本设计中由于存储数据比较少单片机内部的数据存储器能满足需要故不需要扩展片外存储器同时由于本设计中所用单片机是8031其内部不含程序存储器故需要扩展片外程序存储器而且还由于运行速度的要求只能采用并行扩展法进行片外扩展所以下面主要介绍并行扩展法251 单片机外总线结构微型计数机大多数CPU外部都有单独的地
20、址总线数据总线和控制总线而MCS51单片机由于受到芯片管脚的限制数据线和地址线低8位是复用的而且是IO口兼用为了将它们分离开来以便同单片机之外的芯片正确地相连常常在单片机外部加地址锁存器来构成与一般CPU相类似的三总线如图23所示图23 片机外总线结构1 地址总线AB地址总线由P0口提供低8位A0A7P2口提供高A8A15由于P0口还要作地址总线口只能分时工作在ALE的下降沿将P0口输出的地址数据锁存锁存器的锁存控制信号由引脚ALE提供在ALE的下降沿将P0口输出的地址数据锁存P2口具有输出锁存功能故不需要外加锁存器P0P2口在系统扩展中用作地址线后便不能在作为一般的IO口使用地址总线宽度为1
21、6位故可寻址范围为216 64KB2 数据总线DB数据总线由P0口提供其宽度为18位P0口为三态双向口是应用系统中使用最为频繁的通道所有单片机与外围交换的数据指令信息除少数可直接通过P1口传送外全部通过P0口传送数据总线通常要连接到多个外围芯片上而在同一时间里只能够一个有效的数据传送通道哪个芯片的通道有效则地址总线控制各个芯片的片选线来选择3 控制总线CB 系统扩展用控制线有ALEALEPROG30引脚地址锁存允许信号用于锁存P0口输出的低字节地址数据通常ALE在P0口输出地址期间出现低电平用这个低电平控制锁存器锁存地址数据另外即使单片机不访问外部芯片ALE端仍以不变的频率周期性地出现正脉冲信
22、号次频率为震荡频率的16因此它可用作外输出的时钟或用于定时目的29输出用于访问片外程序存储器的读选通信号读片外程序存储器中的数据指令代码时不用信号而不用Vpp31输入当接高电平时CPU可访问片内程序存储器4KB的地址范围若PC值超出4KB的地址时将自动转去执行片外程序存储器当接低电平时则只能访问片外程序存储器不论片内是否有程序存储器P36P37输出用于片外数据存储器RAM的读写控制当执行片外程序存储器操作指令MOVX时这两个控制信号自动生成252 MCS51系列单片机的扩展当片外要扩展多个芯片时就需要用到译码电路对于译码的规则与方法如下1译码规则1程序存储器和数据存储器地址可以重叠使用2外围芯
23、片IO接口芯片与数据存储器要同一编址外围IO不仅占用数据存储器地址单元而且也使用了数据存储器的读写控制信号与读写指令3地址总线宽度为16位外部程序存储器和数据存储器的寻址范围个为64K字节2译码方法1线选法是将各个扩展芯片上的地址线均接到单片机总线上且外围芯片上的片选线也作为地址线接到地址总线剩余的任意一条线上线选法的特点是各扩展芯片均有独立的片选控制线地址有可能冲突且不联系因此这种方法不试用于扩展芯片较多且容量小的存储器试用于扩展容量大的存储器2全地址译码法是将各个扩展芯片上的地址线均接到单片机地址总线上各片芯片的选择利用译码器电路实现全地址译码法特点是各扩展芯片均有独立片选信控制线且地址连
24、续可扩展较多外围芯片253 芯片的扩展设计1程序存储器扩展设计A 程序存储器简介常见的EPROM有2716容量2K8位2732容量4K8位2764容量8K8位27128容量16K8位27256容量32K8位27521容量64K8位EPROM外引脚功能如下A0A15地址输入线O0O7三态数据总线读或编程校验时为数据输出线编程时为数据输入线维持或编程禁止时O0O7呈高阻态片选信号输入线0即TTL低电平有效PGM编程脉冲输入线其值因芯片型号和制造厂商不同而异Vpp编程电源输入线其值因芯片型号和制造厂商不同而异读选通信号输入线0有效Vcc主电源输入线一般为5VB扩展方法扩展程序存储器时一般扩展容量大于
25、256字节因此除了由P0口提供低8位地址线外还由于P2口提供若干地址线最大的扩展范围为64K字节即需16位地址线具体方法是CPU应向EPROM提供三种信号线即A数据总线P0口接EPROM地址O0O7D7D0B地址总线P0口经锁存器向EPROM提供地址低8位P2口提供高8位地址以及片选线控制的程序存储器究竟需要多少位地址线应根据cxccq容量和选用的EPROM芯片容量而定C控制总线片外程序存储器取指令控制信号接EPROM的OEALE接锁存器的接地控制单片EPROM时EPROM的地址线分别接单片机上对应的地址线上而片选信号接地C 设计所用EPROM芯片扩展设计本设计采用8031进行故障信号的采集和
26、判别由于8031内没有程序存储器外部需要扩展程序存储器根据需要又考虑到经济性问题我选用的EPROM芯片为2764连接如图24所示图25 EPROM芯片扩展CPU访问外部程序存储器时P2口提供地址高8位P0口分时输出地址的低8位和接收外部程序存储器送到数据总线上的指令代码信息其工作过程为当锁存控制信号ALE上升为高电平后P0口输出为低8位地址 PCL P2口输出高8位地址PCH随后在ALE的下降沿P0口输出的稳定的程序存储器低8位地址被锁存器锁存并输出接着P0口由原输出状态变为输入状态为浮空状态等待从程序存储器读取指令代码而P2口输出的高8位地址信息保持不变这时送往程序存储器的地址线上的地址信息
27、为高8位由P2口提供低8位由锁存器提供当程序存储器读选通信号为低电平时片内程序存储器将P2口和锁存器提供的地址所对应的单元中的内容指令代码输出到数据总线上然后在的上升沿CPU通过P0口将指令代码送入指令寄存器中由于P2口本身具有锁存功能因此在整个指令周期中P2口输出的程序存储器的高8位地址将一直保持稳定不变在电路设计时P2口无需再加锁存器程序存储器地址为P27 P26 P25 P24 P23 P22P04 P03 P02 P01 P00起至 1 1 1 0 0 0 0 0 0 0 0终止 1 1 1 1 1 1 1 1 1 1 12 数据存储器设计由于算法的需要在存储器中需要存储24个从AD片
28、出来的数据即需要24单元的存储单元在8031的内部数据存储区低128字节RAM中30H7FH共80个存储单元使用户RAM区完全可以容纳下24个数据以及其运算过程中的临时数据故不需要在另外扩展片外数据存储器第三章 带有IO接口和计时器的静态RAM81558155芯片内具有256个字节的RAM两个8位一个16位的可编程IO口和一个14位计数器它与51型单片机接口简单是单片机应用系统中广泛使用的芯片31 8155的结构8155按照器件的功能8155由下列三部分组成随机存储部分容量为2568位的静态RAMIO接口部分端口A可编程程序IO端口PA0PA7端口B可编程程序IO端口PB0PB7端口C可编程程
29、序6位IO端口PC0PC5命令寄存器8位寄存器只允许写入状态寄存器8位寄存器只允许读出计数器时算器是一个14位的二进制减法计数器32 8155的引脚功能8255具有40个引脚如图31列直插式PID封装其功能定义如下图31 8155引脚图1 AD0AD7 三态AD0AD7是地址数据总线可以直接与80C51的P0口相连接在允许地址锁存信号ALE的后沿即下降沿将8位地址锁存在内部地址寄存器中该地址可作为存储器部分的低8位地址也可是IO接口的通道地址这将由输入的IO信号的状态来决定在AD0AD7引脚上出现的数据信号是读出还是写入8155由系统控制信号或来决定RESET这是复位信号高电平有效作为总清零器
30、件使用RESET信号的脉冲宽度一般为600ns当器件被总清零后各接口ABC被置成输入工作方式ALE地址允许锁存信号在该信号的后沿将AD0AD7上的低8位地址片选信号及IO信号锁存在片内的存储器内片选信号低电平有效当该引脚位0时器件才允许被启动否则位禁止使用IOIO口或存储器的选择信号当该引脚为1时选择8155片内3个IO口以及命令状态寄存器和定时器该引脚为0时选择存储器读写信号控制8155的读或写操作可以直接与单片机的读写线相连由于系统控制的作用和信号同时有效PA0PA7PB0PB7PC0PC5分别为ABC的8位IO口线AB口的IO线用于8155与外设之间的数据传送C口的IO线既可以用于815
31、5与外设之间数据传送也可以作为A口B口的专题联络信号线TIMNR IN 定时计数器的脉冲输入输出线VCC为5V电源引脚33 8155的命令格式与状态字 使用8155的ABC三个转接口随机存储器以及计数器定时器时应线向命令寄存器写入一个控制字以确定他们的工作方式他们的工作方式均由可编程序的命令寄存器的内容所规定而其状态可由读出状态寄存器的内容获得上面已经叙述8155的器件内部从逻辑上来说是只允许写入命令寄存器和读出状态寄存器内容的因此命令寄存器和状态寄存器的地址为一个通道地址这两个寄存器简称为命令状态寄存器有时以CS寄存器来表示18155的命令字格式命令寄存器由8位组成每一位都能锁存其中低4位D
32、0D3位用来定义PAPB和PC接口的工作方式当PC用于控制PA或PB的端口工作时第45两位分别用来允许或禁止PA和PB的中断而最高两位D6D7两位则用来定义计数器定时器的工作方式利用输出指令可以将对命令寄存器的各位编码打入其中D0位 PB 定义PB0PB7数据信息传送的方向0输入方式1输出方式D3D2位PCPC定义PC0PC5的工作方式00方式11方式01方式10方式当8155的ABC三个端口被定义为基本IO口使用时可以直接利用MOVX类指令完成对这三个口的读写输入输出操作D4位IEA在端口C对PA0PA7起控制作用时IEA位用来定义允许端口A的中断0禁止1允许D5位IEB 当端口C在工作在对
33、PB0PB7起控制作用时IEB位用来定义允许端口A的中断0禁止1允许D7D6位TM2TM1用来定义定时器计数器工作的命令有四种情况28155的状态字格式状态寄存器末8位各位均可锁存其中最高位为任意位低6位用于存放IO接口的状态另一位作指示定时器计数器的状态通过读寄存器的操作及用指令系统的输入指令可读出状态寄存器的内容表3-1表 TM2 TM1 功能 00 不影响计时器工作 01 若计数器未启动则无操作若计数器已运 行则停止计数 10 达到当前计数TC后立即停止若未启动 定时器则无操作 11 装入方式和计数值后立即启动定时器若 计数器已在运行则当达到当前计数值后 再按新的方式和计数长度予以启动3
34、4 8155 IO端口的应用当IO为高电平时8155选通片内的IO端口ABC三个口可以作为扩展的IO口使用MCS51单片机的P0口与8155的AD0AD7相连此时P0输出的低8位地址只有3位有效用于片内选址其他位无用使用ABC三个口时首先相命令寄存器写入一个控制字以确定三个口的工作方式如果写入的控制字规定他们工作于方式或方式下则这三个口都是独立的基本IO口可以直接利用MOVX ADPTR或MOVX DPTRA指令完成这三个口的读写输入输出操作工作在方式或方式时C口用作控制口或部分用于控制35 MCS51和8155的接口方法MCS51单片机可以和8155直接连接不需要任何外加电路给系统增加了25
35、6个自己的RAM22位IO线及一个计数器当P20 0且P21 0时选中8155的RAM工作在P20 1和P20 0时8155选中片内三个IO端口相应地址分配为0000H00FFH 8155内部RAM 0100H 命令状态口 0101H A口 0102H B口 0103H C口 0104H 定时器低八位口 0105H 定时器高八位口8155用作键盘LED显示器接口电路略 第四章 ADC0809转换芯片ADC0809是采用COMS工艺制成的28引脚双列直插式八位AD转换芯片它采用逐次比较数模转换芯片其分辨率为8位每次转换时间为100S转换精度高LSB输入电压范围为05V可分时对8路模拟量进行采样4
36、1 ADC0809的引脚ADC0809的引脚如图41图41IN0IN78路模拟量输入BC3位地址输入经译码后选择模拟量中的一路进行AD转换2个地址输入端的不同组合选择八路模拟量输入ALE地址锁存启动信号在ALE的上升沿将ABC上的通道地址锁存到内部的地址锁存器并启动译码电路选中模拟量输入D0D7八位数据输出线AD转换结果由这8根线传送给单片机OE允许输出信号当OE 1时即当位高电平的时候允许输出锁存器输出数据START启动信号输入端START为正脉冲该信号上升沿复位内部逐次逼近寄存器SAR其下降沿启动控制逻辑开始AD转换EOC转换完成信号当EOC上升为高电平时在START信号上升沿之后的08个
37、时钟周期内EOC信号变低以指示转换工作在进行中当转换完成EOC再变为高电平OE输出允许高电平有效当该信号有效时打开芯片的三态门使准会结果送至数据总线D0D78位数字量输出线CLOCK外部时钟输入线要求时钟频率不能高于640KHz当频率为640KHz时转换时间约100sVREFVREF 基准电压输入线提供模拟信号的基准电压一般单极性输入时VREF 接5VVREF 接地VCC工作电源接5VGND信号地CLK时钟输入信号0809的时钟频率范围在101200KHz典型值为640KHz42 ADC0809的内部组成ADC0809内由8路模拟量输入选择与地址锁存电路典型8位逐次逼近ADC8位三态输出锁存缓
38、冲器8位逐次逼近ADC由比较器256R电阻网络树型开关逐次逼近寄存器SAR和控制与时序电路组成如图42该部分完成对某一路模拟量的8次比较在SAR中获得与被转换的模拟量相对应的8位二进制数256R电阻网络和树型开关组成片呃逆DA转换器8路模拟量输入选择与地址锁存电路实现地址信号ADDAADDC的输入锁存及译码选中一路模拟量信号送逐次逼近ADCADDAADDC与IN0IN7的对应关系如图43图42ADDAADDC与IN0IN7的对应关系ADDA ADDB ADDC 选中输入线 0 0 0 IN0 0 0 1 IN1 0 1 0 IN2 0 1 1 IN3 1 0 0 IN4 1 0 1 IN5 1
39、 1 0 IN6 1 1 1 IN7图4343 ADC0809与系统总线的连接ADC0809是带有多路模拟开关的8位AD转换芯片所以它可由8个模拟量的输入端由芯片的ABC三个引脚来选择模拟量通道中的一个ABC三端分别与8031的P00P02相接地址锁存信号ALE和启动转换信号START由P22和WR或非得到输出允许由P22和RD或非得到时钟信号可有8031的ALE输出得到不过当采用6M晶振时应该先进行二分频以满足ADC0809的时钟信号必须小于640K的要求由于ADC0809芯片具有三态输出换成锁存器因此它可以直接与系统总线连接连接方法是将微机的系统时钟经分频后连接ADC0809芯片的CLOC
40、K输入端将系统数据总线连至ADC0809的数据输入端数据总线的低位D2D100依次接ADC0809的ADDCADDBADDA将系统地址译码输出信号CS与MIOWR信号组合接至ADC809的启动信号START和地址锁存信号ALE将系统地址译码输出信号CS与MIORD信号组合接至ADC0809的数据输出允许信号OEADC0809的转换过程大致如下首先输入地址选择信号在ALE信号作用下地址信号被锁存产生译码信号选中一路模拟量输入然后输入启动转换控制信号START启动转换转换结束数据送三态缓冲锁存器同时发出EOC信号在允许输入信号OE的控制下再将转换结果输入到外部数据总线通常CPU采用三种方式读取AD
41、C0809的转换结果程序查询方式采用该方式需要将EOC通过三态门接至系统的一根数据总线上CPU查询该总线的位是否位低电平若位低电平则再查询它是否位高电平若是则表明转换结束CPU再执行读ADC0809端口的指令即可中断方式采用该方式需要将EOC接至8259A即将EOC作为CPU的中断请求信号上升沿触发以中断方式请求CPU读取转换结果定时方式已知完成一次AD转换所需的时间可用定时器时大于或等于该转换时间等待定时时间一到即读取转换结果或定时申请中断读取转换结果也可在启动ADC0809后用软件延时一个固定送时间然后读取转换结果这种方式不用考虑转换结束信号EOC44 ADC0809与8031的接口ADC
42、0809的IN0和变送器输出端相连故IN0上输入的0V5V范围的模拟电压经AD转换后可由8031通过程序从P0口输入到它的内部RAM单元其连接图如图44所示图44在P20 0和 0时8031可以使ALE和START变为高电平而启动ADC0809工作在P22 0和 0时8031可以从ADC0809接收AD转换后的数字量这就是说ADC0809可以视为8031的一个外部RAM单元地址为03F8H因此8031执行如下程序可以启动ADC0809工作MOVDPTR03F8HMOVX DPTR A若8031改为执行MOVDPTR03F8HMOVX A DPTR则可以从ADC0809输入AD准会后的数字量AD
43、C0809的CLK由8031的ALC提供EOC经反相器作用8031的P33口作为中断请求输入线 第五章 温度的检测和控制51 温度检测元件的选择温度检测元件和变送器的选择和被控温度及精度等级有关电炉常用热电偶作为测温元件其材料要求为 1耐高温-热电偶的测温范围主要取决于热电极的高温性能在高温介质中热电极的物理化学性能越稳定则由它组成的热电偶的测温范围就越宽 2再显性好-用相同的两种热电极材料的热电偶要求它们的电热性能相而而稳定这样能使热电偶成批生产并有很好的互换性 3灵敏度高线性好-要求电偶所产生的温差热电势足够大并与温度呈线性关系4要求热电有为材料除能满足上述几点要求外并希望它的电阻系数和电
44、阻温度系数尽可能地小且其价格便宜目前常用的热电偶有以下几种 1铂铑铂热电偶其分度号为S正极是90铂和10铑的合金负极为纯铂丝其优点是测温精度高可作为国际实用温标中63074106443范围内的基准热电偶其物理化学稳定性高宜在氧化性和中性气氛中使用它的熔点较高故测温上限亦高在工业测量中一般用它测量1000以上的温度在1300以下可长期连续使用短期测温可达1600但价格昂贵热电势小 2镍铬镍硅 镍铝 热电偶其分度号为K正极成分是910铬04硅其余为镍负极成分为253硅06铬其余为镍 其优点是有较强的抗氧化性和抗腐蚀性其他学稳定性好热电势较大热电势与温度问的线性关系好其热电极材料的价格便宜可在100
45、0以下长期连续使用短期测温可达1300但在500以上的温度中和在还原性介质中以及在硫及化物气氛中使用时很容易被腐蚀所以在这些气氛中工作时必须加保护套管另化它的测温精度也低于铂铑铂热电偶 3镍铬考铜热电偶文分度号为E正极镍铬成分为910铬04硅其余为镍负极考铜万分为56铜和44镍 其优点是热电势大价格便宜但不能用来测高温其测温上限为800长期使用时只限600以下另外由于考铜合金易受氧化而变质使用时必须加装保护套管 4铂铑30铂铑6热电偶简称为双铂铑热电偶分度号为B该热电偶的正负极都是铂铑合金仅仅是合金含量比例不同而巳正极含铑30负极含铑为6双铂铑 热电偶的抗沾污能力强在测温1800温度时仍有很好
46、的稳定性其测温精度较高适用于氧化性中性介质可以长期连续测量14001600的高温短期测量可达1800但价格昂贵灵敏度较低5铜 康铜热电偶-其分度号为T正极为铜负极为60铜40镍的合金 其优点是测温灵敏度较高热电极容易复制价格便宜低温性能好可测量200低温但其成分铜易氧化因此一般测温上限不超过300基于测量范围精度以及价格的考虑本设计采用镍铬镍硅热电偶相应的输出电压为0mV4132mV52 变送器变送器由毫伏变送器和电流电压变送器组成毫伏变送器用于把热电偶输出的04132mV转换成010mA范围内的电流电流电压变送器用于把毫伏变送器输出的010mA电流转换成05V范围的电压通过转换可以使信号达到
47、单片机所规定的电流与电压要求为了提高精度变送器可以进行零点漂移例如若温度测量范围为4001000则热电偶输出为164mV4132mV毫伏变送器零点漂移后输出010mV范围电流这样采用8位AD转换器就可以使量化误差达到正负234度以内本设计采用BS系列JD384-TD185I-7B0电流电压变送器其技术参数如表52所示表5253 温度的控制8031对温度的控制是通过可控硅调控器实现的双向可控硅管和加热丝串联接在交流220V50Hz交流同步回路在给定的周期T内8031只要改变可控硅管的接通时间便可改变加热丝功率以达到条件温度的目的可控硅接通时间可以通过时间可以通过可控硅控制板上控制脉冲控制该触发脉
48、冲由8031用软件在P13引脚上产生受过零同步脉冲后经光耦管和驱动器送到可控硅的控制极上图61过零触发电路过零脉冲是一种50HZ交流电压过零时刻的脉冲可使可控硅在交流电压正弦波过零时刻出发导通过零同步脉冲由触发电路产生详细电路如图61所示图中电压比较器用于把50HZ的正弦交流电压变为方波方波的正边沿和负边沿分别作为两个单稳态触发器的输入信号单稳态触发器输出的两个脉冲经二极管或门混合后就可以得到对应于交流220V的市点的同步脉冲此脉冲一方面可作为可控硅的触发脉冲加到温度控制电路另一方面还可以作为计数脉冲加到8031的T0和T1端第六章 温度控制程序和算法61 温度控制的算法通常电阻炉炉温控制采用
49、偏差控制法偏差控制的原理是先求出所测炉温对所需炉温的偏差值然后对偏差值处理 而获得的控制信号去调节电阻炉的加热功率以实现对电阻炉的为温度控制在工业上偏差控制有称为PID控制这是工业控制中常用的控制形式一般能收到满意的效果控制理论告诉我们PID控制的理想方法是公式中e 测量值与给定之之间的偏差TD微分时间T积分时间KP调节器的放大系数将上式离散化得到数字PID位置式算法在位置式算法的基础之上得到数字PID增量式算法62 温度控制程序温度控制程序应该考虑如下问题键盘扫描键码识别和温度显示炉温采样和数字滤波数据处理时把所有数安定点纯小数补码形式转换然后把8位温度采样值都变成16位运算结果取8位有效值
50、越限报警处理PID计算温度标度转换通常符合上述功能的温度控制程序由主程序和T0中断服务程序组成现分述如下1主程序应包括80C31本身的初始化8155初始化等等框图61如下 图61主程序及T1中断程序流程图主程序如下ORG 0100HDISM0 DATA 78HDISM1 DATA 79HDISM2 DATA 7AHDISM3 DATA 7BHDISM4 DATA 7CHDISM5 DATA 7DHMOV SP 50H 50H送SPCLR 5EH 清本次越限标志CLR 5FH 清上次越限标志CLR A 清累加器AMOV 2FH AMOV 30H AMOV 3BH AMOV 3CH AMOV 3D
51、H AMOV 3EH AMOV 44H AMOV DISM0 AMOV DISM1 AMOV DISM2 AMOV DISM3 AMOV DISM4 AMOV DISM5 AMOV TMOD 56H控制寄存器装初值MOV TL0 06H装入TL0初值MOV TH0 06H装入TH0初值CLR PT0SETB TR0SETB ET0 开外部中断请求SETB EA 开T0中断LOOP ACALL DISPLY 调用显示程序ACALL SCAN 调用扫描程序AJMP LOOP 等待中断 应当注意由于T0被设定为计数器方式2初值为06H故它的溢出中断时间为250个过零同步脉冲为了系统正常工作T1中断服
52、务程序的执行时间必须满足T0的时间要求因为T1的中断是嵌套在T0中断之中的63 T0中断的服务程序CT0T0中断服务程序是温度控制系统的主程序用于启动AD转换器读入数据采样数字滤波越权温度报警处理PID算法和输出可控硅的同步触发脉冲等P13引脚上输出的该同步脉冲宽度由T1计数器的溢出中断控制8031利用等待T1溢出中断空闲时间完成把本次采样数字转换成显示值而放入显示缓存区和调用温度显示程序8031从T1中断服务程序返回后便可以恢复现场和返回主程序以等待下次T0中断T0中断服务程序框图如图6262 T0中断服务程序框图ORG 000BHAJMP CT0CTO PUSH ACCPUSH DPL 保
53、护现场PUSH PDHSETB D5H 置标志ACALL ASMPACALL FILTERCJME A42HTPLWL MOV C5EHMOV 5FHCCLR 5EHACALL UPLPOP DPHPOP DPLPOP ACCRETI 中断返回TPL JNC TPL1CLR 5FH 清上次越限标志CJNE A43HMTPLHAT SETB P11 如果温度不越限则绿灯亮ACALL PIDMOV A2FHCPL AINC ANM SETB P13MOV TL1AMOV TH10FFHSETB PT1SETB TR1 启动T1SETB ET1 允许T1中断ACALL TRASTLOOP ACALL
54、 DISPLY 显示温度JB D5HLOOP 等待T1中断POP DPHPOP DPLPOP ACCRETIMTPL JNC HATSETB P10 否则下限声光报警MOV A45HCPL AINC AAJMP NMTPL1 SETB 5EHJNB 5FHWLINC 44H 越限计数器加1MOV A44HCLR CSUBB AN 越限N次吗JNZ WLSETB P12CLR 5EHCLR 5FHPOP DPHPOP DPLRETIT1终端服务程序ORG 001BHAJMP CT1CT1 CLR D5H 清标志 CLR P13 令P13变为低电平RETI 中断返回64子程序采样子程序SAMP流程
55、图如图63所示SAMP MOV R02CH 采样值始址送R0 MOV R203H MOV DPTR20HSAM1 MOVX DPTRA 启动ADC0809 MOV R320HDLY DJNZ R3DLY 延时HERE JB P33HERE MOVX ADPTRMOV R0A 存放采样值INC R0DJNC R2SAM1RET图63 采样子程序流程图数字滤波程序FILTER其流程图如图64所示用于滤去来自控制现场对采样值的干扰本设计采用中值滤波程序如下FILTER MOV A2CHCJNE A2DHCAMP1AJMP CMP2CMP1 JNZ CMP2XCH A2DHXCH A2CHCMP2 MOV A2DHCJNE A2EHCMP3MOV 2AHARETCMP3 JC CMP4MOV 20HARETCMP4 MOV A2EHCJNE A2CHCMP5MOV 2AHACMP5 JC CMP6XCH A2CHCMP6 MOV 2AHA RET图64 滤波程序FILTER其流程图65 PID算法程序651 PID算法程序P K P K1 KpE K E K1 K1E K Kde K 2E K1 E K2 P K1 PpPiPd我们可以根据上式编辑相应程序框图如65所示图65 PID算法程序流程图PID MOV R53
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。