电子发烧友 电子发烧友
  • 首页
  • 技术
    可编程逻辑
    MEMS/传感技术
    嵌入式技术
    模拟技术
    控制/MCU
    处理器/DSP
    存储技术
    EMC/EMI设计
    电源/新能源
    测量仪表
    制造/封装
    RF/无线
    接口/总线/驱动
    EDA/IC设计
    光电显示
    连接器
    PCB设计
    LEDs
    汽车电子
    医疗电子
    人工智能
    可穿戴设备
    军用/航空电子
    工业控制
    触控感测
    智能电网
    音视频及家电
    通信网络
    机器人
    vr|ar|虚拟现实
    安全设备/系统
    移动通信
    便携设备
    物联网
    区块链
    HarmonyOS
    RISC-V MCU
    光伏
    ChatGPT
    IGBT
    充电桩
    氮化镓
    BLDC
    逆变器
    5G
    电机控制
  • 资源
    技术文库
    新品速递
    电路图
    元器件知识
    电子百科
    最新技术文章
  • 下载
    在线工具
    常用软件
    电子书
    datasheet
  • 专栏
    电子说
    专栏
  • 社区
    论坛
    问答
    小组
    技术专栏
    社区之星
    试用中心
    HarmonyOS技术社区
    2023电子工程师大会
  • 研究院
  • 活动
    设计大赛
    硬创大赛
    社区活动
    线下会议
    在线研讨会
    小测验
  • 学院
    直播
    课程
  • 视频
  • 企业号
  • 华秋智造
  • 工具
    PCB在线检查
    datasheet查询
    选型替代查询
    免费样品申请
    免费评测试用
    工程师专区
    技术子站
0
  • 聊天消息
  • 系统消息
  • 评论与回复
查看更多
查看更多
查看更多
  • 0

    关注
  • 0

    粉丝
  • 0

    动态
VIP于 到期 续费
  • 个人中心
  • 内容管理
  • 积分兑换
    当前积分:
  • 修改资料
  • 退出登录
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心
发布
  • 发文章

  • 发资料

  • 发帖

  • 提问

  • 发视频

创作活动
下载中心
  • 推荐
  • 分类
  • 资料
  • 软件
  • 工具
  • 排行榜
  • DataSheet

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

3天内不再提示

教你怎样DIY一个磁悬浮装置

Q4MP_gh_c472c21 来源:小白白学电子 作者:小白白学电子 2022-10-26 11:41 次阅读

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

1、磁悬浮的基本原理

磁悬浮有下推式和上拉式两种基本形式。

所谓下推式,就是控制部分在底座上,悬浮的磁铁在上面,依靠底座从下往上的排斥磁力推动磁铁悬浮;而上拉式,是控制部分在上面,悬浮的磁铁在下面,依靠控制部分从上方的吸引力吸住磁铁不会落下去。

本文实现的是下推式,仅讲解推式磁悬浮的原理和实现方法。

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

但是,仅仅依靠两个磁铁的相互作用是不能保持稳定的,因为两个磁铁的斥力只要与重力的方向不在同一直线上,就不能保持平衡,上方的小磁铁就会向旁边飞出去。

而下推式磁悬浮的实现方法,就是在上述的系统里,再增加一个控制上方小磁铁保持在中轴线位置的装置。这样,小磁铁即不能往旁边移动,垂直方向的重力又和磁铁斥力相抵消,就能实现稳定的悬浮了。

具体实现时,如果没有大环形磁铁,可以使用一圈小磁铁代替,效果是一样,如本文效果图里用的4个、8个都行,但是一定要排布在对称位置。

控制小磁铁位置的装置,一般由霍尔元件和 电磁铁组成。用两个霍尔 元器件检测磁场,两个霍尔元件安装在环形磁铁的 中心处,且互相垂直,检测面都与铅垂线平行。如果上方的小磁铁在中轴线上,那么系统的磁力线也是铅垂线方向的,两个霍尔元件都无输出;如果小磁铁偏离了中轴线,那么系统的磁力线方向会偏离铅垂线方向,霍尔元件就能检测出往某个方向偏移了。此时,由 MCU采集霍尔元件的输出,控制电磁铁,产生一个水平方向相反的磁力,将小磁铁拉回中轴线上就行了。

由于该系统是一个动态平衡的系统,需要不断地采集、判断、调整,最好使用 PID控制。

了解完原理,下面就一起实现吧!

2、 硬件电路图及调试

由上述的原理讲解,我们的硬件只需要处理好两件事情就行了:一是采集两个相互垂直安装的霍尔元件的输出,以获取小磁铁的偏移位置;二是控制两组相互垂直的电磁铁,产生水平的磁力。

主要的原理图附在下面,完整的图纸可以关注文末的公众.号,找到 下载地址。

霍尔元件及其 信号放大部分,UGN3503是霍尔元器件, 电位器提供一个初始的零位电压,霍尔的输出信号通过反向放大后,输出到 STM32AD口采集:

pYYBAGNYrOCAJHH8AAGvvkZ4xXY953.jpg

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

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

pYYBAGNYrTaAb-_JAAD9HlHxvNk573.jpg

因为我在 DIY的时候STM32是外接的最小系统,所以原理图里没画STM32,只留了几个接点。

注意布局时,霍尔元件和电磁铁的放置位置,有特殊要求。最终的 PCB图如下:

poYBAGNYrVKACrx0AAMSKr8hvQo650.jpg

U3和U4是两个检测磁铁位置的霍尔元件,需要安装在环形磁铁中心附近,并且互相垂直;而且霍尔的平面要在相对角电磁铁的连线上。

注意两个霍尔U3和U4的位置:(U5也是个霍尔,本来是预留来检测是否有磁铁放在上面的,暂时没有用上)

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下:
pYYBAGNYrYmAKAfZAAG7Jf9Kepw776.jpg

定时器和PWM设置:

定时器分频设置为36,计数到1000时溢出;主频是72M,所以定时器中断是2KHz。

设置CH1和CH2两个通道PWM输出,模式1(先高电平,匹配后拉低,初始值可以设置为任意值,图中的初始值100和300对系统无影响):

poYBAGNYrZ2AKal_AAIswoAnixk937.jpg

设置完成后,PA15和PB3自动被占用为PWM输出引脚。

再手动设置PB4和PB5为输出引脚,这里设置PB4和PB5是为了配合PWM引脚来控制电机驱动芯片来使电磁铁改变正、反向。
pYYBAGNYrbOAJiGtAABY7JgOyM4770.jpg
使能定时器 TIM2中断:

pYYBAGNYrcSANf1NAAHHVrdv73A128.jpg

到这里,cubemx里的硬件主要配置就完成了。接下来可以生成 keil工程,编写软件代码。

由于整个工程源代码比较长,这里只讲解最核心的部分。完整的代码可以关注文末的公 众号后,找到下载地址。

在keil工程里,adc部分,使用如下函数进行AD采集,采集了三个通道,即AD0、AD1、AD4:

pYYBAGNYreGAJHThAADRDFJKXjw807.jpg
然后进行滑动平均滤波,这里最终只保留了AD0和AD1两路,10bit的精度,存放到了xPos和yPos中,作为两个方向的位置值。
poYBAGNYrgCAd-lZAAFme6-ViGI541.jpg
fil ter_adc()函数需要放在主循环中循环调用,不断更新位置值:
pYYBAGNYrhCAQrRgAABy6AW_EFM524.jpg

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

pYYBAGNYriiAG9cUAABkxUesXt8415.jpg
poYBAGNYrjCAY_7JAAGLuAJbql4387.jpg

注意,这里PID实现时对积分项的处理,当误差的累加值非常大时(也即积分项很大时)不会再累加误差项,而是限制到一个最大值MAX_INTEGRATION_ERROR,这是一种避免积分饱和的方法。

接下来,讲一下如何设置PWM输出值,以及怎么控制电磁铁磁场的正负向。

由于我们使用了L293D 芯片来驱动电磁铁,以LL1和LL2这一路为例,当PWM2设置为低电平,则PWM1输出为高时就能驱动电磁铁;当PWM2设置为高电平,则PWM1输出为低时, 电流与前述状态相反,就能反向驱动电磁铁。如下图所示:
pYYBAGNYrkSAAiaGAABPVTBxtAs268.jpg

同时,我们只需要改变PWM1的脉宽,就能实现电磁铁的磁场强度控制。

另一路LL3和LL4电磁铁也是一样的原理,可以通过PWM3控制磁场强度,通过PWM4来控制磁场方向。

这部分的实现代码如下,其中PWM1和PWM3的输出值(也就是代码中的xPWM和yPWM),是先通过调用PID计算函数得出值,再依据正负向设置到定时器的PWM输出的,整个函数放在定时器中断中调用。
poYBAGNYrmWAEiqwAAFjP7wE3lo634.jpg
poYBAGNYrmyADqFlAAIdHYWgTVM442.jpg

最后提醒一下,PID的 参数值,是需要调整的,这些值与磁铁大小、定时器的控制周期长短都是相关的,本文中的取值如下:

#define P_value 4

#define I_value 1

#define D_value 30

4、一些补充内容

在调试时,可以先拿住小磁铁从上往下移动,当感觉重力被磁力抵消时,再向水平的X、Y方向移动,如果感觉有水平的阻力,那么就成功了一大半了,后面只需要微调参数即可。要注意保护强磁铁,如果两个磁铁不加保护直接吸到一起很可能会被撞碎。

到这里,磁悬浮最基本的功能就做好了,但是还有很多可以优化的地方。

比如现在计算周期用的是2KHz,正好在人的听觉范围内,这在使用时,电磁铁可能会产生一些噪音,可以考虑把控制周期改到20KHz以上,但是要注意PID的参数需要调整。

再比如,多利用一个霍尔元件,可以增加检测载荷的功能,如果没有载荷,可以关闭PWM省电。





审核编辑:刘清

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

    关注

    2258

    文章

    10828

    浏览量

    352490
  • PID算法
    PID算法
    +关注

    关注

    2

    文章

    169

    浏览量

    24224
  • 磁悬浮
    磁悬浮
    +关注

    关注

    10

    文章

    98

    浏览量

    19820
  • PWM波
    PWM波
    +关注

    关注

    0

    文章

    99

    浏览量

    16791

原文标题:手把手教你:用STM32与PID算法,DIY一个磁悬浮装置

文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式微处理器】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    磁悬浮列车

    地心引力的能力,使车体完全脱离轨道,悬浮在距离轨道约1厘米处,腾空行驶,创造了近乎“零高度”空间飞行的奇迹。由于磁铁有同性相斥和异性相吸两种形式,故磁悬浮列车也有两种相应的形式:种是利用磁铁同性相斥
    发表于 06-18 16:17

    手工DIY创意磁悬浮陀螺的制作方法图解

    相投的手工达人们聚焦在这里来探索和发现你的灵感!下面给各位手工达人专门分享这教你手工DIY创意磁悬浮陀螺的制作方法图解,喜欢DIY创意
    发表于 12-29 15:01

    我想做一个简易的电磁悬浮装置

    如题 想做一个简易的磁悬浮装置 百度的资料有些电子元件淘宝上没有 有没有高人 教我下 非常感谢 QQ:112355766
    发表于 03-22 11:04

    磁悬浮用线性霍尔元件 磁悬浮霍尔应用

    磁悬浮技术是指利用磁力克服重力使物体悬浮种技术。现在随着磁悬浮技术的成熟,磁悬浮产品的广泛应用。让我们不禁感叹
    发表于 01-24 16:01

    需要磁悬浮高度可以达到20cm,载重2kg以上的磁悬浮装置,谁能做?

    需要磁悬浮高度可以达到20cm,载重2kg以上的磁悬浮装置,谁能做?
    发表于 09-11 06:52

    磁悬浮技术基本原理是什么?

    磁悬浮技术基本原理是什么?磁悬浮列车是什么?
    发表于 03-18 08:14

    STM32下推式磁悬浮装置介绍

    接下来几篇文章里我将介绍并开源近期完成的STM32下推式磁悬浮装置。这个项目做的时间不长(主要是在等PCB),但是坑非常多。而且网上关于STM32磁悬浮的资料基本都是演示视频。接下来我将从悬浮
    发表于 07-20 06:33

    磁悬浮科普介绍

    磁悬浮科普介绍磁悬浮技术(简称EML技术或EMS技术)是指利用磁力克服重力使物体悬浮种技术。磁悬浮列车是由无接触的磁力支承、磁力导向和驱
    发表于 08-31 06:49

    介绍STM32下推式磁悬浮装置的PCB设计思路

    前言这是STM32下推式磁悬浮装置的第二篇文章,接下来将介绍磁悬浮装置的原理图、PCB、设计思路。
    发表于 01-14 07:37

    磁悬浮diy

    磁悬浮pcb 磁悬浮电路图
    发表于 12-16 15:40 57次下载

    如何制作简易的磁悬浮

    在折腾数字的PID电机控制之前,我想再弄模拟电路的磁悬浮东东,来加深对PID的理解。这个磁悬浮,就是让块磁铁
    的头像 发表于 08-06 16:40 8.1w次阅读

    磁悬浮陀螺制作方法

    下面给各位手工达人专门分享这教你手工DIY创意磁悬浮陀螺的制作方法图解,喜欢DIY创意磁悬浮
    的头像 发表于 09-07 15:04 2w次阅读

    如何实现常导和超导磁悬浮演示试验装置的控制论文资料概述

    本文目的是通过磁悬浮技术的理论研究,让跟多的人认识磁悬浮,了解磁悬浮。通过本文的理论知识的介绍,我自己设计制作了简单的
    发表于 07-03 08:00 17次下载
    如何实现常导和超导<b class='flag-5'>磁悬浮</b>演示试验<b class='flag-5'>装置</b>的控制论文资料概述

    DIY磁悬浮装置

    这个DIY磁悬浮电路的主要部件是霍尔效应传感器和 MOSFET 晶体管和电磁线圈。我们之前使用电磁线圈构建了其他有趣的项目,例如迷你特斯拉线圈、电磁线圈枪等。
    的头像 发表于 08-10 16:35 9729次阅读
    <b class='flag-5'>DIY</b><b class='flag-5'>一</b><b class='flag-5'>个</b>电<b class='flag-5'>磁悬浮</b><b class='flag-5'>装置</b>

    基于Arduino的磁悬浮排斥装置

    几年前,我试图制造种用于排斥磁悬浮装置,但我拥有的所有电路都很复杂,而且设置非常困难。
    发表于 12-02 15:21 12次下载

    推荐专栏

    更多

      玻璃钢生产厂家贵州景观玻璃钢雕塑图片云浮玻璃钢动物雕塑出厂价格长沙公园景观玻璃钢仿铜雕塑上海通道商场美陈报价玻璃钢龙雕塑批发商商城玻璃钢抽象艺术雕塑摆件高淳商场活动美陈朔州玻璃钢花盆雕塑公司深圳自发光动物玻璃钢雕塑生产商大安玻璃钢花盆花器洛阳玻璃钢伟人像雕塑揭阳人物玻璃钢动物雕塑吉林玻璃钢卡通雕塑橘子酒桶玻璃钢花盆宜昌人物玻璃钢雕塑安装商场美陈门头设计方案六安景区玻璃钢雕塑报价扬州卡通玻璃钢雕塑淮北玻璃钢雕塑制作公司云南动物玻璃钢雕塑哪家便宜商场市场部美陈河南做工玻璃钢雕塑制作安徽玻璃钢雕塑定做公司河南开业商场美陈售价淮北人物玻璃钢雕塑价格深圳玻璃钢兔子雕塑济宁市玻璃钢人物雕塑供应商玻璃钢喷水龙雕塑昆山玻璃钢雕塑定制玻璃钢雕塑裂缝香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

      玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化