Sadržaj:
- Korak 1: Teorija
- Korak 2: Idite po stvari
- Korak 3: Napravite montažu senzora
- Korak 4: Priključite senzor
- Korak 5: Uključite ga
- Korak 6: Programirajte Squidbee
- Korak 7: Povežite se sa računarom
- Korak 8: Python
- Korak 9: Zavisnosti
- Korak 10: Kodirajte
- Korak 11: Rastavite stolicu
- Korak 12: Poništite presvlake
- Korak 13: Izmijenite jastuk
- Korak 14: Umetnite senzor
- Korak 15: Ponovo sastavite
- Korak 16: Dno gore
- Korak 17: Uključite ga
- Korak 18: Pokrenite kôd
- Korak 19: Tweet
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-13 06:57
Kancelarijska stolica na Twitteru "tweetuje" (objavljuje ažuriranje na Twitteru) nakon otkrivanja prirodnog plina, poput onog proizvedenog ljudskom nadutošću. Ovo je dio moje predanosti da precizno dokumentiram i podijelim svoj život kako se to događa. Za detaljniju teoriju, pogledajte sljedeći korak pod naslovom Teorija. Rezultate vaših trudova pogledajte na Twitteru.
Korak 1: Teorija
Prema mojim kolegama, Twitter bi se trebao pojaviti u tom prostoru između postova na Flickru i ažuriranja na Facebooku, u prostoru u kojem se život zaista događa. Pa, u vremenskom periodu "kada se život zaista dogodi", život se zaista dešava. Nije ni lijepo ni ružno. To je samo život. Ako bi Twitter trebao biti dokument života kakav se događa, onda bi zaista trebao dokumentirati život, bez razlike, jer se to događa bez miješanja. Ako to ne uspije, život tada postaje prostor između "tvitova" (objava na Twitteru).
Stoga je od najveće važnosti biti u mogućnosti ažurirati Twitter sa životnim događajima, a da se zapravo ne ometa u sam događaj. Dokumentacija života, ubuduće, mora biti automatizirana.
Ipak, odlučio sam da je prvi dio života koji treba dokumentirati bila moja svakodnevna nadutost na poslu. Neću lagati, ja sam gasovita osoba. Budući da je moja nadutost dio života, bilo bi lažno od mene dokumentirati život kako se to događa bez dokumentiranja ovih događaja.
U skladu s procesom nemiješanja u svakodnevne aktivnosti, stvorio sam uredsku stolicu koja će otkriti i na Twitteru moju nadutost bez potrebe da mi smeta da je ažuriram.
Korak 2: Idite po stvari
Trebat će vam:- Uredska stolica- Squidbee TX/RX par- 1/8 komad akrila- 50K trimpot- Senzor prirodnog plina- Čvrsta žica za spajanje- Postavka za lemljenje- Laserski rezač (ili pila i bušilica)- Oštrica za brijanje- Set odvijača - Bušilica- Matice i vijci (ili vijci)- Klešta- Pištolj za spajanje- Python- Twitter račun
(Imajte na umu da su neki od linkova na ovoj stranici partnerski linkovi. To ne mijenja cijenu stavke za vas. Sav prihod koji reinvestiram reinvestiram u stvaranje novih projekata. Ako želite bilo kakve prijedloge za alternativne dobavljače, dopustite mi znati.)
Korak 3: Napravite montažu senzora
Napravite nosač senzora preuzimanjem priložene Corel datoteke i laserskim rezanjem vašeg 1/8 komada akrila pomoću vašeg sjajnog laserskog rezača Epilog.
Jesam li spomenuo koliko su odlični laserski rezači Epilog?
U svakom slučaju … Ako, za razliku od nas u Instructables, nemate laserski rezač, možete preuzeti datoteku i odštampati je na papir. Izrežite kružni obris s lista papira i zalijepite ovo na svoj akril kao vodič. Gdje je potrebno, izbušite rupe kroz akril pomoću bušilice i izrežite oko obrisa ubodnom pilom (ili slično).
Korak 4: Priključite senzor
Pričvrstite senzor na držač za montažu prateći ožičenje na shemi na slici. Ako nemate trimpot, možete umetnuti vrijednost otpornika između 22K i 47K (preporučuje se trimpot). Kada su komponente umetnute, lemite ih na mesto. Možda ćete prvo htjeti prekinuti sve dodatne kontakte koji bi vas mogli zbuniti. Ovdje pogledajte tehnički list.
Korak 5: Uključite ga
Otvorite Squidbee (pod pretpostavkom da ga sami niste napravili) i odvojite sve beskorisne senzore. Priključite senzor za detekciju prirodnog plina tako da napajanje ide u utičnicu, a podatkovna linija ide na pin 2 (kao što je prikazano).
Korak 6: Programirajte Squidbee
Sada je vrijeme da programirate svoj Squidbee sa kodom za čitanje analognog senzora.
Prvo, isključite Xbee štit iz Arduina (dio Squidbee -a na koji je senzor uključen). Također, promijenite kratkospojnik za napajanje iz baterije u USB.
Zatim priključite Arduino u USB priključak.
Otvorite Arduino programer.
Postavite serijski port (obično izgleda kao /dev/tty.usbserial-A70048pF). Zapišite adresu serijskog porta za buduću upotrebu.
Preuzmite, otvorite i pritisnite dugme za reprodukciju da biste kompajlirali kôd (preuzmite ispod). Prenesite kôd na svoj Arduino.
Isključite Arduino iz računara. Ponovo uključite kratkospojnik na baterijsko napajanje i ponovo postavite Xbee štitnik.
Korak 7: Povežite se sa računarom
Kad ste spremni za početak očitavanja senzora, priključite svoju 9V bateriju u Squidbee odašiljač i spojite prijemnik na računar.
Dolazni tok podataka možete vidjeti gledajući serijski monitor u Arduino sučelju na vašem računaru.
Korak 8: Python
Prije nego što odete dalje, potreban vam je Python. Ako koristite Mac sa novijom verzijom OS X, trebali biste već imati Python. Otvorite terminal, upišite u naredbeni redak "python" i pritisnite "enter". Ovo bi trebalo otvoriti Python. Da biste vidjeli kako Python radi svoju stvar: ispišite 'hello world' (i pritisnite Enter) Ovo će vratiti "Hello World" u prompt. Da biste napustili Python, pritisnite "control-D". Ako ne imate Python, možete ga preuzeti ovdje i instalirati slijedeći navedena uputstva.
Korak 9: Zavisnosti
Postoji niz obruča koje morate preskočiti prije nego što možete pokrenuti Python kod u sljedećem koraku. Prva stvar koja vam je potrebna je setuptools skripta ljuske. Otvorite terminal i promijenite svoj radni direktorij u direktorij u kojem je postavljena alatka. Možete promijeniti direktorije tako da upišete "cd nameofdirectory" i pritisnete "enter". i možete pogledati koji su direktoriji na vašoj trenutnoj lokaciji upisivanjem "ls" i pritiskom na "enter". Nakon što ste u ispravnom direktoriju, instalirajte ljuskastu skriptu upisivanjem chmod setuptools.egg (ili bilo koji drugi naziv datoteke. Nemojte preimenovati datoteku). To može zahtijevati unos administratorske lozinke. Učinite to kada se to od vas zatraži i pritisnite "enter". Sada biste trebali moći koristiti Easy Install, koji je, čini se, jedan od najvećih komada koda ikada napisanih. Nakon što imate Easy Install, samo trebate unijeti u naredbeni redak "easy_install", a zatim ime paketa koji pokušavate preuzeti i pritisnuti "enter". Na primjer, "easy_install greatcode" (nije pravi primjer). Sljedeća stvar koju znate, preuzeli ste i instalirali cijeli paket "greatcode" za upotrebu u vlastitom kodu. Otvorite svoj upit i upišite svaki red ispod i pritisnite enter. Ovo će instalirati pakete Simple Json, Twitter, Time i advanced Math (numpy).easy_install simplejsoneasy_install pyserialeasy_instally numpy easy_instally timePreuzmite i instalirajte Python Twitter slijedeći upute na stranici (možete čak i samo pokušati "easy_install twitter").
Korak 10: Kodirajte
Ovaj projekt bio mi je odličan izgovor da počnem učiti Python. Kao početnik, ovaj kod nije savršen, ali posao završava. Ako imate prijedloge kako se ovo može poboljšati, molim vas da mi kažete. S tim u vezi, neke korisne stvari koje sam naučio o Pythonu uključuju: Jedna od najvećih značajki Pythona (ili možda najgora?) Je nedostatak sintakse. Rijetko se morate sjetiti završne ili početne oznake. Možete samo nastaviti upisivati redove koda i Python će se potruditi da ga obradi. Python obrađuje blokove koda na osnovu njihovog uvlačenja. Nepravilno uvlačenje može rezultirati katastrofom. Na primjer, jedini način na koji kôd zna da je nešto dio for petlje je zato što je uvučen isto kao i sve ostalo što je također dio te petlje. Ovo može početi biti zeznuto sa ugniježđenim petljama (petlje unutar petlji) i dovesti do zabune i lošeg koda. Funkcionalni sistem Pythona je zbunjujući na više nivoa (na primjer, neke varijable su promjenjive, a neke ne). Ne razumijem u potpunosti složenost funkcija, ali ako vas zanima, svakako biste to trebali potražiti. Kôd koji ćemo koristiti uključuje brojne pakete, zbirku funkcija koje se mogu pozvati po volji (pogledajte posljednje korak za više informacija o instaliranju paketa). Uvozimo sljedeće pakete:- Python Twitter- PySerial- Numpy- Time- RandomKôd je sljedeći:
#!/usr/bin/python#Naziv datoteke: TwitterChair.pyimport twitterimport serialimport numpyimport timeimport random ## Vaše korisničko ime i lozinka ovdje#api = twitter. Api (korisničko ime = 'vaše korisničko ime', lozinka = 'vaša lozinka') ## Promijenite u ovo odgovara vašem serijskom portu#ser = serial. Serial ('/dev/tty.usbserial-A70063pF', 19200) serialArray = global gassygassy = 0def checkokay (): ser.flushInput () time.sleep (3) line = ser.readline () time.sleep (3) if line == '': line = ser.readline () ispišite 'here'def početne vrijednosti (i): while i <= 50: #time.sleep (.25) line = ser.readline () serialArray.append (int (line)) ser.flushInput () i = i+1 print serialArraycheckokay () startvalues (0) def main (i, i1): ArrayTransfer = numpy.array (i) ComparatorValue = int (numpy.mean (ArrayTransfer)) ispis ComparatorValue lastReading = ComparatorValue ispis lastReading loopy = i1 ispis petlje y = 0 x = 0 dok y <10: while x lastReading: lastReading = currentReading ispis lastReading ispis currentReading time.sleep (6) ser.flushInput () x = x+1 ispis 'pola minute e 'x = 0 y = y + 1 if lastReading> (ComparatorValue + 50): i1 = 1 if i1 == 1: sayings = ["Opet je prdnuo s uspjehom i snagom. Jao mi se. "," Pfffffffffft "," Uf. To je bilo odvratno "," Neka me neko rastavi "," Da mogu da povratim svoju pjenu, "" Volela bih da sam neka druga stolica "," Ponovo je prdnuo na mene "," Nije čuj da dolaze "," dozvoli mi da ponovim … ppppfffffffffftttttttttttt "," Nije uvijek bilo ovako. "] pickSaying = random.randint (0, 9) print pickSaying status = api. PostUpdate (sayings [pickSaying]) loopy = 0 ispiši 'gotovo' ako je _name_ == "_main_": main (serialArray, petlja) main (serialArray, gasovit)
Korak 11: Rastavite stolicu
Označite na sedištu stolice razmak između vašeg dna i dna podupirača. Ovo je prostor u koji želite instalirati senzor.
Uklonite sjedalo sa sklopa stolice i otpustite presvlake dok ne pristupite pjeni u području koje ste označili.
Korak 12: Poništite presvlake
Tkanina na vašoj stolici vjerovatno se drži spajalicom.
Uklonite spajalice sa stražnje strane sjedala tako da možete povući malo tkanine.
Korak 13: Izmijenite jastuk
Istrljajte pjenu tako da postoji džep u koji se senzor može umetnuti u stolicu. Otkrio sam da sam pomoću britvice za početak rupe malo olakšao.
Korak 14: Umetnite senzor
Umetnite senzor u rupu koju ste upravo napravili na jastuku sedišta stolice. Ako je moguće, malo usmjerite senzor prema stražnjoj strani.
Korak 15: Ponovo sastavite
Ponovo sastavite stolicu. To znači da ga ponovno tapecirajte pištoljem za spajanje i pričvrstite sve matice i vijke.
Korak 16: Dno gore
Nekako pričvrstite kutiju predajnika na dno sjedala stolice na način da još uvijek možete otvoriti i zatvoriti kućište.
Odlučio sam pričvrstiti svoje vrućim ljepilom. Također možete koristiti stvari poput matica i vijaka.
To može zahtijevati prvo pražnjenje kućišta.
Korak 17: Uključite ga
Uključite bateriju u odašiljač pričvršćen na stolicu i zatvorite kućište.
Priključite prijemnik u računar.
Korak 18: Pokrenite kôd
Pokrenite kôd tako što ćete otvoriti terminal, otići do direktorija u kojem se datoteka nalazi i upisati python TwitterChair.py
Ako još niste preuzeli python datoteku iz koraka "kod", preuzmite je iz ovog koraka!
Korak 19: Tweet
Tvitujte kada zvučite. Sretno dajte ljudima do znanja da se bavite životom onako kako se događa.
Je li vam ovo bilo korisno, zabavno ili zabavno? Pratite @madeineuphoria da vidite moje najnovije projekte.