Sisukord:

Tweet-A-Temp: 8 sammu
Tweet-A-Temp: 8 sammu

Video: Tweet-A-Temp: 8 sammu

Video: Tweet-A-Temp: 8 sammu
Video: [MULTI SUB]《暴富從撿漏開始》窮小夥意外獲得鑒寶神眼,不管什麽寶物,在他手裏絕不錯過,美女總裁更是非他不嫁!#chinesedrama #廢柴 #逆襲 #男頻 #都市 #打臉 #復仇 #短劇 2024, November
Anonim

Autor Z0tZot's Homebrew Experiments

Magic 8 Beer 8 -poolne die
Magic 8 Beer 8 -poolne die
Magic 8 Beer 8 -poolne die
Magic 8 Beer 8 -poolne die

Minu vanim poeg (Minion #1) ja me hakkasime ehitama Tweet-A-Watti ega suutnud juhiseid õigesti järgida, nimelt tegime mõlemad vastuvõtjad standardvastuvõtjateks, mitte ainult üheks, ja siis asustasime teise XBee vastuvõtja pooleldi. meil oli kaks valikut, kas lõigata lisaosad ära või midagi muud. Arvestades, et ma ei ole veel Kill-A-Watti kohalikult leidnud ja mul oli see väline/sisemine termomeeter, mida oleksin tahtnud 10 aastat arvutisse viia, teadsin, mida pean tegema: pidin mõõtmiseks kasutama termomeetrit minu kümblustünni temperatuuri ja seejärel piiksuma! Olin hiljuti andnud Minionile #1 ülesande kirjeldada piirideta kümblustünnikontrollerit. Ta mainis, et me võiksime muuta selle traadita, kuid ei, see on rumal… Mulle meeldib, kui 10-aastane plaan saab teoks. Vaata seda Twitteris

Samm: ehitage Xbee vastuvõtjad

Ehitage Xbee vastuvõtjad
Ehitage Xbee vastuvõtjad

Ehitage kaks XBEE vastuvõtjat. Ma kasutasin Lady Ada vastuvõtjaid, iga vastuvõtja teeb seda. Teil on vaja juurdepääsu XBee VREF ja AD0 tihvtile. Tweet-A-Watti trikk on konfiguratsioon. Tegelikult seadistate ühe seadme Kill-A-Watti väärtuste kordamiseks järgmiselt: ATMY = 1, SM = 4, ST = 3, SP = C8, D4 = 2, D0 = 2, IT = 13, IR = 1 See määrab aadressi (1), määrab unerežiimi, taimeri ja perioodi ning seejärel seab nööbid 4 ja 2 analoogsisendirežiimi (2), mis saadab 0x13 (19 kümnendkoha) paketti, 1 ms proovide vahel. Siin on trikk analoogsisend. Saate lugeda väikeseid pingeid (0–5 V) otse XBee poolt. Tweet-A-Wattis seadistate nööpnõelad 4 ja 0, et saata ampullid ja volti, mida mõõdetakse Kill-A-Watt. Tegelikkuses ta seda ei saada, vaid saadab väikese pinge, mida mõõdetakse Kill-A-Watt kiipidega, vastuvõtjale XBee, mis on ühendatud arvutiga. Arvuti tarkvara loeb pidevalt saadud pakette ning arvutab ümber tegeliku pinge ja voolutugevuse ning arvutab seejärel võimsuse.

Samm: termomeeter

Termomeeter
Termomeeter
Termomeeter
Termomeeter
Termomeeter
Termomeeter

Ostsin umbes 10 aastat tagasi kaks sellist sise- ja välistermomeetrit kodust depoost. Olin alati lummatud, et väline termomeeter ühendati põhiseadmega tavalise helipistikuga. Olen alati mõelnud, kas ma saan temperatuuri mõõta, ühendades selle arvuti mikrofonipesaga.

Tuleb välja, et tõenäoliselt suudaksin selle tööle panna, kuid see oleks keeruline. Pistik on tegelikult 3/32 pistik, mitte 1/8 helipistik. See on väliste mikrofonide jaoks mõeldud mobiiltelefonide standardne pistik. See tekitas probleemi, kuna ma ei leidnud oma rämpshunnikutest ühtegi mikrofonipistikut, mis Ma ei pidanud pinnale kinnitama. Pidin ostma komplekti Radio Shack (2 dollarit), mis lisas projektile olulise viivituse (kuurile jõudmine polnud lihtne). Võtsin ühe seadme lahti, enne kui sain äkki aru, kuidas kellegi asi töötas, see oli pingejagur! See oli ilmselge, kui ma sellele mõtlesin. See tegi elu väga lihtsaks.

Samm: mis on pingejagur?

Mis on pingejagur?
Mis on pingejagur?

Üks parimaid kohti elektroonika tundmaõppimiseks on sellel lehel selgitatud Wisconsini võrgujaoturid (paremal all) või võite külastada Voltage Wikipedia lehte. Lühidalt öeldes, kui teil on järjestikku kaks takistit, on pingelangus iga takisti vahel proportsionaalselt takisti suurusega. Kui teil on pinge V üle ahela R (1) + R (2), siis V = V (1) + V (2). Nii et kui V = 3V ja V (2) = 2V, teate, et V (1) = 1V. Ohmi seaduse aluseks on nüüd see, et vool (I) on V/R. Jadaahelas on vool kogu aeg sama, seega on vool läbi A ja B kogu ahela jaoks sama. Seetõttu on I = V1/R1 = V2/R2. Me teame, et V2 = V - V1, ühendamine, näeme V1/R1 = (V -V1)/R2. Lahendades saame R2 = R1*(V-V1)/V1 Nii et kui teame, kas teame V (1), V ja R (2), saame lahendada R2. Kui meil on R2, teame selle väärtust Termistor!

Samm: mis on termistor?

Mis on termistor?
Mis on termistor?

Termistor on takisti, mis muudab temperatuuri takistust. Kasutades takistuse määramiseks pingejaoturi tehnikaid, saame öelda, mis temperatuur see on. Probleem on selles, et mul on 10 -aastase toote korpuses mõni odav termistor. Kuidas ma pidin looma funktsiooni, mis muutuks takistusest temperatuuriks? Mul on termomeeter, mille külge see ühendatakse! Nii et ma mõõtsin palju. Kopeerisin temperatuuri alla ja mõõtsin seejärel termistori takistust. Panin selle külmkappi, seejärel panin sooja vette. Hiljem haarasin toatemperatuuri, kuna mul oli aega. Ma arvasin, et oleksin võinud lugeda Wikipedia plage'i, mis võib proovida a ja b tegureid ära arvata, kuid eeldasin, et kasutan mittelineaarset, võimalikku ebaõnnestunud komponenti, mis ei vasta enam tootmisele spetsifikatsioonid. Oh, ma olen laisk. Nii et ma viskasin kõik väärtused Excelisse ja joonistasin selle. Ma olin algselt mures, et pidin mäletama sügavat tumedat matemaatikat nagu "kõige vähem ruudus sobiv", kui avastasin, et Excell teeb seda mina! Ilmselgelt puuduvad mul graafikul lüngad, kuid sain palju häid andmeid mullivanni temperatuuride (100–105 F) kohta. Toatemperatuuri vahemikke kontrollides märkasin midagi, mis muudab minu töö peaaegu väärtusetuks. Termomeeter "Precise Temp" teatas 3-7 kraadi veast "siseruumides" ja "väljas" vahel, kui termistor oli tolli kaugusel! Nüüd võib see olla sellepärast, et ma segasin ja sobitasin termistori üksuste vahel, kuid panustan sellele, et see on rohkem tingitud 10 -aastase, 10 -dollarise kauba kvaliteedist ja olenemata temperatuuri "täpsusest", vajasin täpsust ja mitu sama testi vahemik näitas päevade jooksul väga lähedasi tulemusi. Pikemas perspektiivis kinnitan tõenäoliselt termistori mullivanni viivale torule, nii et mul on niikuinii vaja nihet. Nii et kui saan Exceli võrrandit kuvama, panen selle seejärel koodi sisse ja siiani on see " Sulge."

Samm: saatja ahel

Saatja ahel
Saatja ahel

Saatja ahel on lihtne. Valisin R2 jaoks 100 kOhm takisti, kuna tundus, et see sobib graafiku vahemikku, ja mul oli varukoopia erinevate asjade jootmisel Minionidega. Ma ühendan selle järjestikku termistoriga pistiku kaudu. Siis lisasin aku. Ma kandsin 3 V VREF -i ja pingejaguri ülaossa ning Xbee +3V sisendisse. Panin GND (aku negatiivne) GND sisendisse ja jagaja põhja. Seejärel ühendasin AD0 (Volts in) pingejaoturi ahela keskele.

AD0 loeb suhtelise pinge vahemikus VREF kuni V (1). Nii et kui aku väheneb, peaks suhteline pinge langema sama. Lõpuks toitan seadme kohaliku toiteallikaga. Valmis seade töötas hästi, me ühendame kõik alligaatoriklambritega, mis muutis selle habras. Pärast naissoost 3/32 "ühenduse loomist panen saatja juhuslikku plastvanni, mis meil oli (endine hummuse konteiner). See peaks seda ilmastiku eest kaitsma. Kuna ostsin" paneelkinnitusega "pistikud, oli see sama lihtne nagu augu puurimine plastikust, et lisada pistik väljastpoolt üsna veekindla ühendusega. Kui meil see oli, oli aeg katsetada.

6. samm: kodu, kodu, vahemik puudub

Kodu, kodu, pole valikut
Kodu, kodu, pole valikut
Kodu, kodu, pole valikut
Kodu, kodu, pole valikut
Kodu, kodu, pole valikut
Kodu, kodu, pole valikut

Üks esimesi asju, mida märkasime, oli see, et vahemaa suri kohutavalt, kui me saatjaga kontorist välja läksime. Proovisime teisest ruumist ja tulemused olid kohutavad. 1 meetri kaugusel krakkis see välja. Aeg lahendusi vaadata. Mulle tundus, et kui me testisime, oli meil 5 jala raadiuses 4 Wi -Fi allikat, kõik 2,5 Ghz vahemikus nagu Xbee. Samuti ei sihinud me Xbee'i üldse. Pärast uurimist otsustan, et saaksin osta võimsama Xbee raadio (umbes 23 dollarit) või lisada antenne. Üks asi, mida vajasin, oli hea vahemiku test. Digi X-CTU tarkvara on sisseehitatud "vahemiku test", kuid see ei aidanud midagi. Ma proovisin mõnda aega proovida, kuidas see toimima saada. Tegelikult oli see sama lihtne kui öeldud. Ma ei vajanud X-CTU testi, vaid "RX Signal Strength Indicator" (RSSI) väärtus. Vaatasin xbee.pyTweet-A-Watt kasutab ja seal, rida 39: [kood] self.rssi = p [3] [/kood] Mis tähendab, et see on osa Xbee tagastusväärtusest! (xb.rssi wattcheris), nii et muutsin oma häkkimise silurida: print str (counter) + ": RSSI:" + str (xb.rssi) + "| " + time.strftime (" %Y %m %d, %H: %M ") +", " +": Pinge: " + str (CalcualtedVolts) +" avgv " + str (avgv) +" Termistor: " + str (x) + "Temperatuur:" + str (temperatuur) Mis tekitab sellise rea: 373: RSSI: 82 | 2009 04 26, 11:18,: Pinge: 1.80100585938 avgv 593 Termistor: 71.2276559865 Temperatuur: 78.6813444881 Saate vt ka RSSI töötlemisega Tom's Igoe lehelt. Kuigi soovite muuta paketi pikkust (ülaosas), kuna Processing kurtis, et kirjutasite pakettpuhvri suuruse lõppu. Usun, et peate olema suurem kui 2 * paketi pikkus. Tomi kood otsib eelmise paketi tahapoole, mis tähendab, et kui see jätab Ox7E pakettindikaatori vahele, võib see mõnda aega töötada. Arvestades, et olen mõõtepiirkonna välisserva lähedal, võib see mõnda aega juhtuda. 600 ja see lakkas mulle saatmast teadet "error, keelamine serialEvent ()". Tomi kood prindib ainult uusima sätte, mis pole minu jaoks nii kasulik. Minu silumisliin lubab mul jälgida muutub, kui Minion #1 imestab ringi. Nüüd oli meil hea viis mõõta, rohkem kui "hei isa, meil on pakett", oli aeg proovida mõnda koduõlleantenni ideed! Kasutades ideid saidilt https://www.usbwifi.orconhosting.net.nz/, leidsin, et Corner Cube mõõtis dB vähenemist, kuigi praktikas ei tundunud see aitavat lahti ühendatud paari ühendada. Vegatible Steamer oli tegelikult parim sihtimisel ja uuesti ühendamisel. USB Wifi seadistus erineb mõnest teisest. Aurutite keskel on vars, mis hõlbustab XBee paigutamist. Tho -fooliumiga pho -kauss näeb ka paljutõotavat (kuigi me lihtsalt eemaldasime hiljem plekk -fooliumi ja hoidsime seda paigal). Proovisime teha ka parabooli kuumade rataste painduva tükiga "rajaga", kuid see ei tundunud aitavat. Üks probleemidest on see, et katsetasime vahemiku välisservas. Enamik 2,5 Ghz raadioid, eriti XBee, kasutab hajutatud spektrit, mis tähendab, et nad saavad sünkroonida, kuid seejärel otsib XBee tarkvara enne käivitamist XBee paketi alguse. See tähendab, et saate kõik või mitte midagi efekti. Raadiod lukustuvad üksteise külge või mitte. Mõnikord tundub see õnne, kuid tegelikult olete nendes vahemikes antenn ja võite tulemusi mõjutada. Käisin kahte aurikut ostmas, kuid leidsin siis, et kohaliku supermarketi auriku hind oli 10 dollarit ja 2 auriku hinna eest saan võimsama XBee. Nii et ma vaatasin veel mõnda kohta ja leidsin päris sügava kurna, mis on veelgi parem. See oli 7 dollarit. Ma usun, et sügavus on oluline, kuna ma olen asjade edastamise poolel, peegeldab see rohkem signaali (https://www.usbwifi.orconhosting.net.nz/number13.jpg) märkuste kohaselt. Lõpptulemused, Kas köögivilja auruti ühes otsas (vahetatav) ja kurn teises, on mul signaal umbes 20-30 m, sisekontorist läbi 3-4 seina, mullivanni! Pro näpunäide: pidage meeles kui soovite kurna sisse viia, kui soovite

Samm 7: Tarkvara

Tarkvara
Tarkvara

Alustades Tweet-A-Wattsoftware'ist, hakkasin püütoni koodi häkkima. Enamasti oli mul vaja eemaldada vattide teisendus, ajaloofunktsioonid ja seejärel lisada arv, mis jagatakse 0-ga (Tweet-A-Watt eeldab, et pakettidel on andmeid). Seejärel lisasin programmi Excelist valemi ja testitud. Ma seadsin selle printima iga paketi ja mul on probleemide lahendamiseks palju silumist. Proovisin graafilist osa tööle saada, kuid loobusin, mis viib mind: Python Rant: See on mul teine kord püüdis Pythonis teha suurt projekti. Ma ei suutnud kõiki raamatukogude sõltuvusi ja baaspakette Windowsis, Windows 64, Ubuntus ja Fedoras alla 20 tunni jooksul tööle panna. Lõpuks pidin peaaegu kõik nullist üles ehitama ja isegi siis mõned funktsioonid ei töötanud. Proovisin 2.4, 2.5, 2.6 ja erinevaid 3. X versioone ning seejärel iga raamatukogu versioone, mis omakorda sõltusid teistest pakettidest. Kuigi teised võisid keele vastu röökida, leidsin, et lihtsalt installimine, isegi paljude lihtsate paigaldajate kasutamine, on heal juhul heidutav! Pärast temperatuuride arvutamist tegin 1 -kraadise reguleerimise, sest ma ei suutnud mullivanni uskuda oli 106F juures. Ma tõesti ei usu, et see on ka 105 juures. Seejärel näpistasin aruandluse ja twitteri loogikat. Kuna ma pole kindel, kas ma saan pakette või häid pakette, otsustasin teatada temperatuurist kord tunnis. Ma eeldan, et vähendan seda mõne aja pärast. Praegu töötab skript tavalise kasutajana. Lõpuks tahan selle teenusesse teisaldada.

8. samm: järgmised sammud

Järgmised sammud on ilmsed:

1) Vahetage köögivilja kurn a. Minionid vajavad oma köögivilju! b. See oli igatahes vana. 2) Asetage kuumvanni antenn teki alla a. Tekk võib selle veelgi kaugemale viia, kuid see võimaldab koledamat seadistust. b. Seejärel saan termistori allapoole juhtida ja leida parema koha. 3) Lisage rohkem andureid a. Lihtne on välistemperatuuri andur. b. Kuid pole mingit põhjust, miks me ei suutnud juhtpaneelide olekut tuvastada, eriti soojusandurit, mida maagiliselt puudutatakse, kui lapsed on möödas. c. Muud ilmastikuandurid (tuul, niiskus jne) d. Oleks tore kontrollida mullivanni ja saaksin kütmise suurel osal ööst ja päevast välja lülitada. 4) Saan tarkvara kohandada a. Minionid tahavad juba paremaid sõnumeid temperatuuri kohta. b. Peaksime saama vastata vastustele ja DM -idele. c. Peaksin targemalt säutsuma (harvem kui kord tunnis). d. Mul on plaanis veel mõndagi lõbusat.

Soovitan: