0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

磁悬浮的基本原理

硬件攻城狮 ? 来源:小白白学电子 ? 作者:小白白学电子 ? 2022-09-22 14:28 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

今天教大家来做一个磁悬浮玩具:

1)磁悬浮的基本原理

磁悬浮有下推式和上拉式两种基本形式。 所谓下推式,就是控制部分在底座上,悬浮的磁铁在上面,依靠底座从下往上的排斥磁力推动磁铁悬浮;而上拉式,是控制部分在上面,悬浮的磁铁在下面,依靠控制部分从上方的吸引力吸住磁铁不会落下去。 本文实现的是下推式,仅讲解下推式磁悬浮的原理和实现方法。 如下图,是一个环形磁铁的磁力线:

f68c6ade-3a3c-11ed-9e49-dac502259ad0.png

如果在它上方放置另一个小磁铁,N极向下S极向上,那么它会受到下面的环形磁铁的斥力。越靠近下方的环形磁铁,斥力就越大。当距离合适时,斥力与上方磁铁的重力相等时,就能实现悬浮:

f6df66ee-3a3c-11ed-9e49-dac502259ad0.png

但是,仅仅依靠两个磁铁的相互作用是不能保持稳定的,因为两个磁铁的斥力只要与重力的方向不在同一直线上,就不能保持平衡,上方的小磁铁就会向旁边飞出去。 而下推式磁悬浮的实现方法,就是在上述的系统里,再增加一个控制上方小磁铁保持在中轴线位置的装置。这样,小磁铁即不能往旁边移动,垂直方向的重力又和磁铁斥力相抵消,就 能实现稳定的悬浮了。 具体实现时,如果没有大环形磁铁,可以使用一圈小磁铁代替,效果是一样,如本文效果图里用的4个、8个都行,但是一定要排布在对称位置。 控制小磁铁位置的装置,一般由霍尔元件和电磁铁组成。用两个霍尔元器件来检测磁场,两个霍尔元件安装在环形磁铁的中心处,且互相垂直,检测面都与铅垂线平行。如果上方的小磁铁在中轴线上,那么系统的磁力线也是铅垂线方向的,两个霍尔元件都无输出;如果小磁铁偏离了中轴线,那么系统的磁力线方向会偏离铅垂线方向,霍尔元件就能检测出往某个方向偏移了。此时,由MCU采集霍尔元件的输出,控制电磁铁,产生一个水平方向相反的磁力,将小磁铁拉回中轴线上就行了。 由于该系统是一个动态平衡的系统,需要不断地采集、判断、调整,最好使用PID控制。 了解了原理,下面就一起实现吧。

2)硬件电路图及调试

由上述的原理讲解,我们的硬件只需要处理好两件事情就行了:一是采集两个相互垂直安装的霍尔元件的输出,以获取小磁铁的偏移位置;二是控制两组相互垂直的电磁铁,产生水平的磁力。 主要的原理图附在下面,完整的图纸可以关注文末的公众.号,找到下载地址。 霍尔元件及其信号放大部分,UGN3503是霍尔元器件,电位器提供一个初始的零位电压,霍尔的输出信号通过反向放大后,输出到STM32AD口采集:

f706a15a-3a3c-11ed-9e49-dac502259ad0.png

电磁铁驱动部分,使用L293D电机驱动芯片来驱动电磁铁,L293D由STM32输出的PWM波来驱动:

f753374a-3a3c-11ed-9e49-dac502259ad0.png

电源部分,驱动电磁铁用9~12V的电压比较合适,霍尔供电用5V:

f76f63d4-3a3c-11ed-9e49-dac502259ad0.png

因为小白白在DIY的时候STM32是外接的最小系统,所以原理图里没画STM32,只留了几个接点。 注意布局时,霍尔元件和电磁铁的放置位置,有特殊要求。最终的PCB图如下:

f7946580-3a3c-11ed-9e49-dac502259ad0.png

U3和U4是两个检测磁铁位置的霍尔元件,需要安装在环形磁铁中心附近,并且互相垂直;而且霍尔的平面要在相对角电磁铁的连线上。 如下图所示,注意两个霍尔U3和U4的位置:(U5也是个霍尔,本来是预留来检测是否有磁铁放在上面的,暂时没有用上)

f7cb280e-3a3c-11ed-9e49-dac502259ad0.png

LL1~LL4是四个电磁铁,LL1和LL2一组,LL3和LL4一组,安装时,同组的需要对角放置;而且要注意安装时同名端相连,通电后,同组的两个电磁铁磁力线能相互连接产生闭合磁力线(也就是一个上方为N极时同组另一个上方为S极)。这样才能保证同组的电磁铁产生的磁力在水平方向是相同的。 在电路图焊接完成后,与STM32F103C8T6最小系统相连,霍尔的输出AD1、AD2连接到STM32的PA0和PA1;PWM1~4依次连接到STM32的PA15、PB4、PB3、PB5。其他供电部分的连接就不说了。 安装好环形磁铁,上电后,在空载状态下调整U3、U4连接的电位器,使得AD1和AD2都在1.65V左右(也即AD采集时3.3V的中间值)。 到这里,硬件的设计工作就基本完成了。

3)软件编程实现

软件的实现也是大致分为两大功能:一是通过AD采集,获取磁铁再水平方向X、Y轴的位置;二是通过两个方向位置偏移的大小来计算驱动两个方向电磁铁的PWM输出值,这个计算过程使用了PID算法。 程序架构是:在主循环里不断地采集霍尔元件的电压,也就是AD1、AD2的值;在中断里计算PID控制算法,设置PWM的输出。 首先在cubemx里配置ADC,打开AD0、AD1和AD4(实际只用了AD0和AD1,AD4是预留的,采集了但是没有用于计算),分别配置到图中的rank1、rank2、rank3下:

f8161698-3a3c-11ed-9e49-dac502259ad0.png

定时器和PWM设置: 定时器分频设置为36,计数到1000时溢出;主频是72M,所以定时器中断是2KHz。 设置CH1和CH2两个通道PWM输出,模式1(先高电平,匹配后拉低,初始值可以设置为任意值,图中的初始值100和300对系统无影响):

f84af796-3a3c-11ed-9e49-dac502259ad0.png

设置完成后,PA15和PB3自动被占用为PWM输出引脚。 再手动设置PB4和PB5为输出引脚,这里设置PB4和PB5是为了配合PWM引脚来控制电机驱动芯片来使电磁铁改变正、反向。

f8a55060-3a3c-11ed-9e49-dac502259ad0.png

使能定时器TIM2中断:

f8de703e-3a3c-11ed-9e49-dac502259ad0.png

到这里,cubemx里的硬件主要配置就完成了。接下来可以生成keil工程,编写软件代码。 由于整个工程源代码比较长,这里只讲解最核心的部分。完整的代码可以关注文末的公 众号后,找到下载地址。 在keil工程里,adc部分,使用如下函数进行AD采集,采集了三个通道,即AD0、AD1、AD4:

f93a51ec-3a3c-11ed-9e49-dac502259ad0.png

然后进行滑动平均滤波,这里最终只保留了AD0和AD1两路,10bit的精度,存放到了xPos和yPos中,作为两个方向的位置值。

f98db9cc-3a3c-11ed-9e49-dac502259ad0.png

filter_adc()函数需要放在主循环中循环调用,不断更新位置值:

f9bd5ac4-3a3c-11ed-9e49-dac502259ad0.png

PID部分主要的实现代码如下:

f9d7b266-3a3c-11ed-9e49-dac502259ad0.png

f9f67f34-3a3c-11ed-9e49-dac502259ad0.png

注意这里PID实现时对积分项的处理,当误差的累加值非常大时(也即积分项很大时)不会再累加误差项,而是限制到一个最大值MAX_INTEGRATION_ERROR,这是一种避免积分饱和的方法。(关于PID的积分饱和,可以参见小白白以前发的文章《PID控制的深入探讨(位置式PID、增量式PID、PID的积分饱和)》) 接下来,讲一下如何设置PWM输出值,以及怎么控制电磁铁磁场的正负向。 由于我们使用了L293D芯片来驱动电磁铁,以LL1和LL2这一路为例,当PWM2设置为低电平,则PWM1输出为高时就能驱动电磁铁;当PWM2设置为高电平,则PWM1输出为低时,电流与前述状态相反,就能反向驱动电磁铁。如下图所示:

fa3fbabe-3a3c-11ed-9e49-dac502259ad0.png

同时,我们只需要改变PWM1的脉宽,就能实现电磁铁的磁场强度控制。 另一路LL3和LL4电磁铁也是一样的原理,可以通过PWM3控制磁场强度,通过PWM4来控制磁场方向。 这部分的实现代码如下,其中PWM1和PWM3的输出值(也就是代码中的xPWM和yPWM),是先通过调用PID计算函数得出值,再依据正负向设置到定时器的PWM输出的,整个函数放在定时器中断中调用。

fa6288c8-3a3c-11ed-9e49-dac502259ad0.png

fabbc37a-3a3c-11ed-9e49-dac502259ad0.png

最后提醒一下,PID的参数值,是需要调整的,这些值与磁铁大小、定时器的控制周期长短都是相关的,本文中的取值如下: #define P_value 4 #define I_value 1 #define D_value 304)一些补充内容在调试时,可以先拿住小磁铁从上往下移动,当感觉重力被磁力抵消时,再向水平的X、Y方向移动,如果感觉有水平的阻力,那么就成功了一大半了,后面只需要微调参数即可。要注意保护强磁铁,如果两个磁铁不加保护直接吸到一起很可能会被撞碎。 到这里,磁悬浮最基本的功能就做好了,但是还有很多可以优化的地方。 比如现在计算周期用的是2KHz,正好在人的听觉范围内,这在使用时,电磁铁可能会产生一些噪音,可以考虑把控制周期改到20KHz以上,但是要注意PID的参数需要调整。 再比如,多利用一个霍尔元件,可以增加检测载荷的功能,如果没有载荷,可以关闭PWM省电。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 磁悬浮
    +关注

    关注

    10

    文章

    102

    浏览量

    20346
  • 霍尔元件
    +关注

    关注

    4

    文章

    294

    浏览量

    32217
  • 电磁铁
    +关注

    关注

    2

    文章

    170

    浏览量

    15443

原文标题:【DIY】使用STM32及PID算法实现一个磁悬浮装置

