第三节、电机定速转动【51单片机-TB6600驱动器-步进电机教程】

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

一、计算过程
1.1 电机每一步的角速度等于走这一步所花费的时间,走一步角度等于步距角,走一步的时间等于一个脉冲的时间
w = s t e p t … … ① w=\frac{step}{t} ……① w=tstep……

w:角速度(°/s)
step:步距角(°)
t:脉冲时间(s)

1.2 TB6600及其他驱动器大多具有细分功能,考虑细分X之后,一个脉冲转动的角度为step/X,带入①式:
w = s t e p t ∗ X … … ② w=\frac{step}{t*X} ……② w=tXstep……

X:驱动器细分(X=1,2,4,8,16,32……)

1.3 电机速度通常使用单位为转速RPM(转/分),角速度(°/S)与转速之间的转换关系:
w = 6 ∗ n … … ③ w=6*n ……③ w=6n……

t = s t e p 6 ∗ n ∗ X … … ④ t=\frac{step}{6*n*X} ……④ t=6nXstep……

n:转速(RPM)
至此得到了步进电机一个脉冲的时间t

1.4 采用51单片机16位溢出定时器的模式去定时,可以得到:
C = 65536 − t ∗ X t a l 12 … … ⑤ C=65536-t*\frac{Xtal}{12} ……⑤ C=65536t12Xtal……

C:16位溢出定时器初值
Xtal:晶振频率

1.5 将④带入⑤可得:
C = 65536 − s t e p ∗ X t a l 72 ∗ X ∗ n … … ⑥ C=65536-\frac{step*Xtal}{72*X*n}……⑥ C=6553672XnstepXtal……

1.6 对于二相步进电机步距角为step=1.8°,带入之后可得:
C = 65536 − X t a l 40 ∗ X ∗ n … … ⑦ C=65536-\frac{Xtal}{40*X*n}……⑦ C=6553640XnXtal……

至此得到了转速n与定时初值C的函数关系

二、举例计算
步进电机使用二相四线电机,驱动器细分值设定为2,单片机晶振频率为12000000,设定转速为100RPM,带入⑦可得:
C = 65536 − 12000000 40 ∗ 2 ∗ 100 = 64036 C=65536-\frac{12000000}{40*2*100} =64036 C=6553640210012000000=64036

定时器0初值高8位TH0= C/256=0XFA
定时器0初值低8位TL0= C%256=0X24

三、测试
烧录hex文件后,单片机上电,电机会以100RMP速度匀速转动
请添加图片描述

四、功能扩展
扩展1
① 增加4个按键,控制电机启停、方向、速度加减
② 增加数码管,显示信息
在这里插入图片描述

扩展2
① 增加4个按键,控制电机启停、方向、速度加减
② 增加1602LCD,显示信息
在这里插入图片描述

五、总结
至此一个基本的电机定速驱动程序完成,通过调整定时时间,可以精确调整电机的转速
此种方式利用定时器精确定时能力,从而控制电机转速,是后续电机加减速运动的理论基础

五、附件
Hex测试程序请见百度网盘
链接: https://pan.baidu.com/s/1zk3TdaNJpOl2xjSGP3J4-A
提取码: ev4a

Keil源码请见某宝,搜索:【皮皮黄步进电机】

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

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

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

相关文章

vue中pdf.js的使用,包括pdf显示,跳转指定页面,高亮关键词

目录 一、下载pdf.js 二、引入到本地的项目中 三、实现预览pdf 四、跳转到指定页面 五、利用pdf里面的find查找关键词 六、修改页面大小为实际大小 一、下载pdf.js https://github.com/mozilla/pdf.js 里面有很多的版本, 高版本的可能浏览器不兼容或者还要考…

Qt 小项目 学生管理信息系统

主要是对数据库的增删查改的操作 登录/注册界面: 主页面: 添加信息: 删除信息: 删除第一行(支持多行删除) 需求分析: 用QT实现一个学生管理信息系统,数据库为MySQL 要求&#xf…

“量子跃迁与数据织网:深入探索K最近邻算法在高维空间中的优化路径、神经网络融合技术及未来机器学习生态系统的构建“

🎼个人主页:【Y小夜】 😎作者简介:一位双非学校的大二学生,编程爱好者, 专注于基础和实战分享,欢迎私信咨询! 🎆入门专栏:🎇【MySQL&#xff0…

硬件选型规则

光源选型: 先用型号中带H的,没有的选标准的. 光源和光源控制器的搭配需要确保接口一致。 根据型号表中的最佳工作距离和相机的尺寸。 光源控制器选型: 首先选择海康风格系列光源控制器考虑与光源的接口匹配。功率应该满足接近光源功率。检查是否退市…

【计算机网络】 —— 数据链路层(壹)

文章目录 前言 一、概述 1. 基本概念 2. 数据链路层的三个主要问题 二、封装成帧 1. 概念 2. 帧头、帧尾的作用 3. 透明传输 4. 提高效率 三、差错检测 1. 概念 2. 奇偶校验 3. 循环冗余校验CRC 1. 步骤 2. 生成多项式 3. 例题 4. 总结 四、可靠传输 1. 基本…

