首页-达尔闻    全部    毕业设计| 【开源】自制下推式磁悬浮

毕业设计| 【开源】自制下推式磁悬浮

本次毕业设计是自制下推式磁悬浮
磁悬浮,很多人会觉得比较难(妮姐也是这么认为的图片),但现在这个项目全部开源了,感兴趣的同学不妨上手一试,非常酷~
收藏
  • 本次毕业设计是自制下推式磁悬浮,制作者马哈杰,同时也是一位up主(B站ID:马哈杰)。

     

    下面是来自马哈杰B站的演示视频,也可以点击查看:https://www.bilibili.com/video/BV1ov411V7Cw

     

    磁悬浮,很多人会觉得比较难(妮姐也是这么认为的图片),但现在这个项目全部开源了,感兴趣的同学不妨上手一试,非常酷~

     

    项目开源资料可以在“达尔闻说”微信回复:开源磁悬浮,获取。同时欢迎大家加入马同学的技术交流QQ群:813633187,有问题可以在群里交流沟通,也可以下载资料。

     

    之前,达尔闻也分享过稚晖君制作的磁悬浮教程,里面有介绍了磁悬浮原理及PID调参,大家可以回看学习下:毕业设计做磁悬浮装置可行?PID算法加持,更稳! 结合马同学分享的资料,相信你们也一定能成功悬浮起来的!

     

    本项目使用到的硬件有:

     

    铁氧体磁铁:规格为外径100mm,内径60mm,高15mm

    线圈:PCB可兼容两种线圈规格:

    大线径直径21mm,高22mm,内径9mm,直接电阻约为3.2欧姆,3mm螺纹孔

    小线径直径19mm,高12mm,内径8mm,直流电阻约为4.2欧姆,3mm螺纹孔

    浮子必须使用强磁钕铁硼:

    大线径测试中使用了两块,D40*H5mm + D30*H5mm

    小线径测试中使用了三块,D50*H5mm + D40*H5mm + D30*H5mm

    D40*H5mm:直径40 高5mm

     

    磁悬浮原理:磁铁悬浮向上的浮力主要是铁氧体磁铁提供的,中间4个线圈通电后产生磁场可以控制浮子的位置,令浮子处于一个中心。

    PCB控制板的原理图:

    主控板核心是STM32F103,电路中包含H桥电路、霍尔采集与放大电路、电源管理电路。

     

     

    以下马同学在制作过程中的问题记录,都已经解决了。放在这里希望可以帮到大家:

     

    1. 单片机在控制线圈时重启

    问题详细描述:线圈大小为 (直径 )21*(高度)22mm   500匝   0.45mm漆包线,供电为适配器  12V2A,电路为双H桥,用来切换正负级,并改变占空比,在切换占空比时经常导致单片机重启,现象为单片机所接的OLED屏幕初始化并重新开始工作。

    解决方案:

    1)怀疑适配器供电不足,更换适配器12V 10A ,结果未解决,并且现象无改善;

    2)怀疑电路问题,线圈作为感性负载,在改变极性或停止供电时会有反向电动势(来去拒留)会对电源电路造成冲击,电源电路的不稳定(纹波)通过辅助电源到达3.3V处,造成单片机重启。为各个mos管并联肖特基二极管(4148),形成释放回路。并除去5V电源,在3.3V处直接为单片机供电。结果:会起到一定作用,但并不稳定;

    3)PCB原因:重新铺地,并更改地线连接方式(改的时候发现,stm32的四个地不是单点连接,【当时为了3.3V好走线,有两个地直接连接功率地,四个地之间相隔太远】),用磁珠隔离功率地,并添加泪滴,铺地后打板。结果:板子很稳定,未再次出现过重启现象(打板犹豫了很久,时间也拖了很久很久)。

    2. Ir2104 有一路输出不稳定,会从12V降低,降低直到0V

    单片机有输出,但是是3.3V(最初未注意),以为是自举电容的原因(因为6引脚的自举电容为高端mos管提供高于VCC的输出能力),结果查了查,是因为ir2104 不能完全高电平运行,更改单片机占空比,问题解决。

    3. 上述单片机3.3V高电平问题,因为我在程序中未使用过持续高电平,后经查证发现:

       if(pwm<=0)

    {

        __HAL_TIM_SET_COMPARE(&htim1, TIM_CHANNEL_2, 000);  

        __HAL_TIM_SET_COMPARE(&htim1, TIM_CHANNEL_1, pwm);   //1向下

    }

    该段程序中,pwm 为int型,小于0为复数,而我在为ch1的pwm赋值时,直接赋值(负数,应赋值0-999之间),超出量程,出错。

    4. 焊接完毕后,连续3个ir2104发烫,更换后正常,(出现在问题3的时间段中,未找到原因,不排除持续高电平会导致ir2104烧毁)。

    5. 单片机PWM波引脚无输出

    原因:在32cube mx 中不小心将分频系数与自动重载值设置为0,并且更新了一次,重新设置后问题解决。

    6. 霍尔传感器受线圈干扰较大

    问题描述:3个霍尔分别检测x、y、z轴的电磁变化,可以检测浮子(被悬浮磁铁)的位置,但是未放置磁铁,控制线圈工作时,霍尔的值改变较大。z轴尽可能平行于地面,x、y尽可能位于对角线上。

    手动调整后,xy的值变化在200以内,z轴(直接放置地面后)依然较大,暂不处理。

    7. 温漂问题

    问题描述:霍尔传感器本身变化较小,添加了差分放大电路,基准电压由电位器提供,但3个电位器处于线圈下方,线圈工作后会发热(电阻),且温度变化快,会导致电位器温度上升,基准值变化,运放输出改变。

    知识普及:好的电阻温度系数为2ppm/°C,但精密可调电阻为100ppm/°C。

    解决方案:飞线,远离温度变化大的地方,下次打板子一定要注意精密可调电阻远离线圈  。

    改版结果:采集数据有所好转,但依然会受温度影响,目前采取措施为:双层使用,板子分为上下两块板,分别使用,已成功实现悬浮。

Control Render Error!ControlType:productSlideBind,StyleName:Style1,ColorName:Item0,Message:InitError, ControlType:productSlideBind Error:未将对象引用设置到对象的实例。