第七节(2)、T型加减速优化处理【51单片机-TB6600驱动器-步进电机教程】

news2025/1/9 1:56:40

摘要:本节介绍解决标准T型加减速过程中的两个缺陷,其一是使得初速度任意设置;其二是降低Cn递推计算量,提升速度上限

一. 加速+减速过程计算
1.1计算不存在匀速过程
在这里插入图片描述
根据基本运动定理:

  • w m a x = w 0 + a 0 ∗ t n 0 … … ① w_{max} =w_{0}+a_{0} *t_{n0} ……① wmax=w0+a0tn0……
  • w m a x = w 2 + a 2 ∗ t n 2 … … ② w_{max}=w_{2}+a_{2} *t_{n2} ……② wmax=w2+a2tn2……
  • a n g l e 0 = w 0 ∗ t n 0 + 1 2 a 0 ∗ t n 0 2 … … ③ angle_{0}=w_{0}*t_{n0}+\frac{1}{2} a_{0} *t_{n0}^{2} ……③ angle0=w0tn0+21a0tn02……
  • a n g l e 2 = w 2 ∗ t n 2 + 1 2 a 2 ∗ t n 2 2 … … ④ angle_{2}=w_{2}*t_{n2}+\frac{1}{2} a_{2} *t_{n2}^{2} ……④ angle2=w2tn2+21a2tn22……
  • a n g l e = a n g l e 0 + a n g l e 2 … … ⑤ angle=angle_{0}+angle_{2}……⑤ angle=angle0+angle2……
    由①~⑤得:
    w m a x 2 = 2 a 0 a 2 a 0 + a 2 a n g l e + a 2 w 0 2 + a 0 w 2 2 a 0 + a 2 … … ⑥ w_{max}^{2} =\frac{2a_{0}a_{2}}{a_{0}+a_{2}} angle+\frac{a_{2}w_{0}^{2}+a_{0}w_{2}^{2}}{a_{0}+a_{2}} ……⑥ wmax2=a0+a22a0a2angle+a0+a2a2w02+a0w22……
    a n g l e 0 = w m a x 2 − w 0 2 2 a 0 … … ⑦ angle_{0} =\frac{w_{max}^{2}-w_{0}^{2} }{2a_{0}} ……⑦ angle0=2a0wmax2w02……

w_max:角速度(°/s)
w0:起始角速度(°/s)
a0:加速度(°/s^2)
tn0:加速时间(s)
angle0:加速角度(°)
a2:减速度(°/s^2)
tn2:减速时间(s)
w2:终止角速度(°/s)
angle2:减速角度(°)
angle:总角度(°)

二. 判断匀速阶段是否存在
2.1 假设存在匀速阶段,运动图像如下
在这里插入图片描述
2.2 假设不存在匀速阶段,运动图像如下
在这里插入图片描述
如下六个变量由用户设定:(配套程序角速度单位均换算为RPM)
angle:转动角度(°)
a0:加速度(°/s^2)
a0:减速度(°/s^2)
w0:起始角速度(°/s)
w2:终止角速度(°/s)
w:角速度上限(°/s)

2.3 比较w_max 与w可以判断是否存在匀速过程 ,为避免开方运算,比较二者平方大小

