使用MSP430G2 LaunchPad开发板连接步进电机的方法

发布者:TranquilSmile最新更新时间:2019-10-23 来源: eefocus关键字:MSP430G2  LaunchPad  步进电机 手机看文章 扫描二维码
随时随地手机看文章

在本篇文章中,我们将介绍如何使用MSP430 LaunchPad开发板连接一个步进电机。 MSP-EXP430G2是德州仪器(TI)提供的开发工具,又名LaunchPad,用于学习和练习如何使用他们提供的微控制器。该开发板属于MSP430产品线,我们可以使用它对所有MSP430系列微控制器进行编程。如果您是MSP430的新手,请查看MSP430 LaunchPad的入门教程。


所需的材料

●    MSP430 LaunchPad开发板

●    35BYJ46或28-BYJ48步进电机

●    ULN2003驱动芯片

●    连接导线

●    面包板


步进电机

步进电机是一种无刷直流电机,可将电脉冲转换为不同的机械运动。步进电机的轴以不连续的步骤旋转。我们可以根据需要获得精确的步数和速度。



我们将使用市场上价格便宜的35BYJ46双极步进电机。它有6根电线,但也有5根电线的。步进电机有2个线圈。每个都有3根电线从中出来。在3根导线中,1根中心抽头,剩下2根导线直接与线圈连接。总共有4根信号线和2根中心抽头,用5-12V电源连接。


如果总共有5根电线从电机出来,则4根电线是信号线,1根电线中心抽到两个线圈。和下图一样。



要检查哪根导线是中心抽头或者哪根是信号线,您必须检查从电机出来的导线的电阻。因此,与中心抽头的电阻相比,连接同一根线圈的那些导线具有高电阻值。


在上图中,如果我们检查了蓝线和黄线的电阻值,它们之间的电阻大于黄线和红线或蓝线和红线之间的值。所以,红色线是中心抽头。


ULN2003步进电机驱动芯片

大多数步进电机只能在驱动模块的帮助下运行。这是因为控制器模块(在我们的情况下是MSP430)无法从其I / O引脚提供足够的电流以使电机运行。因此我们将使用像ULN2003模块这样的外部模块作为步进电机驱动。有许多类型的驱动模块,其中驱动模块的选择根据所用电机的类型而改变。所有驱动器模块的主要原理是为电动机提供足够的电流以使其运行。


在这个项目中,我们将使用ULN2003电机驱动器IC。 IC的引脚图如下:



我们使用4个输入端口和4个输出端口。


电路原理图



在上图中,步进电机的红线没有与IC的PIN5连接,该线必须连接到5V。步进电机的颜色代码可能与电路图中给出的颜色不同。因此,在检查正确的信号线后再连接导线。


我们将使用Energia IDE开发环境编写代码。它与Arduino IDE相同,易于使用。用于驱动步进器的示例代码也可以在Arduino IDE的示例菜单中找到。


代码和说明

在我们开始对MSP430进行编程之前,让我们了解一下程序内部的工作流程。我们将使用4步序列方法,因此将有四个步骤来执行一次完整的旋转。将A、B、C和D看作四个线圈。

步骤序号

通电的引脚

通电的线圈

第1步

6和7

A和B

第2步

7和8

B和C

第3步

8和9

C和D

第4步

9和6

D和A


在本篇文章中中,我们将编写MSP430步进电机代码。完整的程序可以在本文末尾处给出,下面将解释几段重要的代码。


步进电机每转的步数为32;因此我们在代码行中写入以下内容:

const int STEPS = 32;


接下来,您必须创建一个实例,在该实例中我们指定了连接步进电机的引脚。


Stepper myStepper (STEPS, 6, 7, 8, 9);



由于我们使用的是Stepper库,我们可以使用以下代码行设置电机的速度。对于35BYJ46步进电机,速度范围在0到200之间。


Mystepper.setSpeed(200);


现在,为了使电机向前移动一步,我们可以使用以下行。


