Makerbase SimpleFOC ESP32 例程6 双电机闭环位置力矩互控

news2024/11/16 21:27:53

Makerbase SimpleFOC ESP32 例程6 双电机闭环位置力矩互控

第一部分 硬件介绍

1.1 硬件清单

序号品名数量
1ESP32 FOC V1.0 主板1
2YT2804电机2
312V电源适配器1
4USB 线1
56pin杜邦线2

注意:YT2804是改装的云台无刷电机,带有AS5600编码器,可实现360°连续运转。
主要参数如下:

序号品名数量
1输入电压12V
2极对数7
3工作电流180mA
4最大转速3840RPM
5编码器分辨率(I2C)接口12bit
6编码器分辨率(Analog)接口1024

硬件清单如下图所示:
在这里插入图片描述

ESP32 FOC V1.0主板说明书等更多资料请加入QQ群(732557609)下载
在这里插入图片描述

1.2 硬件连接

1.电机的三根相线连接至ESP32 FOC主板
2.连接电机的AS5600编码器至ESP32 FOC主板,端口对应关系如下表
(编码器端口对应关系如下方实物图所示,注意不要接反)
在这里插入图片描述

3.用USB线连接ESP32 FOC主板与PC
4.12V电源适配器连接主板
注意:请不要在上电的情况下进行硬件连接!
在这里插入图片描述

上电后绿色指示灯亮

第二部分 软件配置

2.1 PC系统

Windows 10家庭中文版

2.2软件准备

Arduino 1.8.13
可从官方网站下载
也可从QQ群(732557609)下载
在这里插入图片描述

2.3 安装Arduino

2.4 安装SimpleFOC library

详情请查看《Makerbase SimpleFOC 第一课 入门配置》
文章链接:https://blog.csdn.net/gjy_skyblue/article/details/115353908
注意:本例程使用的库版本为2.1.1,如果已经下载过其他版本,则需要更换版本。
更换版本的方法请参照往期示例。
文章链接:https://blog.csdn.net/gjy_skyblue/article/details/131019261?spm=1001.2014.3001.5502

第三部分 双电机闭环速度测试

3.1 修改代码

1.检查硬件连接,之后给主板上电。
2.用Arduino打开测试例程代码 6_two_motors_control_each_other。
(例程代码请加入QQ群下载)
在这里插入图片描述

3.点击工具=>开发板=>ESP32 Arduino=>ESP32 Dev Module。
在这里插入图片描述

4.点击工具=>端口=>COM▢,选择对应的USB端口号。
在这里插入图片描述

5.18行和21行,根据选用电机的极对数修改BLDCMotor()中的值。
在这里插入图片描述

6.36行和39行,根据供电电压修改voltage_power_supply的值。
在这里插入图片描述

7.50行和51行,根据供电电压修改voltage_limit的值。
在这里插入图片描述

3.2 编译上传与测试

1.点击左上角的的上传按钮
在这里插入图片描述

等待编译上传
在这里插入图片描述

等待显示上传成功
在这里插入图片描述

代码上传成功后电机会进行自动校准,之后会进入闭环位置力矩互控模式。
2.此时手动转动其中一个电机,另一个电机也会跟随转动,两个电机时刻保持位置力矩互控。如果用手固定住其中一个电机,尝试转动另一个电机时,能感受到阻力的存在。

Makerbase SimpleFOC ESP32 例程6 双电机闭环位置力矩互控 到此结束。
请继续关注后续课程。


欢迎加入 创客基地 电机控制Q群 讨论电机控制相关问题:732557609
欢迎光临 创客基地 B站 了解技术资料:
https://space.bilibili.com/393688975
欢迎光临 创客基地 淘宝店 采购产品:
https://makerbase.taobao.com/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/605099.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Go 字节跳动—从需求到上线全流程

走进后端开发流程 整个课程会带大家先从理论出发,思考为什么有流程 大家以后工作的团队可能不一样,那么不同的团队也会有不同的流程,这背后的逻辑是什么 然后会带大家按照走一遍从需求到上线的全流程,告诉大家在流程的每个阶段&am…

angular环境安装 (含nodejs详细安装步骤)

在安装本次环境之前,需要先把本机上的nodejs环境卸载,环境变量手动删除!安装过程种环境才不会产生副作用!实际项目安装的一次记录,踩了太多坑,记录一下,旨在记录!项目需要两个不用版…

常用设计模式介绍~~~ Java实现 【概念+案例+代码】

前言 想要读懂源码、让自己的代码写的更加优雅,重构系统等。理解设计模式的思想,可以让我们事半功倍。以下稍微整理了常用的设计模式、每一种设计模式都有详细的概念介绍、案例说明、代码实例、运行截图等。这里给出目录导航。 目录 一、创建型模式 【一…

现在的面试把我卷崩溃了....

现在的面试也太卷了,前几天组了一个软件测试面试的群,没想到效果直接拉满,看来大家对面试这块的需求还是挺迫切的。昨天我就看到群友们发的一些面经,感觉非常有参考价值,于是我就问他还有没有。 结果他给我整理了一份…

Linux命令学习之cd

cd是进入某个目录的命令。man 1 cd看一下cd的使用说明。 发现cd是一个Shell内置命令。内置命令可以使用help 命令行来看一下帮助,比如help cd就可以看一下cd的帮助。 图中的[dir]就是参数,这个参数是目录名,比如可以使用cd /可以进入根目录…

