基于51单片机的步进电机驱动程序
基于51单片机的步进电机驱动程序
- 一、步进电机分类
- 1.按构造分类
- 2.按定子上相数来分
- 二、步进电机相关参数
- 1.步距角
- 2.分辨率
- 三、四相单极性驱动及例程
- 四、技巧及疑问
- 1.有类似下面图片的步进电机如何写驱动。(图片中是28byj-48)
- 2.确定脉冲发送频率
- 3.步进电机振动时说明脉冲频率过高或者电压过低;
- 4.疑问:如何精确确定步进电机脉冲频率?
一、步进电机分类
1.按构造分类
①反应式;
由定子和转子构成,定子上有绕组,转子由软磁材料制成。
②永磁式;
转子由永磁体制成,转子极数与定子极数相等。
③混合式
定子有多相绕组,转子由永磁体构成,转子与定子间齿轮接触,提高精度与稳定性,输出大力矩。
2.按定子上相数来分
单相、二相、三相、四相、五相。
两相四线需选择双极性驱动;两相六线可选择双极性驱动和单极性驱动。
单极性驱动▼
双极性驱动▼
写驱动程序时,直接按照以上图片左侧表格,写相关状态码,前往第三大点。
二、步进电机相关参数
1.步距角
步进电机在一个脉冲下的角位移(转了多少角度)。
就四线单极性驱动来说
unsigned char code Zhenzhuan[4]={0x02,0x04,0x08,0x10}; //由表格可得转一圈的状态 正转0000 0010,0000 0100,0000 1000,0001 0000
数组中一个元素就是一个脉冲。
2.分辨率
含义步进电机转一圈需要的脉冲数。
市面上常见的步进电机,有28步(如28byj-48)、42步进电机(3D打印机、写字机器人常用)。
分辨率=360/步距角。
三、四相单极性驱动及例程
#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)
①看图,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.疑问:如何精确确定步进电机脉冲频率?
基于51单片机的步进电机驱动程序相关推荐
- 51单片机 驱动步进电机 C语言 lcd,基于51单片机的步进电机驱动程序
一.步进电机分类 1.按构造分类 ①反应式: 由定子和转子构成,定子上有绕组,转子由软磁材料制成. ②永磁式: 转子由永磁体制成,转子极数与定子极数相等. ③混合式 定子有多相绕组,转子由永磁体构成, ...
- 【033】基于51单片机的步进电机角度测量与速度设定Proteus仿真设计
一.压缩包资料内容 (1).基于51单片机的步进电机角度测量与速度设定proteus仿真设计一份: (2).基于51单片机的步进电机角度测量与速度设定proteus仿真设计keli源代码一份: (3) ...
- 步进电机的计算机控制系统设计,基于.51单片机的步进电机控制系统设计.doc
基于51单片机的步进电机控制系统设计 中文摘要 步进电机是一种受,并且能将相应的或者的电动机.由于步进电机具有步距误差不积累.运行可靠.结构简单.惯性小.成本低等优点,因此,被广泛使用于计算机外围电路 ...
- 基于51单片机的步进电机的控制
前面笔者分享过基于51单片机的两种小车制作,我们利用的是L298N驱动控制电机转动,那么接下来,笔者给大家介绍两种利用51单片机控制步进电机的小程序. 首先我们要如何使电机转动呢,源程序如下: #in ...
- 基于51单片机步进电机控速正反转proteus仿真
本设计是基于51单片机步进电机控速正反转(原理图+源码+仿真) 仿真图proteus 7.8 程序编译器:keil 4/keil 5 编程语言:C语言 编号C0005 [文档]C0005 网盘链接 资 ...
- 基于51单片机驱动A4988实现步进电机逆时针转动
基于51单片机驱动A4988实现步进电机逆时针转动 一.简介 二.接线 典型接线图 实际接线 三.部分代码 引脚定义 定时器初始化 主函数 四.实验现象 五.注意事项 一.简介 A4988 是一款完全 ...
- 基于51单片机简易智能家居
基于51单片机的智能家居的设计 前言 一.项目简介 二.开发环境/工具: 1.Keil 5/Keil 4 2.STC-ISP 3.蓝牙串口助手 4.手机app 三.硬件设计: 1.单片机与蓝牙模块连接 ...
- 基于51单片机直流电机PWM调速设计
具体实现功能 系统由STC89C52单片机.LCD1602液晶显示屏.霍尔测速传感器.3V直流电机.按键模块构成. 具体功能: 1.采用霍尔传感器非接触式测电机转速: 2.LCD1602液晶显示当前的 ...
- 基于51单片机的万年历(包含闹钟,秒表)实现
开头唠一唠: 趁着寒假的时间,也趁着课程设计正好是做一个万年历.就打算好好从头到尾来一遍.涨涨知识.首先说的是本人也是小白一颗,大神们能帮忙指正错误的话,不胜感激.写博客只是为了总结经验,要是帮到一部 ...
- 基于51单片机的遥控小车
基于51单片机的遥控小车(HC-05模块,L298n模块) 保姆级 1.硬件准备 2.部分硬件说明 USB转TTL模块 可以把串口发送的TTL信号转换成USB信号再发送给电脑,电脑就可以接收到单片机发 ...
最新文章
- usaco Healthy Holsteins
- python中turtle画圆填充颜色_用Python中的画图工具turtle绘制八卦图
- mybati内sql查询语句在两个日期内
- 在51aspx收集的农历日期类
- 全能HOOK框架 JNI NATIVE JAVA ART DALVIK
- 方法覆盖(方法重写)
- php中files和FILRS,php获取文件内容最后一行示例
- org.eclipse.birt.report.exception.ViewerException: 没有可用的报表设计对象.
- 公式中*和· 号的含义区分(GRU公式)
- IOS iframe宽高问题(来至stackoverflow)
- 模拟Windows任务管理器CPU使用率的动态折线图-农夫山泉
- 编译安装的mysql如何更改文件路径
- 5.3.2 先行发生
- H3CNE、H3CSE认证考试亲身奋斗过程的心得(拿出来晒晒)
- 打包或者编译python程序
- 面试:如何评价程序员
- 巴菲特致股东的信pdf_股神巴菲特发布致股东公开信,接班人仍是个谜
- MATLAB控制有效数字
- 【知识图谱】大数据环境下知识工程的机遇和挑战
- 大数据正当时,理解这几个术语很重要
热门文章
- 【论文阅读】Speicher: Securing LSM-based Key-Value Stores using Shielded Execution
- AnkhSvn推出1.02支持vs2008
- Visual studio插件:Visual Svn 替代工具--AnkhSvn
- z世代消费力白皮书_LSPACE丨Z世代虽穷但买的态度你真的懂吗
- 【报告分享】 2020国人旅游出行研究报告-企鹅智库(附下载)
- 如何调试 chrome插件
- wpsmac和pc版的区别_Mac版WPS Office和微软Office 2019哪个更好?
- 思维导图软件哪个好?盘点10款好用的思维导图软件
- 百度地图生成器添加标注后图标不显示的解决方法
- wsimport简单实现WebService