用java做音乐网站/网站404页面怎么做

用java做音乐网站,网站404页面怎么做,做影视网站赚钱,网站需要的技术文章目录 约束及系统移动机器人运动学模型(Kinematic Model)自行车模型含有加速度 a a a 的自行车模型系统偏差模型 在机器人的研究领域中,移动机器人的系统建模与分析是极为关键的基础环节,本文以非完整约束的轮式移动机器人为研…

文章目录


在机器人的研究领域中,移动机器人的系统建模与分析是极为关键的基础环节,本文以非完整约束的轮式移动机器人为研究对象进行建模。

约束及系统

在力学的世界里,约束是对系统位姿和运动的限制。约束的类型丰富多样

  • 几何约束:主要限制系统的位姿,就像给系统的位置设定了边界,其表达式为 f ( p , t ) = 0 k f(p, t) = 0^k f(p,t)=0k 其中, p ∈ R n p\in\mathbb{R}^n pRn代表系统位姿坐标向量, t t t 表示时间, k ∈ R k\in\mathbb{R} kR 表示约束个数。
  • 运动约束:不仅仅对系统的位姿进行约束,同时对于各质点的速度也进行了约束,其表达式 f ( p , p ˙ , t ) = 0 k f(p,\dot{p},t)=0^k f(p,p˙,t)=0k 其中, p ∈ R n p\in\mathbb{R}^n pRn代表系统位姿坐标向量, p ˙ ∈ R n \dot{p}\in\mathbb{R}^n p˙Rn代表系统位姿坐标向量, t t t 表示时间, k ∈ R k\in\mathbb{R} kR表示约束个数。

“非完整”和“完整”约束源于近代分析力学,由德国物理学家赫兹提出,如果利用积分运算等数学方法,可以将运动约束转化为几何约束的形式,则该约束即为完整约束,反之则为非完整约束

  • 完整约束系统:仅含有完整约束的系统。会降低系统的位置空间自由度。
  • 非完整约束系统:含有至少一个非完整约束的系统。不会降低系统的位置空间自由度,但会降低速度空间自由度。

来看典型移动机器人的简化示意图,它在X - Y二维平面上运动。
在这里插入图片描述
当机器人进行无滑动滚动运动时,其速度方向有着特定的限制,即速度始终沿后轮中心指向前轮中心的方向,并且不会出现垂直于车轴的移动趋势。由此可以得到约束
v c = x ˙ sin ⁡ ( φ ) + y ˙ cos ⁡ ( φ ) = 0 v_c = \dot{x}\sin(\varphi)+\dot{y}\cos(\varphi)=0 vc=x˙sin(φ)+y˙cos(φ)=0

设定 q = ( x , y , φ ) T q=(x,y,\varphi)^T q=(x,y,φ)T,整理成运动约束矩阵形式为
A ( q ) q ˙ = [ sin ⁡ ( φ ) − cos ⁡ ( φ ) 0 ] [ x ˙ y ˙ φ ˙ ] = 0 A(q) \dot{q}=[\sin (\varphi) \quad -\cos (\varphi) \quad 0] \left[\begin{array}{c}\dot{x} \\ \dot{y} \\ \dot{\varphi}\end{array}\right] =0 A(q)q˙=[sin(φ)cos(φ)0] x˙y˙φ˙ =0
其中, x x x表示后轮中心横坐标、 y y y表示后轮中心纵坐标和 φ \varphi φ表示速度方向角。

经过分析发现,利用积分运算无法将这个运动约束转化为几何约束,所以这类移动机器人属于非完整约束系统。

移动机器人运动学模型(Kinematic Model)

为了确保机器人的安全并实现轨迹跟踪,我们需要明确障碍物和机器人的位姿、运动信息,还要建立全局坐标系来统一这些信息。

自行车模型

