位置:51电子网 » 技术资料 » 控制技术

基于TMS320F240控制步进电机的调焦系统设计

发布时间:2008/6/3 0:00:00 访问次数:499

摘要:与传统的摄影调焦系统相比较,针对焦距可以灵活调整的要求,提出了基于tms320f240控制步进电机调焦的设计方案,利用f240控制电机驱动器up-4hb03m按照计算所得的调焦轨迹进行调焦。实验结果表明,本系统调焦曲线与理想曲线拟合度较好,拍摄已知运动轨迹的目标,达到了满意效果。
关键词:tms320f240;步进电机控制器;步进电机

0引言

当摄影镜头拍摄运动的物体时,如果运动轨迹已知,摄影镜头必须对焦距进行调节,从而调整目标的像点的位置,使得目标始终位于焦点上,达到实时拍摄的目标,传统变焦大多是利用机械装置完成的,比如凸轮机构,齿条机构;但是由于机械加工工艺复杂,其精度、平稳性和灵活性都难以满足要求,为此本系统利用步进电机带动摄像机完成变焦,由于步进点机精确地按照步进角转动,并且由dsp进行控制,从而满足了以上机械装置无法完成地性能要求。实验结果表明,本系统调焦曲线与理想曲线拟合度较好,拍摄已知运动轨迹的目标,达到了满意效果。

1 调焦系统设计思想

在光学系统中,采用一组物镜,调节轴向位移,物镜光学系统物象关系是:

x′=f2 / x

其中 x′—— 像距(目标像平面到主焦平面的距离);

x —— 物距(目标距离);

f —— 光学系统焦距 f=常量,像距x′与物距x成反比关系。

利用已知的摄影调焦曲线确定步进电机转动所需的步数和时间坐标关系,存入f240数据存储器中,利用f240运算速度快、片载flash存储器大(16k字)的特点,准确控制步进电机控制器驱动步进电机运转,通过机械装置实现摄影镜头焦距按照规定的曲线变化,从而实现实时拍摄运动物体的功能。

2 硬件设计部分

2.1步进驱动器up-4hb03m简介

up-4hb03m是北京联太工贸有限公司生产的专用步进电机驱动器,4hbo3m适用于两相六出头混合式及四相混合式步进电机,pwm恒流控制方式;可选择半步(四相八拍)或者16细分两种工作方式;驱动电流为0.3a连续可调,并且具有自动半流锁定功能;脱机控制及其相位检测功能;所有控制信号与功率驱动部分光电隔离;散热外壳与驱动器内部完全电绝缘。

2.2 tms320f240简介

tms320f240(以下简称f240)由dsp内核和片内外设组成。由于dsp内核具有较快的计算和响应处理速度,可以应付高速应用的要求,同时也为控制软件的设计提供了更加有力的支持,使控制系统能够完成更加复杂的功能、实现更好的控制效果。同时tms320f240具有丰富的片内外设,包括16路10位a/d转换器、多个可编程的多路复用i/o引脚、硬件uart以及spi总线等。特别是tms320f240片内设置了一个事件管理器(epa),可以提供6路全比较pwm通道,能方便地实现各种pwm波形的发生。这里使用f240主要是考虑f240速度快以及有丰富的i/o引脚资源;程序烧写方便,利于更新曲线坐标以及修改程序;性价比较高等因素。

2.3 硬件设计

本系统的硬件接口电路如图1所示,74ls14为反相器,接到dsp的i/o口以提高其驱动能力,ch1是一个八脚的插头,用于外接步进机的各项绕组。步进电机以及摄影镜头部分从略。工作过程如下:首先获得摄影调焦曲线,利用matlab软件,得出时间位移坐标,再换算成步进电机转动所需的步数时间坐标,以数组的行式保存下来。在f240的数据存储器中开辟空间存储步数时间数组,利用f240定时器完成计时,i/o口输出相应宽度的脉冲信号,驱动步进电机驱动器up-4hb03m,其中cp为步进脉冲输入端;free为脱机端,高电平有效,free=1时,电机处于释放状态;v/d为方向控制端,高低电平分别控制电机正反转。

图1 硬件接口电路图

3 软件设计

由于电机的运行和转动步数以及两步之间间隔时间有关系,故采用计时器计时的方法来计算时间,f240初始化程序如下:

void initcpu(void) //初始化f240程序

{ *wdcr=0x6f; // 禁止自带的看门狗功能;

*ckcr1=0x69; // 外部输入晶振为20mhz,f240工作在20mhz;

*ckcr0=0xc3; // 系统时钟为10mhz;

*syscr=0x4000; } // f240输出频率clkout=iopc1(i/o管脚);

f240初始化后,计时器的基本计时时间为0.1µs,考虑到f240定时器是16位计数器,这难以满足计算长时间的需求,所以采用通过计算进入定时器中断的次数来计算长时间的方法。例如设置定时器周期寄存器值为800即*t1pr=800,那么进一次定时器中断时间为800*0.1=80µs如果计时为1s的话,则只需进12500次中断即可,以此类推;故定义的数组内容表示如下:

int table[ ]= { 25,800,255, //第1行

. . . . . . } //第n行