如果w_max^2 > w^2则存在匀速阶段

  • 加速角速 a n g l e 0 = w 2 − w 0 2 2 a 0 加速角速angle_{0} =\frac{w^{2}-w_{0}^{2} }{2a_{0}} 加速角速angle0=2a0w2w02
  • 减速角速 a n g l e 2 = w 2 − w 2 2 2 a 2 减速角速angle_{2} =\frac{w^{2}-w_{2}^{2} }{2a_{2}} 减速角速angle2=2a2w2w22
  • 匀速角度 a n g l e 1 = a n g l e − a n g l e 0 − a n g l e 2 匀速角度angle_{1}=angle-angle_{0}-angle_{2} 匀速角度angle1=angleangle0angle2
    将转动角度换算为电机步数:
  • 加速步数 a n g l e 0 s t e p = w 2 − w 0 2 2 a 0 ∗ 5 X 9 = 5 X ∗ ( w 2 − w 0 2 ) 18 a 0 加速步数angle_{0step}=\frac{w^{2}-w_{0}^{2} }{2a_{0}}*\frac{5X }{9}=\frac{5X*(w^{2}-w_{0}^{2}) }{18a_{0}} 加速步数angle0step=2a0w2w0295X=18a05X(w2w02)
  • 加速步数 a n g l e 2 s t e p = w 2 − w 2 2 2 a 2 ∗ 5 X 9 = 5 X ∗ ( w 2 − w 2 2 ) 18 a 2 加速步数angle_{2step}=\frac{w^{2}-w_{2}^{2} }{2a_{2}}*\frac{5X }{9}=\frac{5X*(w^{2}-w_{2}^{2}) }{18a_{2}} 加速步数angle2step=2a2w2w2295X=18a25X(w2w22)
  • 匀速步数 a n g l e 1 s t e p = a n g l e s t e p − a n g l e 0 s t e p − a n g l e 2 s t e p 匀速步数angle_{1step}=angle_{step}-angle_{0step}-angle_{2step} 匀速步数angle1step=anglestepangle0stepangle2step

如果w_max^2 ≤ w^2则不存在匀速阶段

  • 加速角速 a n g l e 0 = w m a x 2 − w 0 2 2 a 0 加速角速angle_{0} =\frac{w_{max}^{2}-w_{0}^{2} }{2a_{0}} 加速角速angle0=2a0wmax2w02

  • 减速角度 a n g l e 2 = a n g l e − a n g l e 0 减速角度angle_{2}=angle-angle_{0} 减速角度angle2=angleangle0
    将转动角度换算为电机步数:

  • 加速步数 a n g l e 0 s t e p = w m a x 2 − w 0 2 2 a 0 ∗ 5 X 9 = 5 X ∗ ( w m a x 2 − w 0 2 ) 18 a 0 加速步数angle_{0step}=\frac{w_{max}^{2}-w_{0}^{2} }{2a_{0}}*\frac{5X }{9}=\frac{5X*(w_{max}^{2}-w_{0}^{2}) }{18a_{0}} 加速步数angle0step=2a0wmax2w0295X=18a05X(wmax2w02)

  • 减速步数 a n g l e 1 s t e p = a n g l e s t e p − a n g l e 0 s t e p 减速步数angle_{1step}=angle_{step}-angle_{0step} 减速步数angle1step=anglestepangle0step
    其中 a n g l e s t e p = 5 X a n g l e 9 其中angle_{step}=\frac{5Xangle }{9} 其中anglestep=95Xangle

二、定时器初值Cn递推计算简化
2.1加速阶段示意图如下,横坐标为步数,纵坐标为定时器初值C0对应的速度为W0, C1对应的速度为W1。在保证起始速度与终止速度情况下,将C0与C1的差值△C均匀的分配到步进电机的每一步上,可以形成一条直线,其示意图如下
在这里插入图片描述
其方程为:
C n = k 0 ∗ n + C 0 ( n = 0 、 1 、 2 … … ) C_{n} =k_{0} *n+C_{0} (n=0、1、2……) Cn=k0n+C0(n=012……)
k 0 = C 1 − C 0 s t e p 0 k_{0}=\frac{C_{1}-C_{0}}{step_{0}} k0=step0C1C0
定时器初值的递推公式即为:
C n + 1 = C n + k 0 C_{n+1}=C_{n}+k_{0} Cn+1=Cn+k0
相比常规T型加减速4n-1/4n+1的递推公式,计算量仅为加法运算,适合51系列的低速单片机运用

2.2减速阶段示意图如下
在这里插入图片描述
其计算过程同理
C n = − k 2 ∗ n + C 1 ( n = 0 、 1 、 2 … … ) C_{n} =-k_{2} *n+C_{1} (n=0、1、2……) Cn=k2n+C1(n=012……)
k 2 = C 1 − C 2 s t e p 2 k_{2}=\frac{C_{1}-C_{2}}{step_{2}} k2=step2C1C2
定时器初值的递推公式即为:
C n + 1 = C n − k 0 C_{n+1}=C_{n}-k_{0} Cn+1=Cnk0

三、误差分析
简化后的算法显然不满足标准直线加减速方程,其实际加减速过程类似于指数曲线,如下图蓝色曲线所示
在这里插入图片描述四、程序流程如下
在这里插入图片描述

五、测试
扩展2:
① 优化版T型加减速
② 烧录hex文件后,单片机上电,步进电机经历优化版T型加减速过程,总共转动1800°
请添加图片描述

扩展3:(实测视频见文末百度网盘)
① 优化版T型加减速
② 增加4个按键,控制电机启动、转角、加速度、减速度、起始速度、终止速度、速度上限
③ 增加数码管,显示信息

扩展4:(实测视频见文末百度网盘)
① 优化版T型加减速
② 增加4个按键,控制电机启动、转角、加速度、减速度、起始速度、终止速度、速度上限
③ 增加1602LCD,显示信息

五、附件
Hex测试程序+测试视频请见百度网盘
链接: https://pan.baidu.com/s/1j70qb8vVxGnXTfHf4T4qhg
提取码: fnre

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

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

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

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

相关文章

MySQL--用户权限

1.使用root用户登录MySQL客户端,创建一个名为userl的用户,初始密码为123456;创建一个名为user2的用户,无初始密码。然后,分别使用uesr1、user2登录MySQL 客户端。 创建两个用户 使用user1登录 使用user2登录 2.使用root用户登录&a…

最新版Chrome谷歌加载ActiveX控件之金格iWebOffice2015控件

allWebPlugin简介 allWebPlugin中间件是一款为用户提供安全、可靠、便捷的浏览器插件服务的中间件产品,致力于将浏览器插件重新应用到所有浏览器。它将现有ActiveX控件直接嵌入浏览器,实现插件加载、界面显示、接口调用、事件回调等。支持Chrome、Firefo…

实现跨平台 SSH 连接:从 macOS 到 Windows WSL 的完整解决方案20241203

🌐 实现跨平台 SSH 连接:从 macOS 到 Windows WSL 的完整解决方案 ✨ 引言 随着跨平台开发的普及,开发者经常需要在多系统环境中切换和协作。尤其是在 macOS 和 Windows 混合使用的开发环境中,通过 SSH 远程访问和管理 Windows …

C语言——习题练习(一)

习题: 现在有两种面值的邮票,一种为8角,一种为6角。你要付n角的邮资(不能多付也不能少付),请给出邮票张数最少的方案。如果没有正好的方案则输出-1。 输入格式: 只有一行,为若干个整数&#xf…

Redis 数据结结构(一)—字符串、哈希表、列表

Redis(版本7.0)的数据结构主要包括字符串(String)、哈希表(Hash)、列表(List)、集合(Set)、有序集合(Sorted Set)、超日志&#xff08…

短视频矩阵系统saas源码 ---技术源头搭建部署

短视频矩阵系统源码 短视频矩阵系统源码主要有三种框架:Spring、Struts和Hibernate。Spring框架是一个全栈式的Java应用程序开发框架,提供了IOC容器、AOP、事务管理等功能。Struts框架是一个MVC架构的Web应用程序框架,用于将数据模型、Web应用…

李飞飞:Agent AI 多模态交互的前沿探索

发布于:2024 年 11 月 27 日 星期三 北京 #RAG #李飞飞 #Agent #多模态 #大模型 Agent AI在多模态交互方面展现出巨大潜力,通过整合各类技术,在游戏、机器人、医疗等领域广泛应用。如游戏中优化NPC行为,机器人领域实现多模态操作等。然而,其面临数据隐私、偏见、可解释性…

macOS 15.1.1 (24B2091) 系统中快捷键符号及其代表的按键的对照表

