车辆模型——运动学模型
文章目录
- 约束及系统
- 移动机器人运动学模型(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 p∈Rn代表系统位姿坐标向量, t t t 表示时间, k ∈ R k\in\mathbb{R} k∈R 表示约束个数。
- 运动约束:不仅仅对系统的位姿进行约束,同时对于各质点的速度也进行了约束,其表达式 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 p∈Rn代表系统位姿坐标向量, p ˙ ∈ R n \dot{p}\in\mathbb{R}^n p˙∈Rn代表系统位姿坐标向量, t t t 表示时间, k ∈ R k\in\mathbb{R} k∈R表示约束个数。
“非完整”和“完整”约束源于近代分析力学,由德国物理学家赫兹提出,如果利用积分运算等数学方法,可以将运动约束转化为几何约束的形式,则该约束即为完整约束,反之则为非完整约束。
- 完整约束系统:仅含有完整约束的系统。会降低系统的位置空间自由度。
- 非完整约束系统:含有至少一个非完整约束的系统。不会降低系统的位置空间自由度,但会降低速度空间自由度。
来看典型移动机器人的简化示意图,它在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)+∂p∂f(p,u)∣p=pref(p−pref)+∂u∂f(p,u)∣u=uref(u−uref)
其中, ∂ f ∂ p \frac{\partial f}{\partial p} ∂p∂f, ∂ f ∂ u \frac{\partial f}{\partial u} ∂u∂f 为雅克比矩阵,具体内容为
以下是提取的内容,公式符号已使用$$格式:
∂ 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} ∂p∂f(p,u)= ∂x∂f1(p,u)∂x∂f2(p,u)∂x∂f3(p,u)∂x∂f4(p,u)∂y∂f1(p,u)∂y∂f2(p,u)∂y∂f3(p,u)∂y∂f4(p,u)∂φ∂f1(p,u)∂φ∂f2(p,u)∂φ∂f3(p,u)∂φ∂f4(p,u)∂v∂f1(p,u)∂v∂f2(p,u)∂v∂f3(p,u)∂v∂f4(p,u) = 00000000−vsin(φ)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} ∂u∂f(p,u)= ∂a∂f1(p,u)∂a∂f2(p,u)∂a∂f3(p,u)∂a∂f4(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~=p−prefu~=u−uref
可得系统偏差模型为
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~˙=∂p∂f(p,u)p~+∂u∂f(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=∂p∂f(p,u), B = ∂ f ( p , u ) ∂ u B = \frac{\partial f(p, u)}{\partial u} B=∂u∂f(p,u)。该偏差模型的主要作用是进行系统的轨迹跟踪,控制状态偏差 p ~ \tilde{p} p~ 逐步收敛到 0,即系统状态 p = p r e f p = p_{ref} p=pref,则说明此时系统状态跟踪上目标轨迹点状态,实现轨迹跟踪的控制目标。
相关文章:
车辆模型——运动学模型
文章目录 约束及系统移动机器人运动学模型(Kinematic Model)自行车模型含有加速度 a a a 的自行车模型系统偏差模型 在机器人的研究领域中,移动机器人的系统建模与分析是极为关键的基础环节,本文以非完整约束的轮式移动机器人为研…...
EJS缓存解决多页面相同闪动问题
基于 EJS 的模板引擎特性及其缓存机制,以下是关于缓存相同模块的详细解答: 一、EJS 缓存机制的核心能力 模板编译缓存 EJS 默认会将编译后的模板函数缓存在内存中,当相同模板文件被多次渲染时,会直接复用已编译的模板函数&#x…...
<details>和<summary>标签的用途,如何使用它们实现可折叠内容
大白话和标签的用途,如何使用它们实现可折叠内容 <details> 和 <summary> 标签用途 <details> 和 <summary> 标签是 HTML 里的实用标签,二者配合能创建出可折叠内容。 <details> 标签就像是一个容器,能把那…...
HUGO介绍、安装、以及使用
HUGO官方网站,文章内容的简介大部分来自官网的翻译,官网是纯英文描述,英语好的可以前往官方网站,博主在这里简介中简单翻译处理包括一些链接的引用,主要是讲解一下如何安装和使用。 这里再粘贴一个三方网站opendocs.i…...
【STM32实物】基于STM32的太阳能充电宝设计
基于STM32的太阳能充电宝设计 演示视频: 基于STM32的太阳能充电宝设计 硬件组成: 系统硬件包括主控 STM32F103C8T6、0.96 OLED 显示屏、蜂鸣器、电源自锁开关、温度传感器 DS18B20、继电器、5 V DC 升压模块 、TB4056、18650锂电池、9 V太阳能板、稳压降压 5 V三极管。 功能…...
【Netty】长连接与短连接的不同实现
长连接与短连接的不同实现 配置层面 // 长连接配置 bootstrap.option(ChannelOption.SO_KEEPALIVE, true) // 启用 TCP keepalive.option(ChannelOption.TCP_NODELAY, true); // 禁用 Nagle 算法// 短连接不需要这些配置心跳机制 // 长连接需要心跳 pipeline.addLast(new Idl…...
安装 OpenSSL 1.1.1 的完整脚本适用于 Ubuntu 22.04 系统
#!/bin/bash # 更新系统包 sudo apt-get update # 安装编译工具和依赖库 sudo apt-get install -y build-essential checkinstall zlib1g-dev # 下载 OpenSSL 1.1.1 源码 wget https://www.openssl.org/source/openssl-1.1.1.tar.gz # 检查下载是否成功 if [ $? -ne 0 ]; …...
24-智慧旅游系统(协同过滤算法)
介绍 技术: 基于 B/S 架构 SpringBootMySQLLayuivue 环境: Idea mysql maven jdk1.8 管理端功能 管理端主要用于对系统内的各类旅游资源进行管理,包括用户信息、旅游路线、车票、景点、酒店、美食、论坛等内容。具体功能如下: …...
Vue 中的日期格式化实践:从原生 Date 到可视化展示!!!
📅 Vue 中的日期格式化实践:从原生 Date 到可视化展示 🚀 在数据可视化场景中,日期时间的格式化显示是一个高频需求。本文将以一个邀请码关系树组件为例,深入解析 Vue 中日期格式化的 核心方法、性能优化 和 最佳实践…...
2025年使用Scrapy和Playwright解决网页抓取挑战的方案
0. 引言 随着互联网技术的发展,网页内容呈现方式越来越复杂,大量网站使用JavaScript动态渲染内容,这给传统的网络爬虫带来了巨大挑战。在2025年的网络爬虫领域,Scrapy和Playwright的结合为我们提供了一个强大的解决方案ÿ…...
可靠消息投递demo
以下是一个基于 Spring Boot RocketMQ 的完整分布式事务实战 Demo,包含事务消息、本地事务、自动重试、死信队列(DLQ) 等核心机制。代码已充分注释,可直接运行。 一、项目结构 src/main/java ├── com.example.rocketmq │ …...
阻止 Mac 在运行任务时进入休眠状态
掌握Caffeinate命令:让您的 Mac 保持清醒以完成关键任务 开发人员经常发现自己在 Mac 上运行持续时间较长的进程。无论是大量文件上传、广泛的数据分析脚本,还是复杂的构建过程,我们最不希望的就是我们的机器在任务中途进入睡眠状态。输入 c…...
Copilot提示词库用法:调整自己想要的,记住常用的,分享该共用的
不论你是 Microsoft 365 Copilot 的新用户还是熟练运用的老鸟,不论你是使用copilot chat,还是在office365中使用copilot,copilot提示词库都将帮助你充分使用copilot这一划时代的产品。它不仅可以帮助你记住日常工作中常用的prompt提示词&…...
Python实战(3)-数据库操作
前面说过,可用的SQL数据库引擎有很多,它们都有相应的Python模块。这些数据库引擎大都作为服务器程序运行,连安装都需要有管理员权限。为降低Python DB API的使用门槛,我选择了一个名为SQLite的小型数据库引擎。它不需要作为独立的…...
LeetCode 160 Intersection Of Two Linked Lists 相交链表 Java
题目:找到两个相交列表的起始点,如图c1开始为A和B两个链表的相交点 举例1:8为两个链表的相交点。 注意:相交不止是数值上的相同。 举例2:2为相交点 举例3:没有相交点 解题思路: 相交证明最后一…...
AI Agent中的MCP详解
一、协议定义与核心价值 MCP(Model Context Protocol,模型上下文协议)是由Anthropic公司于2024年11月推出的开放标准协议,其核心目标是通过建立统一接口规范,解决AI模型与外部系统集成效率低下的行业痛点。该协议通过标准化通信机制,使大型语言模型(LLM)能够无缝对接数…...
win系统上自动化安装配置WSL linux和各种生信工具教程
windows系统上自动化安装配置WSL linux系统和各种生信工具教程 高通量测序原始数据的上游分析模块介绍 我开发的OmicsTools软件的这些分析测序原始数据的上游处理分析模块需要使用到linux和linux系统中的一些生信工具,在这里我开发了在windows系统中自动化安装WSL …...
统计可重复列表中的TOP N
文章目录 方案1:HashMap统计 全排序实现步骤:代码实现:优缺点: 方案2:HashMap统计 最小堆(优先队列)实现步骤:代码实现:优缺点: 方案3:Java Str…...
PowerBI纯小白如何驾驭DAX公式一键生成:copilot for fabric
在2025年2月份更新中,powerbi desktop里的copilot功能还新增了一个非常强大的功能:一键生成多个度量值,并直接加载到模型。 直接上示例展示: 打开DAX查询视图,在copilot窗格中直接输入想要生成多个度量值,…...
Pytest的夹具
1、pytest的前置后置夹具 fixture 有些内容是在每个用例执行之前都要运行操作:-- 用例前置 接口:购物车模块先登录 --登录结果 【token鉴权】 UI: 每次用例 打开浏览器 --driver 有些内容在每个用例之后都要运行操作:–用例后置 接口: 数据清除 UI:关闭浏览器 叫做用例的…...
两市总的净流出和净流入来分析情况
为了排查数据干扰,只从两市总的净流出和净流入来分析情况。 净流出才对应资金抽离:若净流入为负(即净流出),则意味着资金从股市中撤出,例如主动卖出的金额超过主动买入金额。净流入反映市场信心࿱…...
GitHub在push推送到远程仓库的时候显示Logon failed登录失败
具体问题描述 git.exe push --progress "origin" master:master Logon failed, use ctrlc to cancel basic credential prompt. remote: Support for password authentication was removed on August 13, 2021. 这是因为Git 推送失败的原因是 GitHub 已经不支持密码认…...
如何在SQL中高效使用聚合函数、日期函数和字符串函数:实用技巧与案例解析
文章目录 聚合函数group by子句的使用实战OJ日期函数字符串函数数学函数其它函数 聚合函数 函数说明COUNT([DISTINCT] expr)返回查询到的数据的 数量SUM([DISTINCT] expr)返回查询到的数据的 总和,不是数字没有意义AVG([DISTINCT] expr)返回查询到的数据的 平均值&…...
AutoGen :使用 Swarm 构建自治型多智能体团队
👉👉👉本人承接各类AI相关应用开发项目(包括但不限于大模型微调、RAG、AI智能体、NLP、机器学习算法、运筹优化算法、数据分析EDA等) !!!👉👉👉 有意愿请私信!!!AutoGen 的 AgentChat 模块提供了一种强大的方法来构建多智能体协作系统。 在之前的文章中,我们探讨了…...
RK3568平台设备树文件功能解析(鸿蒙系统篇)
鸿蒙设备树驱动修改时候发现目录下有很多的rk3568 的设备树,由于对这些设备树功能不太熟悉,所以索性就整理一下不同设备树的功能 rk3568-evb1-ddr4-v10.dts rk3568-evb4-lp3-v10.dts rk3568-evb6-ddr3-v10-rk628-rgb2hdmi.dts …...
k8s-coredns-CrashLoopBackOff 工作不正常
本文作者: slience_me 问题描述 # 问题描述 # rootk8s-node1:/home/slienceme# kubectl get pods --all-namespaces # NAMESPACE NAME READY STATUS RESTARTS AGE # kube-flannel kube-flannel-ds-66bcs …...
【Android性能】Systrace分析
1,分析工具 1,Systrace新UI网站 Perfetto UI 2,Systrace抓取 可通过android sdk中自带的systrace抓取,路径一般如下,..\AppData\Local\Android\Sdk\platform-tools, 另外需要安装python2.7,…...
Unity导出WebGL,无法显示中文
问题:中文无法显示 默认字体无法显示中文 在编辑器中设置了中文和英文的按钮,中文按钮无法显示 导出后无法显示中文 解决办法: 自己添加字体,导入项目,并引用 示例 下载一个字体文件,这里使用的阿里…...
oracle事务的组成
1)数据库事务由以下的部分组成: 一个或多个DML 语句 ; 一个 DDL(Data Definition Language – 数据定义语言) 语句; 一个 DCL(Data Control Language – 数据控制语言)语句; 2)事务的执行开始: 以第一个 DML 语句的执行作为开始 ,…...
【如何在OpenWebUI中使用FLUX绘画:基于硅基流动免费API的完整指南】
如何在OpenWebUI中使用FLUX绘画:基于硅基流动免费API的完整指南 注册并获取硅基流动秘钥OpenWebUI中使用函数配置自定义模型-提示词配置效果验证 ) FLUX绘画是一种强大的AI绘图工具,本文将详细介绍如何在OpenWebUI中集成并使用FLUX绘画功能,…...
