前不久弄到一只28BYJ48型步进电机,没有材料,从网上查找,搜到一些材料,但依照网上介绍的程序试验,都没有成功。后来依据材料的原理部分,试着自己编写了一段程序,经过屡次试验调试,总算成功了。
哈哈,收成不小!!!
步进电机是一种将电脉冲转化为角位移的履行设备。浅显一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向滚动一个固定的视点(即步进角)。咱们能够经过操控脉冲个数来操控角位移量,然后到达精确定位的意图;一起咱们能够经过操控脉冲频率来操控电机滚动的速度和加速度,然后到达调速的意图。
28BYJ48型步进电机是四相八拍电机,电压为DC5V~DC12V。当对步进电机按必定次序施加一系列接二连三的操控脉冲时,它能够接二连三地滚动。每一个脉冲信号使得步进电机的某一相或两相绕组的通电状况改动一次,也就对应转子转过必定的视点。当通电状况的改动完结一个循环时,转子转过一个齿距。四相步进电机能够在不同的通电方法下运转,常见的通电方法有单(单相绕组通电)四拍(A-B-C-D-A……),双(双相绕组通电)四拍(AB-BC-CD-DA-AB……),四相八拍(A-AB-B-BC-C-CD-D-DA-A……)。本例是运用四相八拍驱动方法完成的。
下面是我写的C言语操控程序完成28BYJ48型步进电机正转五圈然后倒转五圈的作用:
//********************************************************************************
//*
//*
//*
//*
//********************************************************************************
//*
//*
//*
//********************************************************************************
#include
#include
//**********************正向旋转相序表*****************************
unsigned char code FFW[8]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09};
//**********************反向旋转相序表*****************************
unsigned char code REV[8]={0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08};
//***********************延时子程序********************************
void delay(unsigned int t)
{
}
//**********************步进电机正转******************************
void
//*********************步进电机回转********************************
void
{
//*************************主程序*********************************
main()