Inhoudsopgave:

De Twitterende bureaustoel: 19 stappen (met afbeeldingen)
De Twitterende bureaustoel: 19 stappen (met afbeeldingen)

Video: De Twitterende bureaustoel: 19 stappen (met afbeeldingen)

Video: De Twitterende bureaustoel: 19 stappen (met afbeeldingen)
Video: Live webinar: Zo ga je veilig terug naar het werk in de 1,5 metereconomie | BeSense, Heijmans & CSU 2024, Juli-
Anonim
De Twitterende bureaustoel
De Twitterende bureaustoel

De Twitterende bureaustoel "tweets" (post een Twitter-update) bij de detectie van aardgas, zoals dat wordt geproduceerd door menselijke winderigheid. Dit maakt deel uit van mijn toewijding om mijn leven nauwkeurig te documenteren en te delen terwijl het gebeurt. Voor meer diepgaande theorie, zie de volgende stap getiteld Theorie. Bekijk de resultaten van de toots of your on arbeid op Twitter.

Stap 1: Theorie

Theorie
Theorie

Volgens mijn collega zou Twitter plaatsvinden in die ruimte tussen Flickr-berichten en Facebook-updates, in de ruimte waarin het leven zich daadwerkelijk afspeelt. Welnu, in een tijdsbestek "wanneer het leven echt gebeurt", gebeurt het leven ook echt. Het is niet mooi of lelijk. Het is gewoon leven. Als Twitter een document zou moeten zijn van het leven zoals het gebeurt, dan zou het het leven ook echt moeten documenteren, zonder onderscheid, zoals het gebeurt zonder inmenging. Als het dit niet doet, wordt het leven de ruimte tussen "tweets" (Twitter-berichten).

Daarom is het van het grootste belang om Twitter te kunnen updaten met levensgebeurtenissen zonder de gebeurtenis zelf te verstoren. De documentatie van het leven moet voortaan worden geautomatiseerd.

Dat gezegd hebbende, besloot ik dat het eerste deel van het leven dat gedocumenteerd moest worden mijn dagelijkse winderigheid op het werk was. Ik ga niet liegen, ik ben een gasachtig persoon. Aangezien mijn winderigheid een deel van het leven is, zou het bedrieglijk van me zijn om het leven te documenteren zoals het gebeurt zonder deze gebeurtenissen te documenteren.

In overeenstemming met het proces van niet-inmenging in dagelijkse activiteiten, heb ik een bureaustoel gemaakt om mijn winderigheid zowel te detecteren als te Twitteren zonder dat ik me lastig hoef te vallen om het zelf bij te werken.

Stap 2: Ga spullen halen

Ga spullen halen
Ga spullen halen
Ga spullen halen
Ga spullen halen

Je hebt nodig: - Bureaustoel- Squidbee TX/RX-paar- 1/8 stuk acryl- 50K trimpot- Aardgassensor- Vaste aansluitdraad- Soldeeropstelling- Lasersnijder (of zaag en boor)- Scheermesje- Schroevendraaierset - Boor- Bouten en moeren (of schroeven)- Tang- Een nietpistool- Python- Een Twitter-account

(Merk op dat sommige van de links op deze pagina gelieerde links zijn. Dit verandert niets aan de kosten van het artikel voor u. Ik herinvesteer alle opbrengsten die ik ontvang in het maken van nieuwe projecten. Als u suggesties voor alternatieve leveranciers wilt, laat het me dan weten weten.)

Stap 3: Maak een sensorbevestiging

Maak een sensorbevestiging
Maak een sensorbevestiging

Maak een sensorbevestiging door het bijgevoegde Corel-bestand te downloaden en uw 1/8 stuk acryl te lasersnijden met uw geweldige Epilog-lasersnijder.

Had ik al gezegd hoe geweldig Epilog-lasersnijders zijn?

Hoe dan ook… Als u, in tegenstelling tot ons bij Instructables, geen lasersnijder heeft, kunt u het bestand downloaden en op papier afdrukken. Knip de cirkelvormige omtrek uit het vel papier en plak deze als richtlijn op je acrylaat. Boor waar nodig gaten door het acryl met een boormachine en zaag rond de omtrek met een decoupeerzaag (of iets dergelijks).

Stap 4: Bevestig de sensor

Bevestig de sensor
Bevestig de sensor
Bevestig de sensor
Bevestig de sensor
Bevestig de sensor
Bevestig de sensor

Bevestig de sensor aan de montagebeugel door de bedrading in het afgebeelde schema te volgen. Als u geen trimpot heeft, kunt u een weerstandswaarde tussen 22K en 47K invoegen (een trimpot wordt aanbevolen). Wanneer de componenten zijn geplaatst, soldeert u ze op hun plaats. Misschien wilt u eerst alle extra leads afsnijden die u in verwarring kunnen brengen. Zie de datasheet hier.

Stap 5: Sluit het aan

Sluit het aan
Sluit het aan
Sluit het aan
Sluit het aan
Sluit het aan
Sluit het aan
Sluit het aan
Sluit het aan

Open je Squidbee (ervan uitgaande dat je er niet zelf een hebt gemaakt) en verwijder alle nutteloze sensoren. Sluit uw aardgasdetectiesensor zo aan dat de stroom naar het stopcontact gaat en de datalijn naar pin 2 (zoals afgebeeld).

Stap 6: Programmeer de Squidbee

Programmeer de Squidbee
Programmeer de Squidbee
Programmeer de Squidbee
Programmeer de Squidbee
Programmeer de Squidbee
Programmeer de Squidbee

Dit is het moment om je Squidbee te programmeren met de code om de analoge sensor te lezen.

Koppel eerst het Xbee-schild los van de Arduino (het deel van de Squidbee waarop de sensor is aangesloten). Verander ook de stroomjumper van batterij naar USB-stroom.

Sluit vervolgens de Arduino aan op uw USB-poort.

Open de Arduino-programmeur.

Stel de seriële poort in (ziet er meestal uit als /dev/tty.usbserial-A70048pF). Noteer het adres van de seriële poort voor toekomstig gebruik.

Download, open en druk op de "play"-knop om de code te compileren (download hieronder). Upload de code naar je Arduino.

Koppel de Arduino los van uw computer. Schakel de jumper terug naar batterijvoeding en plaats het Xbee-schild weer op.

Stap 7: Maak verbinding met de computer

Maak verbinding met de computer
Maak verbinding met de computer

Wanneer je klaar bent om sensormetingen te doen, steek je je 9V-batterij in de Squidbee-zender en sluit je de ontvanger aan op de computer.

U kunt de inkomende gegevensstroom zien door naar de seriële monitor in de Arduino-interface op uw computer te kijken.

Stap 8: Python

Python
Python

Voordat je verder kunt gaan, heb je Python nodig. Als je een Mac gebruikt met een recente versie van OS X, zou je Python al moeten hebben. Open de Terminal, typ in de opdrachtprompt "python" en druk op "enter". Dit zou Python moeten openen. Om Python zijn ding te zien doen, typ je: print 'hello world' (en druk op Enter) Dit zal "Hello World" in de prompt retourneren. Om Python af te sluiten, druk je op "control-D". Als je dat niet doet Python hebt, kun je het hier downloaden en installeren door de vermelde instructies te volgen.

Stap 9: Afhankelijkheden

afhankelijkheden
afhankelijkheden

