有很多使用各种技术的基于Arduino的金属探测器。这是其中之一直接使用频率测量的。
组件和耗材
SparkFun Arduino Pro Mini 328-5V / 16MHz×1个
图形OLED,128 x 64×1个
必要的工具和机器
烙铁(通用)
3D打印机(通用)
关于这个项目
不久前,我决定建造一个简单的金属探测器。当然,有很多金属探测器设计,例如BFO,VLFD,PI等。我曾经尝试过其中的一些方法,但结果却不尽相同,然后在一个无聊的晚上浏览互联网时,我偶然发现了该博客并决定建造这种类型的金属探测器。设计非常简单-有一个简单的振荡器电路和一个频率计数器。当线圈越过或接近各种铁磁或顺磁材料时,振荡器的频率会发生变化,您可以根据此变化确定金属地点。此外,由于可以在任何微控制器上实现频率计数器,因此您可以通过许多不同的方式分析频率变化,从而有可能导致金属微分甚至滤除频率漂移,这困扰着其他类型的检测器。
附件有这个项目的代码,可以发现这里的文件夹中arduino/MetalDetector。文件夹arduino/MetalDetector/third-party包含启发该项目的代码。
除Arduino源代码外,您还将找到该项目的3D打印零件的OpenSCAD文件和STL文件,螺丝除外,该螺丝可固定臂和线圈零件。
运作方式
搜索线圈集成了带缓冲电路的Collpits振荡器,该电路产生大约660kHz的信号。该振荡器放置在尽可能靠近线圈的位置。信号由Arduino Pro Mini板(使用ATmega168)拾取,正在测量频率。32点测量频率存储在FIFO缓冲区中,按比例缩放以适合显示屏的128个像素,并与电池指示器一起绘制在128x32 OLED显示屏上。
振荡器需要预热一段时间,但这并不是必须的-因为一旦开始摆动搜索线圈并发现任何金属,图形上就会出现尖峰。如果在此之前还没有确定振荡器的频率-图形将不会是水平的。相反,一旦稳定-图形将是水平的。这种操作不需要校准或归零:)
施工
这是使用3D打印部件组装的金属探测器的图片:
在图片中的此处,您可以看到缠绕在3D打印线圈骨架上的搜索线圈,连接搜索线圈和Arduino的编织线以及带有arduino本身和OLED的电池座。
搜索线圈集成了振荡器。振荡器由SMD组件组装而成,主要是电阻器,电容器和BC846晶体管。振荡器的电路板用铜箔包裹,以使其与环境隔离。我不记得线圈中有多少匝,但是大约15到20匝。我认为匝数越少越好,因为频率越高,并且由于金属存在时电感变化引起的频率变化越大,这使得金属检测更加灵敏。频率越高,频率计数器响应越快。尽管由于土壤条件而需要权衡信号频率和灵敏度。如果土壤富含矿物质且潮湿,它可能导电性很强,从而阻止了高频信号的穿透,从而限制了准确性和灵敏度。线圈的绕组用环氧树脂胶密封。
这是检测器内部的样子:
Arduino Pro Mini和OLED以及分压器,按钮开关和搜索线圈接头连接到一个小面包板上。整个东西都粘在两个18650锂离子电池上,两个电池都粘在外壳的底部。
如您所见,OLED显示屏连接到Arduino的I2C接口,电池分压器连接到A0模拟引脚,而来自搜索线圈振荡器的信号直接连接到数字引脚5。
振荡器从串联的两个18650电池接收直接功率,并输出产生的信号。这是从线圈接收到的信号:
信号的质量并不重要(很明显,我没有对Q2基极电流进行过多考虑),因为重要的是触发arduino引脚的触发,该引脚配置为计数器寄存器。
3D打印零件
使用OpenSCAD 设计3D打印的零件,并使用Geeetech Rostok 301 3D打印机进行打印。
这个项目花费了我一个多晚上的时间,我想说要花几个周末才能进行组装和编程。有不同的迭代。首先,我设计了另一种大约30匝的线圈,完全用环氧树脂胶封闭。我还使用了NOR门作为振荡器缓冲器,在最终版本中比单个晶体管要好得多...尽管线圈很大-直径约为30cm,这降低了其对小物体的灵敏度。较小的和3D打印的线圈在机械和电气方面都证明更加稳定,但是由于耦合性强,即使将我的手靠近电线甚至靠近外壳,它也很敏感。我尝试了不同的频率测量方法。最初尝试使用与原始博客文章相同的代码。然后,在该概念被证明可行之后,
我还没有机会在室外进行测试,但是在室内发现地板下有金属结构(大约15厘米的混凝土和层压板)。我不知道它在不同土壤上的表现如何。
我计划在将来的某个时间设计线圈和振荡器电路板,并尝试使用VLF和PI检测器设计。
注意:
在某些国家/地区建造和使用金属探测器是违法的,因此在复制该项目之前,请务必确认你是否涉嫌违法。。
1