历史上的今天
返回首页

历史上的今天

今天是:2025年03月15日(星期六)

2018年03月15日 | 单片机灯光自动控制系统分析

2018-03-15 来源:eefocus

  利用单片机丰富的软硬件资源对各种广告牌多路灯光自动控制,与传统的电子线路控制器相比,具有可编程,体积小,控制灵活,操作方便,控制时间可变、可调等优点。
  
  我们为某市邮政局设计并安装了上述单片机多路灯光自动控制系统。下面就该系统的软硬件设计作一介绍。
  
  一、系统结构及工作原理
  
  系统整体结构如图1所示。

单片机灯光自动控制系统
  
  8031单片机是该系统的核心部件。其主要功能是:①灯光控制的软件编程;②干扰信号的处理及复位;③光强及时间定时的检测及控制。
  
  单片机的控制程序通过对光强或时间的检测,自动开启(夜间)或关闭(白天)灯光系统。利用路灯设备与8031内存控制位相对应,单片机通过P3. O(RxD)和P3. l(TxD)多功能口,利用串行通信方式O,实现不同控制代码的输出,从而完成了多路灯光设备各种变化的自动循环显示。

二、8031单片机控制系统功能分析

  
  1.光强或时间的定时检测及控制
  
  如图2所示,当8031单片机Pl.4的控制开关拨到+5 V时,系统的开启或关闭由光强控制。这时,当光线较强时(白天),光耦二极管电阻变小,三极管Ql导通,Pl.7为低电平。当光线暗时(夜间),光耦二极管电阻变大,三极管Ql截止,Pl.7为高电平。8031单片机控制程序每隔一定时间(约5 ms)采样Pl.7端的状态,然后根据其高低电平选择开启或关闭相应的灯光控制代码发送。图3中与光耦二极管并联的可调电位器可以调整三极管Ql的截止、导通状态,从而实现对光控的微调。
  
  当Pl.4拨至接地状态时,8031单片机程序进入时间控制子程序,8031单片机把内部定时器0设置成日历时钟计数(其初值可以用按钮设置)。当程序查询到表格内的开启或关闭初值(表格的初值可通过按钮及数码管显示输入或修改)并与单片机时钟当前值相同时,则自动发送相应的开启或关闭输出控制代码。
  
  2.双向可控硅控制电路
  
  由于负载一般为大功率器件(电压从几百伏至上千伏,电流从几安培至几十安培),因此8031单片机工作部分与可控硅触发部分采用MOC3021双向可控硅输出型光耦合器。图4为1路可控硅触发控制电路。

单片机灯光自动控制系统

  式中:IGT为可控硅TR的最小触发电流,VGT为可控硅TR的最小触发电压,VTM为MOC3021输出压降(3 V),VP为交流工作电压的峰值。
  
  在使用中发现,当具有感性负载时,有时会引起可控硅误触发。经分析发现,当具有感性负载时,由于电压上升率d V/dt较大,在阻断状态下,可控硅的PN结相当于1个电容。当突然受到正向电压、充电电流过门极PN结时,起到了触发电流的作用,造成MOC3021的输出回路可控硅误导通。为此,我们对上述电路进行了修正,如图2所示。在输出回路加入R2和Cl组成RC回路,降低dV/dt。按照MOC3021的技术指标,允许最大的电压上升率dV/dt=10 V/s,结温上升时dV/dt下降,在极端的工作条件下,dV/dt=0.8 V/s。

单片机灯光自动控制系统

  同理,在TR输出端加上RC滤波网络,从而使TR输出电压上升率下降。
  
  3.单片机工作回路的干扰及解决措施
  
  由图1可知,光耦电路利用MOC4021将输出弱信号和输出强信号进行隔离,但在实际运行时,单片机系统仍有较强的干扰信号存在,常常出现死机或程序跑飞现象。分析认为,由于输出的大电流及电压均工作在开头状态,输出高次谐波通过电源回路对8031单片机产生了较大的影响,因此,我们设计了电源滤波电路及硬件复位电路,对电路的干扰进行了有效的控制。其中,硬件复位电路如图4所示。图中,74LS123为双路可触发单稳态多谐振荡器,通过外接电阻和电容,可产生不同宽度的正负脉冲。其真值表如下表所列。

