基于单片机的路灯遥控装置的设计外文翻译精要
浙江师范大学本科毕业设计(论文)外文翻译
译文:
基于AT89C2051的多路舵机控制器设计
作者:吴华波 钱春来
摘要
舵机是机器人、机电系统和航模的重要执行机构。舵机控制器为舵机提供必要的能源和控制信号。本文提出一种以外部中断计数为基础的 PWM 波形实现方法。该方法具有简单方便,成本低,可实现多路独立 PWM 输出的优点。
关键词: AT89C2051;舵机;控制器;外部中断;PWM
引言:
舵机是一种位置伺服的驱动器。它接收一定的控制信号,输出一定的角度,适用于那些需要角度不断变化并可以保持的控制系统。在微机电系统和航模中,它是一个基本的输出执行机构。
1 舵机的工作原理
以日本 FUTABA S3003型舵机为例,图1是 FUTABA-S3003 型舵机的内部电路。
舵机的工作原理是:PWM 信号由接收通道进入信号解调电路BA6688L 的12 脚进行解调,获得一个直流偏置电压。该直流偏置电压与电位器的电压比较,获得电压差由BA6688 的 3 脚输出。该输出送入电机驱动集成电路BAL6686,以驱动电机正反转。当电机转速一定时,
通过级联减速齿轮带动电位器 Rw1旋转,直到电压差为0,电机停止转动。舵机的控制信号是 PWM 信号,利用占空比的变化改变舵机的位置。
2 舵机的控制方法
标准的舵机有 3 条导线,分别是:电源线、地线、控制线,如图2 所示。电源线和地线用于提供舵机内部的直流电机和控制线路所需的能源,电压通常介于 4~6 V ,一般取5 V。注意,给舵机供电的电源应能提供足够的功率。控制线的输入是一个宽度可调的周期性方波脉冲信号,方波脉冲信号的周期为 20 ms(即频率为50 Hz)。当方波的脉冲宽度改变时,舵机转轴的角度发生改变,角度变化与脉冲宽度的变化成正比。某型舵机的输出轴转角与输入信号的脉冲宽度之间的关系可用图3来表示。
3 舵机控制器的设计
(1) 舵机控制器硬件电路设计
从上述舵机转角的控制方法可看出,舵机的控制信号实质是一个可调宽度的方波信号(PWM) 。该方波信号可由 FPGA、模拟电路或单片机来产生。采用 FPGA 成本较高,用模拟电路来实现则电路较复杂,不适合作多路输出一般采用单片机作舵机的控制器。目前采用单片机做舵机控制器的方案比较多,可以利用单片机的定时器中断实现 PWM。该方案将20 ms 的周期信号分为两次定时中断来完成: 一次定时实现高电平定时 Th ;一次定时实现低电平定时 Tl 。Th 、Tl的时间值随脉冲宽度的变换而变化但 Th + Tl =20 ms。该方法的优点是,PWM 信号完全由单片机内部定时器的中断来实现,不需要添加外围硬件缺点是一个周期中的 PWM 信号要分两次中断来完成,两次中断的定时值计算较麻烦;为了满足20ms 的周期,单片机晶振的频率要降低;不能实现多路输出。也可以采用单片机+8253 计数器的实现方案。该方案由单片机产生计数脉冲(或外部电路产生计数脉冲)提供给8253 进行计数,由单片机给出8253 的计数比较值来改变输出脉宽该方案的优点是可以实现多路输出,软件设计较简单;缺点是要添加 1 片 8253 计数器,增加了硬件成本。本文在综合上述两个单片机舵机控制方案基础上,提出了一个新的设计方案,如图4 所示。
该方案的舵机控制器以 AT89C2051 单片机为核心,555 构成的振荡器作为定时基准,单片机通过对555 振荡器产生的脉冲信号进行计数来产生 PWM 信号。该控制
器中单片机可以产生 8 个通道的 PWM 信号,分别由AT89C2051 的 P1.0~P1.7(12~19 引脚) 端口输出。输出的8 路 PWM 信号通过光耦隔离传送到下一级电路中。因为信号通过光耦传送过程中进行了反相,因此从光耦出来的信号必须再经过反相器进行反相。方波信号经过光耦传输后,前沿和后沿会发生畸变,因此反相器采用CD40106 施密特反相器对光耦传输过来的信号进行整形,产生标准的 PWM 方波信号。笔者在实验过程中发现,舵机在运行过程中要从电源吸纳较大的电流,若舵机与单片机控制器共用一个电源,则舵机会对单片机产生较大的干扰。因此,舵机与单片机控制器采用两个电源供电,两者不共地,通过光耦来隔离,并且给舵机供电的电源最好采用输出功率较大的开关电源。该舵机控制器占用单片机的1个SCI串口。串口用于接收上位机传送过来的控制命令,以调节每一个通道输出信号的脉冲宽度。MAX232 为电平转换器,将上位机的 RS232 电平转换成 TTL 电平。
(2) 实现多路 PWM信号的原理
在模拟电路中,PWM 脉冲信号可以通过直流电平与锯齿波信号比较来得到。在单片机中,锯齿波可以通过对整型变量加1 操作来实现,如图5 所示。假定单片机程序
原创力文档

文档评论(0)