首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

SimpleFOC之ESP32(四)—— 电流闭环控制Inline

  • 23-09-28 03:42
  • 4801
  • 6775
blog.csdn.net

目录

  • 说明
  • 一、原理说明
    • 1.1、为什么要采样电流
    • 1.2、电流检测方式 InlineCurrent
  • 二、硬件介绍
    • 2.1、原理图
    • 2.2、ESP32drive-D方案
      • 2.2.1、准备清单
      • 2.2.2、硬件连接
    • 2.3、SimpleFOCShield方案
      • 2.3.1、SimpleFOCShield原理图及跳线
      • 2.3.2、硬件清单
      • 2.3.3、硬件连接
  • 三、程序演示
    • 3.1、打开示例
    • 3.2、修改代码
    • 3.3、验证上传
    • 3.4、串口发送指令
    • 3.5、观察电机运行
  • 写后感

 
SimpleFOC教程目录:请点击
 

说明

SimpleFOCShield和ESP32drive-D的板载电流采样为Inline模式,ESP32drive为Lowside模式,稍后另起一章讲解。

一、原理说明

1.1、为什么要采样电流

  FOC(Field-Oriented Control),即磁场定向控制,磁场大小与绕组中的电流成正比,所以对磁场的控制在程序上就是对电流的控制。前几节的程序并没有使用电流环,而是直接使用电压值,确实可以达到还行的效果。但是这样做有两个问题:

  • 1、不能保证i_d为零,i_q等于目标值,因此电机并不能工作在效率最高的状态,力矩控制也是不准确的。
  • 2、相电压施加在电感上产生相电流,电压和电流有相位差且并不恒定,低速运行时相位差对电机的影响不明显,但是当速度快了或者速度变化率高了以后,相位差的影响就会非常明显。
     

1.2、电流检测方式 InlineCurrent

在这里插入图片描述
内置电流检测(InlineCurrentSense)是使用起来最简单但是最精准的技术。 采样电阻串联在电机相线上,检测的电流始终都是电机相电流,因为电感中的电流不会突变,所以无论PWM占空比的状态如何,采样到的电流都是连续稳定的。
 

二、硬件介绍

2.1、原理图

在这里插入图片描述
 

2.2、ESP32drive-D方案

2.2.1、准备清单

序号名称数量
1USB转串口1
2ESP32drive-D1
3带编码器电机1
412V电源1
5杜邦线若干

在这里插入图片描述
电机 购买链接:某宝购买
ESP32drive 购买链接:某宝购买
 

2.2.2、硬件连接

在这里插入图片描述
 

2.3、SimpleFOCShield方案

2.3.1、SimpleFOCShield原理图及跳线

电流采样需要PWM输出与采样输入引脚对应,所以必须了解SimpleFOCShield的原理图,
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
 

2.3.2、硬件清单

序号名称数量
1ESP32-DevKitC1
2simpleFOCShield V2.0.31
3云台电机1
4USB线1
512V电源1
6杜邦线若干

在这里插入图片描述
SimpleFOCShield 购买链接:某宝购买
电机 购买链接:某宝购买
 

2.3.3、硬件连接

ESP32-DevKitCSimpleFOCShield
165
179
56
48
36 / VPA2
39 / VNA0
3V33V3
GNDGND

如果是AS5600编码器,如下

ESP32-DevKitCAS5600电机
22SCL
21SDA
3V3VCC
GNDGND

在这里插入图片描述
如果是AS5047P编码器,如下

ESP32-DevKitCAS5047P电机
23MOSI
19MISO
18SCLK
13SS
GNDGND
3V3VCC

 

三、程序演示

  • 力矩模式、速度模式、角度模式,三种控制模式都在这一个代码上实现,修改控制模式可实现切换。
  • 修改这些需要对电机控制有一定的了解,本人假定你在看到这篇文章之前已经看过我之前的系列教程,如果你是第一次对着教程修改这些代码,很有可能会出错,请先熟悉SimpleFOC的基本操作后再进阶本篇。
  • 代码修改容易,但是明白每一个参数对电机的影响需要反复对比操作。
  • 先调试力矩模式,调整电流PI参数(voltage模式不需要),电机稳定后,
  • 再调试速度模式,调整速度PI参数,电机稳定后,
  • 再调试角度模式,调整P参数,保证电机稳定。

本节代码在SimpleFOCShield上验证,

3.1、打开示例

在这里插入图片描述
 

3.2、修改代码

simpleFOC库不断更新,曾经写好的代码在库升级后可能会出错,所以不要相信任何现成代码。请以官方示例为准,按照下图修改的地方修改。20220520
在这里插入图片描述
 
在这里插入图片描述
 

3.3、验证上传

在这里插入图片描述
 

3.4、串口发送指令

力矩模式,发送T1,表示设置目标电压为1V,
速度模式,发送T20,表示设置目标速度为20rad/s,
角度模式,发送T6.28,表示设置目标角度为6.28rad。

3.5、观察电机运行

 
 

写后感

  本节修改后的代码实际是综合了几个代码后拼接而成的,电流闭环控制是电机控制中最有难度最具挑战性的部分,之前的代码可以根据教程或示例稍微修改即可,而电流闭环的加入需要充分了解电机才能很好的控制。
 
(完)
 
 
欢迎加入simpleFOC技术交流群:923734429 群已满根据提示添加新群 (入群申请写:CSDN)
 
 
请继续阅读相关文章:
SimpleFOC之ESP32(一)—— 搭建开发环境
SimpleFOC之ESP32(二)—— 开环控制
SimpleFOC之ESP32(三)—— 闭环控制
SimpleFOC之ESP32(四)—— 电流闭环控制Inline
SimpleFOC之ESP32(五)—— 电流闭环控制Lowside
SimpleFOC之ESP32(六)—— 双电机控制
SimpleFOC之ESP32(七)—— 霍尔电机
SimpleFOC之ESP32(八)—— ABZ编码器电机
SimpleFOC之ESP32(九)—— WIFI、UDP和TCP
SimpleFOC之ESP32(十)—— ESP-NOW和力矩反馈

注:本文转载自blog.csdn.net的loop222的文章"https://blog.csdn.net/loop222/article/details/121400399"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top