Sisällysluettelo:
- Vaihe 1: SIGROK JA PULSEVIEW
- Vaihe 2: Lisäys iskuanturiin
- Vaihe 3: ADXL -KÄSITTELY
- Vaihe 4: Kaavamaiset PCB -tulosteet
- Vaihe 5: Taideteoksen etsausprototyyppi
- Vaihe 6: Levyn kokoaminen
- Vaihe 7: KOODAUS
- Vaihe 8: SDA SCL -tappien etsiminen
Video: ESP32 ADXL345 DATALOGGER WITH GPS_EXT RAM_EXT_RTC: 8 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:02
Niille teistä, jotka leikkivät Wemos 32 LOLIN -levyllä, ajattelin alkaa dokumentoimaan joitain havaintojani tähän mennessä.
Nykyinen projekti on liitäntä ADXL345 -kiihtyvyysanturiin, ja kuten yllä oleva kuva osoittaa, olen yhdistänyt sen onnistuneesti loliniin ja määrittänyt ADXL: n iskuanturiksi.
ADXL: n rekisterit on määritetty liitteenä olevaksi pdf: ksi ja keskeytys olen määrittänyt koodissa sylkemään koodin sarjaporttiin, kun isku havaitaan.
Perustin myös käyttämättömyysrekisterin keskeytykseksi ja tarkistamisen jälkeen, mikä keskeytys on lauennut, sylki samat tiedot.
Käytän LOLINin I2c -porttia ja näet, että minulla on rutiini sylkeä ADXL: n rekisterit, jotta voin tarkistaa kokoonpanon virheenkorjauksen aikana. Tämä toiminto toimii ajastintoiminnolla, joka käyttää tikkerikirjastoa. Tämä on hyödyllinen toiminto rekisterien virheenkorjaukseen ja tarkistamiseen, jos kirjoitat jotain sinne, mikä saa tiedot salaperäisesti tekemään outoja asioita.
Olen normalisoinut 2: n kohteliaisuustiedot LOLINissa ja muotoillut ne niin, että ne voidaan tuoda Exceliin.
Katso liitteenä olevaa PDF -tiedostoa, johon on tuotu joitakin tietoja, ja olen piirtänyt Excelissä graafisesti joitakin ADXL -napautuksia, jotka laukaistaan laukaisurekisterin keskeytyksestä FIFO -tilassa.
FIFO -tila on hyödyllinen ominaisuus, joka ei sido mikrotiedostoja ja tallentaa 32 näytettä liipaisimeen. X -viiva kaaviossa näyttää ajoituksen mikrosekunteina kasvamalla vasemmalta oikealle.
HUOMAUTUS MINÄ OLEN MUUTTANUT VIIMEISTÄ KAAVIOTA, JOTKA AIKATAULU OLEE MINUSTA 9800 mikrosekuntia.
Huomaa kolme johtoa ADXL -kortille. SDA/SCL ja INT INT: stä 1. Jälleen kerran, jos tarkastelet rekisteriasetuksia ja ristiinviittaavat tiedot, se on järkevää.
Datanäyte on täysi kallistus 3200 näytteellä, mikä antaa 3125 käyttö sekuntia näytteiden välillä. Ja 4 näytteen esisieppaus. Katso Excelin laitteen tietojen pdf -tiedostoa ja jokainen piirtämäni kaavio osoittaa, että olen siirtämässä kaappausikkunaa.
Laitan konfiguraatioon jonkin koodin ja keskeytän, jos jotakuta kiinnostaa.
I2C: ssä käytän lankakirjastoa ja olen kirjoittanut joitakin toimintoja sen ympärille.
Huomaa pieni datanhakaaja, jonka olen liittänyt SDA/SDL: ään ja jonka avulla voin purkaa I2C -väylän reaaliajassa.
Seuraava askel on tallentaa SAN -levylle, vaikka olen jo osoittanut, että se toimii. Kun tämä on tehty, liityn langattomaan verkkoon ja lataan verkkosivustolle.
Lisään tähän projektin laajentuessa.
ALAVIITE:
Huomaaville siellä huomaat suuren kolon esp -sirua suojaavassa tölkissä ja piirilevyn hyppyjohtimen. Tämä johtuu asuvaan kokkerspanieliin, joka tarkasti postin ja päätti pureskella levyn ennen kuin antoi minulle pääsyn siihen. Luulen, että hän on ei -espressifani!
Tietenkin, kuten aina, olen aina valmis kysymyksiin, joten kysy.
Vaihe 1: SIGROK JA PULSEVIEW
Vain nopea maininta pulseviewista ja sigrokeista.
Tämä on ilmainen ohjelmisto verkosta ja pieni liitäntäkortti, jossa on 8 logiikkatuloa, on halpaa ebaystä et al. on sisäänrakennettu dekooderi I2C: lle.
Soveltamisala on loistava signaalitasojen tarkistamiseen, mutta I2c: n käsin dekoodaus on parhaimmillaan väsyttävää, vaikka olen asettanut silmukan ennen tätä ja suorittanut käsin virheenkorjauksen. Sinulla on oltava arvostusta siitä, että satamatasolla on vähän paukuttelua, jonka olen tehnyt monissa kuvaprojekteissa, mutta se on aikaa vievää ja altis virheille … etenkin yöllä!
Kiitos kavereille, jotka kirjoittivat tämän sovelluksen. Sen jumala lähettää projekteihin i2c: ssä, Huomaa D4 -linja, joka valvoo keskeytyslinjaa ADXL: stä.
Vaihe 2: Lisäys iskuanturiin
Ok, olen lisännyt joitain oheislaitteita iskuanturiin konseptin todistamiseksi.
Anteeksi, että rotat pesivät nyt, kun se toimii, suunnittelen piirilevyn, joka yhdistää kaikki komponentit ja laitan kaiken kauniiseen laatikkoon. Kaikki kiinnitetyt kohteet paitsi SD -kortti toimivat spi -väylän i2c -laitteessa.
Vasen kiinnitettäväksi on GPS -moduuli, joka on WIP, mutta toivon ratkaisua tämän viikon loppuun mennessä.
Joten nykyinen projekti koostuu:
ESP32 LOLIN -kortti, jossa langaton yhteys.
PCF reaaliaikainen kello. Pitää nykyisen päivämäärän ja kellonajan. Olen juottanut karkeasti vanhaan projektitauluun, jonka olen syövyttänyt aiemmin.
Ulkoinen salama. Sisältää muun muassa kiihtyvyysmittarin asetustietoja.
SPI SD -kortti tiedostojen kiihtyvyysmittarin tietojen ja lokien tallentamiseen. 8 Gt, mutta voi laajentua.
OLED -näyttö näyttää valikot ja muutamia muita asioita.
Tässä se [lopulta] tekee
Seuraa iskuja ja toimintaa, joka ylittää taustan.
Rekisteröi iskut SD -kortille kellonajan ja päivämäärän avulla.
Leimaa sijainti GPS: stä SD -kortille, jos se on saatavilla
Lataa tiedot tukiaseman avulla verkkopalvelimelle tietojen analysoimiseksi … tämä voi olla matkapuhelin.
| LOLIN32 pystyy skannaamaan tukiasemia, koska se isännöi verkkopalvelinta komentoja varten ja muodostaa sitten yhteyden asiakkaana pilviverkkopalvelimeen. Voit aina irrottaa SD -kortin ja ladata sen!
Vielä on paljon tehtävää, mutta se etenee.
Vaihe 3: ADXL -KÄSITTELY
Nyt tässä on hauska asia. Ostin ADXL 345 -sirun pienenä levynä, koska se oli halvempaa kuin sirun hankkiminen yksin…..miten se toimii? Joka tapauksessa sen jälkeen ryhdyin kytkemään se i2c -väylään ja huomasin, että minulla oli ristiriita eepromin kanssa osoitteiden kanssa, jotka alkavat tehokkaasti 0x53: sta, mikä tarkoittaa kirjoitusta A6: ssa ja lukua A7: ssä.
Joten lukemalla bumfia käy ilmi, että jos otat SDO/ALT ADDRESS HIGH, voit pakottaa sen 1D: hen
Osoittautuu, että pikkulevyni on kiinteästi maadoitettu ADXL: n nastalle 12 huolimatta SDO -nastasta, joka näyttää siltä, että voit vetää sen korkealle. Älä kokeile tätä kotona ilman nykyistä rajoitettua virtalähdettä…. Onneksi minulla oli se, joka sai minut poistamaan yleismittarin ja tarkistamaan nastan maahan.. Tämä toimii ja saa sinut pois prom -yhteenotosta. kaksi sivua 64k osoitteina 0x52 ja 53. Kun tein tämän, ongelma ratkesi.
Kun luet verkkosivun uudelleen, sen sanotaan olevan 0x53, mutta se on pienellä painettu, joten varo!
Vaihe 4: Kaavamaiset PCB -tulosteet
Tässä on nopea piirin ja komponenttien läpikäynti. rotani pesivät lähestymistapani ja kootaan nyt taululle, joka mahtuu pieneen laatikkoon [Yksityiskohta seuraa]
Viitaten shocker.pdf.
Levy koostuu 8 pääkomponentista
- SD -KORTIN SÄILYTYS
- ADXL -KIIHDYTYSMITTARI
- NÄYTTÖ OLED
- 3.3 V REG
- GPS1 -MODUULI
- EEPROM
- AJASTIN RTC
- ESP32 LOLIN -siru RF -langattomalla liitännällä
Kaikki riippuu kiihtyvyysmittarista.
ADXL on asetettu keskeyttämään prosessori INT1: ssä, joka reititetään suorittimen nastaan 14. Mikrokoodi on asetettu sieppaamaan tämä keskeytys ja asettamaan lippu, jota käytetään päärutiinissa. hahmotella keskeytysrutiinin ja soittotoiminnon rekisteröinti myöhemmin.
ADXL tukee keskeytyksiä eri tiloissa, kuten sokki tai passiivisuus ja muutamia muita. tallentaa shokkitapahtuman XYZ [96 arvoa]
Näyttö ADXL RTC ja EEPROM ovat kaikki I2C: stä. SD -kortti on kytketty SPI I/O -laitteeseen ja GPS -moduuli on kytketty sarjaportteihin LOLIN -merkinnällä X12 X11.
Nappaa jatkuvasti 232 dataa GPS -yksiköstä ja suodattimesta. Kun sinulla on kelvollinen GPS -aika, päivitä RTC määrätyin väliajoin. Keskeytä tallennusmuuttujat SD -kortille, kuten aika/Lat_Lng/Speed/Altitude/Store ADXL -rekisterit raakaformaatin 2 kohteliaisuus ja ei -2: n täydennys. Kaikki tiedot on erotettu pilkuilla.
Huomaa myös, että nastassa 13 on nollaustappi, joka käynnistää sisäänrakennetun verkkopalvelimen, jonka avulla voit muodostaa yhteyden konfiguraattoriin ja määrittää tukiaseman, joka on tallennettu EEPROM -muistiin. Uudelleenkäynnistyksen yhteydessä prosessori muodostaa yhteyden tukiasemaan ja käyttää Internetiä ladatakseen tiedostoja SD -kortilta. Jos tietoja ei ole ja yhteyspistettä ei ole, laite suorittaa vain tiedonkeruuprosessinsa SD -kortille, jota voit käyttää ohjelma [ShockerView.exe] [WIP] Palvelimelle tiedot tallennetaan SQL -tietokantaan ja näytetään [WIP]
PCB -tulosteet on liitetty ylä- ja alareunaan.
Vaihe 5: Taideteoksen etsausprototyyppi
Näin valmistan prototyyppikorttini
Tulosta taideteos jollekin raskaalle jäljityspaperille. Käytän 63 sepien GSM -verkkoa, halpaa ja iloista. Tulostin on tässä avain. Haluat mahdollisimman läpinäkymättömän ja mahdollisimman siistin. Lasertulostimeni on käynnissä, mutta se sopii jopa 10 tuhannen painatukseen, vähemmän kuin tarvitset erikoisvälineitä, kun jäljityspaperin jyvä alkaa häiritä. Voit ostaa erikoispaperia, mutta hei, se on liian hyvä minulle. Jos tarvitset asianmukaista levyä, pyydä asiantuntijoita tekemään se.
Yleensä prototyypin levyt osissa ja sitten valmistan finaalin gerberien kanssa Internet -yrityksen tuottamaan. Prototyyppi selvittää kaikki nämä virheet ja puutteet ennen oikean rahan tekemistä.
Kun olet tulostanut kuvat kahdelle erilliselle A4 -arkille, leikkaa ne siten, että ne peittävät ja myyvät ne paikoilleen. jätä tarpeeksi tilaa kaksipuoliselle levyllesi puristua kerrosten väliin ja varmista, että tulostettu puoli on piirilevyä vasten. Jos olet varovainen, voit peittää myyntinauhan päällekkäin, jotta voit poistaa sen valinnan tuhoamatta jäljityskuvaa.
Aseta lauta yksi puoli alaspäin UV -laatikkoosi. NB I teki omani neljällä uudella 13 W: n UV -lampulla ja vanhalla ohjauslaitteella ja tein laatikon, jossa oli kirkas lasipaneeli. Välit olivat kokeellisia. Kansi napsahtaa alas ja puristaa vaahdon levyn takaosaan pakottaen naamion lasia vasten. Jos et tee tätä, valo alittaa syövytysvastuksen. Käynnistä ja paljasta levy 1 minuutti 40 sekuntia per puoli. Käytä kelloasi. Itse asiassa minun on muutettava tätä ajastimella … oh ei muuta projektia … ehkä ostan sellaisen … tiedät, että et tapana! Mega Electronicsilta ostamani levyt ovat halpoja prototyyppilevyjä, joissa on syövytysvastus. Etch -vastus on joskus hieman hajanaista, mutta minulla on joitain levyjä, joita minulla on ollut neljä vuotta, ja ne tuottavat edelleen hyviä levyjä prototyyppien laatimiseen!
Ole varovainen kääntäessäsi lautaa ympäri, älä anna sen liukua tai sinulla on roskaa.
Valmista nyt kehittäjäsi. Käytän 2 korkkia 18: 1 -suhteessa, joten kaksi korkkia kehitystä ja 36 korkkia puhdasta puhdasta vesijohtovettä. Kehittäjä tulee pullon tai jauheen muodossa ja pullo kestää yleensä s noin 6 vuotta !!. Sekoita se jäätelöastiassa ja käytä hansikkaita. Älä työnnä sormiasi siihen, muuten rasva vaikuttaa siihen. Lämpötila voi olla ongelma talvella. Pidä vesi 20 asteessa tai sen ulkopuolella, se ei ole kriittistä, mutta jos se on kylmä, tulokset voivat olla arvaamattomia. Olen tehnyt tämän tammikuussa autotallissani vedenkeittimellä, jotta voit korvata sen.
Siirrä säiliötä varovasti puolelta toiselle, kun olet asettanut laudan siihen. Jos olet tehnyt sen oikein, näet, että magenta syövytysvastus poistetaan kuparista ja paljastaa kauniin kiiltävän kuparin raitojen väliin. Käännä se käsineillä tarkistaaksesi toisen puolen. Tämä prosessi kestää yleensä noin minuutin, joten kun olet valmis, ota levy pois ja huuhtele huolellisesti lämpimällä vedellä. Jos se on tylsää, mahdollisuudet ovat epäonnistuneet.
Minulla on ollut tämä pari kertaa, mutta se johtuu yleensä siitä, etten ole käyttänyt käsineitä tai lämpötila on liian alhainen tai sekoitin valotusajan jonkin häiriötekijän takia … miksi he tekevät tämän keskellä jotain kriittistä….
Näytä etsauksesi
Ok, nyt sinulla on taulu, jossa on kauniita vihreitä raitoja, jotka on suojattu syövytysvastuksella, ja sinun on nyt muodostettava ferrikloridi. Nyt käytän samaa jäätelöastiaa jätteiden minimoimiseksi ja sekoitan pakkauksen muistiinpanot. Ostan ferrikloridia pallopakkauksissa, jotka punnitset ja liuotat liuokseen. Täytä niin paljon, että täytät jäätelöastian noin 1/3 osasta ylöspäin.
Sinun on käytettävä käsineitä… ei rasvan jne. Takia, vaan siksi, että jos et käytä, kätesi ovat kirkkaan oranssit kahden viikon ajan. Tein tämän kerran ennen tärkeää kokousta Lontoossa ja näytti siltä, että olin tangoed. Käytä vanhoja vaatteita, koska jos ne pääsevät päälle, ne menevät roskiin. Se kiinnittyy ruostumattomasta teräksestä valmistettuihin pesualtaisiin ja yleensä tahraa kaiken. Älä kaada tähteitä viemäriin, sillä se tappaa erinomaisesti bakteereja, joita vesiviranomainen ei halua edistää septisissa säiliöissään. Joillekin viranomaisille tämä on myös laitonta, joten älä tee sitä.
Kun upotat levyn ensimmäisen kerran liuokseen, se muuttuu ihanan punaiseksi pronssiseksi, kun kupari hyökkää. Jos näin ei ole, sinulla voi silti olla syövytyskerros, joka estää syövytintä toimimasta tai ratkaisusi on väärä. Jos näin on, palasin piirustuspöydälle, mutta pelkään, että etsijäsi ei ole väärässä, jos noudatit tuhoja.
Joka tapauksessa, jos kaikki on hyvin, sinulla on täydellisiä kappaleita, jotka on suojattu etch -resistillä.
Normaalisti tässä vaiheessa ammattilainen käyttäisi maskeja kehittääkseen reikien ja tyynyjen ympärille ja tuottaakseen kuparin läpi sekä käyttämällä silkkipainoa komponenttien numeroiden maalaamiseen jne. käyttämällä kuparilankaa kerroksesta toiseen … ilmeisesti monikerros on ei ei tällä menetelmällä. Jos olen tuulella, lisään huolellisesti komponenttinumeroita tulostuskerrokseen, jotta voit syövyttää myös komponenttinumeroita. Se voi säästää aikaa kokoonpanossa, mutta riippuu siitä, kuinka kiireinen levy on.
Nyt paljastan kappaleet vielä noin 2 minuuttia per puoli ja upotan kehittäjään kaikkien syövytysvastusten poistamiseksi.
Poran nyt läpiviennit ja mahdolliset läpivientireiät ja tinaan kaikki raidat ja tarkistan jatkuvuuden yleismittarilla. Tämä osa on pallokipua, etkä normaalisti tekisi ammattimaisesti tuotetulle levylle, jolla on todelliset läpiviennit, mutta se kannattaa tehdä välttääksesi langan vain juotettuna toiselle puolelle… tapahtui niin monta kertaa!
Vaihe 6: Levyn kokoaminen
OK, joten nyt minulla on levy valmiina menemään ja olen porannut kaikki läpiviennit ja reiät.
Pujota kaikki alukset langalla ja juota molemmin puolin. Haluan tinata kaikki kappaleet suojana, ei tarvitse tehdä sitä, mutta pysäyttää kuparin hapettumisen.
Kiinnitin SD -kortin, joka on pinta -asennettava, ja lisäsin kaksi maata, jotta saat juotteen kiinni, ja sen alla on pari nastaa ankkuroimiseksi.
Seuraavaksi lisättiin ADXL EEPROM jne.
Tehokkaasti suunnitelma on ottaa 5 V USB: stä tai ulkoisesta Batista ja syöttää se levyn 3.3 V: n reg. Kautta. kuin USB voi tarjota. En ole vielä mitannut tehomittauksia, koska ne voivat muokata ohjelmistoja…..voin käyttää INACTIVITY keskeytystä ADXL: stä. [WIP]
… Täytyy lisätä kuvia rakentamisen edetessä.
Vaihe 7: KOODAUS
OK, en käy läpi kaikkia arduino -asetuksia, koska joku muu on tehnyt paljon paremman työn muualla.
Valitsen vain tarvittavat bitit, joita voimme käyttää omassa projektissasi.
Tämä on edelleen käynnissä, kun katsotaan lataamista verkkosivustolle, mutta se käy läpi osan koodista.
Ajatuksena on, että normaalit toiminnot ovat init -laitteita, jotka koostuvat GPS /näyttö /SD -kortti /reaaliaikainen kello /ext_flashmemory ja kiihtyvyysmittarista.
Tämän jälkeen siirrymme silmukkaan odottamaan, onko keskeytysnäppäintä sw painettu. Jos se siirtyy sitten konfiguraattorivalikkoon määrittääksesi wifi -verkon kirjautumaan automaattisesti laitteeseen, joka on määritetty verkkosivun konfiguraattorin tuloksi. Ensin se skannaa kaikki laitteet SSID: n perusteella ja voit sitten valita yhden ja tallentaa sen vilkuttamaan lippu, joka ilmaisee, että seuraavan käynnistyksen yhteydessä ladataan asetukset salamasta. Voit aina ohittaa tämän kirjoittamalla ipaddressin ja kirjoittamalla /killbill aloittaaksesi salaman ja latauksen oletusarvon.
tässä on keskeytystoiminto, joka on määritelty adxl -kiihtyvyysanturin koodissa, ja hyppy konfiguraattoriin kahdessa erillisessä nastassa. Käytämme ADXL -keskeytystä SHOCK -tapahtuman keskeyttämiseen. Molemmille keskeytyksille asetamme lipun, joka nollataan pääsilmukassa. tältä se näyttää:
katso liitteenä oleva koodi
Vaihe 8: SDA SCL -tappien etsiminen
käytä tätä koodia:
Serial.println (SDA);
Serial.println (SCL);
tulostaa ESP: ssä tällä hetkellä SDL: lle ja SCL: lle määritetyt nastat
On tiedosto, jota käytetään nastojen kartoittamiseen toimintoihin, kuten ESP32: n sarjaportteihin
Suositeltava:
Normaali GPS (DATalogger EEPROM): 5 vaihetta
GPS Para Norma (Datalogger EEPROM): Yksinkertainen GPS -lemmikkien dataloggeri, joka perustuu arduino- ja EEPROM -tallennukseen ================================ ======================= Sencillo datalogger GPS para mascotas basado en arduino y grabacion en memoria EEPROM
Alaska Datalogger: 5 vaihetta (kuvilla)
Alaska Datalogger: Alaska on ilmastonmuutoksen etenemisen reunalla. Sen ainutlaatuinen asema, jossa suhteellisen koskematon maisema on täynnä erilaisia hiilikaivoskanaria, mahdollistaa paljon tutkimusmahdollisuuksia. Ystävämme Monty on arkeologi, joka auttaa
Arduino Datalogger RTC: llä, Nokian LCD -näytöllä ja kooderilla: 4 vaihetta
Arduino-dataloggeri RTC: llä, Nokian nestekidenäytöllä ja kooderilla: Osat: Arduino Nano tai Arduino Pro Mini Nokia 5110 84x48 LCD DHT11 lämpötila-/kosteusanturi DS1307 tai DS3231 RTC-moduuli sisäänrakennetulla AT24C32 EEPROM -ominaisuudella Edullinen kooderi, jossa on 3 laukaisukondensaattoria ja fi
Arduino Datalogger: 8 vaihetta (kuvilla)
Arduino Datalogger: Tässä opetusohjelmassa aiomme tehdä yksinkertaisen dataloggerin Arduinon avulla. Tarkoitus on oppia Arduinon käytön perusteet tietojen tallentamiseen ja tulostamiseen päätelaitteeseen. Voimme käyttää tätä perusasetusta useiden tehtävien suorittamiseen. Aloittaaksesi
Raspberry Pi Zero W Datalogger: 8 vaihetta (kuvilla)
Raspberry Pi Zero W Datalogger: Raspberry Pi Zero W: n avulla voit tehdä halvan ja helppokäyttöisen dataloggerin, joka voidaan liittää paikalliseen wifi -verkkoon tai toimia tukiasemana kentällä, jonka avulla voit ladata tietoja langattomasti älypuhelimellasi. Esittelen