在轨迹跟踪控制研究中,常用基于前轮转向,后轮驱动的简易自行车模型来构建移动机器人模型。
在这里插入图片描述
X X X- Y Y Y空间为全局坐标, ( X r , Y r ) (X_r, Y_r) (Xr,Yr) 为后轮中心参考位置, ( X f , Y f ) (X_f, Y_f) (Xf,Yf) 为前轮中心参考位置, l l l 为前后轮中心距离(即车长), v r v_r vr 为机器人移动速度, φ \varphi φ 为机器人中心轴方向(即航向角), δ f \delta_f δf 前轮转向角表示前轮与移动方向的偏转角度(逆时针为正), ( X o , Y o ) (X_o, Y_o) (Xo,Yo) 为移动机器人移动所围绕的圆心, R R R 为移动机器人移动旋转半径。

对这个模型做出一些合理假设

  • 左右侧车轮速度转角一致,这样可将左右侧车轮合并为一个车轮;
  • 车辆行驶速度变化缓慢,忽略前后轴载荷;
  • 车身及悬架系统为刚性系统;
  • 车辆后轮负责驱动,前轮负责转向。

以移动机器人简化模型的后轮中心为基准点,通过一系列推导,可以得到其速度、前后轴运动学约束等关系式,进而得出移动机器人简单的运动学模型
[ X ˙ r Y ˙ r φ ˙ ] = [ v r cos ⁡ ( φ ) v r sin ⁡ ( φ ) v r tan ⁡ ( δ f ) l ] \left[\begin{array}{c}\dot{X}_{r} \\ \dot{Y}_{r} \\ \dot{\varphi}\end{array}\right]=\left[\begin{array}{c}v_{r} \cos (\varphi) \\ v_{r} \sin (\varphi) \\ \frac{v_{r} \tan \left(\delta_{f}\right)}{l}\end{array}\right] X˙rY˙rφ˙ = vrcos(φ)vrsin(φ)lvrtan(δf)

一般形式为 p ˙ = f ( p , u ) \dot{p}=f(p, u) p˙=f(p,u) ,其中 p = [ X r , Y r , ϕ ] T p=[X_r,Y_r,\phi]^T p=[Xr,Yr,ϕ]T 表示系统状态, u = [ v r , δ f ] T u=[v_r, \delta_f]^T u=[vr,δf]T 表示系统输入。

含有加速度 a a a 的自行车模型

上述简单运动学模型将速度 v r v_r vr 和前轮转向角 δ f \delta_f δf 作为输入,但在实际生活中,以无人车为例,驾驶员是通过油门和刹车改变车辆加速度来控制车辆的,速度不能突变。
在这里插入图片描述
因此,对模型进行了改进,把速度 v r v_r vr 当作系统状态,引入加速度 a r a_{r} ar 作为系统输入。设系统状态 p = [ X r , Y r , φ , v r ] T p=[X_r,Y_r,\varphi,v_r]^T p=[Xr,Yr,φ,vr]T,系统输入 u = [ a r , δ f ] T u=[a_r, \delta_f]^T u=[ar,δf]T,新系统模型 p ˙ = f ( p , u ) \dot{p}=f(p,u) p˙=f(p,u) 设计如下:
[ X ˙ r Y ˙ r φ ˙ v ˙ r ] = [ v r cos ⁡ ( φ ) v r sin ⁡ ( φ ) v r tan ⁡ ( δ f ) l a r ] \left[\begin{array}{c}\dot{X}_{r} \\ \dot{Y}_{r} \\ \dot{\varphi} \\ \dot{v}_{r}\end{array}\right]=\left[\begin{array}{c}v_{r} \cos (\varphi) \\ v_{r} \sin (\varphi) \\ \frac{v_{r} \tan \left(\delta_{f}\right)}{l} \\ a_{r}\end{array}\right] X˙rY˙rφ˙v˙r = vrcos(φ)vrsin(φ)lvrtan(δf)ar
将其表示为仿射非线性系统形式为
p ˙ = f ( p ) + g ( p ) u = [ v r cos ⁡ ( φ ) v r sin ⁡ ( φ ) 0 0 ] + [ 0 0 0 0 0 1 l cos ⁡ 2 ( δ f ) 1 0 ] [ a r δ f ] \dot{p}=f(p)+g(p) u = \left[ \begin{array}{c}v_{r}\cos (\varphi) \\ v_{r} \sin (\varphi) \\ 0 \\ 0 \end{array} \right] + \left[ \begin{array}{c} 0 & 0\\ 0 & 0\\ 0 & \frac{1}{l \cos^2(\delta_f) } \\ 1 & 0 \end{array} \right] \left[ \begin{array}{c} a_r \\ \delta_f \end{array}\right] p˙=f(p)+g(p)u= vrcos(φ)vrsin(φ)00 + 000100lcos2(δf)10 [arδf]

为了简化系统便于后续计算和仿真,在误差允许范围内,对模型进行线性化处理,比如假设 δ f \delta_{f} δf数值较小,进行 tan ⁡ ( δ f ) ≈ δ f \tan (\delta_{f}) \approx \delta_{f} tan(δf)δf的化简。

系统偏差模型

在实现轨迹跟踪目标时,选择参考轨迹上的一点作为目标轨迹点,为了让机器人跟随目标轨迹点,需要将模型线性化并通过坐标变换将目标轨迹点移动至原点,得到系统偏差模型 p ~ ˙ = A p ~ + B u ~ \dot{\tilde{p}}=A \tilde{p}+B \tilde{u} p~˙=Ap~+Bu~ ,通过控制状态偏差收敛到0,就能实现轨迹跟踪的控制目标。
在这里插入图片描述

在实现轨迹跟踪的目标时,在参数已知的参考轨迹上选择一点 ( x r e f , y r e f ) (x_{ref}, y_{ref}) (xref,yref) 作为目标轨迹点,满足
p r e f = f ( p r e f , u r e f ) p_{ref} = f(p_{ref}, u_{ref}) pref=f(pref,uref)

为了使机器人能够跟随目标轨迹点,使系统状态逐渐收敛至目标轨迹点状态,将模型进行线性化并通过坐标变换将目标轨迹点移动至原点。在系统本身状态处进行泰勒展开,省略高阶项只保留一阶展开,得
p ˙ = f ( p , u ) = f ( p r e f , u r e f ) + ∂ f ( p , u ) ∂ p ∣ p = p r e f ( p − p r e f ) + ∂ f ( p , u ) ∂ u ∣ u = u r e f ( u − u r e f ) \dot{p} = f(p, u) = f(p_{ref}, u_{ref}) + \frac{\partial f(p, u)}{\partial p}|_{p=p_{ref}} (p - p_{ref}) + \frac{\partial f(p, u)}{\partial u}|_{u=u_{ref}} (u - u_{ref}) p˙=f(p,u)=f(pref,uref)+pf(p,u)p=pref(ppref)+uf(p,u)u=uref(uuref)
其中, ∂ f ∂ p \frac{\partial f}{\partial p} pf ∂ f ∂ u \frac{\partial f}{\partial u} uf 为雅克比矩阵,具体内容为

以下是提取的内容,公式符号已使用$$格式:

∂ f ( p , u ) ∂ p = [ ∂ f 1 ( p , u ) ∂ x ∂ f 1 ( p , u ) ∂ y ∂ f 1 ( p , u ) ∂ φ ∂ f 1 ( p , u ) ∂ v ∂ f 2 ( p , u ) ∂ x ∂ f 2 ( p , u ) ∂ y ∂ f 2 ( p , u ) ∂ φ ∂ f 2 ( p , u ) ∂ v ∂ f 3 ( p , u ) ∂ x ∂ f 3 ( p , u ) ∂ y ∂ f 3 ( p , u ) ∂ φ ∂ f 3 ( p , u ) ∂ v ∂ f 4 ( p , u ) ∂ x ∂ f 4 ( p , u ) ∂ y ∂ f 4 ( p , u ) ∂ φ ∂ f 4 ( p , u ) ∂ v ] = [ 0 0 − v sin ⁡ ( φ ) cos ⁡ ( φ ) 0 0 v cos ⁡ ( φ ) sin ⁡ ( φ ) 0 0 0 tan ⁡ ( δ ) 0 0 0 l cos ⁡ ( δ ) ] \frac{\partial f(p, u)}{\partial p} = \begin{bmatrix} \frac{\partial f_1(p, u)}{\partial x} & \frac{\partial f_1(p, u)}{\partial y} & \frac{\partial f_1(p, u)}{\partial \varphi} & \frac{\partial f_1(p, u)}{\partial v} \\ \frac{\partial f_2(p, u)}{\partial x} & \frac{\partial f_2(p, u)}{\partial y} & \frac{\partial f_2(p, u)}{\partial \varphi} & \frac{\partial f_2(p, u)}{\partial v} \\ \frac{\partial f_3(p, u)}{\partial x} & \frac{\partial f_3(p, u)}{\partial y} & \frac{\partial f_3(p, u)}{\partial \varphi} & \frac{\partial f_3(p, u)}{\partial v} \\ \frac{\partial f_4(p, u)}{\partial x} & \frac{\partial f_4(p, u)}{\partial y} & \frac{\partial f_4(p, u)}{\partial \varphi} & \frac{\partial f_4(p, u)}{\partial v} \end{bmatrix} = \begin{bmatrix} 0 & 0 & -v\sin(\varphi) & \cos(\varphi) \\ 0 & 0 & v\cos(\varphi) & \sin(\varphi) \\ 0 & 0 & 0 & \tan(\delta) \\ 0 & 0 & 0 & \frac{l}{\cos(\delta)} \end{bmatrix} pf(p,u)= xf1(p,u)xf2(p,u)xf3(p,u)xf4(p,u)yf1(p,u)yf2(p,u)yf3(p,u)yf4(p,u)φf1(p,u)φf2(p,u)φf3(p,u)φf4(p,u)vf1(p,u)vf2(p,u)vf3(p,u)vf4(p,u) = 00000000vsin(φ)vcos(φ)00cos(φ)sin(φ)tan(δ)cos(δ)l