外包派遣3年华为,合同结束转正,转正后工资12k-15k,13薪,包三餐,值得去吗?

“但凡有点机会,千万别去外包! ” 在程序员圈子里面,外包程序员似乎永远处于一个尴尬的角色,如果你说他们不是程序员吧,他们也是程序员。应该说是外包这个词比较尴尬吧。赶着和正式工一样的伙,待遇缺天差地别&#xf…

使用VS2019如何创建Win32的项目?

闲来无事,想学习一下Win32的开发,使用VS2019如何创建Win32的项目?费了老大的劲儿,终于捣鼓出来,现在记录一下。 1 创建新项目,在筛选栏选择C Windows 桌面,如下图,选择第一个“Windo…

由于找不到msvcr90.dll无法继续执行代码的5个修复方法

msvcr90.dll是Microsoft Visual C 2008 Redistributable软件包中的一个库文件,它是用于在Windows操作系统上运行C应用程序的重要文件之一。当我们电脑系统中的msvcr90.dll丢失或者损坏了,就会导致很多软件跟游戏无法打开运行,会提示“由于找不…

Linux文件权限及用户管理

文件权限 在Linux中,每个文件和目录都有一组权限,这些权限决定了哪些用户可以访问文件或目录,以及他们可以进行什么样的操作。权限分为三类: 所有者权限:这些权限适用于文件或目录的所有者。 组权限:这些…

vue+elementui+nodejs毕业设计选题管理系统x7xs6

为了实现对不同角色的分权限管理,从而让各个用户各司其职。学生用户需要登录系统后才能够进行毕设相关文件上传与查看,教师用户需要登录后才能够在线查看毕设相关文件并审核留言等。管理人员需要登录才能够管理各种功能,这三种用户的权限如下…

初阶二叉树的相关性质定理及题目练习

前言: 前面我们介绍了初阶二叉树的相关知识,二叉树常考的还是链式二叉树,而且二叉树也会考很多选择题,本文重点是在给出一些常考的二叉树的性质定理推导和经典练习题目配合强化巩固知识。 目录 一、二叉树的常见性质定理 二、常…

力扣高频SQL50题(基础版)——第四天

力扣高频SQL50题(基础版)——第四天 1 每台机器的进程平均运行时间 1.1 题目内容 1.1.1 基本题目信息1 1.1.2 基本题目信息2 1.1.3 示例输入输出 1.2 示例sql语句 SELECT machine_id,ROUND(SUM(IF(activity_typeend,timestamp,timestamp*-1))/count(distinct process_id),3…

English Learning - L3 作业打卡 Lesson4 Day26 2023.5.30 周二

English Learning - L3 作业打卡 Lesson4 Day26 2023.5.30 周二 引言🍉句1: It is easy to find my husband in a crowd.成分划分弱读连读语调 🍉句2: He stands almost two meters tall.成分划分爆破语调 🍉句3: He is a tall drink of wate…

嵌入式系统中u-boot和bootloader到底有什么区别

嵌入式软件工程师都听说过 u-boot 和 bootloader,但很多工程师依然不知道他们到底是啥。 今天就来简单讲讲 u-boot 和 bootloader 的内容以及区别。 Bootloader Bootloader从字面上来看就是启动加载的意思。用过电脑的都知道,windows开机时会首先加载…

【Nginx性能优化系列】Nginx绑定特定的CPU性能测评

【Nginx性能优化系列】Nginx绑定特定的CPU性能测评 前导知识说明:   CPU内部的缓存叫Cache   比如一颗CPU有4核,每个核心都有自己的独立缓存,以及所有核心的共享缓存。缓存分为一级缓存、二级缓存、三级缓存,一级缓存的速率基本上CPU相当,当然一级缓存的存储空间也较小…

【抽象类和接口】

目录 1.抽象类1.1什么是抽象类1.2抽象类语法1.3抽象类与普通类的区别 2.抽象类的特性2.1 特性2.2抽象类的作用 3.接口3.1什么是接口3.2语法规范3.3接口的使用3.4接口的特性3.5 实现多个接口3.6 接口的继承 4.接口的实例5.Clonable 接口和深拷贝5.1 浅拷贝5.2深拷贝 6. 抽象类和…

English Learning - L3 作业打卡 Lesson4 Day27 2023.5.31 周三

English Learning - L3 作业打卡 Lesson4 Day27 2023.5.31 周三 引言🍉句1: It is so crowded that we are packed like sardines – just like small fish in a can.成分划分弱读连读爆破语调 🍉句2: My supervisor at work is sometimes out to lunch.…

设计模式之database/sql 与Gorm设计原理

1.0 理解 database/sql 1.1 基本用法 - Quick Start 上面有几行错误 DSN相关知识: https://github.com/go-sql-driver/mysql#dsn-data-source-name https://en.wikipedia.org/wiki/Data_source_name 完整: 1.2 设计原理 极简接口设计原则: 对…

UNIX环境高级编程——高级I/O

14.1 引言 本章讨论高级I/O相关主题,包括: 非阻塞I/O;记录锁;I/O多路转接(select、poll);异步I/O;readv和writev函数;存储映射I/O(mmap)。 14.…

Hesai激光雷达使用PTP时间同步

PTP是一个网络同步时钟的协议,全称是Precise Time Protocol,也称为IEEE 1588,其有IEEE1588v1和IEEE1588v2两个版本(其中v1版本是为工业自动化测量和控制系统开发的,适用于工业局域网应用。v2版本是在v1版本的基础上&am…