本网页已闲置超过3分钟,按键盘任意键或点击空白处,即可回到网页

DIY树莓派光谱仪

发布时间:2021-08-17
分享到:

DIY树莓派光谱仪

发布时间:2021-08-17
分享到:

PySpectrometer 是光谱仪的 Python(OpenCV 和 Tkinter)实现。该项目背后的动机是构建一种工具,可以测量自制染料激光器的波长并执行一些荧光光谱分析。最重要的是,成本低廉。(在 Apache 许可下发布)

硬件简单且广泛可用,物理构建很简单。繁重的工作全部在软件中完成,且软件部分是开源的!

分辨率/精度似乎是 +/- 几个纳米左右,对于硬件的价格来说非常合理,尤其是当您考虑商业组件的价格时,例如滨松 C12880MA 分线板的价格超过 300 美元,并且具有 15nm分辨率。

项目视频

硬件包括:

  • 1×商用衍射光栅分光镜
  • 1×Raspberry Pi 相机(带有 M12 螺纹)
  • 1×带变焦的闭路电视镜头(M12 螺纹)

一切都组装在铝制底座上(注意相机没有冷却,散热器是一块尺寸方便的铝片。)

安装

开发和测试: 2021-01-11-raspios-buster-armhf-full.img 其他任何您的里程可能会有所不同!

推荐使用树莓派 4 和 PiCamera。

(请注意,该软件使用 Linux 视频驱动程序,而不是 Picam Python 模块。因此,它可能适用于任何 Linux 机器上的某些网络摄像头(在 Debian 上使用随机网络摄像头测试))

首先连接 Picam,并使用 raspi-config 启用它

源代码:PySpectrometer-main.zip

安装依赖:

  • 安装python3-opencv
  • 安装python-dev lib -base-devpip3
  • 安装scipy
  • pip3安装peakutils

使用:python3 pyspectrometer . v1.py运行程序

使用以下命令运行程序:python3 pyspectrometer-v1.py

要校准,在光谱仪前面的一张卡片上照射 2 支已知波长的激光器(推荐使用 He-Ne、氩气或 DPSS!(二极管激光器的波长可以是 +/- 几纳米!))。

单击图形上的两个峰值,并在每个框中输入相应的波长。然后点击“校准”。在本例中,我使用 532nm (DPSS) 和 633nm He-Ne 进行了校准。然后,Scale 和 labells 将进行调整以匹配您的值。

为获得良好的准确性,请确保您的波长相距很远,最好一个在红端,一个在蓝端

或者,您可以在光谱仪前使用荧光管(或任何其他气体放电管),您必须研究发射线的波长(荧光管为汞,氖、氩、氙用于其他类型)这将成为你的锻炼!

其他设置

“标记峰宽”和“标记阈值”分别设置要标记的峰宽和将其视为峰的水平。默认值很好,但如果您发现图表过于混乱,您可以使用这些值。

快照,对图形部分进行快照,如下所示: 

示例光谱

这是一个荧光灯泡光谱的例子。峰值在405,435,545,650是汞,铕(灯荧光粉之一)是可见的~610nm。

测量廉价红色激光笔的波长(661nm)

测量一个廉价的紫色激光笔的波长,注意到从纸上强烈的荧光!纸用荧光染料(可以选用香豆素)进行光学增亮。

日光的光谱(指向窗外的蓝天)

氦氖放电的光谱。

应用最小平滑:

应用最大平滑:

版本 3 具有峰值保持功能来检测瞬态事件,例如激光脉冲或相机闪光灯!

按快照按钮还会将数据转储到 CSV 文件。这是比图形窗口更准确的数据,可以导入到 Pi 上的 OpenOffice。

注意:文件名中有冒号。Unix like OS's eg Linux 没有问题,但如果你想导入到 Windows,你会发现你必须重命名这些!

从自制脉冲染料激光器获得的调谐曲线。从左到右:香豆素-1、罗丹明6G、罗丹明B。

外文原文:点击进入
声明:本文由Hackaday授权电路城翻译,系电路城的原创内容,转载请注明出处!

加入微信技术交流群

技术交流,职业进阶

关注与非网服务号

获取电子工程师福利

加入电路城 QQ 交流群

与技术大牛交朋友

讨论