S形速度规划算法

news/2024/11/20 23:31:32/

S形速度规划相对于梯形速度规划其速度曲线会更加平滑,电机运行会更加平稳。常见的S曲线包括7段式加速度曲线,这种曲线计算量大,而且规划起来困难。一种简单的方法是采用Sigmoid对称函数加减速曲线规划法。典型的Sigmoid函数为:

其值域为(0,1),函数关于横坐标左右对称,关于点(0,0.5)中心对称。其函数图形为:

如要将此曲线应用在步进电机的加、减速过程中,需要将方程在XY坐标系进行平移,同时对曲线进行拉升变化。对于初速度为𝑣s,末速度为𝑣e,运动步数为2n的纯加/减速段,对于其中第i步,可以规划速度为:

                                                                (1-1)

其中flex参数是用来调节区间范围的,使用该方法规划的速度曲线关于中心点对称。比如当𝑣s=10,𝑣e=100,2n=2,flex=5时,规划的速度曲线如下图所示。由于关于中心点对称,所以S速度曲线(图中紫色曲线)包围的面积等价于从初速度𝑣s按恒定加速度加速到𝑣e的曲线(图中绿色曲线)所包围的面积。

所以可以先按梯形曲线规划速度曲线,然后对于其中的加速度段和减速度段,分别进行按照式(5-2)进行s速度曲线规划。则已知初速度𝑣s,末速度𝑣e,线段距离s,加速度a,进行s曲线速度规划步骤为:

  1. 进行梯形速度规划,算出加速段距离s1,加速和匀速段总距离s2,减速度段距离s3,以及最大加速度𝑣max
  2. 对于加速段,按照式(1-1)方法执行s形速度规划
  3. 对于减速段,按照式(1-1)方法执行s形速度规

流程示意图如下:

 

 


http://www.ppmy.cn/news/491203.html

相关文章

k8s CronJob

k8s CronJob 文章目录 k8s CronJob[TOC](文章目录) 前言一、CronJob yaml二、schedule三、successfulJobsHistoryLimit四、failedJobsHistoryLimit五、startingDeadlineSeconds六、ttlSecondsAfterFinished总结 前言 cronjob其实就是在Job的基础上加上了时间调度,我…

六轴机器人轨迹规划之五段位置s曲线插补

1.原理 五段s曲线相较于三段s曲线而言加速度也是连续变化的,能适用于平稳性要求更高的场合。分为加加速、加减速、匀速、减加速、减减速这五段。 设除匀速段以为,其余四段的时间相等都为 Ta T a ,总时间为 T T ,匀速段速度为vs" role…

k8s中的endpoint

全栈工程师开发手册 (作者:栾鹏) 架构系列文章 service selector service通过selector和pod建立关联。 k8s会根据service关联到pod的podIP信息组合成一个endpoint。 若service定义中没有selector字段,service被创建时&#xf…

Kubernetes k8s理论篇

目录 一、k8s概述 1.1 什么是k8s? 1.1.1 作用 1.1.2 由来 1.1.3 含义 1.2 为什么需要K8S K8S的目标是让部署容器化应用简单高效。 1.3 k8s的特性 二、Kubernetes集群架构与组件 2.1Master组件 2.1.1 Kube-apiserver 2.1.2 Kube-controller-manager 2.…

matlab实现S函数的五种方式

Matlab允许你使用以下五种方式之一来实现S函数:A Level-1 M-file S-function provides a simple M interface to interact with a small portion of the S-function API. Level-2 M-file S-functions supersede Level-1 M-file S-functions.Level 1 M文件S函数----这种方式提供…

k8s入门:部署应用到 k8s 集群

系列文章 第一章:✨ k8s入门:裸机部署 k8s 集群 第二章:✨ k8s入门:部署应用到 k8s 集群 第三章:✨ k8s入门:service 简单使用 第四章:✨ k8s入门:StatefulSet 简单使用 第五章&…

python s append_Python语句序列s=[1,2,3,4];s.append([5,6]);print(len(s))的运行结果是______。...

【单选题】Python语句序列“a=(1,2,3,None,(),[]);print(len(a))”的运行结果是()。 (2.0分) 【填空题】Python语句序列"s=[1,2,3,4];s.append([5,6]);print(len(s))"的运行结果是______。 (1.0分) 【判断题】判断正误 MOV [1200H], [SI] 【填空题】Python表达式10+5…

计算机b s架构模式图,深入理解B/S架构

最近看招聘信息很多都要求理解B/S架构,自己面试时也被问到过这个问题,查找了一些资料,整理出这篇博客。 一: B/S的概念 B/S(Brower/Server,浏览器/服务器)模式又称B/S结构,是Web兴起后的一种网络结构模式。 浏览器是客户端最主要的应用软件,客户机上只需要安装一个浏览器…