Мазмуну:

BH1750 сенсору менен Arduino DIY жарык эсептегич: 6 кадам (сүрөттөр менен)
BH1750 сенсору менен Arduino DIY жарык эсептегич: 6 кадам (сүрөттөр менен)

Video: BH1750 сенсору менен Arduino DIY жарык эсептегич: 6 кадам (сүрөттөр менен)

Video: BH1750 сенсору менен Arduino DIY жарык эсептегич: 6 кадам (сүрөттөр менен)
Video: Использование карты Micro SD и регистрация данных с Arduino | Пошаговый курс Arduino, урок 106 2024, Июль
Anonim
Image
Image
BH1750 сенсору менен Arduino DIY жарык эсептегич
BH1750 сенсору менен Arduino DIY жарык эсептегич

Бул Нускамада мен сизге Arduino аркылуу чоң Nokia 5110 LCD дисплейи менен жарык эсептегичти кантип курууну көрсөтөм.

Жарык эсептегичти куруу - бул чоң үйрөнүү тажрыйбасы. Бул долбоорду куруп бүткөндөн кийин сиз жарык эсептегичтердин кандай иштээрин жакшыраак түшүнөсүз жана Arduino платформасынын канчалык күчтүү экенин иш жүзүндө көрөсүз. Бул долбоор база жана топтолгон тажрыйба менен келечекте татаал долбоорлорду оңой кура аласыз. Сиз бул долбоорду сиздин иш чөйрөңүздүн, өсүмдүктөрүңүздүн жарык шарттарын көзөмөлдөө үчүн колдоно аласыз. Эч кандай кечиктирбестен, баштайлы!

1 -кадам: Бардык бөлүктөрдү алыңыз

Бардык бөлүктөрдү алыңыз
Бардык бөлүктөрдү алыңыз

Бул долбоорду куруу үчүн керектүү бөлүктөр булар:

  • Arduino Uno ▶
  • BH1750 ▶
  • Nokia 5110 LCD ▶
  • Small Breadboard ▶
  • Зымдар ▶

Долбоордун баасы 12 доллардын тегерегинде.

2 -кадам: BH1750 Light Sensor

BH1750 жарык сенсору
BH1750 жарык сенсору

BH1750 жарык сыйымдуулугу сенсор улуу жана колдонууга абдан оңой. Бул сынык тактасы санарип сигналын түз чыгара турган 16 биттик AD конвертери менен келет, татаал эсептөөлөрдүн кереги жок.

Бул такта чыңалууну гана чыгаруучу LDRге караганда жакшыраак. BH1750 Жарык Сенсорунун интенсивдүүлүгүн эсептөө жүргүзбөстөн, люксметр менен түз өлчөөгө болот. Бул сенсор чыгарган маалыматтар түздөн -түз Lux (Lx) чыгарылат.

Сенсор I2C интерфейсин колдонот, ошондуктан Arduino менен колдонуу абдан оңой. Сиз болгону 2 зым туташтырууңуз керек.

Ошондой эле сенсордун баасы өтө төмөн, ал 2 доллардын тегерегинде.

Аны бул жерден алсаңыз болот: ▶

3 -кадам: Nokia 5110 ЖК

Image
Image
Жарык эсептегичти куруу
Жарык эсептегичти куруу

Nokia 5110 менин Arduino долбоорлорумдун эң жакшы көргөн дисплейи.

Nokia 5110 - бул графикалык ЖК экраны, ал башында уюлдук телефон үчүн арналган. Бул PCD8544 контролерун колдонот, ал аз кубаттуу CMOS ЖК контролери/драйвери. Ушундан улам, бул дисплей таасирдүү кубаттуулукка ээ. Ал күйгөндө болгону 0.4mA колдонот, бирок арткы жарык өчүрүлгөн. Уйку режиминде болгондо 0.06mAдан аз колдонот! Бул дисплей менин сүйүктүү болушумдун себептеринин бири. PCD8544 сериялык автобус интерфейси аркылуу микроконтроллерлерге интерфейстер. Бул дисплейди Arduino менен колдонууну абдан оңой кылат.

Сиз болгону 8 зым туташтырып, төмөнкү китепкананы колдонушуңуз керек:

Бул таасирдүү китепкана Хеннинг Карлсен тарабынан иштелип чыккан, ал Ардуино коомчулугуна китепканалары менен алдыга жылууга жардам берүү үчүн көп күч жумшаган.

Мен Nokia 5110 LCD дисплейин Arduino менен кантип колдонуу боюнча деталдуу окуу куралын даярдадым. Мен бул видеону ушул Нускамада тиркеп койдум, ал дисплей жөнүндө пайдалуу маалыматтарды берет, андыктан аны кылдаттык менен көрүүгө чакырам.

Дисплейдин баасы 4 доллардын тегерегинде.

Бул жерден алсаңыз болот: ▶

4 -кадам: Жарык эсептегичти куруу

Жарык эсептегичти куруу
Жарык эсептегичти куруу

Эми бардык бөлүктөрдү бириктирели.

Башында биз BH1750 Light сенсор модулун туташтырабыз. Бул болгону 5 төөнөгүч бар, бирок биз алардын 4үн туташтырабыз.

Чыңалуу сенсорун туташтыруу

Vcc Pin Arduino 5Vге барат

GND Pin Ардуинонун GNDге барат

SCL Pin Arduino Uno Analog Pin 5ке барат

SDA Pin Arduino Uno аналогдук пин 4кө барат

Дарек пини туташпай турат

Кийинки кадам - Nokia 5110 LCD дисплейин туташтыруу.

Nokia 5110 LCD дисплейин туташтыруу

RST Ардуинонун Digital Pin 12ге барат

CE Ардуинонун Digital Pin 11ге барат

DC Arduino санарип пин 10го барат

DIN Arduino санарип пин 9га барат

CLK Arduino санарип пин 8ге барат

VCC Arduino 3.3V LIGHT Arduino GNDге барат (арткы жарык)

GND Arduino GNDге барат

Эми биз бардык бөлүктөрдү бириктиргенден кийин, кодду жүктөө гана калды. Экран бир нече секундада көрсөтүлөт, андан кийин биз реалдуу убакытта жарыктын интенсивдүүлүгүн өлчөй баштайбыз!

5 -кадам: Долбоордун коду

Image
Image
Долбоорду тестирлөө
Долбоорду тестирлөө

Долбоордун коду 3 файлдан турат.

splash.cui.c

ui.c

BH1750LightMeter.ino

Код - Splash Screen Image

Биринчи файлда splash.c, проекттин башталышында Nokia 5110 LCD дисплейинде чагылдырылган экрандын экилик мааниси бар. Сураныч, Arduino долбооруңузга жеке графикаңызды кантип жүктөө керек экенин көрүү үчүн мен даярдаган тиркелген видеону көрүңүз.

ui.c коду - Колдонуучу интерфейси

Ui.c файлында, колдонуучу интерфейсинин экилик баалуулуктары бар, алар долбоор экранда көрсөтүлгөндөн кийин пайда болот. Сураныч, Arduino долбооруңузга жеке графикаңызды кантип жүктөө керек экенин көрүү үчүн мен даярдаган тиркелген видеону көрүңүз.

UVMeter.ino Code - Негизги программа

Долбоордун негизги коду абдан жөнөкөй. Биз Nokia 5110 китепканасын киргизишибиз керек. Андан кийин биз кээ бир өзгөрмөлөрдү жарыялайбыз. Биз дисплейди баштапкы абалга келтиребиз жана экрандын экранын 3 секундга көрсөтөбүз. Андан кийин, биз ui сөлөкөтүн бир жолу басып чыгарабыз жана сенсордон 150 милисекундадан маанини окуйбуз. Бардык сыйкырчылык цикл функциясында болот:

void loop () {int stringLength = 0; uint16_t lux = lightSensor.readLightLevel (); // сенсор жарыгын окуу = Стринг (люкс); // String stringLength = light.length () конверсиясы; // Биз String Length lcd.clrScr () билишибиз керек; lcd.drawBitmap (0, 0, ui, 84, 48); printLight (stringLength); // дисплейдеги сапты басып чыгаруу lcd.update (); кечиктирүү (150); }

Мен кодду ушул Нускамага тиркеп койдум. Коддун акыркы версиясын жүктөө үчүн сиз долбоордун веб-баракчасына кире аласыз:

6 -кадам: Долбоорду тестирлөө

Долбоорду тестирлөө
Долбоорду тестирлөө
Долбоорду тестирлөө
Долбоорду тестирлөө

Эми код жүктөлгөндөн кийин биз Light Meterди үйдүн ичинде жана сыртында сынап көрө алабыз. Мен муну Грециядагы жаздын күнөстүү күнүндө сынап көрөм. Жыйынтык фантастикалык болсо. Биз жарыктын интенсивдүүлүгүн долбоорду оңой өлчөй алабыз.

Тиркелген сүрөттөрдөн көрүнүп тургандай, Light Meter жакшы иштейт. Бул долбоор ачык булак жабдуулары менен программалык камсыздоонун эмнеге жөндөмдүү экенинин эң сонун далили. Бир нече мүнөттүн ичинде мындай таасирдүү долбоорду курууга болот! Бул долбоор башталгычтар үчүн идеалдуу жана башында айтканымдай, бул долбоор чоң үйрөнүү тажрыйбасы. Бул долбоор боюнча сиздин пикириңизди уккум келет. Сиз муну пайдалуу деп эсептейсизби? Бул долбоорду ишке ашыра турган жакшыртуулар барбы? Сураныч, комментарийлериңизди же идеяларыңызды төмөндөгү комментарийлер бөлүмүнө жазыңыз!

Сунушталууда: