Пълно ръководство за ултравиолетовия сензор AS7331: Работа и примери с Arduino

  • Сензорът AS7331 измерва ултравиолетовото лъчение в три канала: UVA, UVB и UVC.
  • Интеграцията с Arduino е лесна благодарение на I²C комуникацията и библиотеката SparkFun.
  • Позволява ви да конфигурирате различни режими на работа, за да оптимизирате прецизността и консумацията на енергия.
  • Неговата гъвкавост и чувствителност го правят идеален за научни, екологични и лични приложения.

UV сензор

Светът на ултравиолетовите сензори се е развил много през последните години и AS7331 се превърна в основен ориентир. За тези, които искат да измерват ултравиолетовата (UV) радиация с висока прецизност и надеждност. Ако сте ентусиаст на Arduino, инженер, учен или просто се интересувате от напредъка в сензорите за околната среда, със сигурност сте се сблъсквали с необходимостта от точно записване на UV експозицията. В тази статия ще ви разкажа всичко, което трябва да знаете за ултравиолетовия сензор AS7331, как да извлечете максимума от него и как да го свържете към Arduino, за да наблюдавате UV радиацията в реално време..

Въпреки малкия си размер, AS7331 е снабден с много технологии.Благодарение на високата си чувствителност и архитектурата с три независими UV канала, той е идеален за всякакви приложения: от образователни проекти и домашни метеорологични станции до индустриални системи за сигурност и научни изследвания, където прецизността е ключова. И ако някога сте се борили с трудно интегрируеми сензори, ще се радвате да знаете, че благодарение на платката SparkFun Qwiic и нейната специфична за Arduino библиотека, работата с AS7331 ще бъде по-лесна, отколкото си мислите.

Какво представлява UV сензорът AS7331 и защо е толкова специален?

AS7331 е UV сензор, разработен от OSRAM. което позволява измерване на ултравиолетовото лъчение в три ключови диапазона: UVA (320-400 nm), UVB (280-320 nm) и UVC (200-280 nm)Всеки канал има собствен фотодиод и интерферентен филтър, осигуряващи изключителна чувствителност и изключителна точност, дори при ниски нива на радиация и при различни условия на осветление.

Сензорът се предлага във формат на платка с разклонител, подобен на този от SparkFun, което улеснява безспойковото свързване благодарение на системата Qwiic (стандартни 3,3V, GND, SDA и SCL конектори) или, ако предпочитате, с помощта на традиционни 2,54 мм конектори. Компактният му размер (по-малък от 3 см дължина) и ниската консумация на енергия което го прави идеален избор както за самостоятелни системи, захранвани от батерии, така и за стационарни проекти.

Технически характеристики и функционалности на AS7331

  • Три независими UVA, UVB и UVC канала, всеки със собствен специален фотодиод и филтър.
  • Четири режима на работа за да отговарят на различни нужди: Единично измерване (One-shot или CMD), Непрекъснато измерване (CONT), Синхронизирано стартиране (SYNS) и Синхронизирано стартиране/край (SYND).
  • Много висок динамичен диапазон (до 3,43E+10 благодарение на комбинацията от резолюция и регулируемо усилване), идеален за измервания в екстремни или променящи се среди.
  • Ниска консумация на енергия1,42 mA активен режим, 970 µA покой и само 1 µA дълбоко изключен режим.
  • Комуникация чрез I²C с възможност за задаване на четири адреса (0x74 до 0x77) чрез спояващи мостове, което улеснява използването на няколко сензора на една и съща шина.
  • Лесно свързване благодарение на двойните Qwiic конектори и допълнителните пинове за прекъсвания и синхронизация.
  • Захранващо напрежение на 2,7V до 3,6V, съвместим с повечето платки Arduino и вградени системи.

За какво се използва UV сензорът AS7331?

Благодарение на своите характеристики, AS7331 е полезен за много повече от просто измерване на типичния UV индекс.

  • Мониторинг на околната средаКонтрол на UV лъчението в метеорологични станции и лаборатории.
  • Личен мониторинг на UV експозициятаинтеграция в носими или преносими устройства, за да се избегнат рисковете от прекомерно излагане на слънце.
  • промишлени приложенияконтрол на процеси, които зависят от UV лъчение, като например втвърдяване на смола, дезинфекция или контрол на качеството в производството.
  • Научно изследване: изследване на ефектите на UV лъчението върху различни материали, живи организми или култури.
  • Образователни и мейкърски проектиИзползвайте в класни стаи, работилници или като учебно помагало за изучаване на оптични сензори и ултравиолетова радиация.

Режими на работа: изберете този, който е подходящ за вашия проект

