四旋翼滑模控制仿真全指南:从动力学建模到参数调优
先说说我为什么想到写这篇东西。前阵子帮人看一个四旋翼仿真项目对方把PID三个环调得稳稳当当悬停状态下姿态曲线漂亮得能发朋友圈。结果我让他把期望滚转角从5°加到25°油门通道直接开始抖俯仰和滚转互相耦合最后画出一条漂亮的螺旋线坠机。这不是参数没调好而是PID在模型不确定性和强耦合面前天生就处在被动位置。也就是那次之后我把滑模控制整个重推了一遍从动力学方程一路搭到仿真环境跑完才真正理解这东西到底强在哪、坑在哪。这篇文章就把这条完整链路讲清楚四旋翼到底在对抗什么、滑模控制的数学直觉是什么、仿真模型怎么搭、控制器怎么推、参数怎么调、扰动实验怎么做以及从仿真走向实飞之前你还差哪几步。适合正在做无人机控制课设、毕设或者想从纯仿真往实飞走一步的人参考。1. 为什么四旋翼控制要选滑模这场博弈的对手不是模型是变化1.1 四旋翼在飞行中真正要对抗的三种不确定性很多人在仿真里把四旋翼当成一个参数固定的刚体转动惯量、推力系数、电机响应全按出厂标称值填。但实际飞行中桨叶磨损会让推力系数漂移电池电压下降会让电机响应变慢载重变化直接改变质量和惯量起风之后外部力矩无时无刻不在变化。这些统称为模型不确定性和外部扰动在数学上就是动力学方程里的多出来的一项。PID对抗这些靠的是误差积分慢慢磨滑模则换了一种思路既然你不知道扰动到底多大那就假设它有个上界然后设计一个比这个上界还凶的切换项把它硬压下去。所以在仿真里做滑模控制第一步不是急着写控制器而是把所有不确定性抽象成一个有界扰动项。控制器的任务也从精确跟踪模型变成了在有界扰动下保证状态最终落入一个设计好的流形。这个视角的转变是整个项目的核心。1.2 滑模控制的第一性原理用一个开关代替精确建模滑模控制的基本逻辑可以这样理解你不需要知道人从滑梯滑下来时体重是多少、衣服摩擦系数是多少你只需要把滑梯的形状修好人滑到地面的过程就基本由滑梯形状决定。对应到控制里我们设计一个滑模面 s典型形式是 s ė λee 是误差ė 是误差变化率。当系统状态被强制按到 s0 这个面上时误差动态就变成 ė -λe误差按指数收敛收敛速度只由 λ 决定原系统是什么参数、怎么漂移根本不重要。这就是滑模对模型不确定性鲁棒的根本原因——一旦上了滑模面主导动态就是你自己设计的而不是被控对象原来的。要让状态上到滑模面控制律里必须有一个开关项通常是 ε·sign(s)。当 s0 时往一个方向推s0 时往另一个方向推频率非常高造成所谓的抖振。仿真里你会看到控制输入曲线上出现密密麻麻的高频锯齿这不是bug不是数值发散而是这个控制策略的本质特征。理解了这一点后面调参时就不会上来就想着把抖振完全消掉因为那等于同时消掉了鲁棒性。1.3 和PID、LQR摆在一起看各自的舒适区与短板控制策略模型依赖度对抗不确定性的方式主要代价适合场景PID中误差积分慢慢磨参数要反复调不同工况要重新调悬停、小角度机动、模型较准LQR高靠状态反馈压模型偏差大时性能下降权重矩阵难定鲁棒性一般模型准确、工作点稳定滑模低切换项直接压掉有界扰动抖振、执行器压力大模型参数漂移、强扰动、大机动这里不是踩PID和LQR它们在各自场景里很成熟。但如果你的项目需要应对突风、载重变化、甚至部分参数未知滑模一旦上了滑模面就不看原模型的特性就非常有价值。代价也明确——切换频率高执行器寿命和噪声问题都得另行处理。2. 仿真模型搭建前先把四旋翼的动力学方程钉在纸面上2.1 坐标系约定机体系、地面系和欧拉角顺序四旋翼仿真第一个大坑就是坐标系。地面系我用东北天NED也行但必须统一机体系我习惯 X 轴指向机头Y 轴指向右侧Z 轴向下。欧拉角旋转顺序我固定用 Z-Y-X也就是先偏航 ψ再俯仰 θ最后滚转 φ。这个顺序会直接决定旋转矩阵的每一项长什么样不同教材、不同代码里的矩阵可能长得完全不同。我见过有人从网上复制旋转矩阵把 sinφ 和 cosφ 位次抄反位置环整个反了还在那调了三天参数。所以建模之前先把坐标系的约定写在纸上后面所有公式都以这一条为准。2.2 位置动力学与姿态动力学位置动力学写在地面系里比较方便本质是牛顿第二定律质量乘加速度等于推力经旋转矩阵投影到地面系之后减去重力。小角度悬停附近水平方向的加速度可以近似为 φ 和 θ 的线性组合这就是位置外环用期望水平加速度反解期望姿态角的基础。姿态动力学要写在机体系里形式是 J·ω̇ ω×Jω τ其中 ω 是机体角速度J 是转动惯量矩阵在仿真里通常假设为对角阵 diag(Ixx, Iyy, Izz)。展开后就是Ixx·ṗ (Iyy - Izz)·q·r τxIyy·q̇ (Izz - Ixx)·p·r τyIzz·ṙ (Ixx - Iyy)·p·q τz你会发现有 (Iyy - Izz)·q·r 这种交叉项这是陀螺力矩的体现。如果把它忽略小角度还行大机动仿真里误差会放大。在滑模设计时你可以选择把这一项补偿掉也可以选择把它扔进扰动项让滑模去扛这两种做法后面我会讲利弊。2.3 推力、反扭矩与控制分配矩阵电机转速 Ω_i 和推力、反扭矩之间的关系一般简化为二次关系F_i b·Ω_i²M_i d·Ω_i²。b 是推力系数d 是反扭矩系数。四个电机的推力合起来产生总升力滚转和俯仰力矩靠对角线上的电机推力差产生偏航力矩靠反扭矩差产生。我用的电机编号方式是1号前左、2号前右、3号后左、4号后右分配到姿态环的控制量 U1~U4 写出来就是U1 F1 F2 F3 F4U2 l·(F2 - F4)U3 l·(F3 - F1)U4 d·(Ω1² - Ω2² Ω3² - Ω4²) / b注意这里的符号完全取决于电机编号和桨叶转向图省事从别处抄来直接用大概率某个通道方向是反的。一个很有效的自检方法仿真里只给 U2 一个正向阶跃看滚转角加速度是不是正的不是就检查分配矩阵的符号。3. 滑模控制器设计切换面、趋近律与控制律推导3.1 姿态环滑模面怎么选为什么是 s ė λe姿态内环的控制对象是三个欧拉角误差 e Θ_d - Θ其中 Θ [φ, θ, ψ]ᵀ。滑模面我取 s ė λeλ 是一个正定的对角矩阵三个通道各取一个系数。为什么这么取因为当 s0 时系统就等价于一个一阶线性动态 ė -λe误差从任意初值按指数收敛s 的阶数比误差低一阶参数只有 λ设计简单直观。λ 的数值本质上是期望误差带宽。λ8 意味着误差时间常数大约 0.125 秒对应带宽大约十几赫兹比较适合姿态环。λ 太小响应慢λ 太大噪声会被放大而且控制器输出的高频成分会直接把边界层撕开。这里要提醒一句如果仿真里角度单位是弧度λ 的单位是 1/s别把角度用成度否则 λ 的数值差 57 倍很容易把控制器调成一个敏感怪。3.2 从 s 的导数推出控制律等效项和鲁棒项推导的思路很简单要让 s 快速归零就给 s 设计一个期望动态。我用的指数趋近律是 ṡ -ε·sat(s/Δ) - k·s。ε 是等速趋近项系数负责对抗扰动k 是指数趋近项系数负责让 s 从远处快速回到滑模面。把 s ė λe 代入再结合姿态动力学这里先用简化后的角加速度和控制力矩的线性关系 τ J·Θ̈整理一下就能得到控制律τ J·(Θ̈_d λ·ė ε·sat(s/Δ) k·s)这个式子看着简单每一项都有明确分工Θ̈_d λ·ė 是等效控制部分它的作用是维持系统在滑模面上运动ε·sat(s/Δ) 是鲁棒项负责把模型不确定性和外部扰动压下去k·s 是趋近项负责让系统从任何初始状态快速回到滑模面。如果要把ω×Jω补偿进去就在等式右边再加上这一项。实际仿真里我一开始故意不补偿陀螺力矩项让滑模去扛。这样做的目的是用最小的模型信息测出系统需要的 ε 到底多大。如果 ε 已经调到很大还是抗不住扰动导致的误差发散再考虑把补偿项加上这时候加补偿的意义也清晰了——它能降低 ε 的需求让抖振变小。3.3 指数趋近律背后的工程权衡ε 和 k 不是越大越好很多第一次做滑模的人上手就喜欢把 ε 调到很大觉得反正鲁棒性靠它结果仿真一看输入力矩在疯狂振荡姿态倒是稳的但电机转速指令一直顶在饱和值上。这不是正确的鲁棒性而是把执行器当成了无限带宽的开关。工程上ε 必须大于不确定性扰动的上界这是到达滑模面的充分条件但不要超过太多。收敛时间的估算公式是 t ≈ (1/k)·ln((k·|s₀| ε)/ε)可以看到 k 决定早期收敛快慢ε 决定在 s 很小的时候还能不能继续把系统摁在滑模面上。我的调参顺序是固定 k先把 ε 从小往大加观察到扰动注入下误差不持续发散为止然后增 k 提升响应速度同时盯着控制输入幅值。ε 和 k 都对输入幅值有贡献但表现完全不同这一步最好在仿真里用实时滑块调能直观看到变化趋势。3.4 位置外环与姿态内环的串级关系实际操作中很少直接对位置做滑模原因是位置环生成的期望姿态角如果是跳变的内环根本来不及追。我采用的位置外环还是PD根据位置误差生成期望的水平加速度再反解出期望滚转角和俯仰角偏航独立控制。这种串级结构的关键是两个环的带宽必须拉开差距。姿态环带宽大概在10到20 rad/s位置环带宽压到1到2 rad/s。如果内外环带宽太接近位置修正信号进到内环之后会引发共振姿态曲线出现周期性摆动。如果你非要把位置环也做成滑模记得给期望姿态指令加斜率限制和低通滤波。否则外环的切换动作会直接把内环的边界层打得稀碎仿真里看起来误差不大实机上外环一个切换电机就跟着啪一下躁起来。4. Simulink建模与仿真参数设置从框图到跑出第一条稳定轨迹4.1 模型结构分五个层级搭建议别把所有东西都堆在一个大框图里按信号流拆成五层参考指令生成、控制器位置环加姿态环、控制分配、四旋翼动力学、传感器与可视化。信号流方向是参考指令 → 控制器 → 控制分配 → 执行器模型 → 四旋翼动力学 → 传感器 → 反馈回控制器。每一层单独做一个子系统调试的时候可以单独给某一层加扰动、看中间量。动力学部分我最推荐写成函数而不是用积分器连线堆。一来改初值方便二来加扰动项、改参数都很快。我之前用积分器连线搭过一版想给某个轴加一个 0.1 N·m 的力矩扰动得找到那条隐形的连线再插个加法器烦死了。写成函数之后扰动就是一个输入端口的事。4.2 那个最容易出坑的环节欧拉角积分与角度跳变这是四旋翼仿真的经典陷阱。机体角速度 p、q、r 不能直接积分成欧拉角速率两者之间隔了一个跟欧拉角本身有关的转换矩阵。高中数学式的直觉在这里不成立如果直接用 θ̇ p、φ̇ q小角度悬停还能凑合滚转角一超过二三十度方向就全乱了。还有一个更隐蔽的坑θ 接近 ±90° 时那个转换矩阵会奇异欧拉角表示直接失效。我的处理方式是在动力学函数内部用四元数做状态积分输出控制需要的欧拉角时再做转换。如果你不想引入四元数那就至少做到两条一是把欧拉角做 wrap 到[-π, π]防止角度跳变把滑模误差项搞得忽大忽小二是仿真指令角度限制在 ±30° 以内别拿欧拉角去硬闯大机动区域。另外初始化一定要把积分器的初值设成悬停配平状态否则仿真第一步就是从一个大误差开始控制器会被逼出一个很大的初始力矩容易掩盖真实的动态特性。4.3 连续滑模的仿真步长和Solver选择滑模控制是高频切换控制对仿真步长的敏感度远超PID。变步长 ode45 在符号函数切换时会自动加密步长仿真速度会很慢而且变步长积分器会把高频切换平均掉控制输入曲线看起来很平滑好像抖振很轻。但真实飞控是固定采样率不是变步长积分器这种平滑是假象。我的经验是控制律部分做成离散子系统步长设成1毫秒或2毫秒四旋翼动力学用连续模块跑仿真配置里把最大步长限制在0.001秒以内。这样仿真出来的抖振形态才和真实机上看到的一致。如果你用的是连续 sign(s) 并且遇到步长不够收敛的问题可以换 ode15s 这类刚性求解器但最终做工程验证还是回到固定离散步长上来。4.4 控制分配矩阵、执行器饱和与一阶惯性控制分配矩阵是一个常值矩阵把 U1~U4 映射到四个电机的转速平方。这一步数学上简单但工程上必须紧跟两个环节转速饱和和一阶惯性。电机转速不可能无限大比如我设 Ω_max 1200 rad/s控制分配算出来的转速平方必须先开方然后限幅。之后再串一个时间常数大约0.02~0.05秒的一阶惯性环节模拟电机的响应延迟。如果省掉这两个环节控制器再激进都能稳定因为电机被当成瞬时响应且无限出力了。做过一次实验你就会发现同一个滑模参数加饱和前后表现天差地别没加饱和时 30° 滚转指令稳稳的加了饱和直接一个电机顶到限幅姿态开始低频振荡。5. 调参与抖振抑制那些模型里看不到、试了才知道的细节5.1 我的起始参数和一次完整调试顺序仿真参数需要一个合理的起点我给一组我自己常用的数量级注意这些值依赖你的模型参数不能直接套用姿态滑模 λ 取 5到10等速项 ε 取 0.3到0.8指数项 k 取 1到5边界层厚度 Δ 取 0.05到0.2位置环PD大概 kp1.0到2.0、kd2.0到4.0。模型惯量数量级是 Ixx≈Iyy≈0.01、Izz≈0.018 kg·m²质量约1.2kg机臂半长约0.225m。在这些参数下5° 滚转阶跃大概0.2秒进0.5°误差带滑模面 s 在0.25秒内衰减到 ±0.05 附近。调试顺序我强烈建议按这个来先只给悬停小角度阶跃比如5°确认姿态跟踪没发散再看滑模面曲线是否收敛到0附近收敛正常了再注入外力矩扰动最后才逐步加大指令角度。每一步都要回头盯控制输入曲线有没有长时间饱和。跳过任何一步直接上大角度指令很难定位问题是出在控制器还是执行器。5.2 边界层法饱和函数把抖振换成了什么抖振的来源是 sign(s) 在 s0 附近的高速切换。边界层法就是把 sign(s) 换成 sat(s/Δ)在 |s| 小于 Δ 的区域内开关变成一个线性增益切换动作被平滑掉。代价是滑模面本身不再被精确维持系统实际上退化成高增益PD。Δ 越小越接近理想滑模抖振越明显Δ 越大越平滑但稳态误差和抗扰能力同步下降。这里有个很容易走偏的操作一上来就把 Δ 调到0.3甚至0.5曲线看起来漂亮极了然后得出结论滑模不过如此。这不是滑模控制这是换皮PD。我的习惯是先在全 sign(s) 下把控制器跑通确认 ε 够不够、参数对不对再把 Δ 从0.05开始一点点加加到抖振可接受就停。如果想在抖振和精度之间找更好的平衡可以把 sat(s/Δ) 换成 tanh(s/Δ)曲线更平滑等效边界层特性也更温和。5.3 执行器饱和下的大姿态角指令为什么滑模也会翻车很多人对滑模鲁棒性有个误解觉得它能对抗一切不确定性。它对抗的前提是控制输入还有余量去实现那个切换项。当期望滚转角超过25°甚至30°控制分配算出来的某个电机转速可能已经顶到上限这时扰动上界就变成了无限大任何 ε 都不可能大于它。我在实验里看到过一个典型现象25°还能稳30°开始一个电机长期饱和姿态出现低频极限环误差在2°上下震荡。这不是控制器调坏了是执行器能力触顶了。验证方法很简单把期望角度从10°开始逐步加大看电机转速曲线什么时候开始长时间贴在上限上。出现饱和时要么降低参考指令幅度要么在控制器输出后面加一个限幅并重新整定滑模参数。更合理的方向是设计控制分配优化让四个电机在饱和边界上均衡出力但这已经超出纯滑模的范畴了。5.4 注入扰动的实验设计怎样才算公平对比PID滑模的价值要在扰动实验里体现但对比实验做不公平结论就废了。我的做法是这样先在无扰动情况下把PID调到性能最优超调小、响应快、无振荡再把扰动加进去做同样指令滑模也一样先在没有扰动时确认基本跟随能力再加扰动。扰动类型分两种一是力矩通道的方波扰动模拟突风或重心偏移造成的额外力矩二是位置通道的恒定加速度扰动模拟持续的侧风。幅值从小到大扫每个幅值下记录误差RMS和扰动撤除后的恢复时间。还有一个容易被忽略的实验角速度测量噪声。给陀螺仪输出加高斯白噪声之后滑模的表现会明显变差因为噪声直接进入 s 的导数符号函数在你没注意的时候就被噪声来回触发。加上低通滤波之后抖振会小一些但滤波器相位延迟又可能削弱鲁棒性。这一步是仿真和实飞之间最真实的一道鸿沟强烈建议所有人都跑一遍。6. 仿真结果怎么分析以及从这里还能往哪走6.1 看曲线不能只看姿态滑模面、控制输入、电机转速姿态跟踪曲线当然要看但它不是最快的诊断工具。我每次跑完仿真会同时打开四组曲线姿态误差、滑模面 s、控制力矩输出、电机转速指令。滑模面曲线能直接告诉你系统有没有真正进入滑模运动理想情况下 s 从初值快速衰减之后在0附近小幅波动。如果 s 一直在一个非零值附近震荡说明 ε 不够或者扰动超过了预期的上界。控制力矩曲线的高频段能看出抖振频率你可以直观地看到离散步长把连续切换变成了一串离散脉冲如果这个频率和实际飞控的采样频率接近就意味着实机上很可能出现你仿真里没见过的极限环。6.2 一个具体的仿真结果样例数值给一组示意性的数字。模型参数 m1.2kgIxxIyy0.01Izz0.018b2.98e-6d1.14e-7l0.225m推力系数单位按标准国际单位。姿态环参数 λ8ε0.4k3Δ0.1。5°滚转阶跃姿态误差大约0.2秒进入0.5°以内s 在0.25秒内收敛到 ±0.05。第3秒时给滚转通道注入幅值0.3 N·m、持续1秒的方波扰动姿态误差峰值约1.2°扰动撤除后0.5秒内回到稳态。同样的扰动加在调好的PID上误差峰值大概2.5°恢复时间接近1秒。这个对比能说明问题但注意数字依赖具体模型不要直接拿来当自己的验收标准。6.3 从仿真到实飞至少还缺这三件事仿真里能稳定不代表上天就能稳。第一执行器延迟和带宽。我前面说加一阶惯性已经比纯代数关系真实但实际电调加桨叶综合后还带相位延迟更接近一个二阶振荡环节。第二角速度测量噪声。连续滑模在理想传感器下表现很好但陀螺仪噪声会让 sign(s) 的切换被噪声主导不处理就飞姿态大概率一直在高频抖动。第三离散化。飞控循环周期普遍是2到4毫秒连续滑模的切换频率往往超出采样率需要做离散滑模设计或者改用高阶滑模再标定增益。这三件事不落实仿真里的鲁棒性只是纸面的。6.4 后续可扩展自适应、高阶滑模、容错如果你想在这个方向上继续深入三个领域值得看。自适应滑模把 ε 做成在线调节——当滑模面长期偏大就增大 ε接近收敛就减小 ε这样既保证鲁棒性又避免长期大抖振。高阶滑模里最有名的是超螺旋算法它把切换隐藏在积分项里控制输入曲线连续鲁棒性却不降是工程落地价值最高的升级方向之一。扰动观测器和滑模可以组合把可观测的那部分扰动提前补偿掉用滑模只处理残余误差ε 的需求会明显下降。容错控制在四旋翼里也很有实际价值比如单桨失效后重新做控制分配这个场景下滑模对模型突变的鲁棒性优势会进一步放大。最后分享一个我自己的习惯。仿真里一定要把滑模面的尺度和控制输入的幅值放在一起看。很多时候角度误差曲线看起来已经很漂亮了但 s 曲线其实根本没收敛到0这说明系统一直处在趋近段并没有进入滑模运动控制器在拿那点力气硬拉等到扰动一来边界层直接被冲穿。每次调参我都先盯 s 的收敛行为再去看角度跟踪——这是一个容易被打磨和被忽略的判断准则但比盯着角度曲线猜原因高效得多。

