0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何将伺服电动机与PIC微控制器连接

454398 来源:网络整理 作者:网络整理 2019-12-05 17:54 次阅读

伺服电动机是一种特殊的齿轮减速直流电动机,配备有用于控制电动机轴的旋转方向以及位置的电子电路。由于伺服电机允许其输出轴的精确角度定位,因此它们广泛用于机器人技术和无线电控制的汽车,飞机和船只中,以控制其各个零件的运动。在本实验课程中,我们将首先探讨伺服电动机的组成及其工作原理,然后说明如何将其与PIC微控制器接口

伺服电动机控制使用PIC微控制器

理论

伺服电动机(或伺服)是一个小盒子,其中装有一个直流电动机,通过一系列齿轮连接至电动机的输出轴(伺服臂)和控制该轴位置的电子电路。使用伺服的目的是实现对象的精确角度定位。

为了实现伺服功能,输出轴的瞬时定位信息通过换能器反馈到控制电路。最简单的方法是将电位计连接到输出轴或齿轮系中的某个位置。控制电子设备将电位计的反馈信号(包含轴的当前位置)与控制输入信号(包含轴的期望位置的信息)进行比较,并将实际值和期望值之间的差(称为误差信号)被放大并用于在减少或消除误差所需的方向上驱动直流电动机。当输出轴到达所需位置时,误差为零。典型伺服电机的功能框图如下所示。

伺服电机原理

伺服部件(来源:http://tutorial.cytron.com.my/2011/09/19/how-rc-servo-works/)

伺服是脉宽调制(PWM)信号,通常频率为50 Hz。这意味着脉冲应每20ms重复一次。脉冲的宽度决定了输出轴的角度位置。伺服器内部的电子电路将PWM信号转换为成比例的输出电压,并将其与电位计的反馈电压进行比较。如果两者之间存在差异,则控制电路会沿适当的方向驱动电动机,直到差异变为零为止。脉冲宽度的典型值在1.0到2.0毫秒(ms)的范围内。对于标准伺服器,脉冲宽度在1.0毫秒至1.5毫秒之间会使伺服器顺时针旋转(CW),在1.5毫秒至2.0毫秒之间使伺服器能够逆时针旋转(CCW),而1.5毫秒脉冲宽度会使伺服电动机转向它的中心。但是,这些值可能会因电机品牌和制造而有所不同。建议阅读伺服器的数据表,以找到将伺服器定位在不同角度所需的脉冲宽度的真实值。

大多数伺服器旋转180°。然而。有些可以旋转360°或更大角度。 Servos由于其精确的角度定位而被广泛用作机器人手臂中的活动关节。他们还发现了在无线电(RC)玩具中的应用。例如,在RC汽车中,它们用于转向机构,在RC船中用于控制舵。

伺服电机具有三根电线:两根用于电源(Vcc和地面),第三根用于电源。 Vcc线通常是红色的,接地线是黑色或棕色的。控制信号线为白色,黄色或橙色。本实验中使用的伺服电机来自iCircuit技术,并具有分别用于Vcc,Gnd和控制信号的红色,棕色和黄色导线。它以5.0 V电源供电,并提供180°的角度旋转

典型的伺服电机

不同角度位置的伺服定时信息

伺服臂的不同角度位置

电路

此电路的电路图实验如下所示。伺服器的控制输入来自PIC16F628A微控制器的RB1引脚,该PIC16F628A微控制器使用外部陶瓷谐振器以4.0 MHz的频率工作。轻触开关连接到RB0引脚,以提供用户输入来控制伺服臂的位置。该实验的操作部分在下面的软件部分中进行介绍。

用于伺服电机控制演示的电路图

电路板上的电路设置

软件

PIC16F628A的固件是用用于PIC编译器的MikroC Pro编写的。 Timer0模块用作带预分频器1:256的定时器,以在两个连续的PWM脉冲之间产生大约20 ms的间隔。请记住,时钟频率为4.0 MHz,这导致1 s的机器周期,从而简化了使用Timer0计算延迟的数学运算。 MikroC提供了一个内置的库函数Delay_Cyc(),该函数生成可变的时钟周期延迟。此功能用于将控制脉冲的宽度从0.7毫秒更改为2.3毫秒。当电路第一次上电或复位时,在RB1引脚上连续产生脉冲宽度为0.7 ms的50 Hz PWM信号。该控制信号一直沿顺时针方向将伺服臂一直移动到末端,该末端被视为0角位置。按下连接到RB0引脚的轻触开关时,脉冲宽度增加0.2 ms,这将使轴逆时针(CCW)旋转大约22.5°。因此,每次按下开关,脉冲宽度都会增加0.2 ms,并且轴将进一步沿CCW方向旋转。连续按下开关8次后,脉冲宽度变为2.3 ms,轴到达另一端(180°角位置)。在第9次按下时,脉冲宽度被重置为0.7 ms,并且电机轴沿顺时针方向旋转,直到回到0角位置。在程序中,变量“ i”存储脉冲宽度信息(脉冲宽度= i * 10 * 10微秒),并以2为步长从7变为23。当i = 7时,脉冲宽度为7 * 10 * 10 = 700微秒(0.7 ms),当i = 23时,宽度为2.3 ms。

/*

Lab 21: Servo motor Control using PIC16F628A

MCU: PIC16F628A running at 4.0 MHz, MCLR enabled, WDT is OFF, Brown Out Detect

disabled

Written by: Rajendra Bhatt (www.embedded-lab.com)

2012/03/29

Description: User input switch is connected to RB0 and Servo Control signal

is generated from RB1 pin.

*/

sbit SW1 at RB0_bit;

sbit Control at RB1_bit;

unsigned short i=7, delay;

void interrupt() {

delay = i*10;

Control = 1;

Delay_Cyc(delay); // Generates delay equal to 10*delay clock cycles

Control = 0;

TMR0 = 180; // TMR0 returns to its initial value

INTCON.T0IF = 0; // Bit T0IF is cleared so that the interrupt could reoccur

}

void main() {

CMCON = 0x07; // Disable Comparators

TRISB = 0b00000001;

PORTB = 0;

OPTION_REG = 0x07; // Prescaler (1:256) is assigned to the timer TMR0

TMR0 = 180; // Timer T0 counts from 180 to 255 to create ~20 ms period

INTCON = 0xA0; // Enable interrupt TMR0 and Global Interrupts

do{

if(!SW1){ // Change pulse width when Switch is pressed

Delay_ms(300);

i = i+2;

if(i》23) i=7;

}

}while(1);

}

下载完整的源文件和HEX文件

输出

将HEX文件加载到PIC16F628A微控制器之后,您可以观察伺服控制器的运行情况。观看底部的演示视频,以查看该实验的输出。

责任编辑:wv

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    7535

    浏览量

    151289
  • 伺服电动机
    +关注

    关注

    0

    文章

    50

    浏览量

    3216
收藏 人收藏

    评论

    相关推荐

    什么是直流伺服电动机?它有哪些分类?

    直流伺服电动机是一种用于实现精确控制电动机,它能够根据输入信号的变化来调整其转速和转矩。这种电动机广泛应用于各种自动化
    的头像 发表于 10-25 09:31 327次阅读

    什么是伺服电动机系统?它的主要用途是什么?

    伺服电动机系统是一种高精度的电机控制系统,它能够根据输入的控制信号精确地控制电机的转速、位置和力矩。这种系统广泛应用于各种工业自动化、机器人
    的头像 发表于 10-23 13:41 380次阅读

    伺服电动机与单相异步电动机比较,主要区别在哪?

    在现代工业自动化和智能制造领域,电动机作为核心动力源,扮演着至关重要的角色。伺服电动机和单相异步电动机是两种常见的电动机类型,它们在结构、工
    的头像 发表于 10-22 11:01 270次阅读

    PLC控制电动机正反转电路的工作原理

    在工业自动化控制中,电动机作为动力源,其正反转控制是常见的控制需求。传统的电动机正反转控制主要依
    的头像 发表于 06-17 09:37 1951次阅读

    PLC和变频如何控制电动机

    在现代工业自动化领域中,电动机作为动力源,其运行状态的调控至关重要。而PLC(可编程逻辑控制器)与变频的结合,为实现电动机的高效、精准控制
    的头像 发表于 06-12 14:43 961次阅读

    步进电动机与交流伺服电动机的性能比较

    随着工业自动化技术的不断发展,步进电动机和交流伺服电动机作为两种重要的执行机构,在各个领域得到了广泛的应用。它们各自具有独特的性能特点,适用于不同的应用场景。本文将对步进电动机与交流
    的头像 发表于 06-07 12:43 687次阅读

    简要说明直流伺服电动机的调速原理与方法?

    引言 直流伺服电动机是一种电能转换为机械能的装置,具有响应速度快、控制精度高、稳定性好等特点。在自动化控制系统中,直流
    的头像 发表于 06-05 14:27 1144次阅读

    直流伺服电动机的调速方法有哪些,各有什么特点

    直流电能转换为机械能的装置。它主要由定子、转子、换向和电刷等组成。直流伺服电动机的工作原理是利用电磁力使转子旋转,从而实现对负载的驱动。 二、直流
    的头像 发表于 06-05 14:25 2144次阅读

    直流伺服电动机的结构原理与一般什么基本相同

    直流伺服电动机是一种特殊类型的电动机,它主要用于精确控制机械装置的位置、速度和加速度。直流伺服电动机
    的头像 发表于 06-05 14:23 1030次阅读

    直流伺服电动机的机械特性曲线是什么

    直流伺服电动机是一种广泛应用于自动化控制系统中的电机,其机械特性曲线对于理解和设计伺服系统至关重要。 直流伺服
    的头像 发表于 06-05 14:18 1722次阅读

    智能矿用电动机保护应该怎么选

    安科瑞 邹玉丽 摘要 :介绍了矿用电动机智能综合保护系统的总体结构,采用直接交流信号整流、滤波、调理、采样的方式变为微控制器能够识别的直流信号,通过对
    的头像 发表于 05-10 14:18 329次阅读
    智能矿用<b class='flag-5'>电动机</b>保护<b class='flag-5'>器</b>应该怎么选

    安科瑞智能电动机/马达保护在煤矿内的应用分析

    摘要 :介绍了矿用电动机智能综合保护系统的总体结构,采用直接交流信号整流、滤波、调理、采样的方式变为微控制器能够识别的直流信号,通过对微控制器
    的头像 发表于 05-10 13:30 324次阅读
    安科瑞智能<b class='flag-5'>电动机</b>/马达保护<b class='flag-5'>器</b>在煤矿内的应用分析

    电动机保护的作用 电动机保护的脱扣级别如何设置

    电动机保护是一种用于保护电动机的重要设备,它在电动机运行过程中起到监测和控制的作用,可以保护电动机
    的头像 发表于 02-02 11:37 2282次阅读

    简单认识电动机控制器

    电动机。通用电动机控制器主要用于控制电动机保持良好的运行状态,而专用电动机
    的头像 发表于 12-25 11:01 1258次阅读

    同步电动机和异步电动机故障的原因分析

    同步电动机   同步电动机故障原因分析如下:   (1)阻尼绕组断路或连接处接触不良,一般是因为阻尼环和阻尼条由于长期受热,使焊接部分松脱,或阻尼环连接处的
    发表于 12-21 07:28