myStepper.step(STEPS);



由于我们有32步和64作为齿轮比,我们需要移动2048(32 * 64 = 2048),以完成一次完整的旋转。现在,上传以下代码,然后根据您的需要更改前进的步数。


本篇文章使用的完整代码如下:

#include

const int STEPS = 32;  // change this to fit the number of steps per revolution

// for your motor

// initialize the stepper library on pins 6 through 9 or you can use any pins on MSP430:

Stepper myStepper(STEPS, 6,7,8,9);            

void setup() {

                               // set the speed at 200rpm or as you want:

  myStepper.setSpeed(200);

}

void loop() {

  myStepper.step(STEPS);

}



本篇文章使用的完整代码如下:


关键字:MSP430G2  LaunchPad  步进电机 引用地址:使用MSP430G2 LaunchPad开发板连接步进电机的方法

上一篇:使用MSP430连接RTC模块(DS2321)制作数字时钟
下一篇:MSP430系列嵌入式实验教程---基础

推荐阅读最新更新时间:2024-10-30 09:38

基于飞思卡尔单片机的微型热敏打印机的设计
1 引言 常用的微型针式打印机速度慢、噪声大,无法满足某些场合的需要。微型热敏打印机具有打印速度快、噪音低、可靠性高、字迹清晰、机头小而轻等优点,可满足各种场合的打印要求,因此得到广泛应用。笔者在汽车行驶记录仪的开发过程中,根据要求,选用较为先进的热敏打印机作为打印设备。但微型热敏打印头对打印时序和温度要求较高,一旦控制不当极易造成打印头烧毁,其控制系统的软硬件设计较复杂。本文选用FTP-628系列热敏打印头开展以下研发工作。 2 系统组成 本文介绍的微型热敏打印机主要由主控器件、步进电机驱动模块、热敏打印头过热保护模块、热敏打印头缺纸检测模块、RS-232通信模块和供电模块等部分组成。系统的结构框图如图l所示。其中步进
[单片机]
基于飞思卡尔单片机的微型热敏打印机的设计
一种多通道微量注射泵的设计与实现
  微量注射泵是临床医疗和生命科学研究中经常使用的一种长时间进行微量注射的仪器,这种仪器主要应用于动静脉输液,输血和精密化学实验。现今国内外微量注射泵的主要问题是精度不高,而且一般只实现单通道匀速注射。而有些场合如食品检测色谱分析中往往要求匀变速注射试剂。因此设计匀加速或匀减速注射泵,并且联动控制多台注射泵,实现人机对话数据处理是非常有必要的。 1 系统概述   如图1所以,系统可以分为计算机软件控制模块、主控制芯片模块、步进电机驱动模块、传感器模块等4个模块。   计算机通过RS 232串口与主控制芯片模块连接,通过自主设计的监控软件,可以实时监控和管理注射泵的工作状态,运行后可以实现全自动化处理。主控制芯片模块由A
[医疗电子]
一种多通道微量注射泵的设计与实现
stm32驱动TB6600控制42/57步进电机的案例(TIM中断和PWM实验)
步进电机的简单使用 接线: TB6600驱动盒的详细说明: 程序设计: 工程文件: 做毕业设计要用到57步进电机,所以花了两天时间做了一下电机函数 从淘宝查的资料: 接线如图: 接线: DIR- && PUL- 接 单片机GND DIR+ 接 PA1 PUL+ 接 PA0 驱动盒TB6600 VCC 24V 驱动盒TB6600 GND 24V的GND 我测出来的 A组(绿+蓝- ) B组(黄+红-) 如何确定AB两组看这个: 关于42步进电机驱动——基于STM32 HAL库实现 接线方法 TB6600驱动盒的详细说明: 先冲英说明: Microstep Driver 微步驱动程序 Microstep 微步
[单片机]
stm32驱动TB6600控制42/57<font color='red'>步进电机</font>的案例(TIM中断和PWM实验)
28BYJ48型步进电机的控制方法
  前不久弄到一只28BYJ48型步进电机,没有资料,从网上查找,搜到一些资料,但按照网上介绍的程序实验,都没有成功。后来根据资料的原理部分,试着自己编写了一段程序,经过多次实验调试,终于成功了。   哈哈,收获不小!!!   步进电机是一种将电脉冲转化为角位移的执行设备。通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(即步进角)。我们可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时我们可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。   28BYJ48型步进电机是四相八拍电机,电压为DC5V~DC12V。当对步进电机按一定顺序施加一系列连续不断的
