Мазмұны:
- Жабдықтар
- 1 -қадам: Прототипті жасаңыз
- 2 -қадам: Бағдарламаны жобалау
- 3 -қадам: Бағдарлама коды
- 4 -қадам: қорапты жасаңыз
Бейне: Tweerstationneke A.k.a. Голландиялық ауа райы бекеті: 4 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:22
Менің әкем әрқашан соңғы жаңалықтар мен соңғы ауа райы ақпараттарына қызығушылық танытады. Бұл мені 76 жасында туған күннің тамаша сыйлығына әкелді: Кішкентай метеостанция, ол бос емес, ол күні бойы бұрышта тыныш отырады және соңғы болжамдардың қысқаша мазмұнын береді.
Ол Голландияның екі веб -сайтына арналған. Мүмкін сіз бұл тақырыптың күлкілі жергілікті атауынан көре аласыз! Бір қала бойынша жергілікті болжамды әр 10 минут сайын json форматында береді. Екіншісі келесі екі сағатқа жауын -шашын туралы болжамды қарапайым мәтін түрінде береді, ол әрқашан білуге ыңғайлы. Егер сіз Нидерландыда тұрмасаңыз, бұл тақырыпты кез келген басқа қызметке оңай бейімдей алатыныңызға сенімдімін.
Жабдықтар
- ESP8266 тақтасы; Wemos D1 mini пайдалануға кеңес беремін
- 128*160 нүктесі бар 1,8 дюймдік TFT экраны; 16 биттік түс
- Бірнеше кабель
- Бағдарлама бұрынғыдай немесе өзіңіздің жеке бағдарламаңызды құрудан басталады
- Барлығын біріктіруге арналған жақсы қорап. Стандартты қолданыңыз немесе бекітілген дизайнмен өзіңізді басып шығарыңыз
1 -қадам: Прототипті жасаңыз
Экран мен контроллерді қосу
Кішкене жалпақ кабельді қолданып, тақта мен TFT экранын бірге дәнекерлеңіз. Иондық бөлшектерді дұрыс қосу үшін тізімді пайдаланыңыз
TFT ЭКРАНЫ ------------------ WEMOS
Жарықдиодты ------------------------------- D8 SCK ---------------- --------------- D5SDA ------------------------------- D7A0- -------------------------------- D3RESET ----------------- ----------- D2CS ---------------------------------- D4GND --- ---------------------------- GNDVCC --------------------- ---------- 3V3
Сонымен қатар, жарықдиодты D8 түйреуішінің орнына 3v3 қосуға болады. Мен құрылғыны түнгі 23:00 шамасында ұйықтап, сағат 07:00 шамасында қайта ояту үшін D8 түйреуішін қолдандым. Бұл сол уақыттан кейін ауа райы бюллетенін оқитын бірінші сәт болады, себебі ол уақытты тексеру үшін тақырыпты оқиды. Бұл құрылғыда нақты уақыт жоқ.
Егер бәрі жұмыс істесе, USB кабелін Wemos -қа қосыңыз және бағдарламалық жасақтаманы жүктеңіз. Егер бәрі жұмыс істесе, қорапты құруды бастауға болады.
2 -қадам: Бағдарламаны жобалау
Бұл ауа райы құрылғысы туралы менің идеяларым
- Басқа wifi ортасына оңай бейімделеді
- Ауа райы мен жаңбыр туралы болжамды көрсетіңіз
- Түймелер жоқ
- Ешқандай дыбыс жоқ, қарапайым дыбыс жоқ
Осыны ескере отырып, мен белгілі Wifi желісін таба алмайтын кезде WifiManager кодынан басталатын бағдарлама жасадым. Ол өз желісін құрады және дисплейде атауды көрсетеді. Бұл сізге Wifi параметрлерін жеке үй желісіне орнатуға мүмкіндік береді.
Бұл орнатудан кейін ауа райы болжамы мен жаңбырдың жауын -шашынын әр 20 секунд сайын көрсетеді. Егер қандай да бір себептермен келесі болжамды оқу мүмкін болмаса, дисплейдің оң жағында кішігірім қате нөмірі көрсетіледі; және алдыңғы сурет көрсетіледі. Келесі кезеңде ақпаратты алуға жаңа әрекет жасалады.
Ауа райы туралы ақпарат сайттан json стиліндегі хабарламада алынады. Ондағы ақпарат түрлендіріледі және жаһандық айнымалыларда сақталады. Осылайша біз ақпаратты көрсетуден ақпаратты алуды ажыратамыз. Ауа райын 10 минутта бір рет тез алуға себеп жоқ.
Жауын -шашынның түсуін алу одан да қарапайым. Ол қарапайым мәтіндік форматта беріледі, жауын -шашын мөлшері 0..255 мәнінде күтіледі; тік жолақ; әр жолда уақыт. Бұл келесі 5 сағат ішінде әр 5 минут сайын. Жаңбыр бағасы ақылды түрде жеткізіледі, онда кішігірім мәндер айырмашылықты үлкен мәндер ретінде көрсетуге көбірек орын береді. Қолданылған формула келесідей:
mmhour = дөңгелек (pow (10, (жаңбырдың мәні - 109) / 32) * 10) / 10;
Нүктенің артында 1 ондық бар екеніне көз жеткізу үшін «10 -ны 10 -ға бөлу» қулық екенін ескеріңіз. Алдағы 2 сағатта күтілетін жаңбырдың максималды мөлшеріне байланысты график үшін 3 таразы қолданылады;
- Максимум 5 мм/сағ күтіледі
- Максимум 20 мм/сағ күтіледі
- Макс болжамның ең жоғары мәнінен алынады
Бұл жерде Нидерландыда біздің бағамыз 80 мм/сағ құрайды. сондықтан бұл шкала өте жақсы болады. Басқа елдер үшін мұны өзгерту дұрыс болар еді.
3 -қадам: Бағдарлама коды
Редактор параметрлері
Бұл ауа райы құрылғысына арналған бағдарламалық қамтамасыз ету Arduino бағдарламалау ортасында жасалған. Ыңғайлы болу үшін сіз оны осы жерден таба аласыз. Оны сол күйінде қолданыңыз; немесе оны сіздің қажеттіліктеріңізге сәйкес өзгертіңіз. TFT экранында көрсетуге болатын барлық мәтіндер бағдарламаның жоғарғы жағында анықталады; егер қаласаңыз, оны өз тіліңізге оңай өзгертуге болатынын білдіреді. Мен Wemos D1 mini қолдандым, бірақ ұқсас тақталар да жұмыс істейді.
Arduino ортасында мен келесі параметрлерді қолдандым;
- Тақта: LOLIN (WEMOS) D1 RA & Mini
- Жүктеу жылдамдығы: 115200
- CPU жиілігі: 80 МГц
- Жарқыл өлшемі: 4M (SPIFFS жоқ) V2 төменгі жады ажыратылған
Бағдарламалық қамтамасыз ету таймерлері циклды () жеңілдетуге және оқуға ыңғайлы ету үшін қолданылады. Ақпараттың дисплейі ақпаратты жүктеуден бөлек тұрады. Осылайша біз басқа экран өлшемдерін қолдана аламыз және бағдарламаны өзгертпей -ақ.
. Ino файлын қолданыңыз және оны arduino редакторына жүктеңіз. Тақтаны редакторға орнатыңыз. Бағдарламаға қажетті C-тәрізді PROGMEM массивтерінің болуын қамтамасыз ететін тақырып файлын тіркеңіз.
SD картасы
Қол жетімді 1,8 дюймдік дисплейлердің көпшілігінде экранның артында SD картасының ұясы бар екенін ескеріңіз. Бұл картада үлкен кескіндерді сақтауға көмектесетін жақсы мүмкіндік. Микроконтроллерлердің көпшілігінде тым көп жад жоқ, бұл көмектеседі.
Мен SD картасын дисплеймен жұмыс істеуге тырысуға көп уақыт жұмсағаныммен, мен жұмыс істей алмадым. Мен дисплейді қолдана аламын; SD картасынан файлды сәтті шығарыңыз, бірақ содан кейін мен TFT экранына жете алмадым. Кітапханаларды өзгерту, кітапханалардың тәртібін өзгерту және басқа мүмкіндіктерді жоққа шығару үшін бағдарламаны ең кішкентай органға «шешіндіру» маған көмектеспеді.
Менің ренішімді қосу үшін; Интернетте ұқсас нәтиже беретін адамдардың көптеген мысалдары бар, хммм. Мүмкін менің TFT экранында аппараттық мәселе болуы мүмкін бе? Немесе мен ойламаған нәрсе ме? Кез келген ұсыныстар келесі әрекет үшін құпталады. Бірнеше кештерді өткізгеннен кейін; Мен бұл жолдан кетуді шештім. Суреттер тек 50x50 пиксель болғандықтан (әрқайсысы 16 биттік түспен 5000 байттан тұрады) ESP мұны PROGMEM -де оңай сақтай алады. Міне, мен қолданған амал.
Бұл таңдау тағы бір қиындықты тудырды. BMP суретін оқуға болатын форматқа қалай алуға болады. Біраз іздегеннен кейін мен бұл жұмбақты ертерек шешкен Хеннинг Карлсеннен таптым. Ол-p.webp
4 -қадам: қорапты жасаңыз
Бұл маған қажет бірінші қорап емес. Жеткізушілерден көптеген стандартты қораптар бар. Кішкене араны, пышақты, бұрғылауды және т.б көмегімен қорапта дисплейге тесік жасау оңай. Бірақ мен ешқашан жақсы тіктөртбұрыш жасай алмадым. Мүмкін дағдылар және/немесе шыдамдылық жеткіліксіз;-)
Шешім: менің жолым болды. Менде колледж бар, ол техникалық заттармен скрипкаға келетін болсақ, супермен сияқты. Бұған 3D дизайны мен басып шығару кіреді. Сондықтан ол бос уақыттың көп бөлігін TFT дисплейі мен микроконтроллерді өлшеуге және айналасында қорап жасауға шешім қабылдады. Барлығы жақсы сәйкес келеді, суреттерді қараңыз. Онда тіпті дисплейге қосылатын қондырмалар, USB қосқышына арналған тесік және микроконтроллерді бекіту орны бар.
Арджанға осы керемет жұмыс үшін рахмет !!! Одан да жақсысы, ол бәріне өз жұмысына қол жеткізуге мейірімді болды, сондықтан егер сіз оның файлдарын сілтемеден жүктеп алып, оны 3D принтер үшін қолдансаңыз, онда сіз контенті бар қорапты жасай аласыз.
Ұсынылған:
HC-12 ұзақ қашықтықтағы ауа райы станциясы мен DHT сенсорлары: 9 қадам
HC-12 ұзақ қашықтықтағы ауа райы станциясы мен DHT сенсорлары: Бұл оқулықта біз екі дхт сенсоры, HC12 модульдері мен I2C СКД дисплейі арқылы алыс қашықтықтағы метеостанцияны қалай жасауға болатынын білеміз
Морзе код бекеті: 3 қадам
Морзе код станциясы: Дит-дит-дах-дах! Морзе кодын осы Arduino Uno жеңіл жобасымен үйреніңіз. Бұл Arduino -ның қарапайым жобасы - Морзе кодының станциясы. Морзе коды - бұл таңбаларды нүкте мен сызықша ретінде кодтайтын байланыс әдісі. Бұл схема пьезо -дыбыстық сигналды қолданады
Голландиялық 8x8 сөз сағаты: 7 қадам (суреттермен)
Голландиялық 8x8 сөз сағаты: Мен Arduino көмегімен сөз сағатын бірінші болып жасамайтынымды білемін. Нидерландыға айналдыру үшін менің «істеуім» керек болатын тізім болды. Басқа жоба үшін мен бұрыннан бірдеңені тексеру үшін «colorduino / rainbowduino / funduino» сатып алдым
Ауа райы шамы - Ауа райы мен температура бір қарағанда: 8 қадам
Ауа райы шамы - Ауа райы мен температура бір қарағанда: Бұл сиқырлы шамды қолдана отырып, сіз ағымдағы температура мен жағдайды бірден біле аласыз
IoT жеңілдетілді: Қашықтағы ауа райы деректерін түсіру: УК және ауа температурасы мен ылғалдылық: 7 қадам
IoT жеңілдетілді: Қашықтағы ауа райы деректерін түсіру: УК және ауа температурасы мен ылғалдылығы: Бұл оқулықта біз УК (ультракүлгін сәуле), ауа температурасы мен ылғалдылық сияқты қашықтағы деректерді түсіреміз. Бұл деректер өте маңызды болады және болашақта метеостанцияда қолданылады. Блок -диаграмма соңында не алатынымызды көрсетеді