文章出处:【微信号:mcu168,微信公众号:硬件攻城狮】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    霍尔元件在磁悬浮技术上的应用与解析

    霍尔元件在磁悬浮技术中主要承担磁场检测和反馈控制功能,其应用可归纳为以下三方面: 一、位置检测与反馈控制 .?实时位置监测? 线性霍尔元件通过检测磁场强度变化,将悬浮体的位移量转化为电压信号输出
    发表于 08-07 10:40

    安泰高压功率放大器如何研究磁悬浮实验

    一、磁悬浮实验的核心原理 磁悬浮技术通过利用磁场力使物体在空中悬浮,无需物理接触即可实现稳定悬浮。其核心在于精确的磁场控制,需要实时调整电磁铁的电流来产生变化的磁场,以应对
    的头像 发表于 06-23 15:31 ?195次阅读
    安泰高压功率放大器如何研究<b class='flag-5'>磁悬浮</b>实验

    无刷电机电调的基本原理

    有关本文所谈论的无刷电机内容, 只涉及低速飞行类航模电调的小功率无传感器应用,讲解的理论比较浅显易懂 ,旨在让初学者能够对无刷电机有一个比较快的认 识,掌握基本原理和控制方法,可以在短时间内达到
    发表于 03-17 19:57

    磁悬浮技术赋能智能输送生产线,开启工业制造新纪元

    上海,2025年3月3日 — 在全球制造业加速迈向智能化的浪潮中,磁悬浮技术正成为工业生产线上的一颗明珠。加拿大磁悬浮机器人公司Planar Motor Inc.(以下简称“Planar Motor
    发表于 03-05 15:35 ?524次阅读
    <b class='flag-5'>磁悬浮</b>技术赋能智能输送生产线,开启工业制造新纪元

    奇瑞汽车申请磁悬浮商标,布局未来交通技术

    据天眼查知识产权信息显示,奇瑞汽车股份有限公司近日在知识产权领域迈出了新的一步,申请注册了“磁悬浮”及“奇瑞磁悬浮”商标。这两项商标的国际分类均为运输工具,目前正处于等待实质审查的阶段。 这一
    的头像 发表于 02-19 09:22 ?902次阅读

    磁悬浮轴承——电力电子在高速旋转机械领域的应用

    本文是生活中的电、电源与电力电子科普征文大赛的二等奖作品,原标题《磁悬浮轴承——电力电子在高速旋转机械领域的应用》,作者:蒋栋,孙宏博,杨佶昌,刘自程,帅逸轩,来自华中科技大学,强电磁工程与新技术
    的头像 发表于 02-08 11:26 ?1199次阅读
    <b class='flag-5'>磁悬浮</b>轴承——电力电子在高速旋转机械领域的应用

    变频器试验——国防科大磁悬浮变频器测试系统

    国防科大磁悬浮中心简介国防科大磁悬浮中心是我国最早开展磁浮交通研制的单位之一,从上世纪80年代起便围绕磁浮交通的核心关键技术开展科技攻关,相继突破了悬浮导向控制、转向架等一系列核心关键技术,并实现了
    发表于 11-15 18:22 ?0次下载

    RNN的基本原理与实现

    RNN,即循环神经网络(Recurrent Neural Network),是一种特殊类型的人工神经网络,专门设计用于处理序列数据,如文本、语音、视频等。以下是对RNN基本原理与实现的介绍: 一
    的头像 发表于 11-15 09:49 ?1675次阅读

    中国中车10kV大功率磁悬浮离心鼓风机亮相

    近日,中国中车研制的10kV大功率磁悬浮离心鼓风机亮相第二届中国现代煤化工创新技术发展大会暨“三新”科技成果转化峰会。
    的头像 发表于 11-11 14:10 ?1063次阅读

    磁悬浮储能飞轮上的逆变器

    飞轮储能系统倾向于采用磁悬浮技术以提高效率和寿命,因此也被称为磁悬浮储能飞轮。 ? 相比传统的机械轴承飞轮,磁悬浮技术的使用不仅提高了飞轮储能系统的效率,还延长了设备的使用寿命。由于没有物理接触,
    的头像 发表于 11-01 00:14 ?7264次阅读

    合肥汤诚推出音频功放芯片XA9812B磁悬浮蓝牙音箱解决方案

    和未来感等方面也有着更高的追求。 ? 磁悬浮蓝牙音箱,作为音频科技领域的一项创新,正逐渐引起消费者的关注。这种音响结合了电磁悬浮技术与无线蓝牙连接,创造出独特的视觉与听觉体验。磁悬浮音箱满足了现代消费者对科技感和
    的头像 发表于 09-29 17:27 ?1885次阅读
    合肥汤诚推出音频功放芯片XA9812B<b class='flag-5'>磁悬浮</b>蓝牙音箱解决方案

    高斯滤波的基本原理有哪些

    高斯滤波的基本原理可以从以下几个方面进行阐述: 一、定义与性质 定义 :高斯滤波(Gaussian Filter)是一种常见的图像处理技术,实质上是一种信号的滤波器,用于平滑和降噪图像。它采用高斯
    的头像 发表于 09-29 09:27 ?1725次阅读

    荷兰高速直线马达磁悬浮列车试跑成功

    据相关媒体报道,荷兰“欧洲超环中心”于当地时间9月9日对真空管道高速铁路车辆行驶进行实验,取得圆满成功。此次试验吸引了约300名嘉宾参加,其中包括荷兰王子康斯坦丁。 在试验过程中,磁悬浮测试车在长
    的头像 发表于 09-18 08:21 ?670次阅读
    荷兰高速直线马达<b class='flag-5'>磁悬浮</b>列车试跑成功

    3DP工艺基本原理

     3DP工艺,全称Three-Dimensional Printing(三维打印),是一种3D打印技术,其基本原理可以详细阐述如下:
    的头像 发表于 09-16 15:32 ?2193次阅读

    限流保护电路的基本原理

    限流保护电路的基本原理是一个复杂但至关重要的概念,它涉及到电子电路中电流控制的多个方面。这种电路的主要目的是在电流超过预设的安全阈值时,通过一系列机制来限制或切断电流,从而保护电路中的元件和设备免受损坏。以下是对限流保护电路基本原理的详细阐述,包括其工作机制、主要元件、设
    的头像 发表于 08-19 17:55 ?4912次阅读