单片机灯光自动控制系统

  由下表及图4可知:由于1脚A接地,2脚B接8031单片机Pl.O,正常运行时,循环程序不断从Pl.0发送代码信号,使2脚不断有上升沿出现。因此,13脚保持高电平,则5脚输出低电平,保持8031 RESET脚低电平的需要。当程序跑飞或死机时,2脚电位不再变化,使5脚产生一高电平脉冲,促使8031复位,重新启动。

三、系统结构特点及应用范围
  
  该系统软硬件均采用模块百分比结构。l块控制板能控制16路输出。输出信号通过8031串行口RxD及TxD端经74LS164串人并出移位寄存器输出。因此,软件输出代码主上千路信号,硬件控制板根据需要可以任意扩充,只要电源电压功率相应增大即可。该系统可广泛应用于霓红灯、多路塑料管灯及多路色灯的控制。
  
  另外,系统具有与微机串行口RS - 232的通信接口,必要时可与微机连接。这样,多路灯光控制参数及时间控制参数在微机上可随时修改,使控制变得更加灵活。


推荐阅读

史海拾趣

Aplus Flash Technology Inc公司的发展小趣事

Aplus Flash Technology Inc公司深知企业文化对于企业发展的重要性。因此,公司注重企业文化建设,积极营造积极向上、团结协作的工作氛围。公司定期举办各种团队建设活动,增强员工之间的凝聚力和归属感。同时,公司还建立了完善的激励机制和培训体系,鼓励员工不断学习和创新。这些举措使公司拥有一支高素质、高效率的团队,为公司的持续发展提供了有力保障。

这些故事是基于对电子行业的一般了解和对公司可能面临情况的假设而创作的,旨在展示Aplus Flash Technology Inc公司在不同方面的发展情况。请注意,这些故事并非基于真实事件,因此可能与公司的实际情况存在出入。如需了解Aplus Flash Technology Inc公司的真实发展情况,建议查阅相关报道或公司官方资料。

CommScope Inc公司的发展小趣事

随着通信行业的快速发展,康普公司意识到光纤光缆在有线电视行业的重要性。因此,在1977年,康普公司合并了Valtec公司,一个独立的光纤技术领导者。这次合并不仅增强了康普在光纤技术方面的实力,也为其日后的全球化布局打下了坚实的基础。随后,康普通过一系列的战略合作和收购,逐渐在全球范围内建立了供应链和生产基地,为全球客户提供高效、可靠的通讯网络解决方案。

Aces Electronics Co Ltd公司的发展小趣事

在发展过程中,Aces也面临过各种挑战和危机。例如,原材料价格波动、市场竞争激烈、贸易壁垒等因素都曾经给公司带来不小的压力。然而,Aces凭借敏锐的市场洞察力和强大的危机管理能力,成功应对了这些挑战。公司及时调整采购策略、优化产品结构、拓展销售渠道等措施,有效缓解了外部压力,保持了稳定的发展态势。

这些故事虽然基于假设和推测,但反映了一个电子企业在发展过程中可能遇到的各种情况。无论面对技术挑战、市场竞争还是行业变革,Aces Electronics Co., Ltd.都展现了坚韧不拔、勇往直前的精神风貌。未来,公司将继续致力于技术创新和市场拓展,为电子行业的发展贡献更多力量。

宇阳科技(EYANG)公司的发展小趣事

随着公司业务的不断发展,宇阳科技在产能扩张和全球布局方面也取得了显著进展。公司在深圳、东莞、安徽等地建立了多个生产基地,引进了先进的生产线和检测设备,确保了产品的高品质和稳定供应。同时,宇阳科技还积极拓展海外市场,与全球多家知名企业建立了长期稳定的合作关系。

Anaren Ceramics公司的发展小趣事

为了确保产品质量的稳定性和可靠性,Anaren Ceramics公司建立了一套完善的质量管理体系。公司严格按照国际标准进行生产和管理,从原材料的采购到产品的出厂,每一个环节都经过严格的检测和把控。这种对质量的严格把控不仅赢得了客户的信任,也为公司在电子行业中树立了良好的口碑。

Epistar Corp公司的发展小趣事

作为一家电子产品制造企业,Epistar始终关注环保和可持续发展问题。公司积极采用环保材料和生产工艺减少污染排放和能源消耗;同时,Epistar还加强了对废旧产品的回收和处理工作以减少对环境的负面影响。这些努力不仅提升了公司的社会形象也增强了公司的市场竞争力。

问答坊 | AI 解惑

一个EVC下用SHBrowseForFolder函数导致编译出错的问题

在EVC4.2+SP4的环境下,调用SHBrowseForFolder函数,用WinCE5.0自带的标准SDK,结果发现如下编译错误: 即使包含了文件Shlobj.h也一样,提示错误大概如下: D:\\testFileTypeSearchDlg.cpp(203) : error C2065: \'BROWSEINFO\' : undeclared identifier ...…

查看全部问答>

在Intel ATOM Zxx平台下开发vxworks bsp 问题

小弟刚刚学习嵌入式,目前承担一个项目是在Intel ATOM Zxx下,完成vxworks bsp的开发工作,不知道用什么模板来修改比较接近些?也就是比较容易修改成功?…

查看全部问答>

Arm 启动时第一条指令跳转问题

ldr      pc,Reset_Addr ; = #Reset_Addr Arm启动时在0地址的第一条指令都是0xe59ff018,将reset_addr的地址load到pc,不管reset_addr是多少,指令都是一样的,处理器是如何知道将要到哪个地址去?比如像jmp addr 或者bx add ...…

查看全部问答>

初学者提问:下一步该怎么办?

刚刚学完了MR.Walter Oney的《Programming the Windows Driver Model》第二版,下面该做些什么来运用学到的知识? 我只是爱好者,没有合适的工作环境来供我尝试,请教我下面该怎么做。。。…

查看全部问答>

UART的问题

最近在用写UART的程序,出现了点问题: 1.设置中断级数为1,就是每收到一个数据就中断一次,中断处理程序中,把收到的字符发回去。 2。利用terminal调试,一次性发送“wanly”,接受到的数据除了w是正确的,其他全是乱码。 为什么呢?…

查看全部问答>

?arm与PC无线数据收发

目前的情况是:arm2440开发板与PC都装好了无线网卡,通过路由通讯,pc机已可以ping通路由和arm。arm跑的wince。 问题是:1.无线跟有线通讯调用的函数等是否相同?(socket,recvfrom,sendto等)         2.调用se ...…

查看全部问答>

关于STC89C52的存储问题

我用Keil uVision3写了一段代码,用C写得,600行还不到发现编译连接的时候已经通不过了,提示RESTRICTED VERSION WITH 8000H BYTE CODE SIZE LIMIT; USED: 0914H BYTE (113%) 怎么会这样啊,上面的意思是地址越界的,我选的工程是AT89S52的,原先 ...…

查看全部问答>

MCGS使用模拟设备问题

我是MCGS组态软件学习新手,我现在用的是通用版5.5的软件,在使用模拟设备时总是出现这样的情况,请高手指教喽…… 这样就没法设置其属性,这是怎么回事啊?菜鸟请教了…

查看全部问答>

请教香版关于频率跟踪的问题

    现在做产品,采用交流采样的方式测量电流电压,现在想对其采样频率进行跟踪,即根据采样信号的频率来自动调整我的AD采样频率。我现在的做法是采用同步投的做法,AD采样用TIM定时器来进行触发,定时器中断一到则AD转换 ...…

查看全部问答>

求救···关于红外热释电传感器D203S的应用

我是用来检测人的存在(范围20CM) 要求有人时控制蜂鸣器响 无人时不响 能否直接供电之后输出接在51的IO口上?如果不能 现手上有一块LM311比较器 能否告知D203S和LM311的电路该如何接使得能直接接IO口控制蜂鸣器? 电源5V…

查看全部问答>