Er zijn een aantal hoepels waar je doorheen moet springen voordat je de Python-code in de volgende stap kunt uitvoeren. Het eerste dat u nodig hebt, is het shellscript van setuptools. Open terminal en wijzig uw werkdirectory naar de directory waarin setuptools zich bevindt. U kunt directory's wijzigen door "cd nameofdirectory" te typen en op "enter" te drukken. en u kunt kijken welke mappen zich op uw huidige locatie bevinden door "ls" in te typen en op "enter" te drukken. Als je eenmaal in de juiste directory bent, installeer je het shellscript door chmod setuptools.egg te typen (of wat de exacte naam van het bestand ook is. Hernoem het bestand niet). Hiervoor moet mogelijk uw beheerderswachtwoord worden ingevoerd. Doe dit wanneer daarom wordt gevraagd en druk op "enter". U zou nu Easy Install moeten kunnen gebruiken, wat toevallig een van de beste stukjes code is die ooit zijn geschreven. Zodra je Easy Install hebt, hoef je alleen maar in de opdrachtprompt "easy_install" te typen, gevolgd door de naam van het pakket dat je probeert te downloaden en op "enter" te drukken. Bijvoorbeeld "easy_install greatcode" (geen echt voorbeeld). Voor je het weet, heb je het hele "greatcode"-pakket gedownload en geïnstalleerd voor gebruik in je eigen code. Open je prompt en typ elke regel hieronder en druk op enter. Hiermee worden de pakketten Simple Json, Twitter, Time en advanced Math (numpy) geïnstalleerd.easy_install simplejsoneasy_install pyserialeasy_instally numpy easy_instally timeDownload en installeer Python Twitter door de aanwijzingen op de pagina te volgen (je kunt zelfs "easy_install twitter" proberen).

Stap 10: Coderen

Code
Code

Dit project was voor mij een geweldig excuus om Python te leren. Als beginner is deze code niet perfect, maar hij klaart de klus. Als je suggesties hebt over hoe dit kan worden verbeterd, laat het me dan weten. Dat gezegd hebbende, enkele nuttige dingen die ik over Python heb geleerd, zijn: Een van Python's grootste kenmerken (of misschien wel de slechtste?) is het gebrek aan syntaxis. U hoeft zelden een sluitings- of openingstag te onthouden. Je kunt gewoon regels code blijven typen en Python zal zijn best doen om het te verwerken. Python verwerkt codeblokken op basis van hun inspringing. Onjuiste inspringing kan leiden tot een catastrofe. De enige manier waarop de code bijvoorbeeld weet dat iets deel uitmaakt van een for-lus, is omdat het op dezelfde manier is ingesprongen als al het andere dat ook deel uitmaakt van die lus. Dit kan lastig worden met geneste lussen (lussen in lussen) en tot verwarring en slechte code leiden. Het functiesysteem van Python is op een aantal niveaus verwarrend (sommige variabelen zijn bijvoorbeeld veranderlijk en andere niet). Ik begrijp de complexiteit van functies niet helemaal, maar als je geïnteresseerd bent, moet je het zeker opzoeken. De code die we gaan gebruiken omvat een aantal pakketten, een verzameling functies die naar believen kunnen worden aangeroepen (zie laatste stap voor meer informatie over het installeren van pakketten). We importeren de volgende pakketten: - Python Twitter- PySerial- Numpy- Time- Random De code is als volgt:

#!/usr/bin/python #Bestandsnaam: TwitterChair.pyimport twitterimport serialimport numpyimport timeimport random## Uw gebruikersnaam en wachtwoord hier#api = twitter. Api(username='yourusername', password='yourpassword')## Wijzig dit in match uw seriële poort#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() print 'here'def startvalues(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)) print ComparatorValue lastReading = ComparatorValue print lastReading loopy = i1 print loopy y = 0 x = 0 while y < 10: while x lastReading: lastReading = currentReading print lastReading print currentReading time.sleep(6) ser.flushInput() x=x+1 print 'halve minuut' e' x=0 y=y+1 if lastReading > (ComparatorValue + 50): i1 = 1 if i1 == 1: gezegden = ["Hij liet weer een scheet met succes en kracht. Woest me.", "Pfffffffffft", "Ugh. Dat was een grove, "demonteer me alsjeblieft", "Als ik mijn schuimvulling kon kotsen, zou ik dat doen", "Ik wou dat ik een andere stoel was", "Hij liet weer recht op me toe", "Deed het niet hoor dat aankomen", "sta me toe te herhalen… ppppfffffffffftttttttttttt", "Het was niet altijd zo."] pickSaying = random.randint(0, 9) print pickSaying status = api. PostUpdate(sayings[pickSaying]) loopy = 0 print 'klaar' if _name_ == "_main_": main(serialArray, loopy)main(serialArray, gassy)

