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

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

3天内不再提示

怎样用Arduino制作自己的盆景

454398 来源:网络整理 作者:佚名 2019-11-06 16:57 次阅读

第1步:

请看一下上面的视频,快速了解如何进行磁悬浮。

请注意视频中的说明非常简单,并没有完整的启动提示。只需看一下视频,然后按照以下所有步骤确保您可以成功制作自己的空气盆景。

第2步:工作原理

我发现并意识到kickstarter air-bonsai版本的电路相当复杂,没有任何微控制器,我没有任何知识它的模拟电路似乎没有办法做到这一点。仔细观察之后,我意识到它的原理非常简单,那就是让一块磁铁浮在另一块磁铁上面。我所有的休息工作都是让浮动磁铁不会掉下来。

我认为使用Arduino实际上要比计算模拟电路容易得多。我以这种方式取得了成功,真的更加简单。

磁悬浮由两部分组成,基部和浮动部分。

基座

这部分位于底部,由磁铁构成圆形磁场和电磁铁控制磁场。

每个磁铁都有两个极点:北极和南极。实验表明,对立吸引和同极排斥。四个圆柱形磁铁放置在正方形并具有相同的极性,向上形成一个圆形磁场,以推动任何磁铁,磁铁之间有一个相同的磁极。

共有四个电磁铁,它们被放置在一个正方形中,两个对称的磁铁是一对,它们的磁场总是相反。

霍尔传感器驱动电路控制着电磁铁。通过将电流转移到电磁铁上,在电磁铁上形成相反的电极。

2. F 弱电

在基座上方放置一块磁铁,可以放一个小锅。

它是如何工作的?

磁铁顶部由底部磁铁的磁场提升,因为它们是相同的磁极。然而,它倾向于翻倒并相互吸引。

为了防止顶部磁铁片倒置和掉落,电磁铁会产生磁场推动或拉动以平衡它,这要归功于霍尔传感器。

电磁铁在两个X和Y轴上控制,导致上磁铁保持平衡和浮动。

控制电磁铁并不容易,这需要你掌握知识PID控制器的详细信息,将在下一步中详细讨论。

步骤3:PID控制器

什么是PID?

来自维基百科:“比例 - 积分 - 微分控制器(PID控制器或三项控制器)是一种广泛用于工业控制系统的控制回路反馈机制需要连续调制控制的各种其他应用.PID控制器连续计算误差值{ displaystyle e(t)}作为所需s之间的差值etpoint(SP)和一个测量过程变量(PV)并根据比例,积分和微分项(分别用P,I和D表示)进行校正,给控制器起名。“

用一种简单的方法来理解:“PID控制器计算‘误差’值作为测量的[输入]和所需设定值之间的差值。控制器尝试通过调整[输出]来最小化错误。“

因此,您告诉PID要测量的内容(”输入“),您希望测量的位置(”设定值“) ,)和要调整的变量可以实现(“输出”。)

在Youtube中了解PID容易:https://www.youtube.com/watch?v = ur0hOmjaHp0

PID然后调整输出,试图使输入等于设定值。作为参考,在汽车中,输入,设定点和输出分别是速度,期望速度和油门角度。/p》

在这个项目中:

1.T 他输入是来自大厅的当前实时值传感器,由于浮动磁铁的位置会实时变化而连续更新。

2.设定值是霍尔传感器的值,当浮动磁铁测量时位于磁铁基座中心的平衡位置。该指数是固定的,不会改变时间。

3。输出将是控制电磁铁的速度。

感谢Arduino社区编写PID库并且它非常易于使用。

有关Arduino PID的更多信息,请访问https://playground.arduino.cc/Code/PIDLibrary

我们需要在Arduino中使用一对PID控制器,一个用于X轴,另一个用于Y轴。

现在是时间开始购买必要的组件。

第4步:材料清单

以下是您需要为此项目购买的组件列表,请确保在开始之前完成所有这些组件。

有些组件非常受欢迎,我相信您已经有自己的库存。

组件附带数量和建议的链接。大多数建议链接来自Aliexpress,您可以在那里购买便宜和免费送货。您可以在其他地方购买,只要您能以最简单的方式购买。

LM324N - X1 - $ 0.87

悬浮线圈 - X4 - $ 14.09

SS495a霍尔传感器 - X2 - $ 5.44

12V 2A DC适配器 - X1 - $ 8.82

环形磁铁D15 * 4mm - X8 - $ 6.8

直流电源插孔 - X1 - $ 1.64

环形磁铁D15 * 3mm - X4 - $ 4.11

Arduino pro mini - X1 - $ 3.2

L298N模块 - X1 - $ 2.25

14针插座 - X1 - $ 1.91

磁铁D35 * 5mm - X2 - $ 6.65