<

摘要:与传统的摄影调焦系统相比较,针对焦距可以灵活调整的要求,提出了基于tms320f240控制步进电机调焦的设计方案,利用f240控制电机驱动器up-4hb03m按照计算所得的调焦轨迹进行调焦。实验结果表明,本系统调焦曲线与理想曲线拟合度较好,拍摄已知运动轨迹的目标,达到了满意效果。
关键词:tms320f240;步进电机控制器;步进电机

0引言

当摄影镜头拍摄运动的物体时,如果运动轨迹已知,摄影镜头必须对焦距进行调节,从而调整目标的像点的位置,使得目标始终位于焦点上,达到实时拍摄的目标,传统变焦大多是利用机械装置完成的,比如凸轮机构,齿条机构;但是由于机械加工工艺复杂,其精度、平稳性和灵活性都难以满足要求,为此本系统利用步进电机带动摄像机完成变焦,由于步进点机精确地按照步进角转动,并且由dsp进行控制,从而满足了以上机械装置无法完成地性能要求。实验结果表明,本系统调焦曲线与理想曲线拟合度较好,拍摄已知运动轨迹的目标,达到了满意效果。

1 调焦系统设计思想

在光学系统中,采用一组物镜,调节轴向位移,物镜光学系统物象关系是:

x′=f2 / x

其中 x′—— 像距(目标像平面到主焦平面的距离);

x —— 物距(目标距离);

f —— 光学系统焦距 f=常量,像距x′与物距x成反比关系。

利用已知的摄影调焦曲线确定步进电机转动所需的步数和时间坐标关系,存入f240数据存储器中,利用f240运算速度快、片载flash存储器大(16k字)的特点,准确控制步进电机控制器驱动步进电机运转,通过机械装置实现摄影镜头焦距按照规定的曲线变化,从而实现实时拍摄运动物体的功能。

2 硬件设计部分

2.1步进驱动器up-4hb03m简介

up-4hb03m是北京联太工贸有限公司生产的专用步进电机驱动器,4hbo3m适用于两相六出头混合式及四相混合式步进电机,pwm恒流控制方式;可选择半步(四相八拍)或者16细分两种工作方式;驱动电流为0.3a连续可调,并且具有自动半流锁定功能;脱机控制及其相位检测功能;所有控制信号与功率驱动部分光电隔离;散热外壳与驱动器内部完全电绝缘。

2.2 tms320f240简介

tms320f240(以下简称f240)由dsp内核和片内外设组成。由于dsp内核具有较快的计算和响应处理速度,可以应付高速应用的要求,同时也为控制软件的设计提供了更加有力的支持,使控制系统能够完成更加复杂的功能、实现更好的控制效果。同时tms320f240具有丰富的片内外设,包括16路10位a/d转换器、多个可编程的多路复用i/o引脚、硬件uart以及spi总线等。特别是tms320f240片内设置了一个事件管理器(epa),可以提供6路全比较pwm通道,能方便地实现各种pwm波形的发生。这里使用f240主要是考虑f240速度快以及有丰富的i/o引脚资源;程序烧写方便,利于更新曲线坐标以及修改程序;性价比较高等因素。

2.3 硬件设计

本系统的硬件接口电路如图1所示,74ls14为反相器,接到dsp的i/o口以提高其驱动能力,ch1是一个八脚的插头,用于外接步进机的各项绕组。步进电机以及摄影镜头部分从略。工作过程如下:首先获得摄影调焦曲线,利用matlab软件,得出时间位移坐标,再换算成步进电机转动所需的步数时间坐标,以数组的行式保存下来。在f240的数据存储器中开辟空间存储步数时间数组,利用f240定时器完成计时,i/o口输出相应宽度的脉冲信号,驱动步进电机驱动器up-4hb03m,其中cp为步进脉冲输入端;free为脱机端,高电平有效,free=1时,电机处于释放状态;v/d为方向控制端,高低电平分别控制电机正反转。

图1 硬件接口电路图

3 软件设计

由于电机的运行和转动步数以及两步之间间隔时间有关系,故采用计时器计时的方法来计算时间,f240初始化程序如下:

void initcpu(void) //初始化f240程序

{ *wdcr=0x6f; // 禁止自带的看门狗功能;

*ckcr1=0x69; // 外部输入晶振为20mhz,f240工作在20mhz;

*ckcr0=0xc3; // 系统时钟为10mhz;

*syscr=0x4000; } // f240输出频率clkout=iopc1(i/o管脚);

f240初始化后,计时器的基本计时时间为0.1µs,考虑到f240定时器是16位计数器,这难以满足计算长时间的需求,所以采用通过计算进入定时器中断的次数来计算长时间的方法。例如设置定时器周期寄存器值为800即*t1pr=800,那么进一次定时器中断时间为800*0.1=80µs如果计时为1s的话,则只需进12500次中断即可,以此类推;故定义的数组内容表示如下:

int table[ ]= { 25,800,255, //第1行

. . . . . . } //第n行

<
相关IC型号

热门点击

 

推荐技术资料

自制经典的1875功放
    平时我也经常逛一些音响DIY论坛,发现有很多人喜欢LM... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!