∂ f ( p , u ) ∂ u = [ ∂ f 1 ( p , u ) ∂ a ∂ f 1 ( p , u ) ∂ δ ∂ f 2 ( p , u ) ∂ a ∂ f 2 ( p , u ) ∂ δ ∂ f 3 ( p , u ) ∂ a ∂ f 3 ( p , u ) ∂ δ ∂ f 4 ( p , u ) ∂ a ∂ f 4 ( p , u ) ∂ δ ] = [ 0 0 0 0 0 v l cos ⁡ ( δ ) 2 1 0 ] \frac{\partial f(p, u)}{\partial u} = \begin{bmatrix} \frac{\partial f_1(p, u)}{\partial a} & \frac{\partial f_1(p, u)}{\partial \delta} \\ \frac{\partial f_2(p, u)}{\partial a} & \frac{\partial f_2(p, u)}{\partial \delta} \\ \frac{\partial f_3(p, u)}{\partial a} & \frac{\partial f_3(p, u)}{\partial \delta} \\ \frac{\partial f_4(p, u)}{\partial a} & \frac{\partial f_4(p, u)}{\partial \delta} \end{bmatrix}= \begin{bmatrix} 0 & 0 \\ 0 & 0 \\ 0 & \frac{v}{l\cos(\delta)^2} \\ 1 & 0 \end{bmatrix} uf(p,u)= af1(p,u)af2(p,u)af3(p,u)af4(p,u)δf1(p,u)δf2(p,u)δf3(p,u)δf4(p,u) = 000100lcos(δ)2v0

引入偏差变量
p ~ = p − p r e f u ~ = u − u r e f \tilde{p} = p - p_{ref} \\ \tilde{u} = u - u_{ref} p~=pprefu~=uuref
可得系统偏差模型为
p ~ ˙ = ∂ f ( p , u ) ∂ p p ~ + ∂ f ( p u , ) ∂ u u ~ \dot{\tilde{p}} = \frac{\partial f(p, u)}{\partial p}\tilde{p} + \frac{\partial f(p u,)}{\partial u}\tilde{u} p~˙=pf(p,u)p~+uf(pu,)u~
写成状态方程形式为
p ~ ˙ = A p ~ + B u ~ \dot{\tilde{p}} = A\tilde{p} + B\tilde{u} p~˙=Ap~+Bu~
其中,矩阵 A = ∂ f ( p , u ) ∂ p A = \frac{\partial f(p, u)}{\partial p} A=pf(p,u) B = ∂ f ( p , u ) ∂ u B = \frac{\partial f(p, u)}{\partial u} B=uf(p,u)。该偏差模型的主要作用是进行系统的轨迹跟踪,控制状态偏差 p ~ \tilde{p} p~ 逐步收敛到 0,即系统状态 p = p r e f p = p_{ref} p=pref,则说明此时系统状态跟踪上目标轨迹点状态,实现轨迹跟踪的控制目标。

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

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