5.6K欧姆电阻 - X2

180K欧姆电阻 - X2

47K欧姆电阻 - X2

10K欧姆电位器 - X2

亚克力板A5尺寸 - X1

木锅 - X1

PCB面包板 - X1

3mm螺丝 - X8

电线

迷你计划,如肉质,仙人掌,迷你盆景

第5步:工具

以下是最常用的工具列表。

烙铁

手锯

万用表

Scew drivers

Osilloscope(optinal,你可以使用万用表)

表钻孔

热胶枪

电子

第6步:LM324 Opamp和L298N驱动器和SS495a

LM324运算放大器

运算放大器(op-amps)是目前使用中最重要,最广泛使用和最通用的电路之一。

我们使用运算放大器来放大来自大厅的信号传感器,目的是增加灵敏度,使arduino容易识别磁场的变化。当仅在霍尔传感器的输出处改变几mV时,通过放大器后可以在Arduino中改变几百个单位。这对于保持PID控制器的平稳性和稳定性是必要的。

在本教程中了解有关运算放大器如何工作的更多信息。

我选择的常见运算放大器IC是LM324,它是非常便宜,你可以在任何电子商店购买。 LM324有4个内部放大器,可以灵活使用,但在这个项目中我只需要两个放大器,一个用于X轴,另一个用于Y轴。

你可以找到如何组装LM324在后续步骤中。

L298N模块

双H桥L298N通常用于控制两台直流电机的电机速度和方向,或者轻松控制一个双极步进电机。 L298N H桥模块可用于电压介于5和35V DC之间的电机。

还有一个板载5V稳压器,所以如果你的电源电压高达12V,你也可以从电路板上提供5V电压。

在这个项目中,我使用L298N控制两对电磁铁线圈,用5V输出给Arduino和霍尔传感器供电

模块引脚:

输出2:电磁铁对

输出3:电磁铁对

输入电源:DC 12V输入

GND:地面

5v:5v输出到Arduino和霍尔传感器

EnA:为Out 2启用PWM信号

In1:启用Out 2

In2:启用Out 2

In3:启用输出3

In4:启用输出3

EnB:启用Out3的PWM信号

连接到Arduino:我们需要移除EnA和EnB引脚中的2个跳线,然后将6个引脚In1,In2,In3,In4,EnA,EnB连接到Arduino。详细信息请参见以下步骤。

在本说明书中了解有关L298N模块的更多信息。

SS495a霍尔传感器

SS495a是线性霍尔传感器带模拟输出。

注意模拟输出和数字输出之间的区别,你不能在这个项目中使用带数字输出的传感器,它只有两个状态1或0,所以你可以测量磁场的输出。

模拟传感器的电压范围为250mV至Vcc,您可以使用Arduino的模拟输入读取。

两个霍尔传感器是需要测量X和Y轴的磁场。

步骤7:钕磁铁Ndfeb磁铁

维基百科:“钕是一种铁磁性金属(更具体地说它具有反铁磁性质),这意味着它可以像铁一样被磁化成磁铁,但它的居里温度是19 K(-254°C),所以在纯净的形式下,它的磁性只出现在极低的温度下钕与过渡金属如铁的化合物可以使居里温度远高于室温,这些用于制造钕磁铁。“

STRONG,这就是我用来形容钕磁铁的词。你不能使用铁氧体磁铁,因为它们的磁性太弱。钕磁铁比铁氧体磁铁贵得多。

小磁铁用于制作基座,大磁铁用于制造浮动磁铁。

警告:您需要小心使用钕磁铁,因为它们的强磁性会伤害您,或者它会破坏您的硬盘驱动器或其他受磁场影响的电子设备的数据。

提示:您只能将两块磁铁拉到水平方向,将它们分开,因为它们的磁场太强,所以不能将它们分开。它们也非常易碎并易于破碎。

步骤8:准备底座的盖子

《我使用一个直径为3 3/4“的小陶罐,通常用于生长多汁或仙人掌。你也可以使用陶瓷锅或木锅,只要它们完美搭配。

使用8毫米钻头在锅底部附近创建一个孔,用于固定直流插孔。

提示:你应该使用平木头来钻到陶土锅里,我用了一个铁钻,几乎烧了,真的没用。

你也可以用水来冷却钻头,避免使钻头过热。

步骤9:3D打印浮动磁铁座和丙烯酸激光切割

3D打印

使用我附带的STL文件打印浮动磁铁支架。

如果您有可用的3D打印机,这真的很棒。祝贺你离子,你有机会用这台机器制造一切。如果没有,请不要失望,因为您可以使用现在非常流行的廉价3D打印服务。

提示:您只需要大约20分钟即可完成此部分并且仅填充30%。

激光切割

您应该使用本地激光切割服务切割两个带有文件的丙烯酸片,我附上作为AcrylicLaserCut.dwg。这是一个autocad文件。

丙烯酸片用于支撑磁铁和电磁铁,其余部分用于覆盖陶土锅的表面。

步骤10:准备SS495a霍尔传感器模块

将pcb面包板切成两块,一块到将霍尔传感器和另一个连接到LM324电路上。

将两个磁传感器垂直连接到pcb上。注意两侧刻有传感器相互旋转,固定焊接。

用细线将传感器的两个VCC引脚连接在一起,用GND引脚做同样的操作。输出引脚是分开的。

步骤11:运算放大器电路

按照原理图将插座和电阻焊接到PCB,注意将两个电位器放在同一方向,以便以后轻松校准。

连接LM324然后将霍尔传感器模块的两个输出连接到运算放大器电路。

连接两根LM324输出线连接到Arduino。 12V输入应与L298N模块的12V输入共用,L298N模块的5V输出连接到5V电位器。

步骤12:组装电磁铁

将电磁铁装配到丙烯酸板上,注意固定在靠近中心的四个孔处。/p》

拧紧螺钉以避免移动。

因为电磁铁在中心对称,所以它们总是在相反的磁极上,因此电磁铁内部的电线连接在一起,电磁铁外侧的电线连接到H型驱动器L298N。

将丙烯酸板下的电线穿过附近的孔连接到L298N。

提示:铜线上涂有绝缘层,因此在将它们焊接在一起之前必须用刀将其取下,记得在焊接后使用热缩管。

步骤13:附上th e传感器模块和磁铁

使用热胶将传感器模块固定在电磁铁之间,注意每个传感器必须是正方形的两个电磁铁,一个在前面,另一个在后面。

尝试尽可能集中校准两个传感器,这样它们就不会重叠,这将使传感器最有效。

下一步是将磁铁组装在丙烯酸基底上。将两个D15 * 4mm磁铁和一个D15 * 3mm磁铁组合在一起形成一个圆柱体,这将使磁铁和电磁铁具有相同的高度。

在两对电磁铁之间组装磁铁,注意极向上的磁铁必须相同。

步骤14:直流电源插座和L298N 5V输出

用两根电线焊接直流电源插孔并使用热缩管。将DC电源插孔连接到L298N模块的输入端,其5V输出将为Arduino供电。

步骤15:L298N和Arduino

将L298N模块连接到上面的原理图后面的Arduino。

L298N ===》 Arduino

输出5V ===》 VCC

GND ===》 GND

EnA ===》 7

In1 ===》 6

In2 ===》 5

In3 ===》 4

In4 ===》 3

EnB ===》 2

步骤16:Arduino Pro Mini Progamming

由于Arduino pro mini没有任何usb到串口,你需要连接外部编程器。

FTDI Basic将用于编程(和Pro Mini。

按照此Sparkfun指令获取更多信息。

步骤17:浮动片的准备

将两个D35 * 5磁铁连接在一起以增加磁力。

步骤18:校准设定值

将程序ReadSetpoint.ino加载到我附加的Arduino。该程序将读取霍尔传感器的值并通过串口将其发送到计算机。打开COM端口即可看到它。

将12V DC插入直流电源插孔,您还可以使用示波器读取传感器值。

观察屏幕上的数值,进行调整通过调节两个电位器。最佳值为560,此时传感器的输出约为2.5V。

设定设定值后,将浮动磁铁片放在基座上方并摇动以查看设定值的变化在屏幕上。

提示:分别在X和Y轴上标记这对电磁铁和电位计,以便以后轻松纠正它们。

步骤19:加载主程序

校准设定值后,现在是享受结果的时间。

加载Levitation.ino主程序,我已在下面附上。

使用超级胶水修复磁片和磁铁支架,之前是3D打印的。

提示:加载主程序后,可以对电位器进行小幅调整,使浮动件固定在中心。

第20步:全部放在一起

首先将DC电源插孔连接到电位器上,然后将剩余部分放入电位器。

最后,使用剩余的丙烯酸板制作锅的表面。

步骤21:准备工厂

将木锅连接到漂浮的磁铁片上。

我用一个小仙人掌种植。您可以使用仙人掌或多肉植物或任何对称或小而轻的迷你盆景。

步骤22:完成并享受

享受您的成果,您的努力将在您自己的桌面上使用盆景气罐,这是由你自己制作的。
责任编辑:wv

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

    关注

    187

    文章

    6464

    浏览量

    186655
收藏 人收藏

    评论

    相关推荐

    怎样用自己的电脑远程公司的电脑

    随着远程办公和居家办公的普及,如何高效、安全地远程控制办公室电脑成为许多职场人士的需求。Splashtop作为一款专业的远程控制软件,提供了强大的功能,使用户能够随时随地访问和操作办公室的电脑,实现高效的远程办公体验。Splashtop远程办公的优势1.高性能连接Splashtop提供高清画质和低延迟的远程控制体验,确保你可以流畅地访问和操作办公室电脑上的应
    的头像 发表于 08-30 13:20 140次阅读
    <b class='flag-5'>怎样用</b><b class='flag-5'>自己</b>的电脑远程公司的电脑

    怎样用THS3201实现输出功率可调?

    怎样用THS3201实现输出功率可调?
    发表于 08-26 08:28

    OPA735加OPA333,怎样用TINA TI去仿真?

    当输入信号VG1从7.06V慢慢变化到7.22V时。 输出电压Vout的变化必须是接近线性变化的。我想知道我该怎样用TINA TI去仿真?怎样设置那个输入信号VG1才能达到我的目的。因为这个电压源好像
    发表于 08-02 08:39

    怎样用Arduino测试锂电池容量

    本文详细介绍了如何用Arduino测量锂电池的容量。并附有电路图和Arduino的程序代码。
    的头像 发表于 07-30 09:14 714次阅读
    <b class='flag-5'>怎样用</b><b class='flag-5'>Arduino</b>测试锂电池容量

    求助,在esp-idf中使用arduino作为组件后怎样使用arduino的库?

    在esp-idf中使用arduino作为组件后怎样使用arduino的库,例如我此时需要使用arduino的第三方库blinker,怎样使用
    发表于 06-12 07:21

    怎样用STM8L的PB3/TIM2_TRIG的引脚测量脉宽?

    怎样用STM8L的PB3/TIM2_TRIG的引脚测量脉宽?
    发表于 05-07 06:55

    stm32f100怎样用重映射功能?

    的是stm32f100c8t6b芯片,现在想用将PB1映射为TIM1_CH3N,在调用GPIO_PinAFConfig(GPIOB,GPIO_PinSource1,GPIO_AF_TIM1)时, GPIO_PinAFConfig和GPIO_AF_TIM1都没定义,stm32f100
    发表于 05-07 06:06

    STM32F412G-DISCO怎样用MX生成fatfs的代码?

    STM32F412G-DISCO怎样用MX生成fatfs的代码? SD卡例程能跑,但mx生成的代码不能正常运行,我生成代码后是不是还要配置一些东西?(我生成后只写了测试代码) 问题解决了,虽然我不知道我为什么不能直接使用mx生成的代码去操作sd卡,但我通过复制粘贴例程的代码完成了测试。
    发表于 03-12 08:15

    如何制作自己Arduino电容计

    在这个项目中,您将学习如何制作自己Arduino电容计(测量电容器的值,范围从pF到1000的uF)。一般来说,电子爱好者喜欢设计自己的小工具而不是购买。在这个项目中,我们使用两种电
    的头像 发表于 02-25 15:10 1465次阅读
    如何<b class='flag-5'>制作</b><b class='flag-5'>自己</b>的<b class='flag-5'>Arduino</b>电容计

    如何使用Arduino制作智能垃圾箱

    在这个项目中,我将向您展示如何使用Arduino制作智能垃圾箱,当您带着垃圾接近时,垃圾箱的盖子会自动打开。
    的头像 发表于 02-11 12:22 2858次阅读
    如何使用<b class='flag-5'>Arduino</b><b class='flag-5'>制作</b>智能垃圾箱

    Arduino制作循迹小车教程

    Arduino制作循迹小车完全教程
    发表于 01-05 11:09 7次下载

    怎样用表来判断加热管的好坏?

    怎样用表来判断加热管的好坏? 万表是电工常用的测量仪器,它可以用来判断加热管的好坏。加热管是一种常见的加热元件,广泛应用于家电、机械设备和工业生产中。在选择和使用加热管时,我们需要了解其电阻值
    的头像 发表于 12-20 17:21 5069次阅读

    无线通信:怎样用电磁波表示1和0

    为什么频率越高,能携带的信息就越多?以数字信号为例,信息就是一串串的1和0,所以先搞清楚怎样用电磁波表示1和0。
    发表于 12-05 14:44 1752次阅读
    无线通信:<b class='flag-5'>怎样用</b>电磁波表示1和0

    ADAU1452做FFT分析,怎样设定取样点的数量?

    请问,我想用ADAU1452做FFT分析,怎样设定取样点的数量,还有就是怎样用单片机读出分析得到的复数结果数组?谢谢!
    发表于 11-29 06:42

    怎样用ADAU1761设计DRC的压缩/扩展?

    请问怎样用ADAU1761设计DRC的压缩/扩展。我在SigmaStudio 4.5的模块中只找到RMS。如果ADAU1761设计DRC要怎样
    发表于 11-28 06:41