本文针对一般家庭对自动开窗机的实际需要,利用单片机STC15F104E设计了一种开窗机控制器。文中阐述了系统组成及各模块的功能,并给出了具体的电路图,讨论了程序的设计方法。实际测试表明,电机开/关窗动作、堵转检测、行程检测正常,运行可靠。
自动化窗体作为楼宇自动化的一个重要组成部分,逐渐受到重视,越来越多的自动窗体被应用到各种建筑中。大型楼宇中若干个开窗器构成一个智能网络,驱动百叶、窗户、消防门等设备,承担起遮阳、开窗、通风、排烟、消防隔离等任务。而对于一般家庭用户来讲,窗户数量有限,通常也无组网的必要,所需的是一种具有一定智能化、工作可靠且成本低廉的开窗机。针对此需求,利用单片机STC15F104E设计了一种智能开窗机控制器。
1 硬件电路设计
设计的智能开窗机控制器结构框图如图1所示。系统由开关电源模块、电机驱动(TA8429H)模块、控制模块(STC15F104E)及开关状态检测、堵转检测、位置检测等构成。
1.1 开关电源模块
该模块输出24 V/2 A和5 V/0.5 A两组直流电源,如图2所示。该电路是基于TOP225的开关电源的典型应用电路,电路中S1是电源开关及开/关窗控制开关,打到“3”处定义为开窗操作,打到“1”处定义为关窗操作,打到中间位置电源断开,触点“3”与开关状态检测电路相连,以实现开关S1状态检测。
1.2 开关状态检测
开关状态检测电路如图3所示。只有开关S1打到“3”,光耦TLP521才不断输出近似于方波的脉冲信号给单片机STC15F104E的P34脚,利用程序实现开关S1状态的检测。
1.3 控制及电机驱动模块
控制及电机驱动模块主要由单片机STC15F104E及TA8429H构成,如图4所示。图中STC15F104E是宏晶公司生产的单片机,指令系统与MCS-51兼容,价格低廉、体积小,仅有8个引脚,其中有6个I/O脚,满足系统控制要求。TA8429H是东芝公司推出的一款全桥驱动电路,适合直流有刷电机的控制,可以实现电机的正转、反转、制动和停止控制,其工作电压为+27 V,平均工作电流可达3 A,完全可以满足24 V/40 W直流电机的驱动要求。设计中电机控制信号经单片机(MCU)的P31、P32输出,经光耦PC817隔离后送到TA8428H的输入端,实现电机运行状态的控制;TA8429H的“GND”与+24 V电源的“地”之间串接一个1 Ω/3 W的电阻实现电机电流检测,在关窗到位后,电机将堵转,电机电流增大,因而电阻两端电压因而升高。调节电位器R18,使得Q1导通,光耦U9输出低电平,从而实现电机堵转检测。通过调节R18可以设定电机堵转电流,从而实现开窗机负荷轻重的设定。当开窗到位时,行程开关S2闭合,MCU的P30引脚变为低电平,MCU将控制电机停转。电路中LED0为电机堵转指示,以方便堵转电流设定,P2为单片机的在线编程接口。
2 软件设计
系统软件的主要任务是检测开关S1的状态、检测堵转及行程开关、控制电机的运行。MCU的P34引脚上脉冲情况反映了开关S1状态,检测方法是:定时50 ms,在50 ms内如果P34为高电平,变量就加1,最大加至200,50 ms后判断该变量的值,如果大于某个值,就认为S1打到触点“3”。实测证明这种检测方法简单、可靠。P30、P35两脚上电平的情况分别反映了开窗到位及电机堵转情况。系统软件流程图如图5所示。
3 实验测试
将控制器应用于采用SL-123F链轮式直流减速电机的开窗机中,实验在测试架上进行,悬吊45 kg负载,电机电流为1.1 A,开窗速度约为10mm/s。实际测试表明,电机开/关窗动作、堵转检测、行程检测正常、运行可靠。
4 结束语
智能开窗机作为楼宇自动化的配套设备将得到不断的发展和完善,为人们提供安全、舒适、便利的生活环境。文中给出的基于单片机的智能开窗机控制器,成本低廉、工作可靠,满足一般家庭的门窗控制需要。
关键字:单片机 STC15F104E 开窗机控制器
引用地址:
基于单片机STC15F104E的开窗机控制器设计
推荐阅读最新更新时间:2024-03-16 15:58
基于单片机的智能感应灯设计
引言 能源日益紧张的今天,产品设计的主要考虑要点就是节能了。既节约又能合理利用电能的设计更应是产品设计的主要目标。同时,照明灯具发展到今天,发展方向逐步转向低成本、自动化阶段。先进今市场上的各种感应灯已基本实现自动控制功能。但仍然存在一些不足之处。 红外自动感应灯受到红外发射角度的影响。无法在较大的范围形成有效的感应空间。 单片机因体积小、重量轻、成本低廉、灵活性好、易于开发与应用等优点而被广泛应用于工业自动化、生产过程控制、智能化仪器、仪表等领域。随着照明用电量占总用电量比例的不断增加,人们努力实现照明灯具的智能控制。单片机自然成了照明灯具实现智能化的首选器件。但有些设计都过于复杂,也忽视了教室马路等用电
[工业控制]
状态机思路在单片机程序设计中的应用
状态机的概念 状态机是软件编程中的一个重要概念。比这个概念更重要的是对它的灵活应用。在一个思路清晰而且高效的程序中,必然有状态机的身影浮现。 比如说一个按键命令解析程序,就可以被看做状态机:本来在A状态下,触发一个按键后切换到了B状态;再触发另一个键后切换到C状态,或者返回到A状态。这就是最简单的按键状态机例子。实际的按键解析程序会比这更复杂些,但这不影响我们对状态机的认识。 进一步看,击键动作本身也可以看做一个状态机。一个细小的击键动作包含了:释放、抖动、闭合、抖动和重新释放等状态。 同样,一个串行通信的时序(不管它是遵循何种协议,标准串口也好、I2C也好;也不管它是有线的、还是红外的、无线的)也
[单片机]
嵌入式学习笔记9——51单片机之中断外部中断
1. 中断的原理: CPU暂时中断当前的工作(这叫中断响应),转去处理事件B(这叫中断服务)。 2. 89C51的中断系统有5个中断源(按优先级高低排序为:外部中断0、计时器中断0、外部中断1、计时器中断1、串口中断),2个优先级,可实现二级中断嵌套(中断处理过程又有优先级更高的中断发生)。高级单片机中可能有更多的中断源和更多的优先级等。 3. 89C51单片机的中断优先级有三个原则: (1)CPU同时接收到几个中断时,首先响应优先级别最高的中断请求。 (2)正在进行的中断过程不能被新的同级或低优先级的中断请求所中断。 (3)正在进行的低优先级中断服务,能被高优先级中断请求所中断。(为实现后两个原则,系
[单片机]
51单片机-数码管静态显示
数码管,英文名称Segment Displays,是把多个发光二极管封装在一起,组成8字,或者米字形的器件。 如上图所示,分别为8字和米字形的数码管,还有一些异形的,暂时不考虑。 今天主要说8字形的数码管,这种数码管主要分两类:7段的和8段的;驱动方式分两种:共阴极 和 共阳极。根据连在一起的字符数量,还会分为1位的,2位的,3位的,4位的等等。 先说七段和八段的分别,这个很简单,从外表就能看出来。把8字分成一段一段的LED,刚好有7段,如果再加上右下角那个小点,就是8段。也就是说,一个完整的1位数码管由七个或者八个LED组成,想要显示1、2、3等等的字符,点亮相应的数码管组成该字符就行。那么如何点亮
[单片机]
车规MCU功能安全如何落地?杰发科技打造安全可靠产品矩阵
在2023年2月21日,由盖世汽车主办的2023第二届汽车芯片产业大会上,杰发科技高级产品经理涂超平阐释了功能安全的定义,即“不存在由电子电气系统的功能异常表现引起的危害而导致不合理的风险”。他表示,功能安全虽已是耳熟能详的概念,但具体应该如何落地,无论是对于芯片公司还是整车厂和Tier1而言都是很有挑战性的话题。 而车规级芯片的质量管控是杰发科技的关注重点。从2013年成立发展至今,杰发科技已有四条产品线走向量产:座舱IVI SOC、AMP功率芯片、MCU车身控制芯片、TPMS 胎压监测芯片。截至去年,杰发科技的首款功能安全MCU AC7840x已陆续送样,其中部分客户已进入产品验证阶段。这款基于ARM Cortex-M4F
[汽车电子]
单片机AT89C51--6.数码管显示(含动态,静态)
1. 数码管显示原理 a为共阴极,b为共阳极 2. 静态与动态显示 静态显示 每个数码管的选段必须接入一个8位的数据线来保持显示字形码。当输入一次字形码后显示字形可以一直保持,直到输入新的字形码为止。 动态显示 将所有数码管的段选并联在一起,由位选控制,控制那个数码管有效。亮的数码管采用动态扫描方式。轮流向各位数码管送出字形码和对应位选,利用发光管的余晖和人肉眼的残留,使人们感觉数码管都在显示 3. 74HC573锁存器的工作原理 锁存器的作用:把数据输入端与输出端进行隔离或连接 OE端需要接地,才能让输出口Q有高低电平的转换 LE脚高,输出端Q随输入端D的数据变化而变化 LE脚低,输出端Q数据保持不变
[单片机]
如何在PIC单片机上实现发送数据
该程序运行在pIC单片机p18f458上实现发送缓冲器0向接收缓冲器0发送数据的自测试模式,其中接收采用中断方式。 //发送采用查询方式 #include “p18f458.h” intCAN_FLAG; //定义标志寄存器 //**************初始化子程序*************** void initcan() { TRISB=(TRISB|0X08)&0XFB; //设置CANRX/RB3为输入,CANTX/RB2为输出 //设置CAN的波特率为125K,在Fosc=4M时,Tbit=8us,假设BRP=01h //则TQ=[2*(1+BRP)]/Fosc=2*(1+1)/4=1us。 //NOMINA
[单片机]
学习单片机和STM32的一道坎
刚开始学单片机的你,是不是会因用程序把LED点亮而感到高兴,会因用程序把数码管点亮而感到高兴。这是好事,这也是想继续学习下去的动力。 但是数据相关的实验是学习单片机和STM32的一道坎,此时就需要用好本文要说的串口这个调试工具。串口通信介绍关于串口通信的介绍,也可以点击阅读之前发的一篇文章:STM32串口通信基本原理。串口通信是指外设和计算机间,通过数据信号线 、地线、控制线等,按位进行传输数据的一种通讯方式......这种太过理论了,看似懂了,但又不懂。还是用我笔者自己的话来说吧。串口通信就是可以把程序在单片机或者STM32芯片中运行的结果发送到电脑的一种通信方式。 如何使用串口通讯,你需要知道的几个重要的知识点: 波特
[单片机]