基于51单片机的步进电机驱动程序

基于51单片机的步进电机驱动程序一、步进电机分类1.按构造分类2.按定子上相数来分二、步进电机相关参数1.步距角2.分辨率三、四相单极性驱动及例程四、技巧及疑问1.有类似下面图片的步进电机如何写驱动。(图片中是28byj-48)2.确定脉冲发送频率3.步进电机振动时说明脉冲频率过高或者电压过低;4.疑问:如何精确确定步进电机脉冲频率?

一、步进电机分类
1.按构造分类

①反应式;
由定子和转子构成,定子上有绕组,转子由软磁材料制成。
②永磁式;
转子由永磁体制成,转子极数与定子极数相等。
③混合式
定子有多相绕组,转子由永磁体构成,转子与定子间齿轮接触,提高精度与稳定性,输出大力矩。

2.按定子上相数来分

单相、二相、三相、四相、五相。
两相四线需选择双极性驱动;两相六线可选择双极性驱动和单极性驱动。

单极性驱动▼
基于51单片机的步进电机驱动程序
双极性驱动▼基于51单片机的步进电机驱动程序
写驱动程序时,直接按照以上图片左侧表格,写相关状态码,前往第三大点。

二、步进电机相关参数
1.步距角

步进电机在一个脉冲下的角位移(转了多少角度)。
就四线单极性驱动来说

基于51单片机的步进电机驱动程序

unsigned char code Zhenzhuan[4]={0x02,0x04,0x08,0x10}; //由表格可得转一圈的状态  正转0000 0010,0000 0100,0000 1000,0001 0000

数组中一个元素就是一个脉冲。

2.分辨率

含义步进电机转一圈需要的脉冲数。

市面上常见的步进电机,有28步(如28byj-48)、42步进电机(3D打印机、写字机器人常用)。
分辨率=360/步距角。

三、四相单极性驱动及例程

基于51单片机的步进电机驱动程序

#include <reg51.h>
unsigned char code Zhenzhuan[4]={0x02,0x04,0x08,0x10}; //由表格可得转一圈的状态 正转0000 0010,0000 0100,0000 1000,0001 0000
unsigned char code Fanzhuan[4]={0x01,0x08,0x04,0x02}; //反转 0001 0000,0000 1000,0000 0100,0000 0010
/******************************************************************/
/* 延时函数 */
/******************************************************************/
void Delay(unsigned int i)//延时
{
while(--i);
}
/******************************************************************/
/* 主函数 */
/******************************************************************/
main()
{
unsigned char i;
while(1)
{
for(i=0;i<4;i++) //4相
{
P1=Zhenzhuan[i]; //
Delay(500); //该参数可以调整电机转速 ,数字越小,转速越大,输出脉冲的频率
}
}
}

四、技巧及疑问
1.有类似下面图片的步进电机如何写驱动。(图片中是28byj-48)

基于51单片机的步进电机驱动程序
①看图,5根线,一个循环(不是转一圈)需要8个脉冲。
则脉冲代码如下:

uchar code zheng_zhuan[8]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09};   //逆时钟旋转相序表
uchar code fan_zhuan[8]={0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08}; //顺时针旋转相序表

②28BYJ-48步进电机,分辨率28,则转一圈需要28个脉冲。
当要控制该步进电机转动一圈时,两种办法,一、在数组中按照顺序从前到后复制28个代码(最容易实现)。二、在循环中实现。

for(j=1;j<5;j++)
{
for(i=0;i<8;i++)
{
P1= zheng_zhuan[i];
delay(300);
if(j==4&&i=3)i=7;
}
}

2.确定脉冲发送频率

① 舵机基本算是 10ms;
② 查看步进电机参数;
③ 通过在延时函数中改变延时时间来试出来。

3.步进电机振动时说明脉冲频率过高或者电压过低;
4.疑问:如何精确确定步进电机脉冲频率?

原创:https://www.panoramacn.com
源码网提供WordPress源码,帝国CMS源码discuz源码,微信小程序,小说源码,杰奇源码,thinkphp源码,ecshop模板源码,微擎模板源码,dede源码,织梦源码等。

专业搭建小说网站,小说程序,杰奇系列,微信小说系列,app系列小说

基于51单片机的步进电机驱动程序

免责声明,若由于商用引起版权纠纷,一切责任均由使用者承担。

您必须遵守我们的协议,如果您下载了该资源行为将被视为对《免责声明》全部内容的认可-> 联系客服 投诉资源
www.panoramacn.com资源全部来自互联网收集,仅供用于学习和交流,请勿用于商业用途。如有侵权、不妥之处,请联系站长并出示版权证明以便删除。 敬请谅解! 侵权删帖/违法举报/投稿等事物联系邮箱:2640602276@qq.com
未经允许不得转载:书荒源码源码网每日更新网站源码模板! » 基于51单片机的步进电机驱动程序
关注我们小说电影免费看
关注我们,获取更多的全网素材资源,有趣有料!
120000+人已关注
分享到:
赞(0) 打赏

评论抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

您的打赏就是我分享的动力!

支付宝扫一扫打赏

微信扫一扫打赏