基于FPGA+单片机的调焦变倍系统设计
摘要:在光电探测领域中以往对相机调焦变倍多采用单片机(MCU)控制完成,其优点在于易于编程实现。因为要求实时控制相机的变倍、调焦,其程序的编写多采用查询方式实现,这就使单片机始终处于十分繁忙的状态,利用率降低,此外当调焦、变倍电机到达限位位置时,由于单片机是采用查询方式工作,这就导致电机到达限位与实际停止电机转动之间存在时间差,这种时间差导致电机发生堵转,容易把电机或调焦变倍驱动机构烧毁。文章采用单片机+FPGA方式进行调焦变倍控制,单片机负责通信,FPGA根据命令实现调焦变倍控制。FPGA实现调焦变倍的优势在于响应速度更快、此外能够真正实现控制电机运转和监测电机运行状态同时进行,当电机运行到限位位置能够及时停止电机运转,有效避免堵转现象发生。
关键词:单片机;现场可编程门阵列;调焦变倍;限位点
0 引言
在光电测量领域中,常常需要使用长焦距、大口径的光学相机进行目标探测。这种相机由于变倍比比较大,为了使不同距离的目标均能在像面成清晰的像,除了需要控制倍率的变化外,还需要对聚焦位置进行微调。以往对这种光学相机变倍调焦的控制比较常用的方法是采用单片机来完成。采用单片机控制的优点在于编程方法简单、易于实现。缺点在于由于需要控制监测的信号有变倍电机的驱动信号、调焦电机的驱动信号、变倍电机分别走到两头的两个限位信号、调焦电机分别走到两头的两个限位信号,这些信号均要实时控制监测,因此通常需要采用查询的方法进行编程处理,这种方法的好处在于能够及时地控制相机的变倍调焦,缺点在于由于频繁的查询硬件状态,使得单片机始终处于繁忙的工作状态,工作效率低。此外由于单片机是以固定周期进行查询,这常常导致检测到电机运行到限位状态与停止电机运动存在时间差,该时间差可导致电机处于堵转状态,易于损坏电路板及电机。
本文设计了一种光学相机调焦变倍控制系统,此系统以FPGA+单片机(MCU)为核心芯片,其中控制电机运行的命令通过中断的方式发出,保证电机实时接到命令即运动起来,当电机到达限位位置FPGA得到限位状态,马上发出停止信号,断掉电机管脚上的电,使电机马上停止下来。此方法同以往方法相比的好处在于控制电机的实时性更强,能够有效地控制相机变倍调焦机构的运动、停止,同时避免电机堵转,以致烧毁电机或电路板。
1 硬件组成
基于FPGA+单片机的调焦变倍系统主要包括MCU、通信模块、FPGA(可编程逻辑器件)模块、电机驱动模块、光耦模块、电机组成,其组成框图如图1所示。其中MCU采用AD公司的ADU812,该款芯片除具有单片机的通用功能外,还具有AD转换功能,当光学镜头需要实时回传当前位置信息时,可通过把电位计同电机连接到一起,把电位计的输出端接到该MCU的AD输入口,通过程序可读到当前电机转到的位置;通信模块采用16C650,该通信模块可把MCU的并行数据信号转变为串行信号传递出去;FPGA采用EP1K100-208I,电机驱动模块采用L298,该芯片具有两路电机驱动信号输出,可同时驱动两路电机;光耦模块采用欧姆龙的EP470,该光耦模块接法简单,并且模块上具有灯光指示,通过灯光可知道当前状态;电机采用瑞士电机。
评论