Përmbajtje:
- Hapi 1: Merrni të gjitha pjesët
- Hapi 2: ESP32
- Hapi 3: Shfaqja e Nextion
- Hapi 4: Sensori BME280
- Hapi 5: Lidhja e pjesëve
- Hapi 6: Kodi i Projektit
- Hapi 7: Mendimet dhe Përmirësimet Finale
Video: ESP32 WiFi Stacioni i motit me një sensor BME280: 7 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:28
Të dashur miq, mirë se vini në një tutorial tjetër! Në këtë tutorial ne do të ndërtojmë një projekt të stacionit të motit të aktivizuar me Wi -Fi! Ne do të përdorim çipin e ri, mbresëlënës ESP32 për herë të parë së bashku me një ekran Nextion.
Në këtë video, ne do ta bëjmë këtë. Yetshtë një projekt tjetër i stacionit të motit që njoh, por këtë herë ne përdorim çipin e ri ESP32! Ne gjithashtu përdorim sensorin e ri BME280 i cili mat temperaturën, lagështinë dhe presionin barometrik. Kur të fuqizojmë projektin, ai lidhet me rrjetin WiFi dhe do të marrë parashikimin e motit për vendndodhjen time nga faqja e internetit e openweathermap. Pastaj do të shfaq parashikimin në këtë ekran me prekje 3.2”Nextion së bashku me leximet nga sensori! Leximet azhurnohen çdo dy sekonda dhe parashikimi i motit çdo orë! Siç mund ta shihni, në këtë projekt ne përdorim teknologjitë më të fundit në dispozicion të një prodhuesi sot! Nëse jeni një veteran DIY, mund ta ndërtoni këtë projekt në pesë minuta.
Nëse jeni fillestar, duhet të shikoni disa video para se të provoni këtë projekt. Ju mund të gjeni lidhje me këto video në këtë Instructable, mos u shqetësoni.
Le të fillojmë!
Hapi 1: Merrni të gjitha pjesët
Për të ndërtuar këtë projekt na duhen pjesët e mëposhtme:
- Një bord ESP32 ▶
- Një sensor BME280 I2C ▶
- Një ekran 3.2”Nextion ▶
- Një pjatë e vogël read
- Disa tela ▶
Kostoja e projektit është rreth 30 dollarë.
Në vend të ESP32, ne mund të përdorim çipin më të lirë ESP8266, por vendosa të përdor ESP32 për të fituar përvojë me të dhe për të parë se çfarë funksionon dhe çfarë jo.
Hapi 2: ESP32
Ky është projekti i parë që kam ndërtuar ndonjëherë me çipin e ri ESP32.
Nëse nuk jeni të njohur me të, çipi ESP32 është pasardhësi i çipit popullor ESP8266 që kemi përdorur shumë herë në të kaluarën. ESP32 është një bishë! Ajo ofron dy 32 bërthama përpunimi të cilat funksionojnë në 160MHz, një sasi masive memorie, WiFi, Bluetooth dhe shumë veçori të tjera me një kosto prej rreth 7 $! Gjëra të mahnitshme!
Ju lutemi shikoni rishikimin e detajuar që kam përgatitur për këtë tabelë. Unë kam bashkangjitur videon në këtë Instructable. Do të ndihmojë të kuptoni pse ky çip do të ndryshojë mënyrën se si i bëjmë gjërat përgjithmonë!
Hapi 3: Shfaqja e Nextion
Gjithashtu, ky është projekti i parë që ndërtoj me një ekran me prekje Nextion.
Ekranet Nextion janë lloje të reja të ekraneve. Ata kanë procesorin e tyre ARM në pjesën e pasme i cili është përgjegjës për drejtimin e ekranit dhe krijimin e ndërfaqes grafike të përdoruesit. Pra, ne mund t'i përdorim ato me çdo mikrokontrollues dhe të arrijmë rezultate spektakolare.
Unë kam përgatitur një Udhëzues të detajuar në lidhje me këtë ekran Nextion i cili shpjegon në thellësi se si funksionojnë, si t'i përdorin ato dhe të metat e tyre. Mund ta lexoni duke klikuar këtu:
Hapi 4: Sensori BME280
BME280 në një sensor të ri të shkëlqyeshëm nga Bosch.
Deri më tani kam qenë duke përdorur sensorin BMP180 i cili mund të masë temperaturën dhe presionin barometrik. Sensori BME280 mund të masë temperaturën, lagështinë dhe presionin barometrik! Sa e ftohte eshte! Na duhet vetëm një sensor për të ndërtuar një stacion të plotë moti!
Përveç kësaj, sensori është shumë i vogël në madhësi dhe shumë i lehtë për t’u përdorur. Moduli që do të përdorim sot përdor ndërfaqen I2C kështu që e bën komunikimin me Arduino shumë të lehtë. Ne vetëm për të lidhur energjinë dhe dy tela të tjerë për ta bërë atë të funksionojë.
Tashmë janë krijuar shumë biblioteka për këtë sensor, kështu që ne mund ta përdorim atë në projektet tona shumë lehtë! Kostoja e sensorit është rreth 5 dollarë. Mund ta merrni këtu ▶
SHENIM: Ne kemi nevojë për sensorin BME280. Ekziston edhe një sensor BMP280 i cili nuk ofron matje të lagështisë. Kini kujdes të porosisni sensorin që ju nevojitet.
Hapi 5: Lidhja e pjesëve
Lidhja e pjesëve është e drejtpërdrejtë siç mund ta shihni nga diagrami skematik.
Meqenëse sensori BME280 përdor ndërfaqen I2C, na duhet vetëm të lidhim dy tela për të komunikuar me ESP32. Unë e kam bashkuar sensorin në kunjat 26 dhe 27. Në teori, çdo kunj dixhital i bordit ESP32 mund të përdoret me pajisje periferike I2C. Sidoqoftë, në praktikë, zbulova se disa kunja nuk funksionuan sepse ato janë të rezervuara për përdorime të tjera. Kunjat 26 dhe 27 funksionojnë shkëlqyeshëm!
Për të dërguar të dhëna në ekran, na duhet vetëm të lidhim një tel me kunjin TX0 të ESP32. Më duhej të përkulja kunjin kështu për të lidhur tela femër të ekranit pasi bordi ESP32 është shumë i madh për këtë tabelë buke.
Pas lidhjes së pjesëve, duhet të ngarkojmë kodin në ESP32, dhe duhet të ngarkojmë GUI në ekranin Nextion. Nëse keni probleme me ngarkimin e programit në tabelën ESP32, mbani shtypur butonin BOOT pasi të shtypni butonin e ngarkimit në Arduino IDE.
Për të ngarkuar GUI në ekranin Nextion, kopjoni skedarin WeatherStation.tft që do të ndaj me ju në një kartë SD të zbrazët. Vendoseni kartën SD në folenë e kartës SD në pjesën e pasme të ekranit. Pastaj ndizni ekranin dhe GUI do të ngarkohet. Pastaj hiqni kartën SD dhe lidhni përsëri fuqinë.
Pas ngarkimit me sukses të kodit projekti do të lidhet me rrjetin WiFi, do të marrë parashikimin e motit nga faqja e internetit openweathermap.org dhe do të shfaqë leximet nga sensori. Le të shohim tani anën softuerike të projektit.
Hapi 6: Kodi i Projektit
Për të analizuar të dhënat e motit, ne kemi nevojë për bibliotekën e shkëlqyer Arduino JSON. Ne gjithashtu kemi nevojë për një bibliotekë për sensorin.
? ESP32 BME280: https://github.com/Takatsuki0204/BME280-I2C-ESP32? Arduino JSON:
Le të shohim kodin tani.
Në fillim, ne duhet të vendosim SSID dhe fjalëkalimin e rrjetit tonë WiFi. Tjetra, ne duhet të futim APIKEY falas nga faqja e internetit operweathermap.org. Për të krijuar çelësin tuaj API, duhet të regjistroheni në faqen e internetit. Marrja e të dhënave dhe parashikimit aktual të motit është falas, por faqja e internetit ofron më shumë mundësi nëse jeni të gatshëm të paguani disa para. Tjetra, ne duhet të gjejmë id -në e vendndodhjes sonë. Gjeni vendndodhjen tuaj dhe kopjoni ID -në e cila mund të gjendet në URL -në e vendndodhjes tuaj.
Pastaj futni id -in e qytetit tuaj në ndryshoren CityID. Gjithashtu, futni lartësinë e qytetit tuaj në këtë ndryshore. Kjo vlerë është e nevojshme për leximet e sakta të presionit barometrik nga sensori.
const char* ssid = "yourSSID"; const char* password = "yourPassword"; String CityID = "253394"; // Sparta, Greqi String APIKEY = "yourAPIkey"; #përcakto ALTITUDE 216.0 // Lartësia në Sparta, Greqi
Tani jemi gati të vazhdojmë.
Në fillim, ne fillojmë sensorin dhe lidhemi me Rrjetin WiFi. Pastaj ne kërkojmë të dhëna të motit nga serveri.
Ne marrim një përgjigje me të dhënat e motit në formatin JSON. Para se të dërgoj të dhënat në bibliotekën JSON, unë fshij manualisht disa karaktere që më shkaktonin probleme. Pastaj merr bibliotekën JSON, dhe ne lehtë mund t'i ruajmë të dhënat që na nevojiten në variabla. Pasi i kemi mbajtur të dhënat në variabla, gjithçka që duhet të bëjmë është t'i shfaqim ato në ekran dhe të presim një orë para se të kërkojmë të dhëna të reja nga serveri. Informacioni i vetëm që paraqes është parashikimi i motit, por mund të shfaqni më shumë informacion nëse dëshironi. E gjitha këtu ruhet në variabla. Pastaj lexojmë temperaturën, lagështinë dhe presionin barometrik nga sensori dhe i dërgojmë të dhënat në ekranin Nextion.
Për të përditësuar ekranin, ne thjesht dërgojmë disa komanda në portin serik si kjo:
void showConnectingIcon () {Serial.println (); Komanda e vargut = "weatherIcon.pic = 3"; Serial.print (komandë); endNextionCommand (); }
GUI Nextion përbëhet nga një sfond, disa kuti teksti dhe një fotografi që ndryshon në varësi të parashikimit të motit. Ju lutemi shikoni tutorialin e shfaqjes Nextion për më shumë informacion. Ju mund të krijoni shpejt GUI tuaj nëse dëshironi dhe shfaqni më shumë gjëra në të.
Si gjithmonë, kodin e projektit mund ta gjeni të bashkangjitur me këtë udhëzues
Hapi 7: Mendimet dhe Përmirësimet Finale
Siç mund ta shihni, një krijues me përvojë sot mund të ndërtojë projekte emocionuese në vetëm disa orë me disa rreshta kod dhe vetëm tre pjesë! Një projekt i tillë do të ishte i pamundur të realizohej edhe dy vjet më parë!
Sigurisht, ky është vetëm fillimi i projektit. Unë do të doja të shtoja shumë veçori në të, si grafikët, funksionaliteti i prekjes që tani mungon, ndoshta një ekran më i madh dhe natyrisht një mbyllje e bukur me pamje të printuar 3D. Unë gjithashtu do të krijoj një GUI dhe ikona me pamje më të mirë. Kam disa ide shumë të freskëta për t’i zbatuar!
Do të doja të dëgjoja mendimin tuaj për projektin e sotëm. Çfarë tiparesh doni të shtoj në projekt? A ju pëlqen si duket? Si dëshironi ta shihni të evoluojë? Ju lutemi postoni idetë tuaja në pjesën e komenteve më poshtë; Më pëlqen të lexoj mendimet tuaja!
Vendi i dytë në konkursin pa tel
Recommended:
Stacioni i motit NaTaLia: Stacioni i motit Arduino me energji diellore Bëhet në rrugën e duhur: 8 hapa (me fotografi)
Stacioni i motit NaTaLia: Stacioni i motit me energji diellore Arduino Bëhet në rrugën e duhur: Pas 1 viti funksionimi të suksesshëm në 2 vende të ndryshme, unë po ndaj planet e mia të projektit të stacionit të motit me energji diellore dhe po shpjegoj se si evoluoi në një sistem i cili me të vërtetë mund të mbijetojë për një kohë të gjatë periudha nga energjia diellore. Nëse ndiqni
Stacioni i motit DIY & Stacioni i sensorit WiFi: 7 hapa (me fotografi)
DIY Weather Station & WiFi Sensor Station: Në këtë projekt do t'ju tregoj se si të krijoni një stacion moti së bashku me një stacion sensor WiFi. Stacioni i sensorit mat të dhënat e temperaturës dhe lagështisë lokale dhe i dërgon ato, përmes WiFi, në stacionin e motit. Stacioni i motit më pas shfaq t
Stacioni i motit Me Arduino, BME280 & Ekran për të parë trendin brenda 1-2 ditëve të fundit: 3 hapa (me fotografi)
Stacioni i motit Me Arduino, BME280 & Ekran për të parë trendin brenda 1-2 ditëve të fundit: Përshëndetje! Këtu tashmë janë prezantuar stacionet e motit udhëzues. Ato tregojnë presionin aktual të ajrit, temperaturën dhe lagështinë. Ajo që u mungonte deri më tani ishte një prezantim i kursit brenda 1-2 ditëve të fundit. Ky proces do të kishte një
Ndërtoni një sensor të temperaturës Apple HomeKit (BME280) duke përdorur një RaspberryPI dhe një BME280: 5 hapa
Ndërtoni një sensor të temperaturës Apple HomeKit (BME280) Duke përdorur një RaspberryPI dhe një BME280: Unë kam luajtur rreth e rrotull me pajisjet IOT gjatë muajve të fundit dhe kam vendosur rreth 10 sensorë të ndryshëm për të monitoruar kushtet rreth shtëpisë dhe vilës sime. Dhe fillimisht kisha filluar të përdorja sensorin e lagështisë së butë AOSONG DHT22
Stacioni i motit Acurite 5 në 1 duke përdorur një Raspberry Pi dhe Weewx (Stacionet e tjera të motit janë të pajtueshme): 5 hapa (me fotografi)
Stacioni i motit Acurite 5 në 1 Duke përdorur një Raspberry Pi dhe Weewx (Stacionet e tjera të motit janë të pajtueshme): Kur kisha blerë stacionin e motit Acurite 5 në 1 doja të isha në gjendje të kontrolloja motin në shtëpinë time ndërsa isha larg. Kur mbërrita në shtëpi dhe e vendosa, kuptova se ose duhej ta kisha ekranin të lidhur me një kompjuter ose të blija shpërndarësin e tyre të zgjuar,