Една от силните страни на AS7331 е неговата универсалност в експлоатацияИма четири режима:

  1. Единичен изстрел (CMD): Сензорът се активира само за едно измерване и се връща в режим на ниска консумация на енергия. Това е идеалният вариант за проекти, където животът на батерията е приоритет.
  2. Непрекъснато измерване (CONT): Сензорът непрекъснато прави измервания и изпраща данни. Това е много полезно, ако се нуждаете от постоянно наблюдение, въпреки че консумацията на енергия ще бъде малко по-висока.
  3. Синхронизиран старт (SYNS): Позволява задействане на измерването чрез външен сигнал. Идеален е за синхронизиране на сензора с други устройства или събития.
  4. Синхронизирано начало/край (SYND): Както началото, така и краят на измерването се контролират от сигнали, което увеличава контрола върху процеса на събиране на данни, идеално за експерименти, където времето е от съществено значение.

Тази гъвкавост прави AS7331 не само мощен, но и адаптивен към много разнообразни нужди., от класическото хоби с Arduino до взискателните индустриални приложения.

Свързване на AS7331 към Arduino: хардуер и връзки

Най-популярната версия на този сензор е SparkFun Qwiic Спектрален UV сензор AS7331Той е проектиран да улесни живота както за начинаещи, така и за експерти:

  • Двоен Qwiic конектор: Спестявате запояване и избягвате грешки при окабеляване, като се свързвате директно към Qwiic-съвместими Arduino платки.
  • 2,54 мм проходна глава: Ако предпочитате стандартни кабели за пускане на двигателя или ще запоявате, можете да го направите без проблем.
  • Пинове за прекъсвания и синхронизация: полезно, ако ще се възползвате от разширените режими на работа.
  • Усилване на I²C: Можете да конфигурирате до четири адреса, така че ако искате да имате няколко сензора едновременно, също няма да имате проблем.

Захранването от 3,3V е стандартно за платката SparkFun, въпреки че можете да го адаптирате според изискванията на вашия микроконтролер. Ако използвате Arduino Uno или Mega, достатъчно е да се използва преобразувател на логически нива, ако е необходимо, въпреки че повечето съвременни платки, съвместими с Qwiic, вече работят директно на 3,3 V.

Arduino библиотека за AS7331: Как да я инсталирате и какво прави

Екипът на SparkFun е разработил специфична библиотека за Arduino което значително опростява работата с този сензор. Можете да го намерите директно в Arduino Library Manager, като потърсите „SparkFun AS7331“ или да го изтеглите от хранилището на GitHub. Тази библиотека не само ви позволява да инициализирате и четете данни от всичките три UV канала, но също така включва методи за:

  • Регулиране на усилването на сензора за подобряване на чувствителността или динамичния диапазон в зависимост от падащата светлина.
  • Промяна на режимите на работа (изберете между четирите налични само с един ред код).
  • Промяна на I²C адреса от самия софтуер, стига физически да сте конфигурирали съответните джъмпери.
  • Проверете състоянието на ниска мощност и скоростта на вътрешния часовник на сензора.
  • Достъп до данни от всеки UV канал поотделно или в комбинация, което позволява изчисляването на UV индекса или по-сложни спектрални анализи.

Практически примери за употреба с Arduino

Нека разгледаме как можете да започнете работа с AS7331 и Arduino с два много типични случая, благодарение на примерите, включени в официалната библиотека:

Пример 1: Основно измерване (режим на еднократно снимане)

Този първи пример е идеалната отправна точка. Използвайте режим на единично измерване, тоест сензорът остава в режим на готовност, докато не поискаме измерване, което той прави и автоматично се връща в режим на ниска консумация на енергия. По този начин можете да записвате специфични стойности на UV лъчението практически без консумация на енергия.
Потокът би бил такъв:

  • Импортирайте библиотеката и създайте сензорния обект.
  • Инициализирайте I²C комуникацията.
  • Извършвайте измерване, когато пожелаете (например, от време на време с таймер или при поискване чрез натискане на бутон).
  • Получете данни от трите канала (UVA, UVB, UVC) и ги покажете на серийния монитор или ги използвайте за изчисляване на UV индекса.

Най-хубавото на този метод е ниската му консумация на енергия и простотата. Веднага щом заредите скицата, ще видите данните да се актуализират на всеки 2 секунди на серийния монитор.

Пример 2: Измерване в непрекъснат режим

Когато имате нужда от данни в реално време без паузи, библиотеката ви позволява да превключите към непрекъснат режимТук сензорът непрекъснато прави измервания и изпраща данни, което е много полезно в системи за мониторинг на околната среда, където скоростта на промяна е бърза.
В този случай просто трябва да свържете INT пина към цифров пин на Arduino, способен да обработва прекъсвания (по подразбиране обикновено се използва D26, но можете да го промените в кода).
Можете да използвате серийния монитор по абсолютно същия начин, за да показвате постоянния поток от UV данни.

Други разширени режими на употреба

Ако вашите нужди са по-големи, синхронизираните режими на AS7331 (SYNS и SYND) ви позволяват да синхронизирате сензора с външни процеси, да контролирате началото и края на всяко измерване от микроконтролера и дори да следите точното време на събиране на данни (контрол на времето на ниво такт). Тези видове функции са изключителни за сензори от този ценови диапазон и размер.

Съвети за извличане на максимума от AS7331 с Arduino

  • Използвайте системата Qwiic Ако търсите лесно свързване и искате да избегнете типичните грешки при окабеляването.
  • Възползвайте се от възможността за множество сензори на една и съща I²C шина променяйки посоките, идеално за сравняване на радиация на различни места или ъгли.
  • В проекти, захранвани с батерии, давайте приоритет на режимите с ниска консумация на енергия., подобно на One-shot, и изключва сензора, когато измерването не е от съществено значение.
  • Винаги се обръщайте към информационния лист и примерите в библиотеката, тъй като там ще намерите подробности за вътрешните лог файлове и как да извлечете максимума от техните възможности.
  • Не забравяйте, че UVA, UVB и UVC каналите могат да имат различни приложенияUVA лъчите са свързани с дългосрочно увреждане на кожата, UVB лъчите - със слънчево изгаряне, а UVC лъчите са особено важни при дезинфекция и контрол на околната среда.
ltr390
Свързана статия:
Открийте сензора за UV светлина LTR390: функции и приложения

Достъп до документация, ресурси и поддръжка

Една от силните страни на екосистемата AS7331/SparkFun е обширна документация и общност който го поддържа. От уебсайта на SparkFun можете да изтеглите:

  • Схеми и Eagle файлове за модифициране или интегриране на вашия собствен хардуер.
  • Ръководства за свързване стъпка по стъпка с ясни изображения и описания.
  • Подробно описание на информационния лист на сензора (AS7331).
  • Връзки към хранилища за хардуер и софтуер в GitHub, които улесняват както интеграцията с Arduino, така и адаптацията към други среди.

Не забравяйте, че общността с отворен код е много активна. А на платформи като GitHub можете да намерите актуализации, пачове, подобрения или дори варианти на библиотеки, съобразени с различни платки или нужди. А ако сте по-заинтересовани от по-напреднали „Направи си сам“, винаги можете да допринесете със свои собствени примери или подобрения.

Сравнение с други популярни UV сензори

Ако сте проверили пазара, ще видите много алтернативи като LTR390 на Adafruit или прости UV сензори, базирани на фотодиоди, но AS7331 се отличава с наистина независими спектрални канали, много широк динамичен диапазон и разширени опции за управление.Много други сензори едва различават UVA от UVB или дори не предлагат лесна интеграция с Arduino, докато AS7331 ви предоставя всичко това на една ръка разстояние в компактен и здрав форм-фактор.

Откъде мога да взема AS7331 и колко струва?

AS7331 в момента се предлага от специализирани търговци на дребно като SparkFun, OpenCircuit и големи платформи за електронна търговия като Amazon и AliExpress. Цената му може да варира в зависимост от дистрибутора и дали купувате цялата платка Qwiic или само сензора, но обикновено е около 20 до 40 евро.Не е най-евтиният сензор, но съотношението цена-качество и възможностите, които предлага, го оправдават повече от добре.

Практически приложения и идеи за проекти

С AS7331 можете да правите много повече от това просто да измервате слънцето. Ето няколко идеи:

  • Преносим UV монитор: за спортисти, туристи или работници на открито, за предупреждение кога излагането е опасно.
  • Усъвършенствана домашна метеорологична станцияКомбиниране на UV данни с температура, влажност и налягане за цялостни екологични изследвания.
  • Индустриален контрол на качеството: осигуряване, че процесите на UV втвърдяване (като лепила или лакове) получават точната доза.
  • UVC дезинфекционни системинаблюдение на количеството гермицидна светлина в болници, лаборатории или дори домашни пречистватели.
  • Образователни проекти: да се преподават практически понятия за електромагнитното излъчване, слънцезащитата или физиката на материалите.

Единственото ограничение е вашето въображение и нуждите на вашия проект!

Сензорът AS7331 представлява най-новото в достъпните UV сензори за производители и професионалисти.Лесната му интеграция, мощната библиотека за Arduino и поддръжката от общността с отворен код го правят перфектен инструмент както за обучение, така и за справяне със сложни предизвикателства. Независимо дали искате да измервате точно, да експериментирате или да разработвате усъвършенствани приложения, няма да останете разочаровани.