APP下载

基于单片机的舵机控制仿真实验研究

2017-02-18边玉亮

淮北职业技术学院学报 2017年1期
关键词:高电平原理图舵机

吴 尝,边玉亮

(阜阳师范学院 信息工程学院,安徽 阜阳 236041)

基于单片机的舵机控制仿真实验研究

吴 尝,边玉亮

(阜阳师范学院 信息工程学院,安徽 阜阳 236041)

针对嵌入式系统专业学生,我们设计了基于AT89C52单片机的舵机控制仿真实验。本实验选择舵机作为控制对象,具体阐述了舵机的结构和控制原理、实验内容和实验步骤。此实验选取AT89C52单片机作为主控制器产生PWM信号控制舵机的转角,使用Proteus仿真软件对实验结果进行仿真。通过单片机的舵机控制仿真实验可以加深学生对单片机定时器编程和舵机控制方法的掌握,增强学生分析和解决问题能力。

单片机;舵机;PWM;Proteus

舵机是一种位置(角度) 伺服的驱动器,有着机电时间常数小、起步转矩大、线性度好、反应迅捷等特点,适用于那些需要角度不断变化并可以保持的控制系统,例如机器人关节、无人机等。[1]比如:无人飞机的舵面,无人驾驶汽车的方向盘和油门等,都需要由舵机来驱动。[2]在机器人、无人机等运动或执行控制系统器的设计中, 舵机控制效果是系统性能的重要影响因素之一。[3]与此同时,为了有效地解决以往单片机实验主要依赖于仿真机和单片机开发系统,无法保证人手一机的问题,[4]本文结合单片机和Proteus仿真软件设计了控制舵机的模拟仿真实验,使学生进一步掌握舵机的控制原理和单片机与Proteus联合仿真实验方法。

1 舵机控制原理和实验条件

舵机的基本结构主要是由电位器、电机、减速齿轮组和控制电路等组成。控制电路根据接收到的控制信号驱动电机转动,减速齿轮组实现电机的转速控制,电位器用于检测舵机的转到角度。舵机通常通过接受PWM控制信号,达到控制舵机转角的目的。

本实验结合实际应用,选择舵机的型号为S3010舵机,其技术参数如下:

输出扭矩:6.0V时6.5±1.3[kg/cm]。

动作速度:6.0V时0.16±0.02[Sec/60度]。

动作方向:脉冲宽度变窄(1520us变化到920us),顺时针转动;脉冲宽度变宽(1520us变化到2120us),逆时针的转动。

动作角度:(顺时针)60±10[度],(逆时针)60±10[度]。

假设舵机处在中心位置时,脉冲信号高电平时间为1520us,角度为0°,逆时针角度为正。根据舵机技术参数和控制原理可知,该型号舵机的控制信号是任意周期下,时钟信号高电平时间从920us到1520us,舵机的转角从-60°到0°,高电平时间从1520us到2120us,舵机的转角从0°到60°。

本次实验可以在任意一台安装好Keil uVision3软件和Proteus仿真软件的电脑上进行。

2 实验的目标和内容

(1)了解并掌握常用舵机的结构原理和控制方法。舵机控制信号的要求如下:PWM信号时钟周期为20ms,时钟高电平长度为0.92ms至2.12ms,舵机转角范围能够达到-60°到60°。

(2)掌握AT89C52单片机的定时器功能和使用Keil uVision3软件的编程方法。使用AT89C52单片机内部的定时器0和定时器1中断功能产生控制舵机转角的PWM信号。使用Keil uVision3编写相应的测试程序,编译调试无误后生成 .hex文件为仿真实验做准备。

(3)熟悉Proteus仿真软件的设计流程和使用方法。使用Proteus仿真软件绘制仿真电路原理图,将程序下载到单片机中对舵机的控制进行仿真,得出实验结果并记录。

3 实验设计思路及电路图

3.1 程序流程图

程序的设计思路是使用单片机内部的两个定时器中断共同产生PWM信号,通过单片机的端口输出PWM信号控制舵机的转角。产生PWM控制信号的程序流程如图1所示。

图1 程序流程图

其中,生成的PWM信号从P1_2端口输出,定时器0中断用于产生周期为20ms的时钟信号,定时器1中断用于控制高电平的时间,通过改变定时器的初值,就能PWM信号的脉冲宽度,从而达到控制舵机转角的目的。

3.2 中断子程序

根据仿真实验要求编写的两个中断子程序如下:

void Timer0Interrupt(void) interrupt 1

{

//定时器0产生20ms周期信号

TH0 = 0x0B1;

TL0 = 0x0E0;

ET1 = 1;

TR1 = 1;

P1_2= 1;

}

void Timer1Interrupt(void) interrupt 3

{

//定时器1产生高电平,此时,初始值TH1 = 0xF8、TL1 = 0xE4,高电平时间为1.82ms

//舵机的理论转角为30°

P1_2=0;

TH1 = 0xF8;

TL1 = 0xE4;

ET1 = 0;

TR1 = 0;

}

3.3 舵机参数设置

根据舵机的技术参数对Proteus中的舵机元件的参数进行设置如图2所示。

图2 舵机参数设置

3.4 仿真电路原理图

根据实验要求在Proteus中绘制出相应的电路原理图如图3所示(注 电路仅考虑控制原理,没有考虑舵机的驱动问题)。

图3 仿真电路原理图

4 实验步骤及结果分析

(1)使用Keil uVision3建立工程,根据程序设计思路使用C语言编写相应的控制程序,编译、调式无误后生成可执行文件。

(2)根据已知条件和设计要求,选定电路方案,画出设计电路原理图,设置元器件的参数,将程序导入到单片机中,运行仿真,记录实验数据。

(3)调整程序初始参数,更改脉冲信号高电平时间,重复步骤1、2,观察记录实验结果。将实验结果整理统计如图4所示。

图4 仿真实验结果对比

根据上述实验数据可知,仿真结果与理论值相差仅0.3°,完全能够满足实验要求。根据对实验的内容和设计分析可知,误差的来源主要是与使用定时器中断产生的PWM信号有关。本文使用C语言编写的中断程序进行延迟以满足高电平时间要求,但是,中断子程序的调用以及中断返回都会使理论上的延时时间变大。后期可以通过对定时器初始值的修订来提高舵机的控制精度。

5 结论

本文通过对舵机的结构和控制原理进行简单介绍,在此基础上,设计了控制舵机转角的单片机程序,并在Proteus仿真软件中设计相应的电路进行实际的仿真实验,达到了预期的实验效果。对实验结果的分析可知,该实验可以通过进一步优化控制程序结构,调整定时器初始值,达到提高控制精度的目的。通过本次实验的学习,可以加深学生对单片机定时器编程和舵机控制方法的掌握,增强学生分析和解决问题能力。

[1] 蒋辰飞,刘子龙,胡少凯,等.基于 AVR单片机的多舵机控制精度的研究[J].信息技术,2014(3):35-37.

[2] 霍丽霞,罗卫兵,迟晓鹏.多通道舵机控制器设计[J].现代电子技术,2010(21):73-75.

[3] 成光华,毛建国.四足机器人中各关节的控制[J].电子元器件应用,2008(1): 44-47.

[4] 贡雪梅,肖川.基于单片机函数信号发生器的Proteus仿真设计[J].西安航空技术高等专科学校学报,2013(31):53-55.

责任编辑:力 草

Research on Simulation Experiment of Steering Gear Control Based on Single Chip Microcomputer

WU Chang, BIAN Yuliang

This experiment is for embedded systems specialized students. We designed the simulation experiment of steering gear control based on AT89C52 single chip microcomputer. This experiment chosses steering gear as control object, elaborates on the steering gear’s structure and control principle, experimental content and experimental steps. This article selects AT89C52 single chip microcomputer as the main controller to generate the PWM signal to control the rotation of the steering gear, and uses Proteus simulation software for the simulation experiment results. The experiment can deepen students’ grasp of the microcontroller timer programming and servo control method,and strengthen students’ abilities of analyzing and solving problems.

single chip microcomputer; steering gear; PWM; Proteus

2016-11-28

吴尝(1972—),男,安徽望江人,实验师,硕士,研究方向:大学物理、单片机应用、纳米材料应用。

TP368.2

A

1671-8275(2017)01-0136-03

猜你喜欢

高电平原理图舵机
一种基于FPGA的PWM防错输出控制电路
浅谈STM32核心板原理图设计
电路原理图自动布图系统的设计与实现
基于Protel DXP 2004层次原理图的设计
TS-03C全固态PDM中波发射机开关机控制电路原理及故障分析
含齿隙弹载舵机的全局反步模糊自适应控制
基于dsPIC单片机的飞艇舵机控制实现
基于高速同步485总线通信的多通道舵机控制器设计
浅谈物理电路与数字电路
PDM 1kW中波广播发射机保护电路分析