第五节、电机多段运动【51单片机-TB6600驱动器-步进电机教程】

news2025/1/10 20:51:42

摘要:本节介绍用控制步进电机三个主要参数角度、速度、方向,实现简单的步进电机多段控制

一、目标功能
输入多个目标角度,设定好步进电机速度,实现步进电机多段转动

二、计算过程
2.1 速度计算
根据第三节内容,定时器初值C与速度n函数关系为
C = 65536 − X t a l 40 ∗ X ∗ n … … ① C=65536-\frac{Xtal}{40*X*n}……① C=6553640XnXtal……

2.2 步数计算
根据第四节内容,转动步数step_num与转动角度angle函数关系为
s t e p n u m = 5 ∗ a n g l e ∗ X 9 … … ② step_{num} =\frac{5*angle*X}{9} ……② stepnum=95angleX……

2.3程序结构
通过一个数组,设定步进电机多个目标角度,通过比较相邻两个目标角度大小,可以确定步进电机转动方向,实现步进电机控制的三要素:角度、速度、方向,最终完成步进电机多段运动的功能,流程图如下所示
在这里插入图片描述

三、测试
烧录hex文件后,单片机上电,步进电机转动5段,停止位置依次为:90°→360°→720°→180°→0°,转速100RPM,每一段中间停顿0.5s
请添加图片描述

四、功能扩展
扩展1:
① 增加4个按键,控制电机启动、方向、段数、目标角度、停顿时间
② 增加数码管,显示信息
在这里插入图片描述
扩展2:
① 增加4个按键,控制电机启动、方向、段数、目标角度、停顿时间
② 增加1602LCD,显示信息
在这里插入图片描述
扩展3:
① 增加4个按键,控制电机启动、方向、段数、目标角度、停顿时间
② 增加数码管,显示信息
③ 增加光电开关,上电后步进电机自动回零点
在这里插入图片描述

扩展4:
① 增加4个按键,控制电机启动、方向、段数、目标角度、停顿时间
② 增加1602LCD,显示信息
③ 增加光电开关,上电后步进电机自动回零点
在这里插入图片描述
扩展5:
① 不增加外设,每一段的转速可以分别设置为不同值
请添加图片描述
五、总结
此种方式利用定时器精确定时能力,从而控制电机转速,同时实现步进电机的多段运动,至此实现了步进电机三个主要参数角度、速度、方向的简单协同操作

六、附件
Hex测试程序请见百度网盘
链接: https://pan.baidu.com/s/1kNky1OhyVDyQbdhZoO8wlA
提取码: rw7n

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

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

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

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

相关文章

C++(九)

前言: 本文主要讲述运算符的优先顺序。 一,运算符的优先级。 请看以下表达式: a32*5 运算结果为:13. 可以看到,在此代码中,先运行了2*5的结果,在此基础上在进行3操作,因此结果…

志愿服务管理系统设计与实现

私信我获取源码和万字论文,制作不易,感谢点赞支持。 摘 要 传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此&#xff0…

dbeaver安装

数据库常用的管理工具就是navicat,页面简洁大方,且易上手,唯一不好的就是要收费,个人使用的话可以用dbeaver,一款开源的数据库管理工具。 下载地址:https://dbeaver.io/download/ 直接下载这个windows(inst…

Odoo :一款免费且开源的食品生鲜领域ERP管理系统

文 / 贝思纳斯 Odoo金牌合作伙伴 引言 提供业财人资税的精益化管理,实现研产供销的融通、食品安全的追踪与溯源,达成渠道的扁平化以及直面消费者的 D2C 等数字化解决方案,以此提升运营效率与核心竞争力,支撑高质量的变速扩张。…

【AIGC半月报】AIGC大模型启元:2024.12(上)

【AIGC半月报】AIGC大模型启元:2024.12(上) (1)OpenAI-12日发布会(持续更新中........)Day01-12.06:o1满血版上线(已发布)Day02-12.07:强化微调&a…

Mysql学习-Mysql查询(1)

1.基本查询&#xff08;SELECT&#xff09; SELECT语句基本格式&#xff1a; SELECT {*|<字段列表>} [ FROM<表1>&#xff0c;<表2>.. [WHERE <表达式> [GROUP BY<group by definition>] [HAVING <expression>[{<operator><exp…

OpenCV-平滑图像

二维卷积(图像滤波) 与一维信号一样&#xff0c;图像也可以通过各种低通滤波器&#xff08;LPF&#xff09;、高通滤波器&#xff08;HPF&#xff09;等进行过滤。LPF 有助于消除噪音、模糊图像等。HPF 滤波器有助于在图像中找到边缘。 opencv 提供了函数 **cv.filter2D()**&…

WPS解决Word文件引入excel对象文件无法打开提示“不能启动此对象...”的问题

一、问题现象 接收到了一份 Word文件&#xff0c;里面引入了一个Excel对象文件&#xff0c;双击时候&#xff0c;wps出现卡顿&#xff0c;过一会之后弹出错误提示&#xff1a;不能启动此对象... 二、解决方法 1.点击WPS左上角图标&#xff0c;并打开右上角设置&#xff0c;萱蕚…