Stap 11: Demonteer de stoel

Demonteer de stoel
Demonteer de stoel
Demonteer de stoel
Demonteer de stoel
Demonteer de stoel
Demonteer de stoel
Demonteer de stoel
Demonteer de stoel

Markeer op de zitting van de stoel de ruimte tussen uw onderkant en de onderkant van de rugleuning. Dit is de ruimte waarin u de sensor wilt installeren.

Verwijder de zitting van de stoelconstructie en maak de bekleding los totdat u toegang hebt tot het schuim in het gebied dat u hebt gemarkeerd.

Stap 12: Maak de bekleding los

Maak de bekleding los
Maak de bekleding los
Maak de bekleding los
Maak de bekleding los
Maak de bekleding los
Maak de bekleding los
Maak de bekleding los
Maak de bekleding los

De stof van je stoel zit waarschijnlijk vast met een nietje.

Verwijder de nietjes van de achterkant van de stoel, zodat u een beetje van de stof kunt optrekken.

Stap 13: Wijzig het kussen

Wijzig het kussen
Wijzig het kussen
Wijzig het kussen
Wijzig het kussen
Wijzig het kussen
Wijzig het kussen

Scheur het schuim op zodat er een zak ontstaat waarin de sensor in de stoel kan worden gestoken. Ik ontdekte dat het gebruik van een scheermesje om het gat te laten beginnen, het iets gemakkelijker maakte.

Stap 14: Plaats de sensor

Plaats de sensor
Plaats de sensor
Plaats de sensor
Plaats de sensor

Steek de sensor in het gat dat u zojuist in het kussen van de stoelzitting hebt gemaakt. Richt de sensor indien mogelijk een beetje in de richting van uw achterkant.

Stap 15: weer in elkaar zetten

weer in elkaar zetten
weer in elkaar zetten
weer in elkaar zetten
weer in elkaar zetten
weer in elkaar zetten
weer in elkaar zetten

Zet de stoel weer in elkaar. Dit betekent het opnieuw stofferen met een nietpistool en eventuele bouten en moeren weer vastdraaien.

Stap 16: Bottoms Up

Bottoms Up
Bottoms Up
Bottoms Up
Bottoms Up
Bottoms Up
Bottoms Up

Bevestig de zenderdoos op de een of andere manier aan de onderkant van de stoel van de stoel op een manier dat u de behuizing nog steeds kunt openen en sluiten.

Ik koos ervoor om de mijne te bevestigen met behulp van hete lijm. Je kunt ook dingen als moeren en bouten gebruiken.

Hiervoor kan het nodig zijn eerst de koffer te legen.

Stap 17: Schakel het in

Zet het aan
Zet het aan
Zet het aan
Zet het aan
Zet het aan
Zet het aan
Zet het aan
Zet het aan

Steek de batterij in de zender die aan de stoel is bevestigd en sluit de behuizing.

Sluit de ontvanger aan op de computer.

Stap 18: Voer de code uit

Voer de code uit
Voer de code uit

Voer de code uit door de terminal te openen, naar de map te gaan waarin het bestand zich bevindt en python TwitterChair.py in te typen

Als je het python-bestand nog niet hebt gedownload via de stap "code", download het dan vanaf deze stap!

Stap 19: Tweeten

Tweeten
Tweeten

Tweet wanneer je toeteert. Laat mensen graag weten dat je bezig bent met het leven zoals het zich voordoet.

Afbeelding
Afbeelding

Vond je dit nuttig, leuk of vermakelijk? Volg @madeineuphoria om mijn laatste projecten te zien.

Aanbevolen: