基于Holtek单片机的遥控探照灯系统实现
扫描二维码
随时随地手机看文章
针对此应用,本文设计了一种支持频道存储的遥控探照灯系统来实现上述功能。该系统还可应用在监狱、各种高空作业和旷野、海面等工作场所,对远距离巡查、追踪、搜索、拯救和作业施工进行全方位、多角度照明。
因为照射点的位置不定,要求探照灯可以上下左右360度自由移动,所以本系统采用了两个电机,一个控制探照灯上下转动,另一个控制探照灯左右转动,此外,有时两台探照灯离得很近。
当控制某一台探照灯时,不能影响邻近的探照灯,这就要求遥控控制信号的角度不能太大。相反,如果角度过小的话,探照灯又很难接收到信号,会使控制很不方便,因此信号的角度也不能太小,另一方面,为便于操作,探照灯的可控制距离应尽可能地远。
针对上述要求,本文采用了红外与激光通信相结合的方法,在发送探照灯预选信号时采用激光发送,而发送探照灯转动控制、亮度控制时等命令时采用红外发送,在场景存储及调出摸式的最后确认(控制哪台探照灯)时采用激光发送,从而实现准确,方便的调节,灯的亮度控制应尽可能采用微调来满足各种亮度的需求,因此,将灯的亮度从最亮到熄灭划分为256个段。
硬件系统设计
1、总体结构
该系统共包括5个模块:CPU模块、电源模块、电机模块、灯控模块和通信模块。其中,通信模块又包括红外通信模块、激光通信模块和指示灯显示模块,总体硬件原理框图如图1所示。
红外接收模组接收红外信号后送入CPU进行分析,以确定命令的性质,遥控器发送的激光信号由光电池接收,经放大后送入CPU。由光电继续器、电机驱动及电机组成的闭环电路用来控制电机的位置,以控制探照灯的照射点,在电源模块中产生一个2倍工频的信号,该信号连接到CPU的中断脚,中断程序通过可控硅控制灯的亮度,EEPROM用来存储频道、探照灯位置和亮度,指示灯用来显示探照灯当前的状态。
2、CPU模块
处于成本的考虑,该系统的各个子功能模块须尽量减少硬件,并尽可能用软件代替硬件,所以该系统的红外通信模块、激光通信模块的解调都完全由软件实现,这就使得CPU中无需这些专用模块,从而降低了成本,电机的驱动也没有采用专用的驱动芯片,而是由通用I/O接口通过三极管来驱动电机转动。
由于节省了许多专用模块,因此必然会增加对CPU通用I/O的需要,这就要求CPU中要有足够的通用I/O接口,此外,系统还必须能稳定可靠地工作,并具有较强的抗干扰能力。
基于以上原因,本方案选择了Holtek公司的低价位I/O型单片机HT48R50A-1,这是一款基于RISC结构、低功率、安全静态CMOS设计的高性能8位单片机,该单片机的工作电压在8MHz时为3.3V-5.5V,4MHz时为2.2V-5.5V,它的功率损耗低,在5V/4MHz条件下的典型值为2mA,不使用看门狗定时器和RTC时,3V下静态电流小于1μA,此外,它还具有工业级的工作温度(-40℃-85℃)。
HT48R59A-1器件的其他特性还包括:具有4096×14位程序存储器ROM、160×8位数据存储器RAM、6级堆栈;具有表格读取功能,支持直接和间接两种寻址模式;共有63条功能强大的指令。支持位操作,大多数指令
片内有32个具有上拉功能的双向输入输出接口,PA接口具有唤醒功能;有一个外部中断输入和事件计数输入。蜂鸣器驱动并支持PFD;内置晶体及电阻电容振荡电路,拥有看门狗定时器;具有预分频器及中断功能的定时器;CPU在没有任务时可以进入暂停模式以降低功耗,且具有低电位复位(LVR)特性。
3、通信模块
红外接收模组可以直接将接收到的红外信号变为TTL电平,激光接收模组则不同,由光电池接收到的激光信号非常微弱须经放大后才能被单片机识别。64页图2为放大电路,其中C1和L1构成低通滤波,第一级运放和R1、R2将光电池的电流信号转换为电压信号,C2和C5为高通滤波,第二级运放和R3、R4将电压放大成TTL电平。
4、灯控模块
&
5、电机模块
该系统有两个相同的直流电机模块。由通用I/O接口通过三极管控制转停(如图4)。当Q3、Q6导通时,电机正转;当Q4、Q5导通时,电机反转;当Q3的通断由Q1通过R1、R2分压实现控制,当Q1导通时,R1两端的压降使Q3导通。
6、电源模块
该系统由220V工频交流电供电,电源模块的功能是输出两个电源(5V的单片机电源和12V的直流电机电源)和一个中断源。中断源用来产生两倍工频的中断信号给单片机,从而调节探照灯的亮度,因此,该系统采用了一个220V转双12V变压器,并通过二极管、三端稳压器和校正电容实现输出。
软件设计
软件分两部分:主程序和中断程序,主程序的主要任务有:接收红外、激光信号、进行解调,判断遥控器所发的命令是什么,并执行该命令;控制电机转动并检测反馈信号,准确定位探照灯位置,根据命令存储或调出指定的频道;根据探照灯当前状态控制指示灯的亮灭。具体程序流程图如图5(详见本刊网站)所示,中断程序的主要任务是:对灯控I/O引脚的低电平进行延时,以达到调节灯亮度的目的。
试验结果表明,该系统性能稳定,可准确地完成灯控、转动,以及某个频道的存储及调出等功能,并具有操作方便的优点,已得到多家公司的认可。