自制无感无刷电机驱动板

自制无感无刷电机驱动板


分别测试了基于C251的STC32G单片机、Arduino AVR的ATmega328PB、以及ARM的ST32F103单片机。

  • 🧲测试转动效果

在这里插入图片描述

  • ✒目前市面上开源的有关无刷电机的项目数不胜数,其控制原理都大同小异,在没有领透其技术要领情况下,关键是找到一个合适自己的,资料齐全的,有针对性的学习。
  • ✨学习资料阅读推荐《无感无刷直流电机之电调设计全攻略》

  • 🎉现成的无感无刷驱动测试资料来源:

  • 📓STC三相无刷电机驱动-STC32G-无HALL资料地址 : https://www.stcaimcu.com/forum.php?mod=viewthread&tid=7472&extra=page%3D1

  • 📍ATmega328PB移植可以参考 ATmega8 MK 电调开源程序 V0.42 版:https://svn.mikrokopter.de/websvn/listing.php?repname=BL-Ctrl&path=%2Ftags%2FV0.42%2F&#a4bfcc0886576e3118d94460220fa558a

  • ATmega328PB相关移植参考文章:https://www.amobbs.com/thread-4652868-1-1.html
  • 👉 如果自制驱动板,推荐还是和控制芯片集成到一起,因为需要连接的线比较多,连接不稳定容易出问题。
  • 📍ST32F103无感无刷驱动资料来源参考
  • 🔖匠心科技BLDC开发板资料
链接:https://pan.baidu.com/s/1s5YjzRSDLKQvl86lBVAqKA?pwd=a6cx
提取码:a6cx***** 解压密码:JXKJ_RALDNW
  • 🔖本论坛的BLDC驱动程序资料:https://blog.csdn.net/snail_dongbin/article/details/82803076
链接:https://pan.baidu.com/s/1uXD7UBV3R_NEV85zf-jmZg?pwd=7esq 
提取码:7esq
  • 🔬使用无感驱动程序,配合自制电机驱动板,在开环测试下没有问题。
  • 📑个人自制无刷电机驱动板原理图
  • PCB其它相关功能还未测试,最终PCB电路还未正式确认,暂时没有开源发布出来。
链接:https://pan.baidu.com/s/1jxZzWpBFSaQAJqjUw6hTgQ?pwd=o5q7 
提取码:o5q7
  • 🍁初稿原理图
    在这里插入图片描述
  • 🌿由于驱动板没有集成MCU,在使用时,需要根据个人使用的单片机,进行相关代码的移植。
🌼驱动程序说明
  • 📍基于STC32G单片机的驱动程序:https://www.stcaimcu.com/forum.php?mod=viewthread&tid=1822&highlight=bldc&page=1&extra=#pid11784
  • 使用STC32G驱动程序,在开环低速测试没有问题,在开启PID功能调试模式不行,PID参数没有调整好。
  • 🌿Arduino 328PB开环测试程序

🥕仅供测试使用,这是让无感无刷电机强制转起来。主要用于验证基本驱动电路是否正常。如果需要使用328P驱动可以参考:德国MK项目BLDC电调项目,详见上面的相关链接。