golang实现简单的redis服务

golang 手搓redis服务器仓库地址:实现思路: golang 手搓redis服务器 仓库地址: 仓库: https://github.com/dengjiayue/my-redis.git 实现思路: ● 协议: tcp通信 ● 数据包: 长度(4byte)方法(1byte)数据json ● 数据处理: 单线程map读写 ○ 依次处理待处理队列的请求(chan)…

智慧银行反欺诈大数据管控平台方案(八)

智慧银行反欺诈大数据管控平台的核心理念,在于通过整合先进的大数据技术、算法模型和人工智能技术,构建一个全面、智能、动态的反欺诈管理框架,以实现对金融交易的全方位监控、欺诈行为的精准识别和高效处理。这一理念强调数据驱动决策&#…

3D 生成重建019-LERF用文本在Nerf中开启上帝之眼

3D 生成重建019-LERF用文本在Nerf中开启上帝之眼 文章目录 0 论文工作1 论文方法2 实验结果 0 论文工作 人类利用自然语言描述物理世界,根据各种特性(视觉外观、语义、抽象关联)寻找具体的3D位置。在这项工作中,作者提出了语言嵌…

如何选择合适的期刊投稿?从课题组经验到在线工具的使用全解析

~~~本文是作者个人的经验分享,建立在导师让自己选刊的情况下~~~ 投稿选刊是科研过程中至关重要的一步,选刊过程可能让许多初投稿的研究者感到迷茫和困惑:期刊那么多,如何找到最合适的? 本文将从多个角度介绍如何选择投…

.NET MAUI与.NET for Android/IOS的关系

2024年11月13日微软发布了.Net9.0,我打算体验一下。安装好.Net9.0 SDK后发现Visual Studio识别不到9.0,但是通过命令行dotnet --info查看是正常的,后面看到了VS有版本可以升级,把VS升级到17.12.0就可以了。更新完打开以后看到如下界面 这里…

【vivado】时序报告--best时序和worst时序

利用vivado进行开发时,生成best时序报告和worst时序报告。 best时序报告 slow选择min_max,fast选择none。 worst时序报告 fast选择min_max,slow选择none。

FastAPI 响应状态码:管理和自定义 HTTP Status Code

FastAPI 响应状态码:管理和自定义 HTTP Status Code 本文介绍了如何在 FastAPI 中声明、使用和修改 HTTP 状态码,涵盖了常见的 HTTP 状态码分类,如信息响应(1xx)、成功状态(2xx)、客户端错误&a…

第P1周:Pytorch实现mnist手写数字识别

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 目标 1. 实现pytorch环境配置 2. 实现mnist手写数字识别 3. 自己写几个数字识别试试具体实现 (一)环境 语言环境:Python…

网络安全技术详解:虚拟专用网络(VPN) 安全信息与事件管理(SIEM)

虚拟专用网络(VPN)详细介绍 虚拟专用网络(VPN)通过在公共网络上创建加密连接来保护数据传输的安全性和隐私性。 工作原理 VPN的工作原理涉及建立安全隧道和数据加密: 隧道协议:使用协议如PPTP、L2TP/IP…

河南省的教育部科技查新工作站有哪些?

郑州大学图书馆(Z12):2007年1月被批准设立“教育部综合类科技查新工作站”,同年12月被河南省科技厅认定为河南省省级科技查新机构。主要面向河南省的高校、科研机构、企业提供科技查新、查收查引等服务。 河南大学图书馆&#xf…

Leetcode经典题6--买卖股票的最佳时机

买卖股票的最佳时机 题目描述: 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。…

【Pytorch】torch.reshape与torch.Tensor.reshape区别

问题引入: 在Pytorch文档中,有torch.reshape与torch.Tensor.reshape两个reshape操作,他们的区别是什么呢? 我们先来看一下官方文档的定义: torch.reshape: torch.Tensor.reshape: 解释: 在p…

spring6:3容器:IoC

spring6:3容器:IoC 目录 spring6:3容器:IoC3、容器:IoC3.1、IoC容器3.1.1、控制反转(IoC)3.1.2、依赖注入3.1.3、IoC容器在Spring的实现 3.2、基于XML管理Bean3.2.1、搭建子模块spring6-ioc-xml…

【认证法规】安全隔离变压器

文章目录 定义反激电源变压器 定义 安全隔离变压器(safety isolating transformer),通过至少相当于双重绝缘或加强绝缘的绝缘使输入绕组与输出绕组在电气上分开的变压器。这种变压器是为以安全特低电压向配电电路、电器或其它设备供电而设计…

车机端同步outlook日历

最近在开发一个车机上的日历助手,其中一个需求就是要实现手机端日历和车机端日历数据的同步。然而这种需求似乎没办法实现,毕竟手机日历是手机厂商自己带的系统应用,根本不能和车机端实现数据同步的。 那么只能去其他公共的平台寻求一些机会&…