# bldc-motor-control-FOC
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
[![paypal](https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=CU2SWN2XV9SCY¤cy_code=EUR&source=url)
This repository implements Field Oriented Control (FOC) for BLDC motors in Matlab/Simulink. The controller was deployed and tested on a real-time hoverboard embedded platform:
- [hoverboard-firmware-hack-FOC](https://github.com/EmanuelFeru/hoverboard-firmware-hack-FOC)
---
Table of Contents
=======================
* [FOC Webview](#foc-webview)
* [FOC Architecture](#foc-architecture)
* [Parameters](#parameters)
* [Diagnostics](#diagnostics)
* [Contributions](#contributions)
---
## FOC Webview
To explore the controller without a Matlab/Simulink installation click on the link below:
[https://eferu.github.io/bldc-motor-control-FOC/](https://eferu.github.io/bldc-motor-control-FOC/)
---
## FOC Architecture
The FOC architecture includes:
- **Estimations**: estimates the rotor position, angle and motor speed based on Hall sensors signal
- **Diagnostics**: implements error detection such as unconnected Hall sensor, motor blocked, MOSFET defective
- **Control Manager**: manages the transitions between control modes (Voltage, Speed, Torque)
- **FOC Algorithm**: implements the FOC strategy
- **Control Type Manager**: Manages the transition between Commutation, Sinusoidal, and FOC control type
![FOC architecture](/02_Figures/FW_architecture.png)
The FOC algorithm architecture is illustrated in the figure below:
![FOC algorithm](/02_Figures/FOC_algorithm.png)
In this implementation 3 control types are available:
- Commutation
- SIN (Sinusoidal)
- FOC (Field Oriented Control) with the following 3 control modes:
- **VOLTAGE MODE**: in this mode the controller applies a constant Voltage to the motors.
- **SPEED MODE**: in this mode a closed-loop controller realizes the input speed target by rejecting any of the disturbance (resistive load) applied to the motor.
- **TORQUE MODE**: in this mode the input torque target is realized. This mode enables motor "freewheeling" when the torque target is `0`.
![Schematic representation of the available control methods](/02_Figures/control_methods.png)
The C code for the controller is capable for auto-code generated using [Matlab/Simulink](https://nl.mathworks.com/solutions/embedded-code-generation.html). The controller is designed for [stock hoverboard motors](https://github.com/EmanuelFeru/hoverboard-firmware-hack-FOC/blob/master/docs/pictures/motor_inside.jpg) with the motor windings construction as shown [here](https://github.com/EmanuelFeru/hoverboard-firmware-hack-FOC/blob/master/docs/pictures/motor_winding.png). However, with slight modifications, the controller can be adapted to other available BLDC motors.
---
## Parameters
The controller parameters are given in the following table:
![Parameters table](/02_Figures/paramTable.png)
---
### Diagnostics
The motor is constantly monitored for errors. These errors are:
- **Error 001**: Hall sensor not connected
- **Error 002**: Hall sensor short circuit
- **Error 004**: Motor NOT able to spin (Possible causes: motor phase disconnected, MOSFET defective, operational Amplifier defective, motor blocked)
---
## Contributions
Every contribution to this repository is highly appreciated! Feel free to create pull requests to improve this repository as ultimately you are going to help everyone.
If you want to donate to keep this repository updated, please use the link below:
[![paypal](https://www.paypalobjects.com/en_US/NL/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=CU2SWN2XV9SCY¤cy_code=EUR&source=url)
---
没有合适的资源?快使用搜索试试~ 我知道了~
现场_定向_控制_(FOC)_用于_LDC_电机_ BLDC-电机控制-
共578个文件
png:161个
svg:112个
js:112个
需积分: 5 0 下载量 128 浏览量
2024-08-26
16:00:49
上传
评论
收藏 18.21MB ZIP 举报
温馨提示
现场_定向_控制_(FOC)_用于_LDC_电机_ BLDC-电机控制-FOC_Field_Oriented_Control_(FOC)_for_BLDC_motors_bldc-motor-control-FOC.zipFOC_Field_Oriented_Control_(FOC)_for_BLDC_motors_bldc-motor-control-FOC
资源推荐
资源详情
资源评论
收起资源包目录
现场_定向_控制_(FOC)_用于_LDC_电机_ BLDC-电机控制- (578个子文件)
BLDC_controller.c 105KB
BLDC_controller_data.c 9KB
ert_main.c 8KB
mixer.c 6KB
rateLimiter.c 6KB
filtLowPass.c 6KB
claro.css 135KB
webview.css 28KB
cactus.css 3KB
dgrid.css 3KB
sage.css 3KB
squid.css 2KB
slate.css 2KB
claro.css 2KB
soria.css 2KB
dojo.css 2KB
tundra.css 1KB
ColumnResizer.css 1KB
TouchScroll.css 1KB
dnd.css 927B
ColumnHider.css 813B
columnset.css 718B
BLDCmotor_FOC_R2017b_fixdt_29_icons.css 709B
Pagination.css 707B
dgrid_rtl.css 704B
nihilo.css 549B
ColumnReorder.css 275B
CompoundColumns.css 187B
combined.css 0B
zoom_in.cur 894B
closed_hand.cur 318B
open_hand.cur 318B
progressBarAnim.gif 4KB
checkmarkNoBorder.gif 2KB
loadingAnimation.gif 1KB
loadingAnimation.gif 631B
loadingAnimation_rtl.gif 630B
blank.gif 43B
.gitattributes 66B
.gitignore 7B
BLDC_controller.h 34KB
rtwtypes.h 4KB
rateLimiter.h 3KB
filtLowPass.h 3KB
mixer.h 3KB
iframe_history.html 1KB
index.html 1KB
blank.html 73B
webview.js 585KB
webview_ja-jp.js 4KB
webview_el.js 3KB
webview_th.js 3KB
webview_ru.js 3KB
webview_ko-kr.js 3KB
webview_ar.js 3KB
webview_ca.js 3KB
webview_he-il.js 3KB
webview_cs.js 3KB
webview_es-es.js 3KB
webview_de.js 3KB
webview_sk.js 3KB
webview_it-it.js 3KB
webview_nl-nl.js 3KB
webview_sl.js 3KB
webview_pt-pt.js 3KB
webview_zh-cn.js 3KB
webview_fi-fi.js 3KB
webview_fr-fr.js 3KB
webview_tr.js 3KB
webview_pt-br.js 3KB
webview_hu.js 3KB
webview_pl.js 3KB
webview_zh-tw.js 3KB
webview_sv.js 3KB
webview_en-us.js 3KB
webview_en-gb.js 3KB
webview_ROOT.js 3KB
webview_da.js 3KB
webview_nb.js 3KB
main-embedded-webview.js 2KB
common.js 631B
loading.js 618B
config.js 550B
common.js 191B
main.js 186B
common.js 177B
common.js 172B
loading.js 170B
loading.js 170B
loading.js 167B
common.js 166B
loading.js 164B
common.js 163B
loading.js 163B
common.js 160B
loading.js 158B
common.js 156B
common.js 152B
common.js 148B
loading.js 148B
共 578 条
- 1
- 2
- 3
- 4
- 5
- 6
资源评论
好家伙VCC
- 粉丝: 2305
- 资源: 9142
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 盐城市2005-2024年近20年历史气象数据下载
- 泰州市2005-2024年近20年历史气象数据下载
- 深度强化学习电气工程复现文章,适合小白学习 关键词:能量管理 深度学习 强化学习 深度强化学习 能源系统 优化调度 编程语言:python平台 主题:用于能源系统优化调度的深度强化学习算法的性能比较
- 开源基于51单片机的多功能智能闹钟设计
- C#连接sap NCO组件 X64版
- 1.电力系统短路故障引起电压暂降 2.不对称短路故障分析 包括:共两份自编word+相应matlab模型 1.短路故障的发生频次以及不同类型短路故障严重程度,本文选取三类典型的不对称短路展开研究
- python基础知识源码,涵盖全面,有源码有教程,200多个源文件,规范工整,打牢基础,Python入门基础课必备
- 医护人员检测23-YOLOv8数据集合集.rar
- 面向能源系统深度强化学习算法的性能比较 最优调度(代码)
- 2025元旦和新年春节倒计时
- 线控转向系统路感模拟及路感力矩控制 通过参数拟合设计线控转向路感模拟算法,在simulink中建立仿真模型 模型建立后,验证双纽线工况和中心区工况的路感力矩 通过PID,模
- ks滑块加密算法与源代码
- shap分析代码案例,多个机器学习模型+shap解释性分析的案例,做好的多个模型和完整的shap分析拿去直接运行,含模型之间的比较评估 类别预测和数值预测的案例代码都有,类别预测用到的6个模型是(
- 医疗骨折摄像检测29-YOLO(v5至v9)、COCO、CreateML、Darknet、Paligemma数据集合集.rar
- 基于FPGA的CAN通信,FPGA驱动SJA1000T芯片代码,实现标准帧与扩展帧的通信驱动,已上板调通 品牌型号 CAN SJA1000T 与世面上的不同,代码不是SJA1000T芯片代码,而是驱
- 捕鱼达人1.exe捕鱼达人2.exe捕鱼达人3.exe
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功