以下是 macOS 15.1.1 (24B2091) 系统中快捷键符号及其代表的按键的对照表: 符号按键名称描述⌘Command (Cmd)常用的功能键,用于执行大多数快捷操作。⌥Option (Alt)Option 键,常用于辅助操作和特殊字符输入。⇧ShiftShift 键,常用…

开源即时通讯与闭源即时通讯该怎么选择,其优势是什么?

在选择即时通讯软件时,应根据企业的经营领域来选择适合自身需求的开源或闭源方案。不同领域对开源和闭源即时通讯的理念存在差异,因此总结两个点简要分析这两种选择,有助于做出更明智的决策。 一、开源与闭源的根本区别在于软件的源代码是否…

学习记录:js算法(一百一十七):重新安排行程

文章目录 重新安排行程思路一 重新安排行程 给你一份航线列表 tickets ,其中 tickets[i] [fromi, toi] 表示飞机出发和降落的机场地点。请你对该行程进行重新规划排序。 所有这些机票都属于一个从 JFK(肯尼迪国际机场)出发的先生&#xff0c…

如何制作“优美”PPT

目录 1.免费PPT模板网站: 2.免费有较好质量的图片网站: 免费图片资源 免费透明PNG图片资源: 免费icon图片资源: 3.选择好的图片: 图片底色 4.要与不要 千万不要: 一定要: 6.一些建议…

从excel数据导入到sqlsever遇到的问题

1、格式问题时间格式,excel中将日期列改为日期未生效,改完后,必须手动单击这个单元格才能生效,那不可能一个一个去双击。解决方案如下 2、导入之后表字段格式问题,数据类型的用navicat导入之后默认是nvarchar类型的&a…

Python办公—DataMatrix二维条码制作

目录 专栏导读1、库的介绍2、库的安装3、核心代码4、完整代码总结专栏导读 🌸 欢迎来到Python办公自动化专栏—Python处理办公问题,解放您的双手 🏳️‍🌈 博客主页:请点击——> 一晌小贪欢的博客主页求关注 👍 该系列文章专栏:请点击——>Python办公自动化专…

偏标记学习+图像分类

✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢,在这里我会分享我的知识和经验。&am…

pdf转word/markdown等格式——MinerU的部署:2024最新的智能数据提取工具

一、简介 MinerU是开源、高质量的数据提取工具,支持多源数据、深度挖掘、自定义规则、快速提取等。含数据采集、处理、存储模块及用户界面,适用于学术、商业、金融、法律等多领域,提高数据获取效率。一站式、开源、高质量的数据提取工具&…

fedora下Jetbrains系列IDE窗口中文乱码解决方法

可以看到窗口右部分的中文内容为小方块。 进入 Settings - Appearance & Behavior - Appearance - Use custom font : Note Sans Mono CJK SC ,设置后如下图:

机器学习详解(2):线性回归之理论学习

文章目录 1 监督学习2 线性回归2.1 简单/多元线性回归2.2 最佳拟合线2.3 成本函数和梯度下降2.4 线性回归的假设2.5 线性回归的评估指标函数 3 总结 机器学习是人工智能的一个分支,主要致力于开发能够从数据中学习并进行预测的算法和统计模型。线性回归是机器学习的…

半监督学习与数据增强

✨✨ 欢迎大家来访Srlua的博文(づ ̄3 ̄)づ╭❤~✨✨ 🌟🌟 欢迎各位亲爱的读者,感谢你们抽出宝贵的时间来阅读我的文章。 我是Srlua小谢,在这里我会分享我的知识和经验。&am…

位运算符I^~

&运算:上下相等才是1,有一个不同就是0 |运算:只要有1返回的就是1 ^(亦或)运算:上下不同是1,相同是0 ~运算:非运算,与数据全相反 cpu核心运算原理,四种cpu底层小电路 例&#xf…

蓝桥杯软件赛系列---lesson1

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” 我们今天会再开一个系列,那就是蓝桥杯系列,我们会从最基础的开始讲起,大家想要备战明年蓝桥杯的,让我们一起加油。 工具安装 DevC…