博客
关于我
步进电机控制
阅读量:605 次
发布时间:2019-03-12

本文共 1046 字,大约阅读时间需要 3 分钟。

首先,什么是步进电机:

然后是步进电机的分类:

这里重点讲一下二相和四相电机:

两相八线步进电机有两种接法:

我们怎么让步进电机动起来:

然后我们讲单片机控制方式:

一般的小功率步进电机,用ULN2803就可以了:

电路如下:

程序控制如下:

需要控制大功率的两相步进电机时就可以考虑如下控制方式:

分为单极性驱动和双极性驱动,电路图如下:

单极性驱动:
 
双极性驱动:
 
具体内容看这个文档:
如果用了步进电机驱动器,那么我们就不用关心这么多了,直接给脉冲信号就能控制步进电机运动了。
具体的接线驱动器手册会有说明,比如:
 
比如我们用了TA8435H这个驱动器。
这个驱动器电路原理图如下:
 
相关介绍:
TA8435H可以控制步进电机以整步、半步、1/4细分、1/8细分方式运动,由TA8435H的第8、9引脚IM1、IM2状态决定。细分的意思是:如果所采用的步进电机的步进角为1.8度,即给一个脉冲步进电机将转动1.8度,由于采用了1/8细分,则控制器给8个脉冲步进电机才转动1.8度,即一个脉冲转动0.225度了。
下面给出stm32的具体控制程序,本程序的功能是控制步进电机转动180度后停止,因此需要给800个脉冲。
需要注意的是,对步进电机的速度进行控制时,只需要改变PWM的频率,频率越高,转速越快;频率越低,转速越慢。但是不要超过步进电机的转速极限,否则会出现失步的现象。当时钟频率较高时,光耦隔离电路需要采用高速光耦合器。
程序在这儿:
 

补充:

1.步进电机的“脱机”:

步进电机的脱机也叫释放,是由脱机信号线(脱机-和脱机+,或者ENA-和ENA+)来控制的,平常使用可以直接悬空。当直接悬空,步进电机驱动上电后,电机是锁死的,要把步进电机转动起来需要很大的力。当脱机-接GND,脱机+接VCC,则电机没有锁死,可以很容易用手转动电机。常用于设备的调零。也就是给脱机信号线留一个开关,当按下开关把步进电机转到要求位置,然后松开开关。(和断电类似)

2.步进电机和驱动器的接线

一般使用的是两相四线步进电机,线的颜色随厂家不同而不同。只要注意同一相接到驱动的A+和A-,或B+和B-就行了。寻找同一相线的方法是,用万用表测任意两条线的电阻,同一相线的电阻一般为几欧姆。然后接到驱动器上。同一相的线和A+、A-相连不分顺序,交换接线顺序可使电机转动反向。

3.步进电机的控制线接线

一般接脉冲线和方向线就可以了,即两根控制线即可。

4.控制信号并不一定要5V,3.3V输出也可以。

你可能感兴趣的文章
netty 主要组件+黏包半包+rpc框架+源码透析
查看>>
Vue过渡 & 动画---vue工作笔记0014
查看>>
Netty 异步任务调度与异步线程池
查看>>
Netty 的 Handler 链调用机制
查看>>
Netty 编解码器和 Handler 调用机制
查看>>
Netty 编解码器详解
查看>>
Netty 解决TCP粘包/半包使用
查看>>
Netty 调用,效率这么低还用啥?
查看>>
Netty 高性能架构设计
查看>>
Netty+Protostuff实现单机压测秒级接收35万个对象实践经验分享
查看>>
Netty+SpringBoot+FastDFS+Html5实现聊天App详解(一)
查看>>
netty--helloword程序
查看>>
netty2---服务端和客户端
查看>>
【Flink】Flink 2023 Flink易用性和稳定性在Shopee的优化-视频笔记
查看>>
Netty5.x 和3.x、4.x的区别及注意事项(官方翻译)
查看>>
netty——bytebuf的创建、内存分配与池化、组成、扩容规则、写入读取、内存回收、零拷贝
查看>>
netty——Channl的常用方法、ChannelFuture、CloseFuture
查看>>
netty——EventLoop概念、处理普通任务定时任务、处理io事件、EventLoopGroup
查看>>
netty——Future和Promise的使用 线程间的通信
查看>>
netty——Handler和pipeline
查看>>