diff --git a/README.md b/README.md index d2ebec24..929c1be9 100644 --- a/README.md +++ b/README.md @@ -2,13 +2,13 @@ 机器人技术栈知识库 / Robotics research and engineering wiki. - + [![GitHub Pages](https://img.shields.io/badge/GitHub%20Pages-Live-brightgreen?logo=github)](https://imchong.github.io/Robotics_Notebooks/) [![Deploy GitHub Pages](https://github.com/ImChong/Robotics_Notebooks/actions/workflows/pages.yml/badge.svg)](https://github.com/ImChong/Robotics_Notebooks/actions/workflows/pages.yml) [![Wiki Lint](https://github.com/ImChong/Robotics_Notebooks/actions/workflows/lint.yml/badge.svg)](https://github.com/ImChong/Robotics_Notebooks/actions/workflows/lint.yml) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](./LICENSE) -[![Knowledge Graph](https://img.shields.io/badge/知识图谱-1319节点_8781边-blue?logo=d3.js)](https://imchong.github.io/Robotics_Notebooks/graph.html) +[![Knowledge Graph](https://img.shields.io/badge/知识图谱-1320节点_8793边-blue?logo=d3.js)](https://imchong.github.io/Robotics_Notebooks/graph.html) [![Sources Coverage](https://img.shields.io/badge/sources覆盖率-98%25-green)](docs/checklists/tech-stack-next-phase-checklist-v25.md) diff --git a/docs/exports/graph-stats.json b/docs/exports/graph-stats.json index 6a9c1a7f..448ae0eb 100644 --- a/docs/exports/graph-stats.json +++ b/docs/exports/graph-stats.json @@ -1 +1 @@ -{"generated_at":"2026-06-23","node_count":1319,"edge_count":8781,"community_count":16,"top_hubs":[{"id":"wiki/overview/humanoid-paper-notebooks-index.md","label":"Humanoid Paper Notebooks 知识库索引","degree":430},{"id":"wiki/overview/paper-notebook-category-04-loco-manipulation-and-wbc.md","label":"Paper Notebooks · Loco-Manipulation and WBC","degree":261},{"id":"wiki/concepts/sim2real.md","label":"Sim2Real","degree":223},{"id":"wiki/tasks/locomotion.md","label":"Locomotion","degree":210},{"id":"wiki/overview/humanoid-rl-motion-control-body-system-stack.md","label":"人形机器人 RL 运动控制:身体系统栈视角","degree":181},{"id":"wiki/methods/reinforcement-learning.md","label":"Reinforcement Learning (RL, 强化学习)","degree":177},{"id":"wiki/methods/vla.md","label":"VLA(Vision-Language-Action)","degree":169},{"id":"wiki/overview/paper-notebook-category-05-locomotion.md","label":"Paper Notebooks · Locomotion","degree":153},{"id":"wiki/tasks/manipulation.md","label":"Manipulation","degree":146},{"id":"wiki/methods/imitation-learning.md","label":"Imitation Learning (IL, 模仿学习)","degree":140}],"orphan_nodes":[],"type_distribution":{"entity":881,"method":109,"overview":97,"concept":91,"query":55,"formalization":39,"comparison":33,"task":12,"reference":1,"roadmap_page":1},"community_distribution":{"视觉-语言-动作(VLA) 社区":218,"人形论文深读笔记(Humanoid Paper Notebooks) 社区":209,"其他社区":177,"运动控制(Locomotion) 社区":132,"全身控制(Whole-Body Control, WBC) 社区":110,"模仿学习(Imitation Learning, IL) 社区":83,"人形 RL 运动控制(Humanoid RL Locomotion) 社区":81,"仿真训练(Isaac Gym / Isaac Lab) 社区":62,"操作(Manipulation) 社区":51,"行为基础模型技术地图(BFM) 社区":48,"机器人操作系统 2 基础(ROS 2) 社区":44,"人形硬件技术地图(Humanoid Hardware 101) 社区":36,"论文深读 · 人体动作(Human Motion) 社区":33,"强化学习(Reinforcement Learning, RL) 社区":19,"仿真到现实(Sim2Real) 社区":13,"宇树 G1 人形机器人(Unitree G1) 社区":3},"community_quality":{"singleton_communities":[],"largest_community_ratio":0.165,"community_quality_warning":false},"latest_wiki_nodes":[{"path":"wiki/entities/isaac-lab.md","detail_id":"entity-isaac-lab","label":"Isaac Lab","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/lerobot.md","detail_id":"entity-lerobot","label":"LeRobot (Hugging Face)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/legged-gym.md","detail_id":"entity-legged-gym","label":"legged_gym","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/nvidia-gear-lab.md","detail_id":"entity-nvidia-gear-lab","label":"NVIDIA GEAR Lab(Generalist Embodied Agent Research)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/paper-vesta-generalist-embodied-reasoning.md","detail_id":"entity-paper-vesta-generalist-embodied-reasoning","label":"Vesta(A Generalist Embodied Reasoning Model)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/paper-motion-cerebellum-stubborn.md","detail_id":"entity-paper-motion-cerebellum-stubborn","label":"Stubborn","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/quadruped-control-curriculum.md","detail_id":"entity-quadruped-control-curriculum","label":"四足控制学习策展(仿真 → RL → 实机)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/matrix-simulation-platform.md","detail_id":"entity-matrix-simulation-platform","label":"MATRiX(智身科技联合仿真平台)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/roamerx-navigation.md","detail_id":"entity-roamerx-navigation","label":"RoamerX(智身四足导航栈)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/differentiable-simulation.md","detail_id":"wiki-concepts-differentiable-simulation","label":"Differentiable Simulation(可微仿真)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/urdf-robot-description.md","detail_id":"wiki-concepts-urdf-robot-description","label":"URDF(统一机器人描述格式)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/joint-friction-models.md","detail_id":"wiki-concepts-joint-friction-models","label":"Joint Friction Models(关节摩擦模型)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/friction-compensation.md","detail_id":"wiki-concepts-friction-compensation","label":"Friction Compensation(摩擦补偿)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/procedural-terrain-generation.md","detail_id":"wiki-concepts-procedural-terrain-generation","label":"Procedural Terrain Generation(程序化地形生成)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/hierarchical-quadruped-navigation-stack.md","detail_id":"wiki-concepts-hierarchical-quadruped-navigation-stack","label":"Hierarchical Quadruped Navigation Stack(四足分层导航栈)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/formalizations/articulated-body-algorithms.md","detail_id":"wiki-formalizations-articulated-body-algorithms","label":"Articulated Body Algorithms(ABA / RNEA)","type":"formalization","recency":"2026-06-23","source":"log.md"},{"path":"wiki/methods/pid-control.md","detail_id":"wiki-methods-pid-control","label":"PID Control(比例-积分-微分控制)","type":"method","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/quadruped-robot.md","detail_id":"entity-quadruped-robot","label":"四足机器人(Quadruped Robot)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/system-identification.md","detail_id":"wiki-concepts-system-identification","label":"System Identification","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/sim2real.md","detail_id":"wiki-concepts-sim2real","label":"Sim2Real","type":"concept","recency":"2026-06-23","source":"log.md"}],"latest_wiki_node":{"path":"wiki/entities/isaac-lab.md","detail_id":"entity-isaac-lab","label":"Isaac Lab","type":"entity","recency":"2026-06-23","source":"log.md"}} \ No newline at end of file +{"generated_at":"2026-06-24","node_count":1320,"edge_count":8793,"community_count":16,"top_hubs":[{"id":"wiki/overview/humanoid-paper-notebooks-index.md","label":"Humanoid Paper Notebooks 知识库索引","degree":430},{"id":"wiki/overview/paper-notebook-category-04-loco-manipulation-and-wbc.md","label":"Paper Notebooks · Loco-Manipulation and WBC","degree":261},{"id":"wiki/concepts/sim2real.md","label":"Sim2Real","degree":223},{"id":"wiki/tasks/locomotion.md","label":"Locomotion","degree":210},{"id":"wiki/overview/humanoid-rl-motion-control-body-system-stack.md","label":"人形机器人 RL 运动控制:身体系统栈视角","degree":181},{"id":"wiki/methods/reinforcement-learning.md","label":"Reinforcement Learning (RL, 强化学习)","degree":177},{"id":"wiki/methods/vla.md","label":"VLA(Vision-Language-Action)","degree":169},{"id":"wiki/overview/paper-notebook-category-05-locomotion.md","label":"Paper Notebooks · Locomotion","degree":153},{"id":"wiki/tasks/manipulation.md","label":"Manipulation","degree":146},{"id":"wiki/methods/imitation-learning.md","label":"Imitation Learning (IL, 模仿学习)","degree":140}],"orphan_nodes":[],"type_distribution":{"entity":882,"method":109,"overview":97,"concept":91,"query":55,"formalization":39,"comparison":33,"task":12,"reference":1,"roadmap_page":1},"community_distribution":{"视觉-语言-动作(VLA) 社区":218,"人形论文深读笔记(Humanoid Paper Notebooks) 社区":209,"其他社区":178,"运动控制(Locomotion) 社区":132,"全身控制(Whole-Body Control, WBC) 社区":110,"模仿学习(Imitation Learning, IL) 社区":83,"人形 RL 运动控制(Humanoid RL Locomotion) 社区":81,"仿真训练(Isaac Gym / Isaac Lab) 社区":62,"操作(Manipulation) 社区":51,"行为基础模型技术地图(BFM) 社区":48,"电机驱动器底软通信协议(Motor Drive Firmware Bus Protocols) 社区":44,"人形硬件技术地图(Humanoid Hardware 101) 社区":36,"论文深读 · 人体动作(Human Motion) 社区":33,"强化学习(Reinforcement Learning, RL) 社区":19,"仿真到现实(Sim2Real) 社区":13,"宇树 G1 人形机器人(Unitree G1) 社区":3},"community_quality":{"singleton_communities":[],"largest_community_ratio":0.165,"community_quality_warning":false},"latest_wiki_nodes":[{"path":"wiki/entities/wokwi.md","detail_id":"entity-wokwi","label":"Wokwi","type":"entity","recency":"2026-06-24","source":"log.md"},{"path":"wiki/overview/motor-drive-firmware-bus-protocols.md","detail_id":"wiki-overview-motor-drive-firmware-bus-protocols","label":"电机驱动器底软通信协议总览","type":"overview","recency":"2026-06-24","source":"log.md"},{"path":"wiki/entities/simplefoc.md","detail_id":"entity-simplefoc","label":"SimpleFOC(Arduino-FOC 生态)","type":"entity","recency":"2026-06-24","source":"log.md"},{"path":"wiki/entities/isaac-lab.md","detail_id":"entity-isaac-lab","label":"Isaac Lab","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/lerobot.md","detail_id":"entity-lerobot","label":"LeRobot (Hugging Face)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/legged-gym.md","detail_id":"entity-legged-gym","label":"legged_gym","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/nvidia-gear-lab.md","detail_id":"entity-nvidia-gear-lab","label":"NVIDIA GEAR Lab(Generalist Embodied Agent Research)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/paper-vesta-generalist-embodied-reasoning.md","detail_id":"entity-paper-vesta-generalist-embodied-reasoning","label":"Vesta(A Generalist Embodied Reasoning Model)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/paper-motion-cerebellum-stubborn.md","detail_id":"entity-paper-motion-cerebellum-stubborn","label":"Stubborn","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/quadruped-control-curriculum.md","detail_id":"entity-quadruped-control-curriculum","label":"四足控制学习策展(仿真 → RL → 实机)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/matrix-simulation-platform.md","detail_id":"entity-matrix-simulation-platform","label":"MATRiX(智身科技联合仿真平台)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/roamerx-navigation.md","detail_id":"entity-roamerx-navigation","label":"RoamerX(智身四足导航栈)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/differentiable-simulation.md","detail_id":"wiki-concepts-differentiable-simulation","label":"Differentiable Simulation(可微仿真)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/urdf-robot-description.md","detail_id":"wiki-concepts-urdf-robot-description","label":"URDF(统一机器人描述格式)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/joint-friction-models.md","detail_id":"wiki-concepts-joint-friction-models","label":"Joint Friction Models(关节摩擦模型)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/friction-compensation.md","detail_id":"wiki-concepts-friction-compensation","label":"Friction Compensation(摩擦补偿)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/procedural-terrain-generation.md","detail_id":"wiki-concepts-procedural-terrain-generation","label":"Procedural Terrain Generation(程序化地形生成)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/hierarchical-quadruped-navigation-stack.md","detail_id":"wiki-concepts-hierarchical-quadruped-navigation-stack","label":"Hierarchical Quadruped Navigation Stack(四足分层导航栈)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/formalizations/articulated-body-algorithms.md","detail_id":"wiki-formalizations-articulated-body-algorithms","label":"Articulated Body Algorithms(ABA / RNEA)","type":"formalization","recency":"2026-06-23","source":"log.md"},{"path":"wiki/methods/pid-control.md","detail_id":"wiki-methods-pid-control","label":"PID Control(比例-积分-微分控制)","type":"method","recency":"2026-06-23","source":"log.md"}],"latest_wiki_node":{"path":"wiki/entities/wokwi.md","detail_id":"entity-wokwi","label":"Wokwi","type":"entity","recency":"2026-06-24","source":"log.md"}} \ No newline at end of file diff --git a/docs/exports/home-stats.json b/docs/exports/home-stats.json index 34af90dc..a2cd7e89 100644 --- a/docs/exports/home-stats.json +++ b/docs/exports/home-stats.json @@ -1,13 +1,37 @@ { - "generated_at": "2026-06-23", - "node_count": 1319, - "edge_count": 8781, + "generated_at": "2026-06-24", + "node_count": 1320, + "edge_count": 8793, "coverage": { - "covered": 1288, - "total": 1317, + "covered": 1289, + "total": 1318, "percent": 98 }, "latest_wiki_nodes": [ + { + "path": "wiki/entities/wokwi.md", + "detail_id": "entity-wokwi", + "label": "Wokwi", + "type": "entity", + "recency": "2026-06-24", + "source": "log.md" + }, + { + "path": "wiki/overview/motor-drive-firmware-bus-protocols.md", + "detail_id": "wiki-overview-motor-drive-firmware-bus-protocols", + "label": "电机驱动器底软通信协议总览", + "type": "overview", + "recency": "2026-06-24", + "source": "log.md" + }, + { + "path": "wiki/entities/simplefoc.md", + "detail_id": "entity-simplefoc", + "label": "SimpleFOC(Arduino-FOC 生态)", + "type": "entity", + "recency": "2026-06-24", + "source": "log.md" + }, { "path": "wiki/entities/isaac-lab.md", "detail_id": "entity-isaac-lab", @@ -143,38 +167,14 @@ "type": "method", "recency": "2026-06-23", "source": "log.md" - }, - { - "path": "wiki/entities/quadruped-robot.md", - "detail_id": "entity-quadruped-robot", - "label": "四足机器人(Quadruped Robot)", - "type": "entity", - "recency": "2026-06-23", - "source": "log.md" - }, - { - "path": "wiki/concepts/system-identification.md", - "detail_id": "wiki-concepts-system-identification", - "label": "System Identification", - "type": "concept", - "recency": "2026-06-23", - "source": "log.md" - }, - { - "path": "wiki/concepts/sim2real.md", - "detail_id": "wiki-concepts-sim2real", - "label": "Sim2Real", - "type": "concept", - "recency": "2026-06-23", - "source": "log.md" } ], "latest_wiki_node": { - "path": "wiki/entities/isaac-lab.md", - "detail_id": "entity-isaac-lab", - "label": "Isaac Lab", + "path": "wiki/entities/wokwi.md", + "detail_id": "entity-wokwi", + "label": "Wokwi", "type": "entity", - "recency": "2026-06-23", + "recency": "2026-06-24", "source": "log.md" } } \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 371a5257..7fddaf47 100644 --- a/docs/index.html +++ b/docs/index.html @@ -42,9 +42,9 @@

系统学习人形机器人运动控制

路线、图谱、模块、论文 串成一套极简导航系统。

- 1319 Nodes · - 8781 Links · - 1288/1317 Sources + 1320 Nodes · + 8793 Links · + 1289/1318 Sources
diff --git a/docs/sw.js b/docs/sw.js index b921dc81..69fbd087 100644 --- a/docs/sw.js +++ b/docs/sw.js @@ -1,5 +1,5 @@ // Robotics Notebooks Service Worker — 离线缓存支持 -const CACHE_NAME = 'robotics-wiki-2026-06-23'; +const CACHE_NAME = 'robotics-wiki-2026-06-24'; const ASSETS_TO_CACHE = [ '/Robotics_Notebooks/', '/Robotics_Notebooks/index.html', diff --git a/exports/graph-stats.json b/exports/graph-stats.json index 6a9c1a7f..448ae0eb 100644 --- a/exports/graph-stats.json +++ b/exports/graph-stats.json @@ -1 +1 @@ -{"generated_at":"2026-06-23","node_count":1319,"edge_count":8781,"community_count":16,"top_hubs":[{"id":"wiki/overview/humanoid-paper-notebooks-index.md","label":"Humanoid Paper Notebooks 知识库索引","degree":430},{"id":"wiki/overview/paper-notebook-category-04-loco-manipulation-and-wbc.md","label":"Paper Notebooks · Loco-Manipulation and WBC","degree":261},{"id":"wiki/concepts/sim2real.md","label":"Sim2Real","degree":223},{"id":"wiki/tasks/locomotion.md","label":"Locomotion","degree":210},{"id":"wiki/overview/humanoid-rl-motion-control-body-system-stack.md","label":"人形机器人 RL 运动控制:身体系统栈视角","degree":181},{"id":"wiki/methods/reinforcement-learning.md","label":"Reinforcement Learning (RL, 强化学习)","degree":177},{"id":"wiki/methods/vla.md","label":"VLA(Vision-Language-Action)","degree":169},{"id":"wiki/overview/paper-notebook-category-05-locomotion.md","label":"Paper Notebooks · Locomotion","degree":153},{"id":"wiki/tasks/manipulation.md","label":"Manipulation","degree":146},{"id":"wiki/methods/imitation-learning.md","label":"Imitation Learning (IL, 模仿学习)","degree":140}],"orphan_nodes":[],"type_distribution":{"entity":881,"method":109,"overview":97,"concept":91,"query":55,"formalization":39,"comparison":33,"task":12,"reference":1,"roadmap_page":1},"community_distribution":{"视觉-语言-动作(VLA) 社区":218,"人形论文深读笔记(Humanoid Paper Notebooks) 社区":209,"其他社区":177,"运动控制(Locomotion) 社区":132,"全身控制(Whole-Body Control, WBC) 社区":110,"模仿学习(Imitation Learning, IL) 社区":83,"人形 RL 运动控制(Humanoid RL Locomotion) 社区":81,"仿真训练(Isaac Gym / Isaac Lab) 社区":62,"操作(Manipulation) 社区":51,"行为基础模型技术地图(BFM) 社区":48,"机器人操作系统 2 基础(ROS 2) 社区":44,"人形硬件技术地图(Humanoid Hardware 101) 社区":36,"论文深读 · 人体动作(Human Motion) 社区":33,"强化学习(Reinforcement Learning, RL) 社区":19,"仿真到现实(Sim2Real) 社区":13,"宇树 G1 人形机器人(Unitree G1) 社区":3},"community_quality":{"singleton_communities":[],"largest_community_ratio":0.165,"community_quality_warning":false},"latest_wiki_nodes":[{"path":"wiki/entities/isaac-lab.md","detail_id":"entity-isaac-lab","label":"Isaac Lab","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/lerobot.md","detail_id":"entity-lerobot","label":"LeRobot (Hugging Face)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/legged-gym.md","detail_id":"entity-legged-gym","label":"legged_gym","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/nvidia-gear-lab.md","detail_id":"entity-nvidia-gear-lab","label":"NVIDIA GEAR Lab(Generalist Embodied Agent Research)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/paper-vesta-generalist-embodied-reasoning.md","detail_id":"entity-paper-vesta-generalist-embodied-reasoning","label":"Vesta(A Generalist Embodied Reasoning Model)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/paper-motion-cerebellum-stubborn.md","detail_id":"entity-paper-motion-cerebellum-stubborn","label":"Stubborn","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/quadruped-control-curriculum.md","detail_id":"entity-quadruped-control-curriculum","label":"四足控制学习策展(仿真 → RL → 实机)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/matrix-simulation-platform.md","detail_id":"entity-matrix-simulation-platform","label":"MATRiX(智身科技联合仿真平台)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/roamerx-navigation.md","detail_id":"entity-roamerx-navigation","label":"RoamerX(智身四足导航栈)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/differentiable-simulation.md","detail_id":"wiki-concepts-differentiable-simulation","label":"Differentiable Simulation(可微仿真)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/urdf-robot-description.md","detail_id":"wiki-concepts-urdf-robot-description","label":"URDF(统一机器人描述格式)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/joint-friction-models.md","detail_id":"wiki-concepts-joint-friction-models","label":"Joint Friction Models(关节摩擦模型)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/friction-compensation.md","detail_id":"wiki-concepts-friction-compensation","label":"Friction Compensation(摩擦补偿)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/procedural-terrain-generation.md","detail_id":"wiki-concepts-procedural-terrain-generation","label":"Procedural Terrain Generation(程序化地形生成)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/hierarchical-quadruped-navigation-stack.md","detail_id":"wiki-concepts-hierarchical-quadruped-navigation-stack","label":"Hierarchical Quadruped Navigation Stack(四足分层导航栈)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/formalizations/articulated-body-algorithms.md","detail_id":"wiki-formalizations-articulated-body-algorithms","label":"Articulated Body Algorithms(ABA / RNEA)","type":"formalization","recency":"2026-06-23","source":"log.md"},{"path":"wiki/methods/pid-control.md","detail_id":"wiki-methods-pid-control","label":"PID Control(比例-积分-微分控制)","type":"method","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/quadruped-robot.md","detail_id":"entity-quadruped-robot","label":"四足机器人(Quadruped Robot)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/system-identification.md","detail_id":"wiki-concepts-system-identification","label":"System Identification","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/sim2real.md","detail_id":"wiki-concepts-sim2real","label":"Sim2Real","type":"concept","recency":"2026-06-23","source":"log.md"}],"latest_wiki_node":{"path":"wiki/entities/isaac-lab.md","detail_id":"entity-isaac-lab","label":"Isaac Lab","type":"entity","recency":"2026-06-23","source":"log.md"}} \ No newline at end of file +{"generated_at":"2026-06-24","node_count":1320,"edge_count":8793,"community_count":16,"top_hubs":[{"id":"wiki/overview/humanoid-paper-notebooks-index.md","label":"Humanoid Paper Notebooks 知识库索引","degree":430},{"id":"wiki/overview/paper-notebook-category-04-loco-manipulation-and-wbc.md","label":"Paper Notebooks · Loco-Manipulation and WBC","degree":261},{"id":"wiki/concepts/sim2real.md","label":"Sim2Real","degree":223},{"id":"wiki/tasks/locomotion.md","label":"Locomotion","degree":210},{"id":"wiki/overview/humanoid-rl-motion-control-body-system-stack.md","label":"人形机器人 RL 运动控制:身体系统栈视角","degree":181},{"id":"wiki/methods/reinforcement-learning.md","label":"Reinforcement Learning (RL, 强化学习)","degree":177},{"id":"wiki/methods/vla.md","label":"VLA(Vision-Language-Action)","degree":169},{"id":"wiki/overview/paper-notebook-category-05-locomotion.md","label":"Paper Notebooks · Locomotion","degree":153},{"id":"wiki/tasks/manipulation.md","label":"Manipulation","degree":146},{"id":"wiki/methods/imitation-learning.md","label":"Imitation Learning (IL, 模仿学习)","degree":140}],"orphan_nodes":[],"type_distribution":{"entity":882,"method":109,"overview":97,"concept":91,"query":55,"formalization":39,"comparison":33,"task":12,"reference":1,"roadmap_page":1},"community_distribution":{"视觉-语言-动作(VLA) 社区":218,"人形论文深读笔记(Humanoid Paper Notebooks) 社区":209,"其他社区":178,"运动控制(Locomotion) 社区":132,"全身控制(Whole-Body Control, WBC) 社区":110,"模仿学习(Imitation Learning, IL) 社区":83,"人形 RL 运动控制(Humanoid RL Locomotion) 社区":81,"仿真训练(Isaac Gym / Isaac Lab) 社区":62,"操作(Manipulation) 社区":51,"行为基础模型技术地图(BFM) 社区":48,"电机驱动器底软通信协议(Motor Drive Firmware Bus Protocols) 社区":44,"人形硬件技术地图(Humanoid Hardware 101) 社区":36,"论文深读 · 人体动作(Human Motion) 社区":33,"强化学习(Reinforcement Learning, RL) 社区":19,"仿真到现实(Sim2Real) 社区":13,"宇树 G1 人形机器人(Unitree G1) 社区":3},"community_quality":{"singleton_communities":[],"largest_community_ratio":0.165,"community_quality_warning":false},"latest_wiki_nodes":[{"path":"wiki/entities/wokwi.md","detail_id":"entity-wokwi","label":"Wokwi","type":"entity","recency":"2026-06-24","source":"log.md"},{"path":"wiki/overview/motor-drive-firmware-bus-protocols.md","detail_id":"wiki-overview-motor-drive-firmware-bus-protocols","label":"电机驱动器底软通信协议总览","type":"overview","recency":"2026-06-24","source":"log.md"},{"path":"wiki/entities/simplefoc.md","detail_id":"entity-simplefoc","label":"SimpleFOC(Arduino-FOC 生态)","type":"entity","recency":"2026-06-24","source":"log.md"},{"path":"wiki/entities/isaac-lab.md","detail_id":"entity-isaac-lab","label":"Isaac Lab","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/lerobot.md","detail_id":"entity-lerobot","label":"LeRobot (Hugging Face)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/legged-gym.md","detail_id":"entity-legged-gym","label":"legged_gym","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/nvidia-gear-lab.md","detail_id":"entity-nvidia-gear-lab","label":"NVIDIA GEAR Lab(Generalist Embodied Agent Research)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/paper-vesta-generalist-embodied-reasoning.md","detail_id":"entity-paper-vesta-generalist-embodied-reasoning","label":"Vesta(A Generalist Embodied Reasoning Model)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/paper-motion-cerebellum-stubborn.md","detail_id":"entity-paper-motion-cerebellum-stubborn","label":"Stubborn","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/quadruped-control-curriculum.md","detail_id":"entity-quadruped-control-curriculum","label":"四足控制学习策展(仿真 → RL → 实机)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/matrix-simulation-platform.md","detail_id":"entity-matrix-simulation-platform","label":"MATRiX(智身科技联合仿真平台)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/entities/roamerx-navigation.md","detail_id":"entity-roamerx-navigation","label":"RoamerX(智身四足导航栈)","type":"entity","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/differentiable-simulation.md","detail_id":"wiki-concepts-differentiable-simulation","label":"Differentiable Simulation(可微仿真)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/urdf-robot-description.md","detail_id":"wiki-concepts-urdf-robot-description","label":"URDF(统一机器人描述格式)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/joint-friction-models.md","detail_id":"wiki-concepts-joint-friction-models","label":"Joint Friction Models(关节摩擦模型)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/friction-compensation.md","detail_id":"wiki-concepts-friction-compensation","label":"Friction Compensation(摩擦补偿)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/procedural-terrain-generation.md","detail_id":"wiki-concepts-procedural-terrain-generation","label":"Procedural Terrain Generation(程序化地形生成)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/concepts/hierarchical-quadruped-navigation-stack.md","detail_id":"wiki-concepts-hierarchical-quadruped-navigation-stack","label":"Hierarchical Quadruped Navigation Stack(四足分层导航栈)","type":"concept","recency":"2026-06-23","source":"log.md"},{"path":"wiki/formalizations/articulated-body-algorithms.md","detail_id":"wiki-formalizations-articulated-body-algorithms","label":"Articulated Body Algorithms(ABA / RNEA)","type":"formalization","recency":"2026-06-23","source":"log.md"},{"path":"wiki/methods/pid-control.md","detail_id":"wiki-methods-pid-control","label":"PID Control(比例-积分-微分控制)","type":"method","recency":"2026-06-23","source":"log.md"}],"latest_wiki_node":{"path":"wiki/entities/wokwi.md","detail_id":"entity-wokwi","label":"Wokwi","type":"entity","recency":"2026-06-24","source":"log.md"}} \ No newline at end of file diff --git a/exports/home-stats.json b/exports/home-stats.json index 34af90dc..a2cd7e89 100644 --- a/exports/home-stats.json +++ b/exports/home-stats.json @@ -1,13 +1,37 @@ { - "generated_at": "2026-06-23", - "node_count": 1319, - "edge_count": 8781, + "generated_at": "2026-06-24", + "node_count": 1320, + "edge_count": 8793, "coverage": { - "covered": 1288, - "total": 1317, + "covered": 1289, + "total": 1318, "percent": 98 }, "latest_wiki_nodes": [ + { + "path": "wiki/entities/wokwi.md", + "detail_id": "entity-wokwi", + "label": "Wokwi", + "type": "entity", + "recency": "2026-06-24", + "source": "log.md" + }, + { + "path": "wiki/overview/motor-drive-firmware-bus-protocols.md", + "detail_id": "wiki-overview-motor-drive-firmware-bus-protocols", + "label": "电机驱动器底软通信协议总览", + "type": "overview", + "recency": "2026-06-24", + "source": "log.md" + }, + { + "path": "wiki/entities/simplefoc.md", + "detail_id": "entity-simplefoc", + "label": "SimpleFOC(Arduino-FOC 生态)", + "type": "entity", + "recency": "2026-06-24", + "source": "log.md" + }, { "path": "wiki/entities/isaac-lab.md", "detail_id": "entity-isaac-lab", @@ -143,38 +167,14 @@ "type": "method", "recency": "2026-06-23", "source": "log.md" - }, - { - "path": "wiki/entities/quadruped-robot.md", - "detail_id": "entity-quadruped-robot", - "label": "四足机器人(Quadruped Robot)", - "type": "entity", - "recency": "2026-06-23", - "source": "log.md" - }, - { - "path": "wiki/concepts/system-identification.md", - "detail_id": "wiki-concepts-system-identification", - "label": "System Identification", - "type": "concept", - "recency": "2026-06-23", - "source": "log.md" - }, - { - "path": "wiki/concepts/sim2real.md", - "detail_id": "wiki-concepts-sim2real", - "label": "Sim2Real", - "type": "concept", - "recency": "2026-06-23", - "source": "log.md" } ], "latest_wiki_node": { - "path": "wiki/entities/isaac-lab.md", - "detail_id": "entity-isaac-lab", - "label": "Isaac Lab", + "path": "wiki/entities/wokwi.md", + "detail_id": "entity-wokwi", + "label": "Wokwi", "type": "entity", - "recency": "2026-06-23", + "recency": "2026-06-24", "source": "log.md" } } \ No newline at end of file diff --git a/exports/lint-report.md b/exports/lint-report.md index a31a2535..1b962dac 100644 --- a/exports/lint-report.md +++ b/exports/lint-report.md @@ -1,6 +1,6 @@ # Wiki 健康报告 -## [2026-06-23] lint | health-check | 自动化 wiki 健康检查 +## [2026-06-24] lint | health-check | 自动化 wiki 健康检查 共发现 **0** 个问题(另含 **4** 条信息型预警): @@ -106,4 +106,4 @@ ### 💡 陈旧声明(含绝对化措辞但同主题有更晚更新页,建议复核;信息型,不阻塞 CI)(0 个) - 无 -📊 Sources 覆盖率:1288/1317 (98%) wiki/entity 页有 ingest 来源 +📊 Sources 覆盖率:1289/1318 (98%) wiki/entity 页有 ingest 来源 diff --git a/log.md b/log.md index 8b5c1735..4ca22eb7 100644 --- a/log.md +++ b/log.md @@ -1,5 +1,12 @@ > 核心规范:所有日常动作(ingest / query / lint / structural)必须追加记录到此文件。 +## [2026-06-24] ingest | sources/sites/wokwi-com.md — Wokwi 在线嵌入式仿真平台;升格 wiki/entities/wokwi.md 并交叉 motor-drive-firmware-bus-protocols / simplefoc + +- 原始资料:[wokwi-com.md](sources/sites/wokwi-com.md) +- 升格实体:[wiki/entities/wokwi.md](wiki/entities/wokwi.md) +- 交叉更新:[motor-drive-firmware-bus-protocols](wiki/overview/motor-drive-firmware-bus-protocols.md)、[simplefoc](wiki/entities/simplefoc.md) +- 机构注册表:`schema/institutions.json` 追加 Wokwi + ## [2026-06-23] structural | schema/institutions.json、scripts/bump_institution_tags.py — 批量补全 wiki 节点所属机构 tags;工具实体 lint 门禁 - 扩展机构注册表(Hugging Face、AI2、Amazon、INRIA、Blender Foundation、X-Humanoid、SDU、RoboParty、FreeMoCap 等)与 Unitree 产品 alias diff --git a/schema/institutions.json b/schema/institutions.json index 454763cc..97a59170 100644 --- a/schema/institutions.json +++ b/schema/institutions.json @@ -45,6 +45,7 @@ "x-humanoid": { "label": "X-Humanoid", "aliases": ["x-humanoid"] }, "sdu": { "label": "山东大学(SDU)", "aliases": ["sdu", "jackhan-sdu"] }, "roboparty": { "label": "RoboParty", "aliases": ["roboparty"] }, - "freemocap": { "label": "FreeMoCap Project", "aliases": ["freemocap"] } + "freemocap": { "label": "FreeMoCap Project", "aliases": ["freemocap"] }, + "wokwi": { "label": "Wokwi", "aliases": ["wokwi"] } } } diff --git a/sources/sites/wokwi-com.md b/sources/sites/wokwi-com.md new file mode 100644 index 00000000..02bc8c9f --- /dev/null +++ b/sources/sites/wokwi-com.md @@ -0,0 +1,71 @@ +# Wokwi(wokwi.com) + +> 来源归档 + +- **标题:** Wokwi — Online Electronics Simulator +- **类型:** site(在线嵌入式仿真平台) +- **来源:** Wokwi Ltd. +- **链接:** https://wokwi.com/ +- **文档:** https://docs.wokwi.com/ +- **入库日期:** 2026-06-24 +- **一句话说明:** 浏览器端 **嵌入式电子电路仿真器**:支持 Arduino、ESP32、STM32、Raspberry Pi Pico 等 MCU 与大量传感器/外设;提供 Wi-Fi 仿真、逻辑分析仪、GDB 调试、VS Code/CLion 插件与 **wokwi-cli** CI 集成;ESP-IDF 官方列为第三方仿真工具。 +- **沉淀到 wiki:** [Wokwi](../../wiki/entities/wokwi.md)、[电机底软通信总览](../../wiki/overview/motor-drive-firmware-bus-protocols.md) + +--- + +## 平台定位(官网 / 文档摘要) + +- **不是** 机器人物理引擎(MuJoCo / Isaac 类),而是 **MCU + 外围电路 + 总线协议** 的在线 bring-up 与教学仿真。 +- 个人使用免费;商业与团队功能见 [Pricing](https://wokwi.com/pricing)。 +- 与 [Tiny Tapeout](https://tinytapeout.com/) 合作:可在浏览器设计数字电路并流片(偏芯片设计教育,与机器人固件 bring-up 不同层)。 + +--- + +## 支持硬件(docs:Supported Hardware) + +| 架构 | 代表 MCU / 板卡 | +|------|-----------------| +| **AVR** | ATmega328P(Arduino Uno/Nano)、ATmega2560(Mega)、ATtiny85 | +| **ESP32** | Xtensa:ESP32 / S2 / S3;RISC-V:C3 / C5* / C6 / C61 / H2 / P4 / S31* | +| **STM32** | STM32C031、STM32L031、STM32F103C8 | +| **Pi Pico** | RP2040(双核 Cortex-M0+) | + +\* C5、S31 为 alpha;P4 为 beta。 + +另仿真大量 **传感器、显示器、舵机驱动、I2C/SPI/UART 外设** 与社区 **Chips API** 自定义元件。 + +--- + +## 差异化能力(文档 Unique Features) + +| 能力 | 说明 | +|------|------| +| **Wi-Fi 仿真** | 模拟项目可连互联网;支持 MQTT、HTTP、NTP 等(IoT / 遥测原型) | +| **虚拟逻辑分析仪** | 抓取 UART / I2C / SPI 等数字波形并在本机分析 | +| **GDB 调试** | 浏览器内 Web GDB;Arduino / Pico 高级调试 | +| **SD 卡仿真** | 代码读写文件系统;付费用户可上传二进制资产 | +| **VS Code 集成** | [Wokwi for VS Code](https://marketplace.visualstudio.com/items?itemName=wokwi.wokwi-vscode) 本地编辑 + 仿真 | +| **CLion 插件** | Espressif IDE 2.x+ 内置 Wokwi;ESP-IDF 官方文档推荐 | +| **wokwi-cli + CI** | YAML 场景自动化测试、截图回归;`pytest-embedded-wokwi` 对接 ESP-IDF 测试框架 | +| **Wokwi Classroom** | 高校教学授权与课程项目模板 | + +--- + +## 与机器人栈的关系 + +| 场景 | 价值 | +|------|------| +| **固件 bring-up** | 在焊板前验证 I2C IMU、UART 日志、PWM 舵机、编码器读数 | +| **FOC / 电机原型** | 与 [SimpleFOC](../../wiki/entities/simplefoc.md) 等同栈:Arduino / ESP32 / STM32 上跑 `loopFOC()` 与总线外设 | +| **IoT 遥测** | ESP32 Wi-Fi + MQTT 模拟机器人状态上报,无需实物热点环境 | +| **教学** | 开源人形(如 InMoov 的 Arduino 栈)与创客课程的低门槛入口 | +| **与 PiL 对照** | 轻量 **固件在环** 冒烟测试;**不能** 替代 MuJoCo + 生产固件 CAN 抖动的 [处理器在环 Sim2Real](../../wiki/concepts/processor-in-the-loop-sim2real.md) | + +--- + +## 外部权威引用 + +- [ESP-IDF:Wokwi 第三方工具](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/third-party-tools/wokwi.html) +- [Wokwi Docs — Welcome](https://docs.wokwi.com/) +- [GDB Debugging](https://docs.wokwi.com/gdb-debugging) +- [Supported Hardware](https://docs.wokwi.com/getting-started/supported-hardware) diff --git a/wiki/entities/simplefoc.md b/wiki/entities/simplefoc.md index 7b521d01..4244fea0 100644 --- a/wiki/entities/simplefoc.md +++ b/wiki/entities/simplefoc.md @@ -3,11 +3,12 @@ type: entity tags: [repo, framework, motor-control, foc, bldc, embedded, open-source, linux-foundation] status: complete -updated: 2026-05-26 +updated: 2026-06-24 related: - ../concepts/field-oriented-control.md - ../overview/motor-drive-firmware-bus-protocols.md - ./atom01-firmware.md + - ./wokwi.md - ../concepts/can-bus-protocol.md sources: - ../../sources/repos/simplefoc_arduino_foc.md @@ -99,6 +100,7 @@ flowchart TB - [磁场定向控制(FOC)](../concepts/field-oriented-control.md) - [电机驱动器底软通信协议总览](../overview/motor-drive-firmware-bus-protocols.md) - [Atom01 Firmware](./atom01-firmware.md)(开源人形底层固件对照) +- [Wokwi](./wokwi.md) — 无硬件时在浏览器验证 Arduino/ESP32/STM32 外设与 FOC 原型 ## 推荐继续阅读 diff --git a/wiki/entities/wokwi.md b/wiki/entities/wokwi.md new file mode 100644 index 00000000..3b4b017e --- /dev/null +++ b/wiki/entities/wokwi.md @@ -0,0 +1,103 @@ +--- +type: entity +tags: [software, simulation, embedded, firmware, iot, arduino, esp32, education, wokwi] +status: complete +updated: 2026-06-24 +related: + - ../overview/motor-drive-firmware-bus-protocols.md + - ./simplefoc.md + - ./betaflight.md + - ./inmoov-humanoid.md + - ../concepts/uart-serial-communication.md + - ../concepts/processor-in-the-loop-sim2real.md +sources: + - ../../sources/sites/wokwi-com.md +summary: "Wokwi:浏览器端嵌入式电路仿真器,覆盖 Arduino/ESP32/STM32/Pico 与传感器外设;支持 Wi-Fi/MQTT、逻辑分析仪、GDB、VS Code/CLion 与 wokwi-cli CI——用于机器人固件 bring-up 与教学,而非刚体物理 RL 训练。" +--- + +# Wokwi + +**Wokwi**([wokwi.com](https://wokwi.com/))是面向 **MCU + 外围电路** 的 **在线电子仿真平台**:在浏览器里组装 Arduino、ESP32、STM32、Raspberry Pi Pico 与传感器/显示器/总线外设,运行真实工具链编译出的固件,并可选接入 Wi-Fi、GDB 与自动化测试。**它不是** MuJoCo / Isaac 类的机器人物理仿真器,而是机器人栈中 **嵌入式 bring-up、IoT 遥测原型与教学** 的轻量工具。 + +## 英文缩写速查 + +| 缩写 | 英文全称 | 简要说明 | +|------|----------|----------| +| MCU | Microcontroller Unit | 微控制器,执行固件闭环的片上处理器 | +| GDB | GNU Debugger | GNU 调试器,断点与变量检查 | +| I2C | Inter-Integrated Circuit | 两线串行总线,IMU/磁编等外设常用 | +| SPI | Serial Peripheral Interface | 四线串行外设总线 | +| UART | Universal Asynchronous Receiver-Transmitter | 异步串口,日志与 Bootloader 常用 | +| MQTT | Message Queuing Telemetry Transport | 轻量发布/订阅消息协议,IoT 遥测常用 | +| CI | Continuous Integration | 持续集成,自动化构建与测试流水线 | +| ESP-IDF | Espressif IoT Development Framework | 乐鑫官方 ESP32 开发框架 | + +## 为什么重要 + +- **焊板前的协议冒烟**:I2C 地址冲突、UART 波特率、SPI 片选时序等问题可在仿真里先暴露,降低机器人底软集成返工。 +- **与开源电机/人形生态对齐**:[SimpleFOC](./simplefoc.md) 支持的 Arduino / ESP32 / STM32 栈、[InMoov](./inmoov-humanoid.md) 的 Arduino 控制链、创客级舵机/传感器课程,都可在无硬件时复现核心外设交互。 +- **ESP32 IoT 路径官方背书**:[ESP-IDF 文档](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/third-party-tools/wokwi.html) 将 Wokwi 列为第三方仿真工具,并说明 VS Code、CLion、`wokwi-cli` 与 `pytest-embedded-wokwi` 工作流。 +- **补「物理仿真管不了」的一层**:腿足 RL 的 [仿真器选型](../queries/simulator-selection-guide.md) 讨论的是刚体与接触;Wokwi 覆盖 **固件线程、外设寄存器语义与网络栈**——与 [处理器在环 Sim2Real](../concepts/processor-in-the-loop-sim2real.md) 目标相邻,但 fidelity 与搭建成本远低于全栈 PiL。 + +## 核心结构/机制 + +### 仿真对象分层 + +| 层 | Wokwi 覆盖 | 机器人语境 | +|----|------------|------------| +| **MCU 核** | AVR、Xtensa/RISC-V ESP32、ARM STM32、RP2040 | 关节板、遥测节点、接收机协处理器 | +| **片上外设 + 总线** | GPIO、PWM、ADC、I2C/SPI/UART 仿真 | IMU、磁编、舵机驱动、MSP/CRSF 等串口生态 | +| **板级元件库** | 传感器、OLED、LED 矩阵、SD 卡、逻辑分析仪探针 | 原型验证与教学演示 | +| **网络** | Wi-Fi 仿真(MQTT/HTTP/NTP) | 状态上报、远程调参、云端日志 | +| **刚体/接触** | **不覆盖** | 需 MuJoCo / Isaac / PyBullet 等物理引擎 | + +### 开发与自动化链路 + +```mermaid +flowchart LR + IDE["VS Code / CLion / 浏览器 IDE"] + BUILD["平台工具链\nArduino / ESP-IDF / Pico SDK"] + SIM["Wokwi 仿真内核\nMCU + 外设 + Wi-Fi"] + DBG["Web GDB / 逻辑分析仪"] + CI["wokwi-cli + YAML 场景\nGitHub Actions / pytest"] + + IDE --> BUILD --> SIM + SIM --> DBG + BUILD --> CI --> SIM +``` + +- **浏览器即用**:分享链接即可复现电路与固件,适合课程与 issue 复现。 +- **本地 IDE**:VS Code 插件与 CLion 集成,保持与生产仓库相同的目录结构。 +- **CI 回归**:`wokwi-cli` 跑场景、截图对比;ESP-IDF 侧可用 `pytest-embedded-wokwi` 接入官方测试框架。 + +### 与 Betaflight / PX4 的边界 + +[Betaflight](./betaflight.md) 等飞控固件面向 **STM32 飞控板真机烧录**;Wokwi 可仿真部分 STM32 与外设教学场景,但 **不能** 作为 FPV 飞控 SITL 或 PX4 动力学替代品。空中栈仿真仍见 [多旋翼栈总览](../overview/multirotor-simulation-planning-control-stack.md)。 + +## 常见误区或局限 + +- **误区:Wokwi = 机器人仿真器** — 无浮基动力学、接触力或关节 RL 环境;locomotion 训练应选 [MuJoCo](./mujoco.md) / [Isaac Lab](./isaac-lab.md) 等。 +- **误区:Wi-Fi 仿真等于真机射频环境** — 协议栈可跑通,但延迟、丢包与天线遮挡与实物仍有差距。 +- **局限:实时硬约束** — 不适合验证 EtherCAT DC、kHz 级全关节 CAN 同步等 **硬实时总线** 细节;该层见 [电机底软通信总览](../overview/motor-drive-firmware-bus-protocols.md)。 +- **局限:商业授权** — 个人免费;团队 CI、高级调试与 Classroom 需付费计划。 + +## 参考来源 + +- [Wokwi 官网归档](../../sources/sites/wokwi-com.md) +- [Wokwi Docs](https://docs.wokwi.com/) +- [ESP-IDF:Wokwi 第三方工具](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/third-party-tools/wokwi.html) + +## 关联页面 + +- [电机驱动器底软通信协议总览](../overview/motor-drive-firmware-bus-protocols.md) +- [SimpleFOC](./simplefoc.md) +- [Betaflight](./betaflight.md) +- [InMoov](./inmoov-humanoid.md) +- [UART 串行通信](../concepts/uart-serial-communication.md) +- [处理器在环 Sim2Real](../concepts/processor-in-the-loop-sim2real.md) + +## 推荐继续阅读 + +- [Wokwi — Supported Hardware](https://docs.wokwi.com/getting-started/supported-hardware) +- [GDB Debugging on Wokwi](https://docs.wokwi.com/gdb-debugging) +- [Wokwi for VS Code](https://docs.wokwi.com/vscode) diff --git a/wiki/overview/motor-drive-firmware-bus-protocols.md b/wiki/overview/motor-drive-firmware-bus-protocols.md index a39924b5..df646124 100644 --- a/wiki/overview/motor-drive-firmware-bus-protocols.md +++ b/wiki/overview/motor-drive-firmware-bus-protocols.md @@ -3,7 +3,7 @@ type: overview tags: [hardware, firmware, motor-drive, fieldbus, can-bus, canopen, ethercat, embedded, robotics, mit] status: complete -updated: 2026-05-26 +updated: 2026-06-24 related: - ../concepts/can-bus-protocol.md - ../concepts/can-fd.md @@ -13,6 +13,7 @@ related: - ../concepts/ttl-serial-logic-level.md - ../concepts/field-oriented-control.md - ../entities/simplefoc.md + - ../entities/wokwi.md - ../comparisons/can-vs-ethercat-joint-bus.md - ../formalizations/control-loop-latency-modeling.md - ../concepts/processor-in-the-loop-sim2real.md @@ -141,7 +142,7 @@ flowchart TB L1 CAN FD → L2 **DroneCAN** → 与关节 CANopen **分总线** 或网关隔离。 5. **Bring-up 阶段** - L1 UART → 标定、读版本、产测;**不替代** 关节闭环总线。 + L1 UART → 标定、读版本、产测;**不替代** 关节闭环总线。无硬件时可先用 [Wokwi](../entities/wokwi.md) 等 **MCU 外设仿真** 做 I2C/UART/PWM 冒烟,再焊板联调。 ## 选型决策(简图) @@ -176,6 +177,7 @@ flowchart TD - [磁场定向控制(FOC)](../concepts/field-oriented-control.md) - [SimpleFOC](../entities/simplefoc.md) +- [Wokwi](../entities/wokwi.md) — 浏览器端 MCU/外设仿真,固件 bring-up 与教学 - [CAN 总线(经典)](../concepts/can-bus-protocol.md) - [CAN FD](../concepts/can-fd.md) - [EtherCAT 协议基础](../concepts/ethercat-protocol.md)