[单片机]
【STC单片机学习】第十二课 单片机的电机(步进电机)
1.12.1.直流电机 1.12.1.1、什么是电机 电机就是电动机,把电能转化成动能 原理:通电导线在磁场中受到力的作用 1.12.1.2、常见电机 (1)交流电机:两相(两根火线)、三相(三根火线) (2)直流电机:永磁(永磁铁)、励磁(电磁铁,线圈磁生电) :玩具小车里面一般都是直流电机 (3)步进电机、伺服电机(可以精确控制,毫米级别的控制):精确控制尺寸,常用在机械的自动化控制。精度:伺服电机 步进电机 1.12.1.3、直流电机详解 (1)外观 磁生电、电生力---这个力是安培力,微观上叫作洛伦兹力! (2)接线和工作原理 支出来两根线,两个引脚没有正负之分,不同的接法,控制的是里面线圈的转动
[单片机]
【STC单片机学习】第十二课 单片机的电机(<font color='red'>步进电机</font>)
步进电机的特点与分类
步进电机是将电脉冲信号,转变为角位移或线位移的开环控制电机,在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响。步进电机的旋转是以固定的角度一步一步运行的,可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的,同时可以通过控制脉冲频率,来控制电机转动的速度和加速度,从而达到调速的目的。 步进电机在工作时的位置和速度信号不反馈给控制系统,所以不需要反馈电路,这就使得步进电机控制简单、精度高,当您希望将转子驱动至指定位置时,非步进电机需要根据反馈电路来确定转子的位置。但是,步进电机却不需要这些反馈,因为它可以简单地执行多个步进。 步进电机和其它电机比较优缺点都非常的突出,具体来说
[嵌入式]
<font color='red'>步进电机</font>的特点与分类
51单片机—步进电机程序
4相5线的步进电机,在51hei单片机开发板上用uln2003驱动,此程序可实现正反转和加减速功能。 电路图如下: c语言源程序 #include reg52.h sbit p10=P1^0; sbit p11=P1^1; sbit p12=P1^2; sbit p13=P1^3; sbit p32=P3^2;//减速 sbit p33=P3^3;//加速 sbit p34=P3^4;//正转 sbit p35=P3^5;//反转 #define A {p10=1;p11=0;p12=0;p13=0;} #define B {p10=0;p11=1;p12=0;p13=0;} #define C {p10=0;p11=0;
[单片机]
51单片机—<font color='red'>步进电机</font>程序
安森美扩展步进电机设计的电流范围和灵活性
2008 年 10 月 6 日 , 安森美半导体 ( ON Semiconductor ) 扩展双极步进电机控制系列,推出两款新的串行外设接口 (SPI) 版本电机驱动器—— AMIS-30511 和 AMIS-30512 ,能够提供达 800 毫安 (mA) 的峰值电流,配以外部微控制器 (MCU) 的使用, 可增加灵活性。这两款新器件消除了使用众多外部元件的需要,降低系统成本,减少物料清单 (BOM) 。 这两款新的混合信号 IC 都包含两个嵌入式 H 桥,能够以高达 400 mA 的持续峰值电流以及高达 800 mA 最大电流短时间驱动两相步进电机。每款器件都令主微控制器检测堵转转子和运转结束状况,而无
[工业控制]
安森美扩展<font color='red'>步进电机</font>设计的电流范围和灵活性
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved