单摆波运动

1、简介

单摆波运动通常由15个单摆小球完成,每个小球的线长不一致,线长从一端至另一端依次增长。线长不一致会导致运动周期不一致,故而单摆波运动中的每个小球运动都不同,且能在规则与不规则运动间转换。单摆波运动如下所示:

单摆波运动

2、原理

最初的思路

每个单摆小球的运动可以简化为逐渐衰减圆弧运动,但是正统的轨迹规划算法在做这种运动规划时有几个难点处理起来比较麻烦:

  • 如何衰减;
  • 如何统一运动时间;
  • 如何使其在规律运动中切换等。

灵光乍现

考虑到“周期”和“衰减”等词,能联想到什么??

当然是控制理论中的二阶系统,把每个小球都当作一个二阶系统,给定合适的周期(用来求固有频率)和阻尼比,就能做出比较理想的单摆波仿真实验。以五个小球为例,每个小球的二阶系统响应如下所示:

3、单摆波实验

上面得到了每个二阶系统在离散时间下的响应,其响应都处在0~2的范围内。而每个小球都在笛卡尔空间中做带衰减的往返圆周运动,只需要将响应根据一定规则投影,即可得到每个小球在离散时间下的笛卡尔空间的位置。

单摆波仿真视频

文中除仿真外的图片和视频均为网上资源,如有侵权请联系

相关推荐

  1. [ deepSpeed ] 单机单卡本地运行 & Docker运行

    2024-01-12 03:18:01       30 阅读
  2. Python绘制正弦、三角、方

    2024-01-12 03:18:01       59 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-12 03:18:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-12 03:18:01       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-12 03:18:01       87 阅读
  4. Python语言-面向对象

    2024-01-12 03:18:01       96 阅读

热门阅读

  1. 【学习笔记】CF1835C Twin Clusters

    2024-01-12 03:18:01       57 阅读
  2. 常见类型的yaml文件如何编写?--kind: Deployment

    2024-01-12 03:18:01       54 阅读
  3. Rust-vec!与Vec::with_capacity初始化数组的区别

    2024-01-12 03:18:01       69 阅读
  4. Rust 工程配置

    2024-01-12 03:18:01       52 阅读
  5. C++ : 类

    2024-01-12 03:18:01       52 阅读
  6. 分布式事务(1)

    2024-01-12 03:18:01       53 阅读
  7. Vue2-动态路由传参的基本用法

    2024-01-12 03:18:01       54 阅读