# FZ_FOC **Repository Path**: fourzkw/fz_foc ## Basic Information - **Project Name**: FZ_FOC - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-03-31 - **Last Updated**: 2026-06-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # fz_foc `fz_foc` 是一个面向 ESP32-S3 + Arduino(PlatformIO)的本地 FOC 电机控制库。 ## 项目结构 - `include/fz_foc/fz_foc.h`:单电机控制核心 API(`FzFoc`、控制模式、配置结构体) - `include/fz_foc/fz_foc_manager.h`:多电机管理 API(注册、初始化、统一调度) - `include/fz_foc/sensors/as5600_sensor.h`:AS5600 角度传感器封装 - `include/fz_foc.h`:聚合头文件(兼容旧工程) - `src/fz_foc_core.cpp`:FOC 控制核心实现(MCPWM/ADC 适配) - `src/fz_foc_manager.cpp`:多电机管理实现 - `src/as5600_sensor.cpp`:AS5600 具体实现 - `examples/`:6 个可直接复制的示例 - `torque_open_loop` - `torque_closed_loop` - `speed_closed_loop_torque_open` - `speed_closed_loop_torque_closed` - `angle_closed_loop_torque_open` - `angle_closed_loop_torque_closed` ## 用法 1. 将本库放到 PlatformIO 工程的本地库目录(例如 `lib/fz_foc`)。 2. 在代码中引用头文件(推荐二选一): ```cpp #include #include // 或者:#include "fz_foc.h" ``` 3. 从 `examples/` 里选择一个模式,将对应 `main.cpp` 复制到你的工程 `src/main.cpp`。 4. 根据硬件修改参数:PWM 引脚、使能引脚、ADC 电流采样引脚、AS5600 I2C 引脚、PID 参数等。 5. 编译并下载运行: ```bash pio run pio run -t upload ``` > 闭环模式需要编码器/电流采样支持,具体依赖可参考 `examples/README.md`。