相关文章

Chrome-Edge-IDEA-Win 常用插件-工具包

Chrome-Edge-IDEA-Win 常用插件-工具包 Chrome-Edge-IDEA-Win 常用插件-工具包谷歌插件chropathJSONViewOctotree - GitHub code treeXPath Helper书签侧边栏篡改猴Print Edit WEEdge浏览器插件IDEA插件CodeGlance Pro 代码迷你缩放图插件Alibaba Cloud ToolkitAlibaba Java Co…

西门子V90伺服系统介绍

深入浅出地了解V90伺服驱动系统的核心特性和优势,掌握其自动优化功能,使设备获得更高的动态性能;同时,了解其自动抑制机械谐振频率的特性,有助于在实际应用中减少机械振动和噪音。 方便快捷地熟悉V90的使用方式。通过伺…

【FastGPT】利用知识库创建AI智能助手

【FastGPT】利用知识库创建AI智能助手 摘要创建知识库上传文档创建应用准备提示词准备开场白关联知识库AI回答效果 摘要 关于FastGPT的部署,官方提供了docker-compose方式的部署文档,如果使用的是podman和podman-compose的同学,可以参考这篇…

html5炫酷3D立体文字效果实现详解

炫酷3D立体文字效果实现详解 这里写目录标题 炫酷3D立体文字效果实现详解项目概述技术实现要点1. 基础布局设置2. 动态背景效果3. 文字渐变效果4. 立体阴影效果5. 悬浮动画效果 技术难点及解决方案1. 文字渐变动画2. 立体阴影效果3. 性能优化 浏览器兼容性总结 项目概述 在这个…

Android音视频多媒体开源库基础大全

从事音视频开发工作,需要了解哪些常见的开源库,从应用到底软系统,整理了九大类,这里一次帮你总结完。 包含了应用层的MediaRecorder、surfaceView,以及常见音视频处理库FFmpeg和OpenCV,还有视频渲染和音频…

若依前端框架增删改查

1.下拉列表根据数据库加载 这个是用来查询框 绑定了 change 事件来处理站点选择变化后的查询逻辑。 <el-form-item label"站点选择" prop"stationId" v-has-permi"[ch:m:y]"><el-select v-model"queryParams.stationId" pl…

Java 第十一章 GUI编程(3)

目录 内部类 内部类定义 内部类的特点 匿名内部类 格式&#xff1a; 内部类的意义 实例 内部类 ● 把类定义在另一个类的内部&#xff0c;该类就被称为内部类。 ● 如果在类 Outer 的内部再定义一个类 Inner&#xff0c;此时类 Inner 就称为内部类 &#xff08;或称为嵌…

Transformer-GRU、Transformer、CNN-GRU、GRU、CNN五模型多变量回归预测

Transformer-GRU、Transformer、CNN-GRU、GRU、CNN五模型多变量回归预测 目录 Transformer-GRU、Transformer、CNN-GRU、GRU、CNN五模型多变量回归预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 Transformer-GRU、Transformer、CNN-GRU、GRU、CNN五模型多变量回归预…

3DMAX曲线生成器插件CurveGenerator使用方法

1. 脚本功能简介 3DMAX曲线生成器插件CurveGenerator是一个用于 3ds Max 的样条线生成工具&#xff0c;用户可以通过简单的UI界面输入参数&#xff0c;快速生成多条样条线。每条样条线的高度值随机生成&#xff0c;且可以自定义以下参数&#xff1a; 顶点数量&#xff1a;每条…

LiteratureReading:[2023] GPT-4: Technical Report

文章目录 一、文献简明&#xff08;zero&#xff09;二、快速预览&#xff08;first&#xff09;1、标题分析2、作者介绍3、引用数4、摘要分析&#xff08;1&#xff09;翻译&#xff08;2&#xff09;分析 5、总结分析&#xff08;1&#xff09;翻译&#xff08;2&#xff09;…

闻所闻尽:穿透声音的寂静,照见生命的本真

在《楞严经》的梵音缭绕中&#xff0c;"闻所闻尽"四个字如晨钟暮鼓&#xff0c;叩击着每个修行者的心门。这个源自观世音菩萨耳根圆通法门的核心概念&#xff0c;既是佛门修行的次第指引&#xff0c;更蕴含着东方哲学对生命本质的终极叩问。当我们穿越时空的帷幕&…

算法1--两束求和

题目描述 解题思路 先说一种很容易想到的暴力解法 暴力解法的思路很简单&#xff0c;就是遍历数组&#xff0c;对于每一个元素&#xff0c;都去遍历数组中剩下的元素&#xff0c;判断是否有两个元素的和等于目标值&#xff0c;如果有&#xff0c;就返回这两个元素的下标。 c…

在Fedora-Workstation-Live-x86_64-41-1.4中使用最新版本firefox和腾讯翻译插件让英文网页显示中文翻译

在Fedora-Workstation-Live-x86_64-41-1.4中使用最新版本firefox和腾讯翻译插件让英文网页显示中文翻译 应用——系统工具——终端 suozhangfedora:~$ rpm -aq | grep firefox firefox-131.0.2-1.fc41.x86_64 firefox-langpacks-131.0.2-1.fc41.x86_64 fedora41系统自身安装有f…

Redis缓存与数据库 数据一致性保障

为什么要保证数据一致性 只要使用redis做缓存&#xff0c;就必然存在缓存和DB数据一致性问题。若数据不一致&#xff0c;则业务应用从缓存读取的数据就不是最新数据&#xff0c;可能导致严重错误。比如将商品的库存缓存在Redis&#xff0c;若库存数量不对&#xff0c;则下单时…

19.哈希表的实现

1.哈希的概念 哈希(hash)⼜称散列&#xff0c;是⼀种组织数据的⽅式。从译名来看&#xff0c;有散乱排列的意思。本质就是通过哈希函数把关键字Key跟存储位置建⽴⼀个映射关系&#xff0c;查找时通过这个哈希函数计算出Key存储的位置&#xff0c;进⾏快速查找。 1.2.直接定址法…

IoTDB TTL不生效

问题 时序数据库 IoTDB 1.3.0 版本数据库的 TTL 设置为两天&#xff0c;show databases details 看到设置也是正确的&#xff0c;怎么还是可以查到好几天前的数据&#xff1f;因为有很多不活跃的测点&#xff0c;所以专门设置了两天过期&#xff0c;有什么办法可以自动清理呢&…

iStoreOS软路由对硬盘格式化分区(转化ext4)

一、为什么要格式化分区&#xff1f; 格式化硬盘分区是软路由安装或配置过程中的重要步骤&#xff0c;主要用于清除旧数据、优化文件系统、确保系统稳定性和兼容性。 二、通过iStoreOS硬盘格式化步骤 使用场景&#xff1a;Docker迁移到外置移动硬盘为例&#xff0c;考虑兼容现…

打造用户认证系统,构筑信息安全防线

在当今的数字化时代&#xff0c;信息安全和用户隐私保护变得越来越重要。用户身份认证是确保信息安全的第一道防线。通过验证用户身份&#xff0c;可以防止未经授权的访问和数据泄露。它有助于保护用户的个人信息、账户资金和其他敏感数据。此外&#xff0c;用户身份认证还可以…

Axure项目实战:智慧城市APP(一)(动态面板、拖动效果)

亲爱的小伙伴&#xff0c;在您浏览之前&#xff0c;烦请关注一下&#xff0c;在此深表感谢&#xff01; 课程主题&#xff1a;智慧城市APP便民服务平台 主要内容&#xff1a;完整智慧APP原型设计 应用场景&#xff1a;各类政务型、B端APP均可参考 案例展示&#xff1a;&…

MySQL 入门大全:数据类型

&#x1f9d1; 博主简介&#xff1a;CSDN博客专家&#xff0c;历代文学网&#xff08;PC端可以访问&#xff1a;https://literature.sinhy.com/#/literature?__c1000&#xff0c;移动端可微信小程序搜索“历代文学”&#xff09;总架构师&#xff0c;15年工作经验&#xff0c;…