#include "Arduino.h"int AA1=3;
int AA2=5;
int BB1=11;
int BB2=10;
int CC1=9;
int CC2=6;int enable=2; //This is not used for now, The ESC is always enabled
int emfA=A0;
int emfB=A1;
int emfC=A2;int fase=1;
int deltaA=0;
int emA=0;
int sum=0;int IN=A3;
unsigned int Delay=3600;int it=0;
int it2=1;static int delta= 0;
static int Lastdelta= -1;unsigned long previousMicros = 0;void setup() {Serial.begin(9600);pinMode(AA1,OUTPUT);pinMode(AA2,OUTPUT);pinMode(BB1,OUTPUT);pinMode(BB2,OUTPUT);pinMode(CC1,OUTPUT);pinMode(CC2,OUTPUT);pinMode(enable,OUTPUT);pinMode(IN,INPUT);pinMode(emfA,INPUT);pinMode(emfB,INPUT);pinMode(emfC,INPUT);//digitalWrite(enable,HIGH);//previousMillis = micros();}void loop() {int emA = analogRead(emfA);int emB = analogRead(emfB);int emC = analogRead(emfC);int sum = (emA+emB+emC)/3;unsigned long currentMicros = micros();if(currentMicros - previousMicros >= Delay){previousMicros += Delay;//Phase1 C-Bswitch(fase){case 1:digitalWrite(AA1,LOW);digitalWrite(AA2,LOW);digitalWrite(BB1,LOW);digitalWrite(CC2,LOW);digitalWrite(BB2,HIGH);digitalWrite(CC1,HIGH);delta = emA-sum;break;//Phase2 A-Bcase 2:digitalWrite(AA2,LOW);digitalWrite(BB1,LOW);digitalWrite(CC1,LOW);digitalWrite(CC2,LOW);digitalWrite(AA1,HIGH);digitalWrite(BB2,HIGH);delta = emC-sum;break;//Phase3 A-Ccase 3:digitalWrite(AA2,LOW);digitalWrite(BB1,LOW);digitalWrite(BB2,LOW);digitalWrite(CC1,LOW);digitalWrite(CC2,HIGH);digitalWrite(AA1,HIGH);delta = emB-sum;break;//Phase4 B-Ccase 4:digitalWrite(AA1,LOW);digitalWrite(AA2,LOW);digitalWrite(BB2,LOW);digitalWrite(CC1,LOW);digitalWrite(BB1,HIGH);digitalWrite(CC2,HIGH);delta = emA-sum;break;//Phase5 B-Acase 5:digitalWrite(AA1,LOW);digitalWrite(BB2,LOW);digitalWrite(CC1,LOW);digitalWrite(CC2,LOW);digitalWrite(AA2,HIGH);digitalWrite(BB1,HIGH);delta = emC-sum;break;//Phase6 C-Acase 6:digitalWrite(AA1,LOW);digitalWrite(BB1,LOW);digitalWrite(BB2,LOW);digitalWrite(CC2,LOW);digitalWrite(CC1,HIGH);digitalWrite(AA2,HIGH);delta = emB-sum;break;}if (Lastdelta < 0){if (delta > 0){Lastdelta=delta; //save the last deltafase= fase + 1;if (fase > 6) {fase = 1;}}}//Zero cross from - to +if (Lastdelta > 0){if (delta < 0){Lastdelta=delta;fase= fase + 1;if (fase > 6) {fase = 1;}}}//Zero cross from + to -}//Case endsint t =analogRead(IN); //From the potentiometer
//  Delay=map(t,0,1024,1,1000); //we obtain the delay speed using the potentiometer//we map the values from 1 to 1000 microsecondsSerial.println(t);} //loop ends
  • 🌿使用匠心科技BLDC相关资料中的stm32f103,无感无刷驱动程序,完全适配的上个人自制的驱动板,并且可以很平稳的驱动转起.来。具体资料详见上面链接。里面的驱动部分关键实现也是参考了德国MK电调项目相关内容。

🔰其他相关内容学习参考

  • 🌿对应无感无刷电机驱动,换相检测电路检测部分计算,可以进一步阅读:https://blog.csdn.net/qq_41100189/article/details/119832506

  • 🔖后续有新内容在补充更新。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

缩短项目周期:SOLIDWORKS Electrical简化了电气设计过程

在现代工业设计领域&#xff0c;电气系统设计的复杂性日益增加&#xff0c;然而&#xff0c;达索系统SOLIDWORKS Electrical软件的出现为这一挑战提供了高效的解决方案。该软件支持工程师通过选配的方式快速设计原理图&#xff0c;这极大地简化了电气设计过程&#xff0c;并有效…

SpringAMQP-消息转换器

这边发送消息接收消息默认是jdk的序列化方式&#xff0c;发送到服务器是以字节码的形式&#xff0c;我们看不懂也很占内存&#xff0c;所以我们要手动设置一下 我这边设置成json的序列化方式&#xff0c;注意发送方和接收方的序列化方式要保持一致 不然回报错。 引入依赖&#…

html5的一些新特性

最近总是碰到html5特性这种问题,虽然简单,但是也是自己平时不关注的东西,趁今天时间充裕,那就来总结一下吧 HTML5新特性包括新增了部分标签、表单元素增强、支持视频和音频、支持canvas绘图、提供web存储、提供地理定位功能、提供web workers机制、提供web socket协议、提供CS…

python-Centos上安装Jupyter Notebook

文章目录 安装 Miniconda安装 Jupyter Notebook配置远程访问打开lab 安装 Miniconda Miniconda 是一个小型的版本&#xff0c;包含 conda 包管理器和 Python&#xff0c;非常适合管理和隔离 Python 环境。你可以从 Miniconda 官网下载适合 CentOS 7 的安装脚本&#xff0c;然后…

企业网站慎用免费SSL证书!OV证书才是首选

市面上有很多免费证书提供&#xff0c;免费的SSL证书更适用于个人博客、学生学习、测试等应用场景。如果您的网站是企业网站一定慎用免费的SSL证书&#xff0c;而是选择企业级的OV证书。 一&#xff0e;免费SSL证书的风险 1安全性&#xff1a;免费SSL证书通常只提供基本的加密…

SpringBoot对接微信公众平台(1)--- 配置微信公众平台测试号URL并校检

SpringBoot对接微信公众平台&#xff08;1&#xff09;--- 配置微信公众平台测试号URL并校检 说明微信公众号接口测试号申请后端代码实现内网穿透接口测试 说明 这里记录下自己学习SpringBoot对接微信公众平台的成长过程&#xff0c;以防止后面继续踩坑且方便以后直接使用。这…

突破传统:精酿啤酒的创新与变革

在啤酒的世界中&#xff0c;传统与创新始终是并存的。Fendi club啤酒作为精酿啤酒的代表&#xff0c;不仅继承了传统的酿造工艺&#xff0c;更在创新与变革方面做出了突破。 Fendi club啤酒在原料选择上进行了创新。除了使用大麦、酵母和啤酒花等传统原料外&#xff0c;Fendi c…

适用于无线通信设备的小尺寸温补晶振TG2016SLN

爱普生新推出一款2016小尺寸温补晶振TG2016SLN&#xff0c;TG2016SLN是EPSON推出的频率范围为10MHz~55.2MHz的温度补偿型晶体振荡器TCXO&#xff0c;工作温度可达105℃。产品采用无铅材料&#xff0c;符合ROHS标准&#xff0c;对环境友好&#xff0c;具有待机功能&#xff0c;待…

sCrypt受邀在中国人民大学举办《区块链与数字经济》课程讲座

4月17日&#xff0c;可一科技特邀美国sCrypt公司的开发工程师周全&#xff0c;在中国人民大学的《区块链与数字经济》课程上进行了讲座。周全讲解了区块链的分布式设计、不可篡改特性&#xff0c;以及智能合约的基本原理&#xff0c;利用“智能家居触发机制”等生动比喻&#x…

如何3分钟快速训练一个属于自己的(暴躁老哥、猫娘)AI大模型?(弱智吧经典问题为例)

首先我们进入谷歌Gemini&#xff1a;Gemini - Google DeepMind 然后我们进入官网看见左边的几个选项 选择Create new prompt创建新的提示 选择结构化提示 点击action可以增加列&#xff0c;也就是设置更多回答或者选项 那么那个温度&#xff08;Temperature&#xff09;是什么…

记一次特别的未授权访问

某个夜里&#xff0c;随手点进去的一个小程序&#xff0c;引发的连锁反应。 开局一个小程序&#xff1a; 登录方式令人发愁&#xff0c;尝试收集&#xff0c;无果。 数据交互的地方说不定有sql&#xff0c;再次尝试&#xff0c;还是无果。 复制连接去web端&#xff0c;看看…

宝塔环境安装+安装软件教程

游戏&#xff0c;大型网站程序等都安装在服务器上&#xff0c;服务器用的是Linux系统&#xff0c;进行服务器维护需要记住很多linux的命令&#xff0c;这就很麻烦。 宝塔的好处&#xff0c;就是通过一个交互界面就能完成服务器的维护工作&#xff0c;比如更新系统&#xff0c;添…