相关新闻

自动驾驶规划技术十年演进:从Frenet坐标到端到端与安全底座

自动驾驶规划技术十年演进:从Frenet坐标到端到端与安全底座

做planning这行的人,见面聊不了三句就会绕到同一个话题:你还在用Frenet坐标系吗?这句半开玩笑的问法,其实抓住了这十年规划技术最大的变化。从十年前几乎清一色的状态机加采样规划,到如今端到端、占用网格、生成式规划…

2026/10/18 8:32:15 阅读更多 →
陀螺仪FIFO机制详解:从中断风暴到批量读取的工程实践

陀螺仪FIFO机制详解:从中断风暴到批量读取的工程实践

1. 为什么把陀螺仪读取从“轮询”改成“FIFO块读”先用一次真实测试说明问题。我在测试陀螺仪LSM6DSV80X时,把输出数据率(ODR)提到1.66kHz,主循环里每来一次数据就进中断读一次三轴原始值。刚开始看着串口打印还很正常&#xff0c…

2026/10/18 8:32:15 阅读更多 →
孤子视角:AVO离非线性自洽描述还有多远

孤子视角:AVO离非线性自洽描述还有多远

先给常年在非线性问题里摸爬滚打的同行们说个事儿:这个标题我盯了很久。“孤能子视角:AVO,离N(EIN(EI))还有多远”——光看字面,三分之一的人会以为是病句,三分之一的人觉得是某个没听过的学科黑话,剩下的人大概能嗅到…

2026/10/18 8:31:15 阅读更多 →

最新新闻

AI RAG从零到生产:数据接入、向量检索与精排避坑实战

AI RAG从零到生产:数据接入、向量检索与精排避坑实战

好的,博主。收到您的指令。我将严格按照您的要求,输出一篇关于“AI RAG 检索增强生成 — 从零到生产(下)”的干货博文。内容将完全围绕标题展开,以资深从业者的口吻,深度拆解生产环境下的核心技术点、实操步…

2026/10/18 14:46:45 阅读更多 →
2026论文降AI率工具红黑榜:实测20款平台,帮你避开无效降重陷阱

2026论文降AI率工具红黑榜:实测20款平台,帮你避开无效降重陷阱

最近帮好几个学弟学妹改论文,发现大家最头疼的已经不是查重了,而是降AI率。学校查得越来越严,维普、知网都在升级算法,很多初稿一测,AIGC率直接飙到60%以上。为了帮大家避坑,我最近熬夜实测了市面上20款主流…

2026/10/18 14:46:44 阅读更多 →
深入理解select:IO多路复用的经典入门与实践

深入理解select:IO多路复用的经典入门与实践

1. 从一次连接卡顿说起:为什么还要聊select做后端开发的朋友大概率都遇到过这样的场景:单线程的服务器程序,一旦某个客户端连接上来之后迟迟不发数据,整个服务就像被点了穴一样,后面所有连接全部排队干等。我第一次碰到…

2026/10/18 14:46:44 阅读更多 →
自动驾驶运动控制核心引擎:模型预测控制(MPC)(附代码演示)

自动驾驶运动控制核心引擎:模型预测控制(MPC)(附代码演示)

在自动驾驶的“感知-决策-控制”链路中,MPC是连接规划与执行的关键桥梁。它让车辆拥有了“看清未来几步”的能力,在满足车辆物理极限和道路约束的前提下,滚动求解最优控制指令。本文从MPC的核心原理出发,系统拆解其数学建模、约束…

2026/10/18 14:46:44 阅读更多 →
性能翻倍!Codex CLI大项目卡顿、上下文膨胀、响应慢的7个根治手段:把auth.json改到TaoToken

性能翻倍!Codex CLI大项目卡顿、上下文膨胀、响应慢的7个根治手段:把auth.json改到TaoToken

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 14:46:44 阅读更多 →
网络向量是什么?从攻击路径看安全防护的底层思维

网络向量是什么?从攻击路径看安全防护的底层思维

打过几年攻防演练,也在企业内部做过红蓝对抗的评估,我发现一个特别普遍的现象:很多新手谈安全,张口就是漏洞、就是CVE编号,恨不得把漏洞库背下来。但真到了分析一个系统、一条业务链路的时候,反而不知道从哪…

2026/10/18 14:45:44 阅读更多 →

日新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 0:55:02 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →