第3节、电机定速转动【51单片机+L298N步进电机系列教程】

↑↑↑点击上方【目录】,查看本系列全部文章

摘要:本节介绍用定时器定时的方式,精准控制脉冲时间,从而控制步进电机速度。

一、计算过程
电机每一步的角速度等于走这一步所花费的时间,走一步角度等于步距角,走一步的时间等于一个脉冲的时间
在这里插入图片描述
L298N驱动步进电机有三种模式:单相4拍、双相4拍、8拍,对于二相四线步进电机,4拍步距角为1.8度,8拍等效步距角为1.8/2=0.9度,一个脉冲转动的角度为step/X,带入①式
在这里插入图片描述
电机速度通常使用单位为转速RPM(转/分),角速度(°/S)与转速之间的转换关系
在这里插入图片描述
至此得到了步进电机一个脉冲的时间t,采用51单片机16位溢出定时器的模式去定时,可以得到:
在这里插入图片描述
将④带入⑤可得:
在这里插入图片描述
至此得到了转速n与定时初值C的函数关系

二、举例计算
步进电机使用二相四线电机,步距角为1.8°,采用8拍模式(X=2),单片机晶振频率为12000000,设定转速为100RPM,带入⑥可得:
在这里插入图片描述
定时器0初值高8位TH0=C/256=0XFA
定时器0初值低8位TL0=C%256=0X24

三、proteus仿真及实测
在这里插入图片描述
请添加图片描述
请添加图片描述
四、总结
此种方式利用定时器精确定时能力,从而控制电机转速,是后续电机加减速运动的理论基础

五、附件
proteus仿真文件百度网盘链接:
链接:https://pan.baidu.com/s/1BiJeJdXYfwZys0exWvslUQ
提取码:3808

Keil工程文件获取链接:
https://item.taobao.com/item.htm?ft=t&id=764272245024

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/671362.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥杯嵌入式学习记录——LCD的使用

目录 一、前言 二、LCD代码的移植 三、LCD代码的调用 一、前言 前一篇文章已经简单记录了一下cubeMX软件的使用和LED的点亮,今天来记录一下LCD的使用。LCD的驱动代码有很多,但实际上在蓝桥杯的比赛中用起来非常简单,因为赛点会提供LCD的驱…

js判断某数据是否包含某值

判断是否包含了某个数值或字符串 indexOf 没找到指定元素则返回 -1,找到则返回索引值 includes 返回布尔值 hasOwnProperty只用于对象,返回布尔值 字符串 includes、indexOf、startsWith、endsWith startsWith参数二:搜索起点的位置,默认值为…

在使用redis做缓存时,如何确保redis与mysql数据的一致性

在使用redis做缓存时,如何确保redis与mysql数据的一致性,实现方案总结如下: 缓存失效/过期策略(Cache Expiration): 设置Redis缓存的过期时间(TTL, Time To Live),当缓…

问题:媒体查询语法中, 可用设备名参数表示“文档打印或预览“的是 #媒体#媒体#其他

问题:媒体查询语法中, 可用设备名参数表示"文档打印或预览"的是 A、C.?screen B.?projection C、A.?print D.?speech 参考答案如图所示

探索设计模式的魅力:设计之美-揭秘设计模式、原则与UML的魔法

设计模式专栏:http://t.csdnimg.cn/U54zu 目录 一、引言 二、设计模式与设计原则 设计模式 设计原则 三、面向对象设计原则 四、UML(统一建模语言) 4.1 UML是什么 UML是一种语言 UML是一种建模语言 UML是一种图形化语言 4.2 UML有什么 4.…

php数组排序

在PHP中,可以使用以下函数对数组进行排序: sort():对数组按升序排序(保留索引关联)。rsort():对数组按降序排序(保留索引关联)。asort():对数组按升序排序(保…

Postgresql自定义函数—表名作为函数参数

函数传递表名和另外一个参数示例 CREATE OR REPLACE FUNCTION some_f(_tbl text, col text, OUT result bool) LANGUAGE plpgsql AS $func$ BEGIN EXECUTE format(SELECT (EXISTS (SELECT FROM %s WHERE b $1)), _tbl,col) using col INTO result; END $func$; 函数调用…

2.6 假期作业

分布编译 -ESc iso 1.预处理:头文件展开,宏替换,删除注释,不会查找语法错误 例:gcc -E 1.c -o 1.i 2.编译:生成汇编文件,会查找语法错误 例:gcc -S 1.i -o 1.s 3.汇编:生成二…

64位Office API声明语句第115讲

跟我学VBA,我这里专注VBA, 授人以渔。我98年开始,从源码接触VBA已经20余年了,随着年龄的增长,越来越觉得有必要把这项技能传递给需要这项技术的职场人员。希望职场和数据打交道的朋友,都来学习VBA,利用VBA,起码可以提高…

黑马程序员-瑞吉外卖-day7

目录 1.做新建菜品里面的上传图片 1.1设置存储路径(先是我们自己存到我们的本地) 2.在controller目录下写代码 3.在过滤器放开这个路径的访问 4.访问localhost:8080/backend/page/demo/upload.html 1.做新建菜品里面的上传图片 1.1设置存储路径&…

系留无人机的发展与应用场景分析,系留旋翼无人机技术难点分析

传统无人机的局限 随着无人机民用市场的扩大,无人机的功能愈加多样化,被广泛应用于搜救、公共安全、农林、摄像娱乐等多领域。民用市场的扩大使传统无人机面临很多技术难题,诸如定位、通讯、交互技术等等,其中最主要的是续航问题…

LeetCode-第876题-链表的中间结点

1.题目描述 给你单链表的头结点 head ,请你找出并返回链表的中间结点。如果有两个中间结点,则返回第二个中间结点。 2.样例描述 3.思路描述 创建两个快慢指针 slow , fast ,起始共同指向头节点,slow 每次走一步,fas…

编译原理与技术(三)——语法分析(五)自底向上-LR分析

一、自顶向下的LL(1)与自底向上的LR (一)LL(1)非递归预测分析器及分析表 (二)LR分析器及分析表 二、LR分析 举个例子。 从上面不难看出,LR分析也是由分析表驱动的。那么关键在于构造LR分析表。

「数据结构」栈:题解

🎇个人主页:Ice_Sugar_7 🎇所属专栏:Java数据结构 🎇欢迎点赞收藏加关注哦! 栈 🍉简介🍉栈的常用方法🍉栈的应用🍌逆波兰表达式求值🍌出栈入栈顺序…

《动手学深度学习(PyTorch版)》笔记6.1

注:书中对代码的讲解并不详细,本文对很多细节做了详细注释。另外,书上的源代码是在Jupyter Notebook上运行的,较为分散,本文将代码集中起来,并加以完善,全部用vscode在python 3.9.18下测试通过&…

不看后悔之Spring Framework篇:Spring MVC架构与控制器设计的艺术

目录 开篇:拥抱Spring MVC,构建高效Java EE Web应用一、Spring MVC核心架构概览 1.1 请求处理流程1.2 关键组件解析:DispatcherServlet、Controller、ModelAndView 二、基于注解的Spring MVC控制器设计 2.1 RequestMapping详解2.2 Controlle…

力扣 第 383 场周赛 解题报告 | 珂学家 | Z函数/StringHash

前言 谁言别后终无悔 寒月清宵绮梦回 深知身在情长在 前尘不共彩云飞 整体评价 T3是道模拟题,但是感觉题意有些晦涩,T4一眼Z函数,当然StringHash更通用些。 新年快乐, _. T1. 将单词恢复初始状态所需的最短时间 I 思路: 模拟 就是前缀和为…

C++ 哈希+unordered_map+unordered_set+位图+布隆过滤器(深度剖析)

文章目录 1. 前言2. unordered 系列关联式容器2.1 unordered_map2.1.1 unordered_map 的概念2.1.2 unordered_map 的使用 2.2 unordered_set2.2.1 unordered_set 的概念2.2.2 unordered_set 的使用 3. 底层结构3.1 哈希的概念3.2 哈希冲突3.3 哈希函数3.4 哈希冲突的解决3.4.1 …

芯片级原子钟,国产原子钟,芯片原子钟、国产芯片级微型原子钟介绍

原子钟已经为天文、航海、宇宙航行等领域提供了强有力的保障。但是,目前这些器件体积庞大,重量也很大,达几百千克。要成为平常人可使用的实用功能,原子钟的尺寸需要大幅缩小,而精度和速度需要被保留。 文章介绍的此类…

linux设置固定ip

进入目录 cd /etc/sysconfig/network-scripts 找到对应的配置文件,一般是ifcfg-ens开头的 vim ifcfg-ens192 BOOTPROTOstatic 网络类型配置,static代表静态ip IPADDR就是你要设置的ip