1、子情境太阳能热水器上水控制子情境子情境1 1 太阳能热水器水位控制太阳能热水器水位控制任务任务4单片机驱动功率接口单片机驱动功率接口 任务任务1 太阳能热水器水位控制太阳能热水器水位控制任务任务2一、任务描述二、任务分析三、相关知识四、任务实施五、深化与训练任务任务1 1 单片机驱动功率接口单片机驱动功率接口一、任务描述 在由单片机组成的控制系统中,控制的执行机构可能是电动机、继电器或电磁铁等大功率机构。因此,单片机不可能和这些外部机构直接连接。通常必须采取两个基本措施:一是采用隔离的方法把单片机的工作环境与外电路隔离开来;另一种是采用电流接续的办法扩大输出电流的能力,以驱动各种外电路。本任务
2、主要分析这两个基本措施,以达到大家对单片机和大功率的器件接口的了解和使用,最后以单片机与步进电机之间的功率接口的硬件连接和软件程序为例来了解功率接口的应用。二、任务分析 在单片机组成的控制系统中,外围电路有低压直流负载,高压直流负载以及交流负载等。低压直流负载可以采用功率晶体管驱动,高压直流负载和交流负载常采用继电器驱动。交流负载也可用双向晶闸管或固体继电器驱动。常用的隔离采用光电耦合器或继电器,隔离时一定要注意,单片机用一组电源,外围器件用另一组电源。本任务通过单片机与步进电机的接口电路及软件编程来分析单片机功率接口的一般应用。(一)一)功率晶体管接口 1.晶体三极管与单片机的接口 晶体三极
3、管最主要的功能是电流放大和开关作用,因而常用三极管来扩流,从而驱动扬声器、继电器等负载。用NPN型和PNP型三极管驱动扬声器或蜂鸣器的接口电路分别如图所示。利用单片机端口产生不同频率的波形就可以让扬声器输出不同的声音,单片机演奏音乐就是根据这一原理来完成的。三、相关知识图7-33 用PNP型晶体管驱动扬声器或蜂鸣器图7-32 用NPN型晶体管驱动扬声器或蜂鸣器【应用举例应用举例】电子音响(新年好歌曲)电子音响(新年好歌曲)硬件电路硬件电路程序:程序:org 0000horg 0000h Sjmp MAIN Sjmp MAIN org 000bh org 000bh mov th0,r1 mov
4、 th0,r1 mov tl0,r0 mov tl0,r0 cpl p1.0 cpl p1.0 RETI RETIMAIN:MOV TMOD,#01HMAIN:MOV TMOD,#01HMOV IE,#82HMOV IE,#82HMOV DPTR,#TABMOV DPTR,#TABLOOP:CLR ALOOP:CLR AMOVC A,A+DPTRMOVC A,A+DPTRMOV R1,AMOV R1,AINC DPTRINC DPTRCLR ACLR AMOVC A,A+DPTRMOVC A,A+DPTRMOV R0,AMOV R0,AORL A,R1ORL A,R1JZ NEXT0JZ NE
5、XT0MOV A,R0MOV A,R0ANL A,R1ANL A,R1CJNE A,#0FFH,NEXTCJNE A,#0FFH,NEXTSJMP MAINSJMP MAINNEXT:MOV TH0,R1NEXT:MOV TH0,R1MOV TL0,R0MOV TL0,R0SETB TR0SETB TR0SJMP NEXT1SJMP NEXT1NEXT0:CLR TR0NEXT0:CLR TR0NEXT1:CLR ANEXT1:CLR AINC DPTRINC DPTRMOVC A,A+DPTRMOVC A,A+DPTRMOV R2,AMOV R2,ALOOP1:ACALL D200CLOOP
6、1:ACALL D200CDJNZ R2,LOOP1DJNZ R2,LOOP1INC DPTRINC DPTRAJMP LOOPAJMP LOOPD200C:MOV R3,#81HD200C:MOV R3,#81HD200B:MOV A,#0FFHD200B:MOV A,#0FFHD200A:DEC AD200A:DEC AJNZD200AJNZD200ADEC R3DEC R3CJNE R3,#00H,D200BCJNE R3,#00H,D200BRET RET TAB:DB 0FEH,25H,04H,0FEH,25H,02H TAB:DB 0FEH,25H,04H,0FEH,25H,02H
7、 DB 0FEH,25H,02H,0FDH,80H,04H DB 0FEH,25H,02H,0FDH,80H,04H DB 0FEH,84H,02H,0FEH,84H,02H DB 0FEH,84H,02H,0FEH,84H,02H DB 0FEH,84H,04H,0FEH,25H,04H DB 0FEH,84H,04H,0FEH,25H,04H DB 0FEH,25H,02H,0FEH,84H,02H DB 0FEH,25H,02H,0FEH,84H,02H DB 0FEH,0C0H,04H,0FEH,84H,02H DB 0FEH,0C0H,04H,0FEH,84H,02H DB 0FEH
8、,98H,02H,0FEH,84H,02H DB 0FEH,98H,02H,0FEH,84H,02H DB 0FEH,57H,08H,00H,00H,04H DB 0FEH,57H,08H,00H,00H,04H DB 0FFH,0FFH DB 0FFH,0FFH END END 图7-36 ULN2003驱动扬声器电路图7-34 ULN2003引脚图图7-35 ULN2003的内部结构(二)(二)较大功率的电磁式继电器与单片机的接口较大功率的电磁式继电器与单片机的接口(a)晶体管驱动直流继电器(b)晶体管驱动直流继电器图7-41 小型电磁式继电器与单片机的接口电路较大功率的电磁式继电器与单片
9、机的接口如图较大功率的电磁式继电器与单片机的接口如图图7-42 较大功率的电磁式继电器与单片机的接口电路图7-43 光电耦合式固态继电器内部原理图2.固态继电器(固态继电器(SSR)与单片机的接口)与单片机的接口常用的光电耦合式固态继电器内部原理如图所示。(三)(三)双向晶闸管接口双向晶闸管接口图7-44 光耦双向可控硅驱动器 把两只反并联的晶闸管制作在同一片硅片上,共用一个控制极,便构成了双向晶闸管。用单片机控制交流电,最方便的就是采用双向晶闸管。光耦双向可控硅驱动器是单片机输出与双向可控硅之间较理想的接口器件,由两部分组成,输入部分是一砷化镓发光二极管,该二极管在5-15mA正向电流作用下
10、发出足够强度的红外光,触发输出部分。输出部分是一硅光敏双向可控硅,在红外线的作用下可双向导通。过零触发需要过零检测电路过零触发需要过零检测电路,有些光电耦合器内部含有有些光电耦合器内部含有过零检测电路过零检测电路,如如MOC3061MOC3061双向晶闸管触发电路。如图所示双向晶闸管触发电路。如图所示,是使用是使用 MOC3061 MOC3061驱动器完成的一种双向晶闸管和单片机接口驱动器完成的一种双向晶闸管和单片机接口电路。电路。图7-45 双向晶闸管和单片机的接口电路图 单片机与步进电机的接口电路四、任务实施 如图所示如图所示,是单片机直接带动步进电机的一种接是单片机直接带动步进电机的一种
11、接口方案口方案,接口并不复杂接口并不复杂,单片机单片机P1P1口的低三位被设成输口的低三位被设成输出位出位,P1.0,P1.0控制控制A A相绕组通断相绕组通断,P1.1,P1.1控制控制B B相相,P1.2,P1.2控制控制C C相。以相。以A A相控制为例相控制为例,当当P1.0P1.0输出为输出为1,1,发光管不发光发光管不发光,因此光敏二极管截止因此光敏二极管截止,使担负驱动任务的达林顿管导使担负驱动任务的达林顿管导通通,A,A相绕组通电;相反相绕组通电;相反,当当P1.0P1.00,0,发光管发光发光管发光,光敏光敏管导通管导通,达林顿管截止达林顿管截止,A,A相绕组不通电。因而该接
12、口相绕组不通电。因而该接口电路采用软件方式控制步进电机的旋转电路采用软件方式控制步进电机的旋转,步进电机的步进电机的驱动脉冲由驱动脉冲由1 1单片机编程产生单片机编程产生,并从并从P1P1口输出。口输出。五、深化与训练 步进电机也可用专用集成芯片来驱动步进电机也可用专用集成芯片来驱动,目前已有多种目前已有多种用于小功率步进电动机的集成功率驱动接口电路可供选用于小功率步进电动机的集成功率驱动接口电路可供选用。用。L298L298芯片是一种芯片是一种H H桥式驱动器桥式驱动器,它设计成接受标准它设计成接受标准TTLTTL逻辑电平信号逻辑电平信号,可用来驱动电感性负载。可用来驱动电感性负载。H H桥
13、驱动的主要桥驱动的主要特点是能够对电机绕组进行正、反两个方向通电。特点是能够对电机绕组进行正、反两个方向通电。下面简要介绍下面简要介绍L298L298原理及其接口电路作简要介绍。原理及其接口电路作简要介绍。1、步进电机专用集成芯片简介步进电机专用集成芯片简介图图 L298引脚引脚图图图图 L298的应用的应用一、任务描述二、任务分析三、相关知识四、任务实施五、深化与训练任务任务2 2 太阳能热水器控制器水位控制太阳能热水器控制器水位控制一、任务描述 本次任务主要介绍太阳能热水器的水位控制,目前太阳能热水器的控制器基本实现数字化,以单片机为控制核心的控制系统占领太阳能热水器的主要市场,其中应用最
14、多的是51系列和PIC系列单片机。目前大多数太阳能热水器的水位传感器都采用分段式水位传感器,因为太阳能热水器对水位精确度的要求不高,且分段式传感器的成本很低。本任务的目的就是设计一种既经济又实用的水位监测电路及其与单片机接口电路和软件程序。二、任务分析 太阳能热水器控制系统可以实现水位显示、水位控制、温度显示、防冻等多种功能,其中对水位的检测、控制,实现水位显示、自动上水、超限报警是太阳能热水器控制系统的核心。水位测量和水温测量是太阳能热水器控制系统的最重要部分,是实现其他功能的基础,此部分性能好坏将关系到整个系统的优良程度,是设计的重点。本任务主要实现水位控制和显示,要实现水位控制必须要有水
15、位测量电路,水位测量可以有多种方法,需从性能和成本两方面进行考虑,选择合适的方案。三、相关知识(一)方案比较选择(一)方案比较选择1排阻分档键盘式水位传感器下面介绍了一种类似键盘电路的分档水位传感器,原理图如下。R510k+5VCD406974LS24489 c52P1.0P1.1P1.3P1.2 工作原理工作原理:类似于键盘的工作原理,用类似于键盘的工作原理,用 4 4根不锈钢针分别置于根不锈钢针分别置于水箱内的水箱内的 四种不同高度的位置,当某个钢针不接触水面四种不同高度的位置,当某个钢针不接触水面时,其输出为高电平;当其与水面接触时则输出低电平。时,其输出为高电平;当其与水面接触时则输出
16、低电平。它们的输出接至电子开关它们的输出接至电子开关CD4069CD4069,经过,经过CD4069CD4069反向并经反向并经74LS24474LS244驱动后分别接入驱动后分别接入89C5289C52的的 P1P10P10P13 3引脚。引脚。CPUCPU对这些引脚进行判断后对这些引脚进行判断后 ,送去显示相应的水位值。显示,送去显示相应的水位值。显示共分共分 4 4档档 ,每档为满水位的,每档为满水位的25%25%。这种方法简单,易实。这种方法简单,易实现,省去了传统的现,省去了传统的 A AD D转换器,成本低,虽然不精确但转换器,成本低,虽然不精确但可以满足使用要求。可以满足使用要求
17、。2 2RCRC充放电式水位传感器测量电路充放电式水位传感器测量电路 我们在市场上购买的桑乐太阳能的水位和水温传感器就我们在市场上购买的桑乐太阳能的水位和水温传感器就是基于这种原理是基于这种原理。储水箱公共水位4 2 5 kR单片机监测电容两端电压的变化,因为电容电压的上升单片机监测电容两端电压的变化,因为电容电压的上升或下降时间或下降时间t=RC,所以用单片机记录这个时间就能判别,所以用单片机记录这个时间就能判别电阻的变化,进而转化为水位的变化进行显示及其他动作。电阻的变化,进而转化为水位的变化进行显示及其他动作。3 3传感器选择传感器选择 RCRC充放电式水位传感器测量电路,明显优于排阻分
18、档充放电式水位传感器测量电路,明显优于排阻分档键盘式水位传感器的地方有:键盘式水位传感器的地方有:(1 1)接线简单,排阻分档键盘式水位传感器需要四根)接线简单,排阻分档键盘式水位传感器需要四根导线传输水位信号,而导线传输水位信号,而RCRC充放电式水位传感器仅需要两根,充放电式水位传感器仅需要两根,这可这可节省相当多的导线资源。节省相当多的导线资源。(2 2)给水温测量电路设计带来方便,)给水温测量电路设计带来方便,RCRC充放电式水位充放电式水位传感器的原理可以同样运用到热电阻温度测量电路中。传感器的原理可以同样运用到热电阻温度测量电路中。(3 3)占用较少的)占用较少的I/OI/O口,仅
19、需两个口,仅需两个I/OI/O口就能完成水位口就能完成水位检测任务,极大地节约了单片机的检测任务,极大地节约了单片机的I/O I/O 口资源。口资源。综上比较可见选用第二种方案较为优越。综上比较可见选用第二种方案较为优越。水位测量电路的具体设计及优化。水位测量电路的具体设计及优化。1 1直接接单片机直接接单片机I/OI/O口检测口检测 2 2采取与采取与I/OI/O隔离并用中断监测电容电压的电路隔离并用中断监测电容电压的电路这样需要将电容电压与单片机监测端口隔离,如这样需要将电容电压与单片机监测端口隔离,如下下所示电路。所示电路。P1.0P1.1储水箱公共水位425kR四、任务实施1.1.LM
20、358LM358的应用的应用LM358LM358的正向输入端接电容电压正端,反向输入端与输出端相的正向输入端接电容电压正端,反向输入端与输出端相连,构成电压跟随器。连,构成电压跟随器。2 2LM393LM393的作用的作用给比较器设置给比较器设置+3V+3V的参考电压,将电容电压的指数曲线变成矩的参考电压,将电容电压的指数曲线变成矩形波,波形图如图所示。将参考电压接同相输入端,比较电压形波,波形图如图所示。将参考电压接同相输入端,比较电压接反相输入端,从而实现电容电压在上升到参考电压时比较器接反相输入端,从而实现电容电压在上升到参考电压时比较器产生下降沿信号,作为单片机的外部中断信号。产生下降
21、沿信号,作为单片机的外部中断信号。3 3充电时间的设定和电容的选择充电时间的设定和电容的选择电容充电时间的计算公式为:电容充电时间的计算公式为:T T即位电容电压上升时间。编程使即位电容电压上升时间。编程使P1.0P1.0口输出周期性的方口输出周期性的方波,给电容充放电,方波半周期(充电或放电时间)为,波,给电容充放电,方波半周期(充电或放电时间)为,应使方波半周期大于电容电压上升时间,即:应使方波半周期大于电容电压上升时间,即:(2)(2)TRCTT当定时器当定时器/计数器在方式计数器在方式1 1下做定时器用时,其定时时下做定时器用时,其定时时间计算公式为:间计算公式为:定时输出定时输出30
22、ms30ms其程序如下:其程序如下:ORG 0000HORG 0000HSJMP MAINSJMP MAINORG 00023HORG 00023HSJMP TIMER1_SVRSJMP TIMER1_SVRORG 0030HORG 0030HMAIN:MAIN:MOV TH1,#8AH;/MOV TH1,#8AH;/定时器定时器1 1赋值赋值 MOV TL1,#0D0H;MOV TL1,#0D0H;MOV TMOD,#0X10;MOV TMOD,#0X10;MOV IE,#88HMOV IE,#88HSJMP$SJMP$TIMER1_SVR:TIMER1_SVR:MOV TH1,#0X8A;
23、/MOV TH1,#0X8A;/重新给定时器重新给定时器1 1赋值赋值 MOV TL1,#0XD0;MOV TL1,#0XD0;CPL P1.4;/CPL P1.4;/充放电变换充放电变换MOV C,P1.4MOV C,P1.4JC NEXT/JC NEXT/充电开始时启动定时器充电开始时启动定时器0 0SJMP DONESJMP DONENEXT:NEXT:MOV TL0,#00HMOV TL0,#00HMOV TH0,#0X00;/MOV TH0,#0X00;/定时器定时器0 0赋初值赋初值0 0 SETB TR0;/SETB TR0;/启动定时器启动定时器0 0DONE:DONE:RET
24、IRETIENDEND4 4、编程实现水位处理、编程实现水位处理 由于水电阻的波动性和电容的不稳定性等原因,由于水电阻的波动性和电容的不稳定性等原因,计数器中的数值会有一定的波动,所以需要对数据进计数器中的数值会有一定的波动,所以需要对数据进行相应的处理显示水位。其中行相应的处理显示水位。其中buf1buf1为计数器为计数器0 0寄存器中寄存器中的值。的值。五、深化与训练 为了解决为了解决太阳能热水器受天气状况的影响大这个问题需要为太阳能热水器受天气状况的影响大这个问题需要为控制系统提供电加热装置。本系统设计了一个利用时钟芯片提控制系统提供电加热装置。本系统设计了一个利用时钟芯片提供时间信号完
25、成智能加热功能的电加热系统。供时间信号完成智能加热功能的电加热系统。(一)(一)DS1302DS1302串行时钟芯片串行时钟芯片 1 1DS1302DS1302芯片的性能特点:芯片的性能特点:实时时钟具有能计算实时时钟具有能计算2100 2100 年之前的秒分时日日期星期月年年之前的秒分时日日期星期月年的能力还有闰年调整的能力,的能力还有闰年调整的能力,318 318 位暂存数据存储位暂存数据存储RAMRAM,串行,串行I/O I/O 口方式使得管脚数量最少口方式使得管脚数量最少,宽范围工作电压宽范围工作电压2.0 5.5V2.0 5.5V,工作电流工作电流2.0V 2.0V 时时,小于小于3
26、00nA300nA,读,读/写时钟或写时钟或RAM RAM 数据时有两种数据时有两种传送方式单字节传送和多字节传送字符组方式,传送方式单字节传送和多字节传送字符组方式,8 8 脚脚DIP DIP 封装封装或可选的或可选的8 8 脚脚SOIC SOIC 封装根据表面装配,简单封装根据表面装配,简单3 3 线接口,与线接口,与TTL TTL 兼容兼容Vcc=5VVcc=5V。2 2管脚功能描述管脚功能描述管脚描述:管脚描述:X1、X2 32.768KHz 晶振管脚;晶振管脚;GND 地;地;RST 复位脚;复位脚;I/O 数据输入数据输入/输出引脚;输出引脚;SCLK 串行时钟;串行时钟;Vcc1
27、,Vcc2 电电源供电管脚;源供电管脚;(二)时钟电路的应用设计(二)时钟电路的应用设计 1 1、DS1302 DS1302 内部寄存器内部寄存器CH:CH:时钟停止位时钟停止位 寄存器寄存器2 2的第的第7 7 位位12/24 12/24 小时标志小时标志CH=0 CH=0 振荡器工作允许;振荡器工作允许;bit7=1,12 bit7=1,12 小时模式;小时模式;CH=1 CH=1 振荡器停止;振荡器停止;bit7=0,24 bit7=0,24 小时模式;小时模式;WP:WP:写保护位写保护位 寄存器寄存器2 2 的第的第5 5 位位:AM/PM:AM/PM 定义定义WP=0 WP=0 寄
28、存器数据能够写入;寄存器数据能够写入;AP=1 AP=1 下午模式;下午模式;WP=1 WP=1 寄存器数据不能写入;寄存器数据不能写入;AP=0 AP=0 上午模式上午模式TCS:TCS:涓流充电选择涓流充电选择 DS:DS:二极管选择位二极管选择位TCS=1010 TCS=1010 使能涓流充电;使能涓流充电;DS=01 DS=01 选择一个二极管选择一个二极管;TCS=TCS=其它其它 禁止涓流充电;禁止涓流充电;DS=10 DS=10 选择两个二极管选择两个二极管;DS=00 DS=00 或或11,11,即使即使TCS=1010,TCS=1010,充电功能也被禁止充电功能也被禁止2 2
29、、DS1302DS1302与单片机的连接及时间读取方法与单片机的连接及时间读取方法123456ABCD654321DCBATitleNumberRevisionSizeBDate:18-Jun-2007Sheet of File:C:Documents and Settingspc桌面MyDesign.ddbDrawn By:VCC21X12X23GND4VCC18SCLK7I/O6RST5JP1DS1302+5Y232.768EA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P10/T1P11/T2P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10U189C52BT+5VC730pFC830pF源程序(见电子课件)谢谢!