当前位置: 首页 > news >正文

长春网站建设外包百度网站流量查询

长春网站建设外包,百度网站流量查询,做类似美团的网站,保定定兴网站建设视频讲解:MuJoCo 仿真 TOPPRA 最优时间轨迹规划!机械臂运动效率拉满(附代码)_哔哩哔哩_bilibili MuJoCo 仿真 TOPPRA 最优时间轨迹规划!机械臂运动效率拉满(附代码) 代码仓库:GitH…

视频讲解:MuJoCo 仿真 + TOPPRA 最优时间轨迹规划!机械臂运动效率拉满(附代码)_哔哩哔哩_bilibili

MuJoCo 仿真 + TOPPRA 最优时间轨迹规划!机械臂运动效率拉满(附代码)

代码仓库:GitHub - LitchiCheng/mujoco-learning

机械臂的运动一般分成两个阶段,路径规划、轨迹规划

路径规划的目标是在机器人的工作空间里,找出一条从起始点到目标点的无碰撞路径。该路径只关注机械臂末端执行器的几何位置和姿态,不涉及运动的时间因素

轨迹规划是在路径规划得出的路径基础上,为机械臂各关节分配随时间变化的运动参数,让机械臂按特定速度、加速度和时间完成运动

今天介绍一个轨迹规划的库toppra,https://github.com/hungpham2511/toppra,先安装toppra

pip3 install toppra

在mujoco viewer中使用拖拽的方式生成几个关节路径

# <key qpos='-1.09146e-23 0.00126288 -3.32926e-07 -0.0696243 -2.28695e-05 0.192135 0.00080101 -5.53841e-09 2.91266e-07'/># <key qpos='0.00296359 0.0163993 0.00368401 -0.0788281 0.259307 0.192303 -0.00312336 -4.3278e-08 1.45579e-07'/># <key qpos='0.00498913 0.246686 0.00381545 -0.0800148 0.415234 0.193705 -0.00425587 3.30553e-07 -3.30357e-07'/># <key qpos='0.00602759 0.424817 0.00377697 -0.0799391 0.371875 0.193076 -0.00368281 1.0024e-06 -1.11103e-07'/># <key qpos='0.00773196 0.822049 0.00373852 -0.0797594 0.315405 0.192995 -0.00319569 1.50177e-06 -9.53418e-07'/># <key qpos='0.00840017 1.08506 0.00374512 -0.0796342 0.304862 0.193412 -0.00331262 2.46441e-06 2.2996e-08'/>way_pts = [[-1.09146e-23, 0.00126288, -3.32926e-07, -0.0696243, -2.28695e-05, 0.192135, 0.00080101, -5.53841e-09, 2.91266e-07],[0.00296359, 0.0163993, 0.00368401, -0.0788281, 0.259307, 0.192303, -0.00312336, -4.3278e-08, 1.45579e-07],[0.00498913, 0.246686, 0.00381545, -0.0800148, 0.415234, 0.193705, -0.00425587, 3.30553e-07, -3.30357e-07],[0.00602759, 0.424817, 0.00377697, -0.0799391, 0.371875, 0.193076, -0.00368281, 1.0024e-06, -1.11103e-07],[0.00773196, 0.822049, 0.00373852, -0.0797594, 0.315405, 0.192995, -0.00319569, 1.50177e-06, -9.53418e-07],[0.00840017, 1.08506, 0.00374512, -0.0796342, 0.304862, 0.193412, -0.00331262, 2.46441e-06, 2.2996e-08]]

参考https://github.com/hungpham2511/toppra/blob/develop/examples/plot_straight_line.py中,使用toppra读取urdf的速度限制,以及指定加速度,指定起始和结束的速度均为0,重新生成满足如上的轨迹点。

完整代码如下

from scipy.optimize import minimize
import numpy as np
from numpy.linalg import norm, solve
import toppra as ta
import toppra.constraint as constraint
import toppra.algorithm as algo
import pinocchio
import time
import mujoco_viewerclass Test(mujoco_viewer.CustomViewer):def __init__(self, path):super().__init__(path, 3, azimuth=-45, elevation=-30)def runBefor(self):robot = pinocchio.buildModelFromUrdf('/home/dar/dev/robot/models/example-robot-data/robots/panda_description/urdf/panda.urdf')print('robot name: ' + robot.name)# <key qpos='-1.09146e-23 0.00126288 -3.32926e-07 -0.0696243 -2.28695e-05 0.192135 0.00080101 -5.53841e-09 2.91266e-07'/># <key qpos='0.00296359 0.0163993 0.00368401 -0.0788281 0.259307 0.192303 -0.00312336 -4.3278e-08 1.45579e-07'/># <key qpos='0.00498913 0.246686 0.00381545 -0.0800148 0.415234 0.193705 -0.00425587 3.30553e-07 -3.30357e-07'/># <key qpos='0.00602759 0.424817 0.00377697 -0.0799391 0.371875 0.193076 -0.00368281 1.0024e-06 -1.11103e-07'/># <key qpos='0.00773196 0.822049 0.00373852 -0.0797594 0.315405 0.192995 -0.00319569 1.50177e-06 -9.53418e-07'/># <key qpos='0.00840017 1.08506 0.00374512 -0.0796342 0.304862 0.193412 -0.00331262 2.46441e-06 2.2996e-08'/>way_pts = [[-1.09146e-23, 0.00126288, -3.32926e-07, -0.0696243, -2.28695e-05, 0.192135, 0.00080101, -5.53841e-09, 2.91266e-07],[0.00296359, 0.0163993, 0.00368401, -0.0788281, 0.259307, 0.192303, -0.00312336, -4.3278e-08, 1.45579e-07],[0.00498913, 0.246686, 0.00381545, -0.0800148, 0.415234, 0.193705, -0.00425587, 3.30553e-07, -3.30357e-07],[0.00602759, 0.424817, 0.00377697, -0.0799391, 0.371875, 0.193076, -0.00368281, 1.0024e-06, -1.11103e-07],[0.00773196, 0.822049, 0.00373852, -0.0797594, 0.315405, 0.192995, -0.00319569, 1.50177e-06, -9.53418e-07],[0.00840017, 1.08506, 0.00374512, -0.0796342, 0.304862, 0.193412, -0.00331262, 2.46441e-06, 2.2996e-08]]path_scalars = np.linspace(0, 1, len(way_pts))path = ta.SplineInterpolator(path_scalars, way_pts)vlim = np.vstack([-robot.velocityLimit, robot.velocityLimit]).Tal = np.array([2,] * robot.nv)alim = np.vstack([-al, al]).Tpc_vel = constraint.JointVelocityConstraint(vlim)pc_acc = constraint.JointAccelerationConstraint(alim, discretization_scheme=constraint.DiscretizationType.Interpolation)instance = ta.algorithm.TOPPRA([pc_vel, pc_acc],path,solver_wrapper="seidel")jnt_traj = instance.compute_trajectory(0, 0)ts_sample = np.linspace(0, jnt_traj.get_duration(), 1000)self.qs_sample = jnt_traj.eval(ts_sample)self.index = 0def runFunc(self):if self.index < len(self.qs_sample):self.data.qpos[:7] = self.qs_sample[self.index][:7]self.index += 1else:self.data.qpos[:7] = self.qs_sample[-1][:7]time.sleep(0.01)test = Test("/home/dar/dev/robot/mujoco/mujoco_menagerie/franka_emika_panda/scene.xml")
test.run_loop()

预期可以看到,加速-减速-到点的移动过程

http://www.cadmedia.cn/news/4500.html

相关文章:

  • 深圳网站建设公司市场引擎优化搜索
  • 学习网页设计网站制作什么是网络营销战略
  • 如何建设网站与域名宁波网络推广公司有哪些
  • 非小号是根据国外哪个网站做的seo优化网页
  • 做网站用哪个软件免费发布信息平台有哪些
  • 图片生成器下载短视频入口seo
  • 家装要去哪个公司装修青岛seo网站推广
  • 化妆品品牌网站建设seo站长常用工具
  • 个人网站模板html代码市场推广是做什么的
  • 广告行业网站建设方案搜狗搜图
  • 昆山网站建设天津搜索引擎优化
  • 成都网站建设 四川冠辰郑州网站托管
  • 如何用zblog做棋牌网站全自动引流推广软件app
  • 常州网站建设方案优化营销型网站建设流程
  • 武汉装修公司哪家好网站优化软件哪个好
  • 湘潭做网站建设的公司脚上起小水泡还很痒是什么原因
  • 网站模块插件是怎么做的关键词搜索引擎又称为
  • 企业网站做备案百度网页版首页
  • 入门编程软件seo是什么级别
  • 建立网站目录结构时不正确的建议是公司网络营销推广方案
  • 内蒙古工程建设招投标中心网站网站发布平台
  • 学电脑培训班多少一个月长沙企业seo服务
  • 怎么样做国际网站生意合肥百度推广排名优化
  • 上海室内设计有限公司百度seo优化包含哪几项
  • 企业网站互动交流模块谷歌广告联盟
  • 高端网站建设必须要满足哪些要求子域名大全查询
  • 房子网站有哪些长沙网络公关公司
  • 怎么做网站页面代码搜索惠州关键词排名优化
  • 网页动态设计优化seo
  • 村政府可以做网站么开个网站平台要多少钱