做异端中的异端 -- Emacs裸奔之路6: 不可能存在的跳转功能

当一个问题存在两难时&#xff0c;市面上就不太可能出现稳定的&#xff0c;大众化的解决方案。 这很多是一个哲学问题 两害权衡&#xff0c; 存在很强的个性差异. 这种问题需要自己解决&#xff0c; 这个就是为什么要使用Emacs或者Vim的原因。 今天分享的一个想法&#xff0…

【Linux】ubuntu下一键配置vim

&#x1f525;个人主页&#x1f525;&#xff1a;孤寂大仙V &#x1f308;收录专栏&#x1f308;&#xff1a;Linux &#x1f339;往期回顾&#x1f339;&#xff1a;Linux权限&#xff08;超详细彻底搞懂Linux的权限&#xff09; &#x1f516;流水不争&#xff0c;争的是滔滔…

华为的USG6000为什么不能ping通

前言&#xff1a; 防火墙usg6000v的镜像 链接: https://pan.baidu.com/s/1uLRk0-hnHRTLYLx1Pnplow?pwdtymp 提取码: tymp 看了好多毒文章&#xff0c;感觉写作业更有意思&#xff0c;可以了解新的知识 内容&#xff1a; 首先看毒文章是这样说的&#xff0c;华为的防火墙是…

【Linux】实战小项目-----Bash的简易版

目录 一、什么是Bash 二、实现Bash&#xff1a; 1、整体需求分析&#xff1a; 2、初始化&#xff1a; 3、分割字符串&#xff1a; 4、执行普通命令&#xff1a; 5、内建命令与特殊处理&#xff1a; 1、ls的颜色&#xff1a; 2、内建命令cd&#xff1a; 3、export&#…

windows文件下换行, linux上不换行 解决CR换行符替换为LF notepad++

html文件是用回车换行的&#xff0c;在windows电脑上&#xff0c;显示正常。 文件上传到linux服务器后&#xff0c;文件不换行了。只有一行。而且相关js插件也没法正常运行。 用notepad查看&#xff0c;显示尾部换行符&#xff0c;是CR&#xff0c;这就是原因。CR是不被识别的。…

汽车产业数字化转型:协同创新破解挑战,平衡安全与流通

在数字经济时代的浪潮中&#xff0c;数据资源和数据信息已成为驱动各行各业转型升级的“新石油”。汽车产业&#xff0c;作为国民经济的重要支柱&#xff0c;正经历着前所未有的变革。随着数字化创新和转型的深入&#xff0c;数据在汽车全产业链中的作用和价值日益凸显。在这个…

C语言程序设计P5-2【应用函数进行程序设计 | 第二节】——知识要点:函数的参数及返回值和函数的调用及声明

知识要点&#xff1a;函数的参数及返回值和函数的调用及声明 视频&#xff1a; 目录 一、任务分析 二、必备知识与理论 三、任务实施 一、任务分析 1.求x的n次方的值也就是求n个x的乘积&#xff0c;可把x和n作为函数的形参&#xff0c;定义一个函数power来完成这个功能&am…

40分钟学 Go 语言高并发:GRPC框架使用

gRPC框架使用 一、gRPC基础知识 知识点说明重要程度应用场景RPC原理远程过程调用的基本原理⭐⭐⭐⭐⭐分布式系统通信协议设计Protocol Buffers的使用⭐⭐⭐⭐⭐接口定义、数据序列化服务定义gRPC服务和方法定义⭐⭐⭐⭐服务接口设计性能优化连接池、压缩、流式处理⭐⭐⭐⭐高…

HTML Input 文件上传功能全解析:从基础到优化

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

【ETCD】【源码阅读】ETCD启动流程源码解读

启动流程的图如下&#xff1a; 1、主函数入口 ETCD 启动的入口在 etcd/server/main.go 文件中。 package mainimport ("os""go.etcd.io/etcd/server/v3/etcdmain" )func main() {etcdmain.Main(os.Args) }这里调用了 etcdmain.Main()&#xff0c;这是 …

【RBF SBN READ】hadoop社区基于RBF的SBN READ请求流转

读写分离功能的背景及架构 当前联邦生产集群的各个子集群只有Active NameNode在工作,当读写任务变得繁忙的时候,只有一个Active负责处理的话,此时集群的响应和处理能力业务侧感知会明显下降,为此,我们将引入Observer架构,实现读写功能的分离,使得Active只负责写请求,而…

计算机运行时提示错误弹窗“由于找不到 quazip.dll,无法继续执行代码。”是什么原因?“quazip.dll文件缺失”要怎么解决?

计算机运行时错误解析&#xff1a;解决“quazip.dll缺失”问题指南 在软件开发和日常计算机使用中&#xff0c;我们经常会遇到各种运行时错误。今天&#xff0c;我们将深入探讨一个常见的错误提示&#xff1a;“由于找不到quazip.dll&#xff0c;无法继续执行代码。”这一弹窗…