Përmbajtje:
- Furnizimet
- Hapi 1: Kodi i Parë/Pajisja e Parë Së dyti
- Hapi 2: Pajisje kompjuterike dhe instalime elektrike
- Hapi 3: Strehimi i Shtypur 3D
Video: Wifi të aktivizuara matësat e makinave OLED ESP32: 3 hapa (me fotografi)
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:18
Hyrje së pari…
Unë ndërtoj matës të makinave si një lloj hobi përsëri dhe përsëri. Shihni https://www.instructables.com/id/Remote-Car-Monit… dhe https://www.instructables.com/id/Remote-Car-Monit… për dy shembuj më të fundit. Më pëlqejnë veçanërisht ato që përzihen me pjesët origjinale të makinës. Pra, pse kjo është e ndryshme dhe çfarë më frymëzoi për ta ndërtuar atë. Përgjigja është dy gjëra:
1) ESP32 - Doja të provoja fëmijën e ri në çipin e bllokut, veçanërisht pasi zinxhiri i mjeteve me bazë arduino për të është mjaft i pjekur. Një nga gjërat interesante që mundëson ESP32 është IOT me aftësitë e tij të integruara wifi dhe bluetooth. Komuniteti ka shkruar biblioteka të shumta për ta bërë këtë disi të drejtpërdrejtë (serverë në internet, AP, klientë wifi, mDNS, etj, etj.).
2) Ekrane të lira OLED - Në vitin 2007 bëra një matës duke përdorur një TFT që ishte ulur në vendin e orës në një GD (2004-2007) WRX. TFT vijnë në shije të ndryshme. Disa punojnë më mirë gjatë natës, disa punojnë më mirë gjatë ditës, etj. Por asnjëri prej tyre nuk punon në të gjitha kushtet. Unë nuk e kuptova gabimin e mënyrave të mia derisa një nga matësit që kam përdorur ishte i padobishëm gjatë ditës me diell të një anëtari të forumit. Hyni në OLED, të cilat janë të mrekullueshme për aplikimet automobilistike. Ato nuk janë shumë të ndritshme gjatë natës dhe (më e rëndësishmja) janë të dukshme në shumicën e kushteve të dritës së diellit.
Ky është një udhëzues dy për një, pasi kam shkruar gjithçka për dy matës të zakonshëm të makinave, presionin e vajit dhe presionin turbo. Të dyja janë në thelb e njëjta gjë: një matës i vogël i faktorit të formës me një ekran OLED me pamje analoge të gjallë me numra diskrete dhe maksimalet e shfaqura. Të dy funksionojnë gjithashtu si wifi AP dhe serverë në internet. Kur dikush lidhet me ta nëpërmjet një kompjuteri ose celulari, një tabelë lëvizëse EKG është e dukshme (kjo është pjesa disi inovative).
Furnizimet
Moduli HELTEC ESP32-merrni variantin wifi
Pjesë të veçanta të presionit të vajit:
Sensori i presionit të vajit - Kam përdorur një automter 5222 pjesë të lidhjes së sensorit të presionit të vajit - kjo ndryshon nga makina dhe vendi i instalimit. Ju lutemi konsultohuni me manualet e shërbimit, forume, teknikë, etj. Dhe bëjeni këtë në mënyrë që të mos ketë rrjedhje vaji
Pjesë të veçanta të matësit të rritjes:
- Sensori i presionit të ajrit (vetëm nëse dëshironi të bëni një matës të rritjes) -
- Zorrë ajri
- Pajisje T
Bibliotekat që kam përdorur ishin të domosdoshme:
Smoothiecharts - https://smoothiecharts.org/ Tabela të shkëlqyera dhe të lehta të azhurnimit të drejtpërdrejtë. Shumë i personalizueshëm dhe nuk mbështetet në referimin e një biblioteke js diku tjetër në internet. Kjo lejon një konfigurim të tipit "local-IOT" dhe e gjithë biblioteka të përshtatet në një varg të vetëm për deklaratën e serverit në internet në kod!
ESPAsyncWebServer -https://github.com/me-no-dev/ESPAsyncWebServer- bën atë që thotë në kuti dhe e bën mirë
Biblioteka grafike ThingPulse OLED (ndonjëherë telefononi bibliotekën squix) - https://github.com/ThingPulse/esp8266-oled-ssd130… - grafikë shumë efikase dhe e drejtpërdrejtë për patate të skuqura ESP. Më lejoi të bëja disa programime dembelë dhe akoma të merrja animacione bindëse.
Mjete/të ndryshme:
hekur bashkues - përdoret për të bërë kabllo të gjata për sensorë, për të instaluar tituj në bord, për të zvogëluar mbështjelljen e tkurrur, etj.
kaçavidë/baza/mjete të tjera të makinës - të nevojshme për të instaluar sensorë në makinë
kasetë të dyanshme - për të instaluar matësa në strehim dhe për të instaluar strehim në makinë (ngjitësi i nxehtë dhe gjëra të tjera mund të funksionojnë, por unë preferoj shiritin e jashtëm të dyanshëm të dyanshëm 3M. Ai mban mirë dhe mund të hiqet pa dëmtuar gjërat.)
gërshërë - për kasetë dhe tuba prerës dhe zinxhirë
lidhëse zip - për mbajtjen e gjërave së bashku, bashkimin e telave nën vijën dhe në ndarjen e motorit, mbajtjen e sensorëve në vend, etj.
Hapi 1: Kodi i Parë/Pajisja e Parë Së dyti
Kodi mund të shkarkohet këtu:
Presioni i vajit -
Forconi Presionin -
Rritni Presionin me fytyra në vend të matësve analoge -
Kodi grafik: Biblioteka ThingPulse është aq shumë efikase sa mund të vizatoni xbms njëra mbi tjetrën dhe të merrni rezultate bindëse!
Imazhet e matësit në të vërtetë erdhën nga një depo grafike me burim të hapur (https://thenounproject.com/). Artisti Ikonik, CY (https://thenounproject.com/icon/490005/).
Kam përdorur gimp për të krijuar 20 korniza të ndryshme me gjilpërën që tregon çdo shenjë shënimi. Ikonat e buzëqeshjes janë nga NOVITA ASTRI, ID dhe janë këtu:
Pastaj i konvertova të gjitha në vargje kon uint8_t duke përdorur këtë teknikë (sugjerim: nëse ngjyrat përmbysen kur i shfaqni ato, thjesht përmbysni ngjyrat në origjinal): https://blog.squix.org/2015/05/esp8266- nodemcu-ho…
Kodi i animacionit të drejtpërdrejtë është mjaft i drejtpërdrejtë:
- Merrni lexim nga sensori
- Leximi i shkallës (e bëra 1 me 1 për vlerat pozitive të rritjes dhe lëviz gjilpërën vetëm kur është në nxitje, jo kur është në vakum)
- Vizatoni xbm dhe më pas vendosni karakteret e numrave për gjithçka tjetër.
- shpëlajeni dhe përsëritni
Kodi i sensorit: Unë jam duke ripërdorur kodin e sensorit që kam përdorur për këta dy sensorë për disa projekte të tjera. Unë shtova një mesatare për t'u larguar nga sensorët kërcyes. Kjo përfshin leximin e secilit "lexim" duke qenë mesatarisht 5 lexime.
Kodi i rritjes (sensori jep një vlerë analoge nga 0-5 volt të cilën ADC e kthen në hapa nga 0-1024):
int getBoost () {float rboost = ((analogRead (36) + analogRead (36) + analogRead (36) + analogRead (36) + analogRead (36))/5); // noton Rezultati PSI = (rboost*(. 00488)/(. 022) +20) /6.89 - atmo; // leja e /6.89 për kpa noton Rezultati PSI = (((rboost /4095) + 0.04) /0.004) * 0.145 - atmosferë; // nga 0.145 në calc psi // vlerat 4096 në esp32 /*rBoost = rBoost + 1; nëse (rBoost> = 20) {rBoost = 0; }*/ return (ResultPSI); }
Kodi i presionit të vajit (sensori ndryshon rezistencën e tij bazuar në presionin që ndjen, kështu që kërkohet një ndarës i tensionit për ta kthyer atë në një tension nga 0-5v shih: https://electronics.stackexchange.com/questions/3…https:/ /www.instructables.com/id/Remote-Car-Monito… (drejt fundit) për më shumë informacion):
int getOilPSI () {float psival = ((analogRead (36) + analogRead (36) + analogRead (36) + analogRead (36) + analogRead (36))/5); psival = -0.0601*psival + 177.04 - 14.5; kthehu psival; }
Web Server dhe funksionaliteti AP: Funksionaliteti AP është mjaft i thjeshtë - instantiate dhe objekti AP me ESSID që dëshironi të transmetoni dhe fjalëkalimin dhe jeni mirë të shkoni.
const char *ssid = "boost_gauge_ap"; const char *fjalëkalim = "fjalëkalim";
WiFi.softAP (ssid, fjalëkalim);
Ai madje ka një server DHCP kështu që ju nuk duhet të shqetësoheni për këtë. Si parazgjedhje, IP është 192.168.1.4 (nuk ka ide pse, kjo është ajo që zgjodhi). Pjesa e serverit në internet është pak më e ndërlikuar dhe kërkon pak kërkime. Në thelb ju dëshironi një server në internet asinkron në mënyrë që të mund të marrë të dhëna të përditësimit të drejtpërdrejtë. Për fat të mirë ka një bibliotekë për këtë. Unë nuk jam një zhvillues i javascript, kështu që kam biseduar me një bandë të bibliotekave të hartimit dhe grafikimit derisa kam ngecur në tabelat e smoothie. Shumica e bibliotekave të tjera grafike janë të shkruara në mënyrë që të trashëgojnë të gjitha llojet e kodeve nga bibliotekat e tjera nga e gjithë uebi që ngarkohen në mënyrë dinamike kur një faqe është dhënë. Doja që kjo të funksiononte e pavarur nga interneti, kështu që ky ishte një zbulim i madh. Së dyti duhej të ishte mjaft i vogël sa të përshtatet në një arduino dhe siç mund ta shihni në kod ai përshtatet në një grup të vetëm char.
Deklaratat e serverit në internet: #include AsyncTCP.h #include ESPAsyncWebServer.h… Serveri AsyncWebServer (80); // instantiate atë dhe zgjidhni portin (80 është standard për http)… server.on ("/", HTTP_GET, (AsyncWebServerRequest *request) {request-> send (200, "text/html", "… // uebfaqja + biblioteka e smoothiecharts në një grup të madh char}); server.on ("/val", HTTP_GET, (kërkesë AsyncWebServerRequest *) {// faqja e parë në fakt e quan këtë faqe shumë të vogël që sapo kthen kërkesën për vlerë -> dërgoni (200, "text/html", Sboost);}); server.begin ();
Hapi 2: Pajisje kompjuterike dhe instalime elektrike
Në foto në galeri janë dy sensorët që përdor. Ngjyra e artë e madhe është një sensor i presionit të vajit Autometer 2242. Trupi dhe filli i këtij sensori është i tokëzuar dhe terminali është leximi në rezistencë.
Autometri do t'ju ofrojë një kurbë të rezistencës ndaj presionit ose rezistencës ndaj temperaturës për cilindo nga sensorët e tyre. Unë e kam konvertuar atë në tension duke përdorur një ndarës të tensionit (shiko diagramin e instalimeve elektrike).
Sensori i presionit të ajrit MPX4250AP ka tre kunja të gjalla dhe disa kunja të papërdorura. Ato janë V në, dalje në tokë dhe sensor. Ajo nxjerr një lexim 0-5v që mund të lexohet nga mikrokontrolluesi (ose në rastin e këtij mcu 0-3 volt. Pra, leximi i sensorit zvogëlohet duke përdorur një ndarës të tensionit.). Fleta e specifikimeve për të mund të gjendet këtu:
Ka disa çështje në zvogëlimin nga logjika 5v në 3v. Në rastin tim kam përdorur ndarësin e tensionit për thjeshtësi dhe kisha pjesët rreth tavolinës sime të punës. Ju do të futni pak gabim në leximet bazuar në gabimin e mundshëm të përbërësve shtesë (dy rezistorët). Kjo mund t'i bëjë leximet tuaja 10% ulje në disa raste. Unë mund të jetoj me këtë. Nëse nuk mundeni, mund të dëshironi të përdorni një opamp dhe rezistorë ose një konvertues të nivelit logjik (i disponueshëm nga shitës të ndryshëm të pajisjeve elektronike. Sparkfun e ka një këtu: https://www.sparkfun.com/products/12009 Unë mund të kaloj në të si Unë marr lexime të larta ndonjëherë në këtë matës (në fakt unë e kam treguar këtë produkt në diagramin tim të instalimeve elektrike).
I mundësova ESP32 -të përmes USB. Kjo përfshinte lidhjen e një ngarkuesi të drejtpërdrejtë si ky: https://www.amazon.com/gp/product/B00U2DGKOK/ref=p… në makinë dhe më pas përdorimin e një shpërndarësi USB për ta ndarë atë. Ju mund të shihni që kam përdorur kabllo usb me kënd të drejtë për të siguruar që gjithçka të funksionojë në një zonë të vogël (https://www.amazon.com/gp/product/B00ENZDFQ4/ref=p…).
Fotot e tjera tregojnë vende ku kam prerë vrima ose kam kaluar tela. Çdo makinë do të jetë e ndryshme. Përdorni kujdes, thikat dhe gërshërët janë të mprehta, energjia elektrike mund të jetë e rrezikshme, kështu që ju lutemi shkëputeni baterinë para se të instaloni gjërat.
Hapi 3: Strehimi i Shtypur 3D
Unë kam përdorur disa shtëpi të shtypura 3D për këtë.
- Një matës i përgjithshëm i madh i rrumbullakët me 2 ekran. Ju mund ta shihni këtë në këto fotografi të faqes së parë. E vura pranë orës në vijën time.
- Një stil pykë i vetëm që përshtatet në zonën e orës së një subaru impreza (wrx, sti, etj.) Nga përafërsisht 2008 deri në 2014.
- Një pjesë matëse e dyfishtë e cila përshtatet në kolonat e timonit dhe sipërfaqet e tjera pak të rrumbullakosura:
Jeni të mirëpritur të kopjoni dhe modifikoni këto për t'iu përshtatur nevojave tuaja. Asnjëra prej tyre nuk është perfekte dhe të gjitha do të kërkojnë pak rregullim.
Disa shënime:
- Mbarova timen me plastidip; është metoda e preferuar e dembelëve.
- Lëmimi i plastikës bën grimca të imëta që nuk janë të mira për ju, përdorni një maskë të përshtatshme.
- Kam përdorur PETG për strehimin tim. ABS është gjithashtu e mirë. PLA do të shtrembërohet në diellin e nxehtë në një pult.
Çmimi i dytë në Sfidën IoT
Recommended:
Sonoff me shumë kanale - Dritat e aktivizuara me zë: 4 hapa (me fotografi)
Sonoff me shumë kanale-Dritat e aktivizuara me zë: 5 vjet më parë, dritat në kuzhinën time po shkonin në rrugën e bërë. Ndriçimi i pistës po dështonte dhe ndriçimi nën banak ishte thjesht junk. Unë gjithashtu doja të ndaja ndriçimin në kanale në mënyrë që të ndriçoja më mirë dhomën për ndryshime
Shkallët e aktivizuara me lëvizje: 6 hapa (me fotografi)
Shkallët e Aktivizuara me Lëvizje: Po, e di se çfarë po mendoni, kjo duket pak e tepërt, por para së gjithash, nuk do të shqetësoheni kurrë për të goditur gishtin tuaj përsëri dhe së dyti, kjo ju bën të ecni lart e poshtë shkallët tuaja aq shumë argëtuese, e gjeta veten duke shkuar lart pa asnjë arsye
Pajisjet mediatike të aktivizuara me zë duke përdorur Alexa: 9 hapa (me fotografi)
Pajisjet mediatike të aktivizuara me zë duke përdorur Alexa: Njësia e zhvilluar këtu i bën pajisjet tuaja si TV, amplifikator, CD dhe DVD player të kontrollojnë me komanda zanore duke përdorur Alexa dhe Arduino. Avantazhi i kësaj njësie është se ju duhet të jepni vetëm komanda zanore. Kjo njësi mund të punojë me të gjitha pajisjet që
Blinds Arduino të aktivizuara me zë: 9 hapa (me fotografi)
Blinds Arduino të aktivizuara me zë: Pak kohë më parë bëra një Instructable ku shtova një servo dhe pajisje Bluetooth në bravën time të derës duke më lejuar ta kontrolloja atë me telefonin tim si një i varur, thjesht nuk mund të ndaloj së shtuari Bluetooth në sende dhe kështu në këtë projekt unë Unë do t'ju tregoj se si të bëni Blu
Fotografi me shpejtësi të lartë të aktivizuara me lazer: 9 hapa (me fotografi)
Fotografi me shpejtësi të lartë të aktivizuara me lazer: Për të fotografuar në mënyrë të vazhdueshme diçka si qumështi, metoda e zakonshme përdor një aparat fotografik të nivelit të lartë (500 dollarë e lart), blic Speedlite (300 dollarë e lart) dhe një shkrepës optik elektronik të vonesës (120 dollarë e lart) Me Ka shumë qarqe DIY për t