关于这个博客
NVR Land 是一个专注于控制理论、嵌入式系统、精密运动、电路硬件、软件工程与仿真的技术博客。
这里的内容包括但不限于:
- 🎛️ 控制理论 — PID、LQR、MPC、鲁棒控制、自适应控制
- 💻 嵌入式 — ARM Cortex、STM32、RISC-V、RTOS、裸机编程
- 🎯 精密运动 — 龙门平台、运动控制卡、P2P 轨迹规划、振动抑制
- ⚡ 电路硬件 — PCB 设计、信号完整性、功率电子、FPGA
- 🛠️ 软件工程 — C/C++、Python、Rust、MATLAB、嵌入式 Linux
- 🔬 仿真 — Simulink、SPICE、有限元、多体动力学
访问提示:按
Ctrl+K打开全文搜索,右下角浮动按钮切换主题和字体。
写作格式
Markdown 正文支持丰富的学术格式:
LaTeX 数学公式
行内公式 和显示公式:
代码高亮 (C++ / G-code / Verilog)
STM32 PWM 初始化:
// STM32F4 TIM1 PWM 输出配置
void PWM_Init(void) {
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
TIM_OCInitTypeDef TIM_OCInitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1, ENABLE);
TIM_TimeBaseStructure.TIM_Period = 8399; // 84MHz / 8400 = 10kHz
TIM_TimeBaseStructure.TIM_Prescaler = 0;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM1, &TIM_TimeBaseStructure);
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
TIM_OCInitStructure.TIM_Pulse = 4200; // 50% duty
TIM_OC1Init(TIM1, &TIM_OCInitStructure);
TIM_Cmd(TIM1, ENABLE);
TIM_CtrlPWMOutputs(TIM1, ENABLE);
}
CNC 龙门定位指令:
G90 ; 绝对坐标
G00 X100 Y50 ; 快速移动到 (100, 50)
G01 X200 Y100 F500 ; 直线插补,进给 500mm/min
G02 X250 Y150 I50 J0 ; 顺时针圆弧
M30 ; 程序结束
定理环境
李雅普诺夫稳定性:对于自治系统 ,若存在连续可微函数 满足:
- ,且
则系统在原点李雅普诺夫稳定。
Mermaid 图表
graph TD
A[上位机] -->|EtherCAT| B[运动控制器]
B -->|PWM| C[伺服驱动器 X]
B -->|PWM| D[伺服驱动器 Y1]
B -->|PWM| E[伺服驱动器 Y2]
C --> F[直线电机 X]
D --> G[直线电机 Y1]
E --> H[直线电机 Y2]
引用
参考文献使用 BibTeX 格式管理,在文章中引用 [@gantry2024],文末自动生成参考文献列表。
下一步
这个博客将持续更新下面这些方向的内容:
- 双驱龙门平台建模与控制
- P2P 轨迹规划与节拍优化
- EtherCAT 总线通信实践
- STM32 / RISC-V 嵌入式开发笔记
- 电路设计与仿真经验
💡 提示:在右下角点击 📜 图标切换到学术纸主题,获得类似 LaTeX 论文的阅读体验。
写于 2026年6月3日,北京