vedderb/bldc
GitHub: vedderb/bldc
VESC开源电机控制固件,为无刷直流电机和FOC控制提供可深度定制的底层驱动方案。
Stars: 2988 | Forks: 1729
# VESC 固件
[](https://www.gnu.org/licenses/gpl-3.0)
[](https://travis-ci.com/vedderb/bldc)
[](https://www.codacy.com/app/vedderb/bldc?utm_source=github.com&utm_medium=referral&utm_content=vedderb/bldc&utm_campaign=Badge_Grade)
[](https://github.com/vedderb/bldc/graphs/contributors)
[](https://github.com/vedderb/bldc/watchers)
[](https://github.com/vedderb/bldc/stargazers)
[](https://github.com/vedderb/bldc/network/members)
一个开源的电机控制器固件。
这是 VESC DC/BLDC/FOC 控制器的源代码。了解更多信息请访问
[https://vesc-project.com/](https://vesc-project.com/)
## 支持的开发板
支持所有型号!
通过输入 `make` 查看支持的开发板
```
[Firmware]
fw - Build firmware for default target
supported boards are: 100_250 100_250_no_limits 100_500...
```
还有许多其他选项可以在 [conf_general.h](conf_general.h) 中更改。
## 前置条件
### 在 Ubuntu (Linux)/macOS 上
- 工具:`git`、`wget` 和 `make`
- 额外的 Linux 需求:`libgl-dev` 和 `libxcb-xinerama0`
- 实用的 Ubuntu 命令:
```
sudo apt install git build-essential libgl-dev libxcb-xinerama0 wget git-gui
```
- 实用的 macOS 工具:
```
brew install stlink
brew install openocd
```
### 在 Windows 上
- Chocolatey:https://chocolatey.org/install
- Git:https://git-scm.com/download/win。请务必点击所有选项将 Git 添加到您的环境变量(即 PATH)中
## 安装开发环境并构建
### 在 Ubuntu (Linux)/MacOS 上
打开终端
1. `git clone http://github.com/vedderb/bldc.git`
2. `cd bldc`
3. 继续 [在所有平台上](#on-all-platforms)
### 在 Windows 上
1. 打开 Windows Powershell 终端(请克制以管理员身份运行 Powershell 的冲动,这会导致问题)
2. 输入 `choco install make`
3. `git clone http://github.com/vedderb/bldc`
4. `cd bldc`
5. 继续 [在所有平台上](#on-all-platforms)
### 在所有平台上
1. `git checkout origin/master`
2. `make arm_sdk_install`
3. `make` <-- 从支持的开发板列表中选出您的目标设备名称。例如,我有一个 Trampa **VESC 100/250**,所以我的目标是 `100_250`
4. `make 100_250` <-- 这将构建 **VESC 100/250** 固件并将其放入 `bldc/builds/100_250/` 目录中
## 其他工具
**Linux 可选 - 添加 udev 规则以在不使用 root 权限的情况下使用 stlink v2 编程器**
```
wget vedder.se/Temp/49-stlinkv2.rules
sudo mv 49-stlinkv2.rules /etc/udev/rules.d/
sudo udevadm trigger
```
## IDE
### 前置条件
#### 在 macOS/Linux 上
- `python3` 和 `pip`
#### 在 Windows 上
- Python 3:https://www.python.org/downloads/。请务必点击选项将 Python3 添加到您的环境变量中。
### 所有平台
1. `pip install aqtinstall`
2. `make qt_install`
3. 打开安装在 `tools/Qt/Tools/QtCreator/bin/qtcreator` 中的 Qt Creator IDE
4. 使用 Qt Creator 打开名为 vesc.pro 的 VESC 固件 Qt Creator 项目。您可以在 `Project/Qt Creator/vesc.pro` 中找到它
5. IDE 默认配置为构建 100_250 固件,可以在左侧面板底部更改此设置,在那里您会找到 VESC 支持的所有硬件版本
## 上传到 VESC
### 方法 1 - 使用 STLink SWD 调试器刷写
1. 首先构建并刷写 [bootloader](https://github.com/vedderb/bldc-bootloader)
2. 然后对您选择的目标执行 `_flash`。例如,对于 VESC 100/250:
```
make 100_250_flash
```
### 方法 2 - 通过 VESC 工具经 USB 上传固件
1. 按照上面的构建说明克隆并以 **.bin** 格式构建固件
在 VESC 工具中
2. 连接到 VESC
3. 导航到左侧菜单的 Firmware(固件)选项卡
4. 点击 Custom file(自定义文件)选项卡
5. 点击文件夹图标以选择构建好的 .bin 格式固件(例如 `build/100_250/100_250.bin`)
##### [ 提醒:在固件上传过程中看到 VESC 断开连接是正常的 ]
##### **[ 警告:请勿在上传过程中断开 VESC 的电源/USB 连接,否则您可能会使 VESC 变砖 ]**
##### **[ 警告:仅在进度条完成并显示“FW Upload DONE” 10 秒后断开 VESC 连接 ]**
6. 按下右下角的上传固件按钮(向下箭头)开始上传所选固件。
7. 进度条完成后等待 **10秒**(警告:过早拔出可能会导致 VESC 变砖)
8. 新固件上传完成后,VESC 将自动断开连接。
## 如果您的 VESC 变砖了
您需要向 VESC 上传一个新的可用固件。
但是,要向变砖的 VESC 上传固件,您必须使用 SWD 调试器。
## 贡献
前往 [论坛](https://vesc-project.com/forum) 参与并改进此项目。
加入 [Discord](https://discord.gg/JgvV5NwYts) 获取实时支持和聊天
## 标签
每个固件版本都有一个标签。它们的创建方式如下:
```
git tag -a [version] [commit] -m "VESC Firmware Version [version]"
git push --tags
```
## 许可证
该软件基于 GNU General Public License version 3.0 发布
标签:BLDC, bldc-tool, FOC, GPLv3, PMSM, PWM控制, Python 3.9+, STM32, Vedder, VESC, 固件, 场定向控制, 客户端加密, 嵌入式系统, 开源固件, 开源硬件, 换相控制, 无刷直流电机, 机器人驱动, 滑板, 物联网, 电动车, 电机控制, 电机驱动器, 电调, 硬件开发, 逆变器控制, 驱动程序