INHOUDSOPGAWE:

N Selfstandige data-aanmeldmeter: 11 stappe (met foto's)
N Selfstandige data-aanmeldmeter: 11 stappe (met foto's)

Video: N Selfstandige data-aanmeldmeter: 11 stappe (met foto's)

Video: N Selfstandige data-aanmeldmeter: 11 stappe (met foto's)
Video: Быстрая укладка плитки на стены в санузле. ПЕРЕДЕЛКА ХРУЩЕВКИ от А до Я #27 2024, Julie
Anonim
'N Selfstandige data-aanmeldmeter
'N Selfstandige data-aanmeldmeter

Ek hou daarvan om data te versamel en te ontleed. Ek is ook mal daaroor om elektroniese toestelle te bou. 'N Jaar gelede toe ek die Arduino -produkte ontdek, het ek dadelik gedink: "Ek wil omgewingsdata versamel." Dit was 'n winderige dag in Portland, OR, so ek het besluit om winddata op te neem. Ek het na 'n paar van die instruksies vir windmeters gekyk en dit baie nuttig gevind, maar ek moes 'n paar tegniese veranderinge aanbring. Eerstens wou ek hê dat die toestel 'n week lank in die buitelug moet werk. Tweedens, ek wou hê dat dit baie klein rukwinde kon opneem, en verskeie ontwerpe hier het taamlik sterk wind vereis om aan die gang te kom. Laastens wou ek die data opneem. Ek het besluit om 'n baie ligte rotorontwerp te kies met so min traagheid en weerstand as moontlik. Om dit te bereik, het ek alle plastiekonderdele (insluitend skroefdraad vinylstawe), kogellagers en optiese sensors gebruik. Ander ontwerpe gebruik magnetiese sensors of werklike DC -motors, maar albei vertraag die rotor, optika gebruik 'n bietjie meer krag, maar bied geen meganiese weerstand nie. Die datalogger is eenvoudig 'n Atmega328P met 'n flitsskyf van 8 mbit. Ek het daaraan gedink om SD te gaan, maar ek wou die koste, kragverbruik en kompleksiteit laag hou. Ek het 'n eenvoudige program geskryf wat elke sekonde 'n rotasie van twee bytes aanteken. Met 8 megabits het ek gedink ek kan ongeveer 'n week se data insamel. In my oorspronklike ontwerp het ek gedink dat ek 4 C -selle nodig sou hê, maar na 'n week was hulle nog vol, so ek was seker 'n grootte -orde in die kragverbruik. Ek het nie lineêre reguleerders gebruik nie, ek het alle spanningsrails tot 6V gery (alhoewel sommige van die onderdele met 'n nominale waarde van 3,3V was. Yay -ontwerp!). Om die data af te laai, het ek 'n ingewikkelde stelsel wat die flits gelees het en dit na die arduino seriële monitor gestort het, en ek het dit in Excel gesny en geplak. Ek het nie tyd daaraan bestee om uit te vind hoe ek 'n USB -app op die opdraglyn moet skryf om die flits op standaard uit te skakel nie, maar op 'n stadium sal ek dit moet uitvind. Die resultaat was nogal verrassend; ek kon 'n paar interessante tendense waarneem wat ek vir 'n ander verslag kan stoor. Sterkte!

Stap 1: Bou die Rotor

Bou die Rotor
Bou die Rotor
Bou die Rotor
Bou die Rotor

Ek het 'n aantal verskillende idees vir die rotorkoppies probeer: paaseiers, tafeltennisballe, plastiekbekers en leë kersboomversieringsballetjies. Ek het verskeie rotors gebou en almal met 'n haardroër getoets, wat 'n reeks windsnelhede bied. Van die vier prototipes het die sierdoppe die beste gewerk. Hulle het ook hierdie klein oortjies wat die aanbring makliker gemaak het, en was gemaak van 'n stewige plastiek wat goed met polikarbonaat sement werk. Ek het 'n paar verskillende aslengtes probeer, klein, medium en groot (ongeveer 1 "tot ongeveer 6") en gevind dat die groter groottes te veel draai en nie goed reageer op lae windsnelhede nie, so ek het met die klein skagte gegaan. Aangesien alles van deurskynende plastiek was, het ek 'n handige klein afdruk gemaak om die drie lemme te help aansteek. Materiaal: die ornamente kom van die Oriental Trading Company, item "48/6300 DYO CLEAR ORNAMENT", $ 6 plus $ 3 gestuur. Die plastiekskagte en die konstruksieskyf kom van 'n plaaslike TAP Plastics -winkel, ongeveer $ 4 meer in onderdele.

Stap 2: Bou die boonste basis

Bou die boonste basis
Bou die boonste basis
Bou die boonste basis
Bou die boonste basis

Om rotasie -traagheid te verminder, het ek 'n nylon staaf van McMaster Karr met skroefdraad gebruik. Ek wou laers gebruik, maar die laers van die masjien is verpak in rotorvertraagde vet, en ek het 'n paar goedkoop skaatsplanklaers gekoop wat niks het nie. Hulle pas pas in die CPVC -buisadapter van die binneste deursnee met 'n 3/4 duim. Eers toe ek die struktuur bymekaarmaak, het ek besef dat skaatslaers 'n vlak lading hanteer, en ek het 'n vertikale las toegepas, so ek moes 'n skroefdraer gebruik het, maar hulle het goed gewerk, en het waarskynlik gehelp om wrywing van die presessie -wringkrag te bestuur. Ek was van plan om 'n optiese sensor aan die onderkant van die as vas te maak, so ek het die CPVC -koppeling in 'n groter basis gemonteer. Home Depot is 'n prettige plek om te meng en pas by CPVC/PVC-toebehore. Uiteindelik kon ek die 3/4 "skroefdraad-CPVC-koppeling in 'n PVC 3/4" tot 1-1/2 "reducer stop. Dit het baie gespeel om alles te laat pas, maar dit het genoeg ruimte gelaat vir elektronika. Materiaal: 98743A235-Swart draad nylon staaf (5/16 "-18 draad) 94900A030-Swart nylon hex moere (5/16" -18 draad) Goedkoop skaatsplank laers 3/4 "threaded CPVC adapter 3/4" tot 1 -1/2 "PVC -verkleiner na 3/4" pyp met skroefdraad Let wel: PVC- en CPVC -koppelingsafmetings is nie dieselfde nie, waarskynlik om toevallige misbruik te voorkom; so om te ruil in 'n gewone PVC 3/4 "gewone adapter werk nie, maar die drade van 'n skroefdraadadapter is dieselfde, wat heeltemal vreemd is. Die CPVC -koppeldrade in die PVC -adapterbus. Adapter … bus … koppeling … Ek meng waarskynlik al hierdie terme, maar 15 minute in die loodgietergang van die Home Depot sal u regmaak.

Stap 3: Optiese onderbreker

Optiese onderbreker
Optiese onderbreker
Optiese onderbreker
Optiese onderbreker

As die rotor draai, word die rotasie daarvan getel deur 'n optiese onderbreker. Ek het daaraan gedink om 'n skyf te gebruik, maar dit beteken dat ek die beligtingsbron en die detektor vertikaal moet heg, wat baie moeilik sou wees om te monteer. In plaas daarvan het ek gekies vir 'n horisontale houer en 'n paar koppies gevind wat op die onderkant van stoele kom om hardehoutvloere te beskerm. Ek het ses segmente geverf en afgeplak, wat my twaalf (byna) eenvormige rande of 12 bosluise per omwenteling van die rotor sou gee. Ek het daaraan gedink om meer te doen, maar ek was nie baie vertroud met die snelheid van die detektor of die gesigsveld van sy optika nie. Dit wil sê, as ek te smal raak, kan die LED om die kante kruip en die sensor aktiveer. Dit is 'n ander navorsingsgebied wat ek nie nagestreef het nie, maar dit sal goed wees om dit te ondersoek. Ek het die geverfde beker aan 'n moer vasgeplak en aan die einde van die as vasgemaak. Materiaal: stoelbeenbeskermingsbeker uit die Home Depot Black -verf

Stap 4: Heg die Rotor aan

Heg die Rotor aan!
Heg die Rotor aan!

Op hierdie stadium het dit redelik koel begin lyk. Die nylon neute is regtig glad, so ek moes baie slotmoere gebruik (ingeval u dit nie opgemerk het op die vorige foto's nie). Ek moes ook 'n spesiale moersleutel maak om in die dop onder die rotor te pas sodat ek albei moere kon sluit.

Stap 5: Bou die onderste basis

Bou die onderste basis
Bou die onderste basis
Bou die onderste basis
Bou die onderste basis

Die onderste basis bevat die batterye en bied 'n ondersteuningsstruktuur. Ek het 'n redelik koel waterdigte boks aanlyn gevind van 'n onderneming genaamd Polycase. Dit is 'n baie gladde omhulsel wat styf sluit, en die skroewe is wyer aan die onderkant sodat hulle nie maklik uit die bokant val nie. Ek het 'n PVC -maat aan die boonste PVC -bus gebruik. Hierdie onderste basismaat is slegs 'n skroefdraad 1-1/2 PVC-koppeling. Die boonste rotor-basisdruk pas via die koppeling in die onderste voet. Soos u later sal sien, het ek hierdie stukke nie aan mekaar vasgeplak nie omdat ek wou kan dit oopmaak en indien nodig aanpassings maak, en die montering is makliker as u die printplate aanheg.

Stap 6: Bou die optiese sensor

Bou die optiese sensor
Bou die optiese sensor

Die sensormeganisme is 'n 940nm LED en 'n Schmitt-ontvanger. Ek is lief vir liefde, ek hou van die Schmitt -snellerbaan, dit sorg vir al my afwaartse behoeftes en stuur 'n CMOS/TTL -versoenbare sein. Die enigste nadeel? 5V werking. Ja, ek het die hele ontwerp tot 6V oorgedra, maar as dit nie vir hierdie deel was nie, kon ek na 3.3V gegaan het. Die idee is dat hierdie stroombaan onder die rotorbeker kom, wat die balk onderbreek terwyl dit draai, wat logiese oorgange vir elke rand veroorsaak. Ek het nie 'n goeie beeld van hoe dit gemonteer is nie. Ek het basies twee plastiekverskuiwings in die onderste PVC -koppeling vasgeplak en dit van bo af vasgeskroef. Ek moes die rande van die bord afmaal sodat dit netjies pas. Ek het nie eens 'n skema hiervoor nie; dit is regtig maklik: voer net 'n 1k -weerstand van Vin af en dra dit op sodat die LED altyd aan is en die uitset van die detektor aan is. Materiale: 1 940nm LED 1k weerstand 1 OPTEK OPL550 sensor 1 driepenprop (wyfie) 1 1,5 "x1,5" printplaat Verskillende lengtes draad Hitte krimp buise as u van u drade hou

Stap 7: Bou die datalogger

Bou die datalogger
Bou die datalogger
Bou die datalogger
Bou die datalogger
Bou die datalogger
Bou die datalogger
Bou die datalogger
Bou die datalogger

Die Arduino -prototipe -bord was te groot om in die onderstel te pas. Ek het EagleCAD gebruik om 'n kleiner printplaat uit te lê en het 'n enkele laag afgetrek … daar is vier lelike drade wat ek nodig gehad het om 'n paar gapings te oorbrug.

(Ek het gedink ek meet dit by ~ 50mW bedryfskrag, en op grond van die watture van die batterye, het ek gedink ek sal binne 'n week onder 5V daal, maar my kragmeting of my wiskunde was verkeerd omdat 4 C-selle gehou word gaan nog lank.) Redelik eenvoudige uitleg: net 'n resonator, die ATmega328, 'n flitsskyfie, 'n ontfoutingsspringer, 'n ontfoutings -LED, kragbron, en dit is omtrent dit. Daar is iets wat DorkBoard genoem word, wat ek ook kon gebruik het; dit is basies alles wat nodig is vir 'n ATMega328 dev -bord in die grootte van die DIP -aansluiting. Ek het dit oorweeg om een te koop, maar my diskrete benadering was ongeveer 50% goedkoper. Hier is die skakel van die dorkboard:

Hier is die basiese idee (bronkode sal later ingesluit word) hoe die bord werk: Jumper ingestel op "ontfout" -modus: heg 'n onderbrekingswaarde aan die optiese sensoruitgang en knip die toets-LED in harmonie met die detektor. Dit was baie nuttig vir ontfouting. Jumper ingestel op "rekord" -modus: heg dieselfde onderbreking aan 'n teller, en vertraag 1000 msek in die hooflus. Skryf aan die einde van die 1000 msek die aantal randtellings na 'n flitsbladsy van 256 byte, en as die bladsy vol is, skryf dit uit en stel die telling terug. Eenvoudig, reg? Min of meer. Ek hou baie van die Winbond -flitsapparate, ek het in die negentigerjare flits ontwerp, so dit was lekker om dit weer te programmeer. Die SPI -koppelvlak is briljant. So eenvoudig om te gebruik. Ek laat die skemas en die bronkode vanself spreek. Het ek genoem EagleCAD is wonderlik? Dit is regtig. Daar is 'n paar wonderlike tutoriale op YouTube.

Stap 8: Koppel die elektronika aan

Koppel die elektronika aan
Koppel die elektronika aan

Weereens, ek het nie baie goeie foto's hier nie, maar as u dink dat twee plastiekafstande aan die binnekant van die PVC vasgeplak word, word albei borde daarin vasgeskroef. Hier is 'n foto van die loggerbord wat aan die onderkant gekoppel is. Die detektorbord is binne -in die behuising.

Stap 9: Kalibrasie

Kalibrasie
Kalibrasie
Kalibrasie
Kalibrasie
Kalibrasie
Kalibrasie
Kalibrasie
Kalibrasie

Ek het 'n proeftuig gemaak om die dier te kalibreer sodat ek rou rotortellings na MPH kon omskakel. Ja, dit is 'n 2x4. Ek het die windmeter aan die een kant vasgemaak en 'n debug Arduio aan die ander kant. Die LCD vertoon die rotortellings. Die proses het so verloop: 1) Soek 'n lang reguit pad sonder verkeer. 2) Hou die 2x4 vas sodat dit so ver as moontlik by die venster uitsteek 3) Skakel stemopname aan op u iPhone of Android 4) Skakel 'n digitale GPS -snelheidsmeter aan op u handtoestel van keuse 5) Ry gereeld teen verskeie snelhede en kondig aan die snelheid en gemiddelde rotortelling vir u blokfluit 6) Moenie neerstort nie 7)? 8) As u nie verder ry nie, speel u telefoonboodskap weer op en voer die data in Excel in, en hoop dat 'n lineêre of eksponensiële of polinoom pas by 'n R-kwadraatwaarde van meer as 99%. Hierdie omskakeling # sal later gebruik word. Die toestel vang slegs rou data op, ek het dit na MPH (of KPH) na Excel verwerk. (Het ek genoem dat ek 'n badass olywe verf gebruik het? Ek sou dit 'n "Tactical Data Logging Anemometer" genoem het, maar toe onthou ek dat "takties" "swart" beteken.)

Stap 10: Gaan versamel 'n paar winddata

Gaan versamel 'n paar winddata!
Gaan versamel 'n paar winddata!
Gaan versamel 'n paar winddata!
Gaan versamel 'n paar winddata!
Gaan versamel 'n paar winddata!
Gaan versamel 'n paar winddata!

Dit is omtrent dit. Ek dink daar ontbreek 'n paar foto's, bv. die vier C-selle word nie in die onderste basis geplaas nie. Ek kon nie by 'n veerbelaaide houer pas nie, en ek het uiteindelik soldeerboute aan die batterye self aangebring. Ek skryf hierdie opdrag 'n jaar nadat ek dit gebou het, en in hersiening #2 het ek AA -batterye gebruik omdat ek die kragverbruik erg oorskat het. Deur AA te gebruik, kon ek 'n aan-uit-skakelaar byvoeg en het ek regtig ruimte vrygemaak, anders was dit redelik styf. In totaal was ek redelik tevrede met die ontwerp. Die onderstaande grafiek toon 'n gemiddelde waarde van 'n week. Die batterye het op dag sewe begin doodgaan. Ek sou die batterylewe kon verbeter deur die LED teen 'n laer werkingssiklus van ongeveer 1 kHz te laat loop, en ek sou geen rande verloor het nie, weens die relatiewe lae hoek van die rotor.

Hê pret! Laat weet my as u ruimte sien vir verbetering!

Stap 11: Bronkode

Aangeheg is 'n enkele Arduino -bronlêer. Ek het dit geglo omdat, hey, GPL.

EDIT: Ek wil daarop wys dat my implementering van die gebruik van 'n 1s vertraging () 'n vreeslike idee is en in h Die hoeveelheid tyd wat nodig is om na die flits te skryf en die sensor te lees, lyk dalk klein, maar in die loop van 7 -10s dra dit by tot 'n beduidende drif. Gebruik eerder 'n 1Hz -tydinterrupt (timer #1 op die 328P kan perfek tot 1Hz gekalibreer word). Om veilig te wees, moet u in 'n heining kodeer as die skryf van die bladsy en die sensor om een of ander rede langer as 1 sekonde duur (hanteer monsters wat u laat val het), maar 'n timer-onderbreking is die manier om dinge te doen wat goed moet wees. akkuraat. Cheers!

Aanbeveel: