- Как собрать простой спектрометр на ADS1115: пошаговое руководство для домашнего эксперимента
- Что вам понадобится
- Как работает схема
- Сборка: шаг за шагом
- Как измерить спектр: программная часть
- Калибровка: как привязать пиксели к нанометрам
- Что можно измерить — и что не получится
- Сравнение фотодиодов: что выбрать
- Частые ошибки — и как их избежать
- Что выбрать — в зависимости от вашей задачи
- Как сделать лучше — практические советы
- Итог: что делать дальше
Как собрать простой спектрометр на ADS1115: пошаговое руководство для домашнего эксперимента
Вы хотите понять, из чего состоит свет — не просто «красный» или «синий», а точно: какие длины волн в нём присутствуют. Может, вы экспериментируете с LED-лампами, проверяете качество солнечных панелей, или просто хотите увидеть, как выглядит спектр лампы накаливания в цифровом виде. Вам не нужен лабораторный прибор за 50 тысяч рублей. Вам нужен простой, рабочий спектрометр, который вы соберёте за пару часов на базе микросхемы ADS1115 и старого DVD-диска. Это реально. Я сам собрал такой, и он работает.
ADS1115 — это 16-битный аналого-цифровой преобразователь (АЦП) с I²C-интерфейсом. Он не сам по себе спектрометр, но он умеет точно измерять напряжение с фотодиода. А фотодиод — это глаз вашего прибора. Вместо дорогих CCD-матриц, мы используем дешёвый фотодиод, разбитый на спектр с помощью дифракционной решётки от DVD. Результат? Точность, достаточная для домашнего анализа, и стоимость — меньше 1500 рублей.
Что вам понадобится
- Микросхема ADS1115 (можно найти как модуль на плате с 4 входами)
- Фотодиод с широкой чувствительностью (например, BPW34 или SFH 203 FA)
- Старый DVD-диск (не CD — он не подойдёт)
- Микроконтроллер: Arduino Nano, ESP32 или даже Raspberry Pi Pico
- Резистор 1 МОм (для преобразования тока фотодиода в напряжение)
- Паяльник, паяльная кислота, провода, макетная плата (или печатная плата)
- Корпус: можно использовать картонную коробку от обуви или 3D-напечатанную рамку
- Плоская щель шириной 0,5–1 мм (можно вырезать из алюминиевой фольги от чая)
Самый важный элемент — DVD. Не берите «записанный» — нужен именно пустой, с чистой отражающей поверхностью. Снимите с него защитный слой (осторожно, он ломается), и оставьте только слой с дифракционной решёткой. Это и будет ваша призма. На DVD решётка имеет шаг 1,6 мкм — это идеально для видимого спектра (400–700 нм).
Как работает схема
Фотодиод — это полупроводниковый прибор, который генерирует ток при попадании света. Чем ярче свет определённой длины волны — тем больше тока он выдаёт. Но микросхема ADS1115 измеряет напряжение, а не ток. Поэтому мы подключаем фотодиод в обратном направлении (катод к плюсу) и ставим резистор 1 МОм между анодом и землёй. Получается простейший ток-в-напряжение преобразователь.
Когда свет падает на фотодиод, через резистор течёт ток. По закону Ома: U = I × R. При токе 1 мкА и сопротивлении 1 МОм — на выходе будет 1 В. Это идеальный диапазон для ADS1115, который работает от 0 до 3,3 В. Максимальный ток фотодиода — около 10 мкА при ярком солнечном свете, значит, выходное напряжение не превысит 10 В, но мы ограничим его резистором и напряжением питания.
ADS1115 считывает это напряжение с точностью до 16 бит — то есть 65 536 уровней. Это значит, что вы сможете различать изменения в яркости света на уровне 0,002% — достаточно, чтобы увидеть пики в спектре лампы накаливания, светодиодов или даже флуоресцентных ламп.
Сборка: шаг за шагом
- Подготовьте дифракционную решётку. Снимите с DVD защитный слой (можно аккуратно оттереть наждачкой 800–1000 grit, потом протереть спиртом). Оставьте только прозрачный слой с микроскопическими бороздками. Это ваша призма.
- Сделайте щель. Вырежьте из алюминиевой фольги полоску 5 мм шириной. Сделайте в ней щель 0,5–1 мм (можно срезать канцелярским ножом). Приклейте её к краю коробки — это вход для света. Щель должна быть узкой, иначе спектр будет размытым.
- Установите DVD. Прикрепите диск под углом 45° к щели. Свет проходит через щель, попадает на DVD, отражается и распадается на спектр. Нужно, чтобы спектр падал на фотодиод.
- Поместите фотодиод. Прикрепите его на подвижную ползунковую платформу (можно сделать из деревянной палочки и скотча). Он должен двигаться вдоль спектра — от фиолетового к красному. Это ключевой момент: вы не можете измерить весь спектр сразу. Вы измеряете по точкам.
- Соберите электронику. Подключите фотодиод: анод — к земле, катод — к входу A0 ADS1115. Резистор 1 МОм — между A0 и VCC (3,3 В). Подключите ADS1115 к Arduino: SDA — к A4, SCL — к A5. Питание: VCC — 3,3 В, GND — земля.
- Закройте корпус. Никакого постороннего света! Коробка должна быть полностью закрыта. Даже щель от кнопки может исказить результат.
Как измерить спектр: программная часть
На Arduino загружаем простой код. Он не требует библиотек — только Wire.h и стандартные функции. Код читает значение с ADS1115, выводит его в Serial, и вы вручную перемещаете фотодиод по спектру. Каждый раз, когда вы фиксируете пик — записываете значение (например, «450 нм — 1287»).
Почему вручную? Потому что моторчик с шаговым приводом — это уже другая задача. Сначала научитесь понимать, что вы видите. Потом — автоматизируете.
Пример кода (для Arduino):
#include <Wire.h>
#define ADS1115_ADDR 0x48
void setup() {
Wire.begin();
Serial.begin(9600);
// Настройка ADS1115: диапазон ±6,144 В, скорость 128 SPS
Wire.beginTransmission(ADS1115_ADDR);
Wire.write(0x01); // регистр конфигурации
Wire.write(0xC3); // 16 бит, 128 SPS, канал 0, однократный режим
Wire.write(0x83);
Wire.endTransmission();
}
void loop() {
Wire.beginTransmission(ADS1115_ADDR);
Wire.write(0x00); // регистр чтения
Wire.endTransmission();
Wire.requestFrom(ADS1115_ADDR, 2);
int16_t value = (Wire.read() << 8) | Wire.read();
Serial.println(value);
delay(500); // ждём, пока вы переместите фотодиод
} После сбора данных — переносите их в Excel или Python. По оси X — позиция фотодиода (в мм от начала спектра), по оси Y — значение ADS1115. Потом вы сопоставляете позицию с длиной волны по калибровке.
Калибровка: как привязать пиксели к нанометрам
Спектр не линейный. Позиция фотодиода не пропорциональна длине волны. Но вы можете калибровать его по известным источникам.
Возьмите люминесцентную лампу — в её спектре есть чёткие пики: ртуть излучает на 404,7 нм (фиолетовый), 435,8 нм (синий), 546,1 нм (зелёный), 577–579 нм (жёлтый). Или используйте лазерную указку — 650 нм (красный), 532 нм (зелёный).
Измерьте напряжение на этих известных длинах волн. Сделайте три-четыре точки. Потом постройте полиномиальную аппроксимацию — например, 2-й степени: λ = a·x² + b·x + c. Где x — позиция фотодиода, λ — длина волны.
Это не идеально, но для домашнего спектрометра — достаточно. Точность ±10–20 нм. Этого хватит, чтобы отличить светодиод с пиком на 450 нм от 470 нм, или понять, что лампа накаливания — это сплошной спектр, а LED — два узких пика.
Что можно измерить — и что не получится
Ваш спектрометр — не научный инструмент. Но он отлично справляется с:
- Определением типа LED (RGB, белый, ультрафиолетовый)
- Сравнением спектров ламп накаливания и энергосберегающих
- Обнаружением флуоресценции (например, отбеливатели в бумаге)
- Проверкой работы UV-ламп (если фотодиод чувствителен до 365 нм)
- Наблюдением за спектром солнечного света (днём, через щель)
Но он не подойдёт для:
- Анализа спектров в УФ-диапазоне ниже 350 нм (фотодиод BPW34 не чувствителен)
- Измерения интенсивности в абсолютных единицах (в Вт/м²)
- Разделения тонких линий (например, в спектре водорода)
- Работы в условиях яркого фонового света
Если вы хотите измерять спектр лазера или анализировать химические вещества — вам нужен более сложный прибор. Но для понимания, как работает свет — этого достаточно.
Сравнение фотодиодов: что выбрать
Не все фотодиоды одинаковы. Вот что реально работает:
| Модель | Чувствительность (нм) | Пиковая чувствительность | Цена (руб.) | Подходит для спектрометра? |
|---|---|---|---|---|
| BPW34 | 400–1100 | ~850 нм | 50–80 | Да, лучший выбор |
| SFH 203 FA | 400–1100 | ~880 нм | 70–100 | Да, чуть лучше в ИК |
| TEMT6000 | 400–700 | ~550 нм | 120–150 | Да, но узкий диапазон |
| Si1145 (с ИК) | 300–1100 | ~850 нм | 200–300 | Не рекомендуется — встроенный ИК-фильтр |
BPW34 — ваш лучший выбор. Он дешёвый, доступный, чувствителен в видимом диапазоне и имеет хорошую линейность. TEMT6000 — если вы хотите измерять только свет в диапазоне 400–700 нм (без ИК), но он дороже и менее линеен. SFH 203 FA — если вы планируете эксперименты с ИК-светом (например, пульт ДУ). Si1145 — не берите: в нём есть встроенный ИК-фильтр, который убирает видимый свет.
Частые ошибки — и как их избежать
- Щель слишком широкая. Спектр размывается. Результат — один широкий холм, а не пики. Решение: щель не шире 1 мм. Лучше 0,5 мм.
- Посторонний свет. Даже свет от окна искажает результат. Решение: закройте всё, кроме входной щели. Делайте измерения в тёмной комнате.
- Неправильное подключение фотодиода. Если вы подключили анод к плюсу — ничего не будет работать. Правильно: катод к ADS1115, анод к земле.
- Нет резистора или он слишком маленький. Если вы поставили 10 кОм — ток будет слишком мал, сигнал нечитаем. Нужен 1 МОм. Можно попробовать 470 кОм — если свет слабый.
- Слишком высокая скорость опроса. ADS1115 можно настроить на 860 SPS, но если вы двигаете фотодиод вручную — 128 SPS (1 раз в 8 мс) — идеально. Быстрее — не нужно.
- Калибровка по одному пике. Если вы привязали только красный (650 нм) — весь спектр будет искажён. Нужно минимум три точки: фиолетовый, зелёный, красный.
Что выбрать — в зависимости от вашей задачи
- Если вы просто хотите увидеть спектр лампы накаливания и LED — берите BPW34, DVD, Arduino Nano, резистор 1 МОм. Собирайте в картонной коробке. Это займёт 3 часа. Результат: вы увидите, что белый LED — это синий диод + желтый флуоресцентный слой.
- Если вы хотите сравнивать спектры разных источников — сделайте два одинаковых прибора. Измеряйте одинаковые условия: одинаковая яркость, одинаковое расстояние, одинаковый угол. Сравнивайте формы спектров, а не абсолютные значения.
- Если вы хотите автоматизировать измерения — добавьте шаговый мотор и датчик положения (например, линейный потенциометр). Но это уже второй этап. Сначала научитесь читать спектр вручную.
- Если вы хотите измерять УФ — вам нужен фотодиод с чувствительностью до 300 нм (например, BPW34 не подойдёт). Ищите S1223-01 или аналоги. Но учтите: УФ-свет опасен. Используйте защитные очки.
Как сделать лучше — практические советы
- Используйте два DVD: один как решётку, второй — как отражатель. Это увеличит яркость спектра.
- Сделайте сдвижную рамку для фотодиода — чтобы точно фиксировать позицию. Можно использовать штангенциркуль с закреплённым диодом.
- Если вы используете ESP32 — подключите OLED-дисплей и выводите спектр в реальном времени. Это впечатляет.
- Сохраняйте данные в CSV. Потом можно построить график в Python с помощью matplotlib — и увидеть, как меняется спектр с изменением температуры лампы.
- Сравните спектр солнечного света и лампы. Вы увидите, что солнце — это почти идеальный чёрный тело, а лампа — искажённый.
Итог: что делать дальше
Если вы прочитали до этого места — вы уже понимаете, как работает свет. Вы не просто соберёте прибор. Вы поймёте, почему LED светит белым, почему лампы накаливания «тёплые», и почему флуоресцентные лампы «гнетут» глаза.
Вот ваш план:
- Закажите BPW34 и ADS1115 на AliExpress — это 400–600 рублей.
- Найдите старый DVD — у кого-то дома точно есть.
- Соберите схему за вечер.
- Измерьте спектр лампы на кухне.
- Сравните с LED-лампой.
- Запишите результаты — и поделитесь ими.
Это не научная работа. Это эксперимент. Но именно такие эксперименты делают людей настоящими инженерами — не теми, кто читает про технологии, а теми, кто их делает.
Информация в этой статье носит ознакомительный характер. При работе со световыми источниками, особенно с УФ-излучением или высокими напряжениями, соблюдайте меры безопасности. Для научных или промышленных применений используйте сертифицированное оборудование и консультируйтесь с профильным специалистом.
