Sadržaj:
- Korak 1: Upotreba
- Korak 2: Hardver
- Korak 3: PCB i popis dijelova
- Korak 4: Firmware
- Korak 5: Bootloader za nadogradnju mrežnog firmvera
- Korak 6: Napredujući, steknite svoje
Video: Twitter Watcher, #twatch: 6 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:38
#Twatch pomiče najnovije teme u trendu s Twittera na LCD zaslonu. To je samostalni mrežni uređaj koji se ažurira bez računala. Bilo je strašno gledati #iranelection, Michaela Jacksona i druge povijesne događaje kako se pomiču dok smo razvijali #twatch. Ovaj Instructable dokumentira #twatch hardver i dizajn. Uz oznaku trenda na Twitteru, #twatch je i generički ethernet LCD ruksak. Prikazat će popise za reprodukciju, statistiku računala i druge podatke s programima poput LCD Smartie. Također je softverski nadogradiv, pa nikada nije zastario. #Twatch je otvorenog koda, pa možete preuzeti naše dizajne i izgraditi vlastiti. Seeed Studio ima nekoliko sastavljenih #twatch ethernet LCD paketa za 45 USD, uključujući dostavu diljem svijeta. Nabavite ih dok traju jer uskoro nećemo zaraditi više. Ako ste propustili ovaj projekt, prijavite se ovdje kako biste bili obaviješteni o budućim #twatch predbilježbama. Pogledajte ovaj članak s izvornim oblikovanjem na DangerousPrototypes.com, više rasprava na forumu #twatch. Poslat ćemo besplatnu tiskanu ploču #twatch ako prvi tweetate #twatch! Pregled koncepta #twatch hvata najnovije teme s Twittera, a zatim učitava nekoliko tweetova za svaki. Aktualne teme i tweetovi pomiču se po zaslonu. #Twatch hvata svježe trendove i tweetuje svakih pet minuta tako da uvijek vidite najnovije trendove. Dodali smo i generički način rada s ethernet ruksakom, tako da #twatch također može prikazati statistiku računala iz programa poput LCD Smartie, više o ovoj značajci u drugom dijelu.
Korak 1: Upotreba
#Twatch je jednostavan za korištenje.
- Spojite ga na kućnu ethernet mrežu s pristupom Internetu. #Twatch zahtijeva automatsku konfiguraciju mreže (DHCP), ovo je zadana postavka na gotovo svakoj modernoj kućnoj mreži.
- Uključite ga. #Twatch zahtijeva napajanje istosmjernom strujom od 6-7 volti. Koristi 2,1 mm istosmjerni utikač, najčešći tip. Univerzalna DC napajanja trebaju uključivati 2,1 mm utikač.
- Podesite kontrast. LCD zasloni mijenjaju se s temperaturom i starošću, upotrijebite vijak za podešavanje da biste prilagodili kontrast zaslona.
- #Twatch će konfigurirati mrežne postavke i početi listati najnovije teme u trendu i nekoliko tweetova iz svake. Možda ćete morati ponovno prilagoditi kontrast za najčišći efekt pomicanja.
Nabavite #twatch ažuriranja na blogu Dangerous Prototype.
Korak 2: Hardver
Koristili smo besplatnu verziju Cadsoft Eagle za izradu sklopa i PCB -a. Preuzmite najnovije datoteke sa stranice Google Code projekta. Ovaj odjeljak izgubio je mnogo oblikovanja na Instructables, izvornu verziju možete vidjeti ovdje. Ethernet PIC 18F67J60 mikrokontroler Microchip PIC 18F67J60 savršen je za ovaj projekt jer kombinira Ethernet mrežno sučelje i 41MHz mikrokontroler (10MIPs) u malom paketu za samo nekoliko dolara. Dolazi samo u 64pin+ TQFP paketima, ali nismo imali problema s ručnim lemljenjem na profesionalnu PCB. PIC zahtijeva napajanje od 3,3 volta. Dio etherneta doista je gladan energije, pa smo upotrijebili divovski regulator TO-220 LD117-3,3 volta (VR1). Odabrali smo veliki regulator jer će možda morati rasipati hrpu topline ovisno o ulaznom napajanju. Regulator zahtijeva mali ulazni kondenzator za razdvajanje (C15) i veliki izlazni kondenzator od 10 uF (C3). U ovim čipovima postoji velika kvaka: oni se mogu programirati samo oko 100 puta. To otežava razvoj pa smo i osmislili razvojnu verziju #twatcha na temelju drugog čipa. Više o tom dizajnu u budućem članku. Svaki pin za napajanje PIC-a dobiva 0,1uF kondenzator za odvajanje (C17-C23). PIC ima unutarnji regulator od 2,5 volta za jezgre mikrokontrolera i etherneta, za regulator je potreban tantalni kondenzator od 10uF (C1). PIC je programiran putem 5 -pinskog ICSP zaglavlja. Pin za resetiranje MCLR-a visoko je držan s 10K pull-up otpornikom (R21), dodatnim otpornikom (R4) i kondenzatorom (C16) preporučenim u tehničkom listu, pruža zaštitu od različitih uvjeta slučajnog resetiranja. Eternet dio zahtijeva vanjski kristal od 25 MHz (Q1). Dva kondenzatora od 33 pF (C4, C5) dovršavaju krug oscilatora. Koristili smo ethernet utičnicu s integriranom magnetikom (J2). Utičnica je HanRun HR911105A, koju nam je dao Seeed Studio - svakako nabavite istu utičnicu, kompatibilnu utičnicu ili prilagodite PCB za utičnicu koju možete pronaći. Ethernet sučelje zahtijeva završni krug (R30-33, C10-11, L1) i otpornik pristranosti od 2,28Kohm 1% (R7, nije prikazan). LCD s HD44780 karakterom #twatch podržava 'standardni' 44 x 20 volti HD44780 LCD s 20 znakova s pozadinskim osvjetljenjem od 5 volti. Obično ih možete pronaći za oko 10 USD na eBayu. Prije nego što ga pričvrstite, provjerite odgovara li vaš LCD LCD ispisu #twatch. Većina LCD -a su isti, ali ne svi. Gotovo svi LCD -i sa znakovima rade na 5 volti, pa osiguravamo napajanje od 5 volti iz uobičajenog regulatora 7805 (VR2, C14, C2). LCD sa pozadinskim osvjetljenjem potencijalno bi mogao koristiti hrpu struje, pa smo koristili još jedan veliki regulator To-220. C12 je kondenzator za razdvajanje napajanja LCD-a, ali LCD-i već imaju ugrađeno odvajanje. C12 se ne mora popunjavati, samo smo ga uključili u slučaju problema sa stabilnošću. Za maksimalnu brzinu osvježavanja, LCD se kontrolira putem punog 8 -bitnog sučelja. Većina LCD -a su dijelovi od 5 volti koji zahtijevaju oko 4,25 volta+ za registraciju visoke razine na podatkovnim pinovima, ali PIC 18F65J60 je samo dio od 3,3 volta. Srećom, PIC ima hrpu igara tolerantnih na 5 volti pa možemo zadržati signal na 5 volti s 10K pull-up otpornikom (R10-R19), a zatim ga uzemljiti promjenom postavke smjera pina PIC-a. To se obično naziva izlaz s otvorenim odvodom. Neki noviji LCD -i rade na 5 volti, ali i dalje rade na razinama sučelja od 3,3 volta. #Twatch će podržati ovaj način ako izostavite R10-19 tako da naponski napon ne ide na pinove, a promijenite firmver tako da promijenite registar LAT umjesto registra TRIS u HD44780.c. Kontrast LCD zaslona kontrolira prednapon, obično generiran s potenciometrom od 10Kohm. PCI #twatch ima otiske za jeftin SMD lonac od 3 mm (R2) i drugi prostor za upotrebu veće posude s provrtom (R2A). Samo jedan treba biti naseljen! Samo u slučaju da u napajanju dolazi šum iz svih ethernet stvari, filtriramo napon pristranosti kroz malu feritnu kuglicu (L2). Uključili smo i kondenzator za dodatno filtriranje (C13), ali ga nismo koristili jer niti jedan element zapravo nije potreban. #Twatch može kontrolirati jednostavno +5 voltno pozadinsko osvjetljenje do 400mA ili tako dalje. PIC prebacuje tranzistor (NPN1) kroz otpornik za ograničavanje struje od 240 ohma (R3, nije prikazan). Koristili smo tranzistor koji može podnijeti 800mA+ s pojačanjem od 250hfe+, tako da PIC može prebaciti veliko opterećenje s maksimalnom izlaznom strujom od 20mA. R1 je otpornik za ograničavanje struje za pozadinsko osvjetljenje LCD -a, ako je potrebno. Koristili smo otpornik kroz rupu tako da može odvesti mnogo topline s velikim pozadinskim osvjetljenjem, i zato što je to najlakša veličina koju možete pronaći lokalno i sami zalemiti. Ako za pozadinsko osvjetljenje nije potreban otpornik, zamijenite R1 komadom žice. Naš LCD zaslon zahtijevao je otpornik od 3 ohma za napajanje s pozadinskim osvjetljenjem od 240 mA. Neka pozadinska osvjetljenja troše mnogo energije, pa smo pinove za napajanje stavili tik uz napajanje i ojačali ravninu tla s hrpom VIA -a. Za neka otmjena LCD pozadinska svjetla potrebni su posebni pogonski krugovi, stoga budite sigurni da vaš koristi jednostavno napajanje od +5 volti kako biste izbjegli oštećenja. Napajanje #sat gleda na napajanje 6-7 volti kroz 2,1 mm utičnicu za napajanje (J1). Utikači od 2,1 mm najčešće su veličine i trebali bi se isporučiti sa svakim univerzalnim izvorom napajanja. Što veći napon napajanja koristite, to je više topline koja se mora odvoditi iz VR1 i VR2. Upamtite da je #twatch prototipna ploča za učenje, nije kompletan i testiran komercijalni proizvod. Poduzmite odgovarajuće mjere opreza i nemojte raditi bez nadzora.
Korak 3: PCB i popis dijelova
Za izradu sheme i PCB -a koristili smo besplatnu verziju Cadsoft Eagle. Preuzmite najnovije datoteke sa stranice Google Code projekta. PCB je dvoslojni dizajn s malim tragovima i odvajanjem (10mil) oko 64-pinskog TQFP PIC čipa. Pripremili smo gerbere i poslali ih u servisnu ploču Seeed Studio za radove otvorenog koda. Dodatni PCB -i iz naše narudžbe dostupni su u trgovini Seeed Studio. Ako kupujete naše dodatne tiskane ploče, svakako nabavite HanRun ethernet priključak koji odgovara ploči. Budući da se montažne rupe na LCD -ovima veličine 20x4 razlikuju, nismo pokušali ugraditi tiskanu ploču u rupe na LCD -u. Napravili smo ga što je moguće manjim, poput SparkFunovog serijskog LCD ruksaka, tako da se ne miješa s izvornim rupama. Kao nuspojava, nije previše strašno iza nekog manjeg ekrana poput ovog 16x2 LCD -a u Adafruit -u. Popis dijelova Kliknite za sliku položaja u punoj veličini [PNG]. Dio | Vrijednost | PaketIC1 PIC 18F67J60 TQFP-64C1-3 tantalni kondenzator od 10uF, 10 volti+ SMC_AC4, 5 kondenzator od 33 pF 0805C10, 11, C14-23 0,1 uF kondenzator 0805ICSP 5x 0,1 "muško zaglavlje J1 2,1 mm SMD utičnica za napajanje SMDJ2 HR911105A ethernet kuglica, 200ma+ 0805NPN1 NPN tranzistor, 250hfe+, 800ma+ SOT-23Q1 25MHz SMD kristal HC49UPR2 (A) 10K jednosmjerni trim otpornik 3 mm SMD ili kroz otvorR3 240 ohmski otpornik 0805R4-6 otpornik od 390 ohma 0805R7 otpornik 260 oma, 1% 0 21 otpornik 10 000 ohma 0805R30-33 otpornik 49,9 ohma, 1% 0805VR1 LDO 3.3voltni regulator (LD1117) TO-220VR2 7805T regulator od 5 volti TO-220HD44780-LCD 20x4 HD44780 znak LCD
Korak 4: Firmware
Najnovije potpuno preuzimanje firmvera #twatch nalazi se na stranici Google Code projekta. Kôd je napisan na jeziku C i sastavljen je s demonstracijskim kompajlerom Microchip C18. TCP/IP stog i osnovne mrežne funkcije Micročipov 'besplatni' TCP/IP stog pruža sve mrežne funkcije koje su nam potrebne za postojanje na kućnoj mreži i prikupljanje podataka s Twittera. Snop je otvorenog koda i besplatan kao u pivu, ali licenca za Microchip zabranjuje distribuciju. Zbog problema s licenciranjem, samo stavljamo izvorni kôd javne domene u projekt Google Code SVN, ovdje naučite kako preuzeti i sastaviti izvor. Snop ima klijenta Dynamic Host Configuration Protocol klijenta koji automatski konfigurira mrežne postavke pomoću DHCP -a poslužitelja u vašoj lokalnoj mreži. #Twatch zahtijeva DHCP poslužitelj, ali velika većina mreža i usmjerivača to je omogućilo. IP adresa, maska, pristupnik i prvi DNS poslužitelj prikazuju se na LCD zaslonu dok ne postanu dostupni valjani Twitter podaci. Niz također uključuje Microchipov poslužitelj za najave. Kad DHCP dobije IP adresu, #twatch objavljuje svoju IP adresu s paketom za emitiranje svim računalima u lokalnoj mreži. Za pregled ovih paketa upotrijebite pomoćni program MCHPDetect.exe u arhivi projekta. Na kraju smo uključili i ping (IMCP) poslužitelj. Pomoću bilo kojeg ping klijenta provjerite je li #twatch živ na mreži. Twitter TCP klijent Twitter program koji slijedi trend je jednostavan TCP klijent, sličan web pregledniku, koji izvlači podatke s web poslužitelja. Twitter -ov API pružit će nam podatke u različitim formatima. Koristili smo lagani JSON format jer je PIC čip male snage najlakše dekodirati, provjerite JSONView ako koristite Firefox. Nakon što #twatch automatski konfigurira mrežne postavke, Twitter TCP klijent preuzima kontrolu i hvata trenutne teme u trendu. Pretražuje ovaj JSON datafeed i traži oznaku "name". Do 10 trendovskih tema kopira se u međuspremnik od 225 bajtova. Zasebni niz sprema krajnji položaj svake teme u međuspremnik tako da možemo dohvatiti teme u sljedećem koraku. Zatim #twatch pretražuje Twitter za 2 tvita za svaku temu. On dodaje svaku temu na kraj Twitter JSON URL -a za pretraživanje, posebni znakovi poput razmaka i interpunkcije kodirani su URL -om. TCP klijent analizira rezultate pretraživanja i traži tweetove koji slijede oznaku "tekst". Tweetovi imaju više slojeva kodiranja. Dekodiramo HTML rezervirane znakove poput ampersanda (&) i navodnika (") jer ih LCD zaslon može prikazati. Uklanjamo međunarodne znakove UTF8 jer ih HD44780 LCD nema u svom skupu znakova. Raščlanjeni, dekodirani tweetovi pohranjeni su u međuspremnik od 2100 bajtova, dodatni niz označava početak i kraj svakog tvita u međuspremniku. Prostor RAM-a bio je veliki problem na čipu 18F67J60, ima samo oko 4000 bajtova ukupno, ali čini se da je međuspremnik od 2100 bajta dovoljno velik za rukovanje s 20 prosječnih veličina tweetove. Posebno smo se pobrinuli za zaštitu od problema s memorijom i testirali smo klijenta u uvjetima smanjene RAM memorije kako bismo se uvjerili da ne radi ispravno tijekom grešaka. Twitter je poznat po povremenom zastoju. Ako #twatch ne može povežite se s Twitterom, prikazuje poruku o pogrešci pri povezivanju i pokušava dva puta. Ako se ne može povezati nakon tri pokušaja, čeka pet minuta prije nego što pokuša ponovno. To daje Twitteru priliku da riješi svoje probleme, a da ga ne omete #twatch q ueries. The #twatch hvata svježi trend i tweetuje svakih pet minuta. Twitter postavlja ograničenje na broj upita koje klijent može postaviti, stoga budite oprezni pri češćem osvježavanju. Twitter dopušta 150 trendovskih ažuriranja tema po satu i "znatno više" upita za pretraživanje. Mrežni način rada LCD ruksaka TCP poslužitelj #twatch također može prikazati informacije o statusu sustava iz programa poput LCD Smartie. #Twatch ima TCP poslužitelj na portu 1337 koji prihvaća naredbe oblikovane u Matrix Orbital. Ovo također pruža kontrolu nad pozadinskim osvjetljenjem LCD -a. Pokazat ćemo vam kako preusmjeriti LCD Smartie s COM priključka na #twatch TCP poslužitelj u drugom dijelu našeg članka #twatch.
Korak 5: Bootloader za nadogradnju mrežnog firmvera
#Twatch se može ažurirati s računala u lokalnoj mreži zahvaljujući Microchip -ovom internetskom pokretaču. Imajte na umu da se 18F ethernet PIC -ovi mogu programirati samo u prosjeku 100 puta, pa su nadogradnje donekle ograničene. Čip još nismo izgorjeli, ali smo tijekom razvoja dosegli samo 55 ciklusa. Ako koristite potpuno novi čip, morat ćete programirati pokretački program u PIC18F67J60 putem ICSP zaglavlja, tada možete prenijeti #twatch firmware preko mreže. Programirajte twatchv2-bl-vxx. HEX u čip pomoću PIC programatora poput ICD2 ili PicKita. Kad se #twatch uključi, pokretački program se pokreće prije nego što se pokrene glavni program. Bootloader provjerava postoji li veza između PGD i PGC pinova programskog zaglavlja, prikazanog na gornjoj slici. Ako pronađe vezu, pokretački program preuzima preuzimanje i čeka da se učita novi firmver. Postoji mala vjerojatnost da će se pokretački program slučajno pokrenuti čak i bez kratkospojnika između pinova PGC i PGD. To neće oštetiti #twatch, samo odspojite napajanje i pokušajte ponovno. Slučajan unos pokretača za pokretanje može se spriječiti pomicanjem kratkospojnika preko jednog položaja tako da poveže PGD i GND pinove. Bootloader #twatch koristi IP adresu 192.168.1.123 i masku podmreže 255.255.255.0. Vaše računalo također mora imati IP adresu koja počinje s 192.168.1.xxx za komunikaciju s #twatch -om. Odabrali smo raspon 192.168.1.xxx jer je to najčešća zadana postavka za kućne usmjerivače. Ako vaše računalo koristi drugi raspon IP adresa, morat ćete ga privremeno prilagoditi prije nego što izvršite ažuriranje. Kako nadograditi:
- Provjerite je li vaše računalo u istom IP rasponu i podmreži kao i #twatch. Vaše računalo treba imati IP adresu u rasponu 192.168.1.xxx i masku podmreže od 255.255.255.0. Zadana IP adresa pokretačkog programa za učitavanje #twatch je 192.168.1.123, pazite da niti jedno drugo računalo povezano na isti usmjerivač već ne koristi ovu adresu.
- Isključite #twatch napajanje.
- Postavite kratkospojnik između pinova PGC i PGD.
- Uključite mrežni kabel, ako je potrebno, i uključite napajanje. Zaslon može biti prazan, imati čvrste blokove ili smeće.
- Pomoću uslužnog programa TFTP pošaljite novi firmver na IP adresu #twatch, koristimo TFTP.exe iz naredbenog retka sustava Windows.
- Ažuriranje TFTP -a izvještava o uspjehu ili pogrešci.
- Isključite napajanje, uklonite kratkospojnik za ažuriranje.
- Ponovno uključite napajanje. #Twatch bi trebao početi listati tweetove. Ako se pokretački program umjesto toga pokrene, postavite kratkospojnik između pinova PGD i GND i pokušajte ponovno.
Korak 6: Napredujući, steknite svoje
Dizajnirali smo #twatch kako bismo u potpunosti iskoristili resurse na jednom čipu, prošireni dizajn dodao bi značajke, ali bi bio skuplji. #Twatch bi mogao pratiti vaš vlastiti Twitter feed. Za unos vaše prijave na Twitter trebao bi mali web poslužitelj i vanjski EEPROM za spremanje podataka o konfiguraciji. #Twatch bi također mogao pohraniti više tweetova ili dodatne podatke o svakom visokotoncu, poput imena i lokacije. Microchip ne čini integrirani ethernet kontroler s više od 4K RAM-a, ali mogli bismo dodati vanjski SRAM za spremanje tweetova i metainfita o tweetu. Ažurirani hardver mogao bi dodati I/O zaglavlje za povezivanje gumba s LCD-om Smartie. 20 znakova by 4line LCD nema puno prostora za prikaz. Mi smo osmislili sučelje #twatch oko ove ograničene količine prostora. Ažurirani firmver mogao bi podnijeti više veličina zaslona. Bootloader može usvojiti IP adresu koju je stekao DHCP. Buduće ažuriranje firmvera #twatch iskoristit će ovu značajku za lakše nadogradnje mreže. Sljedećeg ćemo tjedna pokriti TCP poslužitelj kompatibilan s LCD Smartie ugrađen u #twatch. Uzmite ga! Što je twending na vašem #twatchu? Ako želite sastavljeni #twatch ili PCB, evo nekoliko mogućnosti:
- Seeed Studio ima nekoliko sastavljenih #twatch ethernet LCD paketa za 45 USD, uključujući dostavu diljem svijeta. Nabavite ih dok traju jer uskoro nećemo zaraditi više. Ako ste propustili ovaj projekt, prijavite se ovdje kako biste bili obaviješteni o budućim #twatch predbilježbama.
- Ako želite izgraditi vlastiti, Seeed Studio prodaje dodatne tiskane ploče #twatch v1 i v2 iz naše narudžbe. Svakako nabavite ethernet priključak od Seeeda ili pronađite onu koja odgovara PCB -u. O v1 ćemo pisati za nekoliko dana, shematski i PCB su u projektu SVN.
- Poslat ćemo besplatnu #twatch v2 golu PCB prva dva čovjeka koji tvitaju #twatch.
Ako se želite uključiti, pridružite se otvorenom hardverskom projektu Dangerous Prototypes na Google Code -u ili dođite razgovarati na forum #twatch. Sljedećeg ćemo vam tjedna pokazati kako preusmjeriti statistiku sustava LCD Smartie na TCP poslužitelj #twatch.
Preporučeni:
Twitter i Arduino Yún: 3 koraka
Twitter i Arduino Yún: Nakon što ste potrošili gotovo 100 dolara na Arduino Yún kako biste vidjeli o čemu se radi, činilo se dobrom idejom pronaći i demonstrirati njegovu upotrebu. Stoga ćemo u ovom članku ispitati kako vaš Yún može poslati tweet pomoću nekoliko jednostavnih primjera skica - i
Twitter Bot pomoću Pythona: 5 koraka
Twitter Bot pomoću Pythona: Twitter bot
Kako koristiti Twitter s Arduinom: 7 koraka
Kako koristiti Twitter s Arduinom: Želite jednostavan način za interakciju s korisnicima, svijetom i svojim obožavateljima? Tweet to! Koristeći samo Arduino Uno i Ethernet štit, možete jednostavno dodati mogućnost tvitanja bilo kojeg podatka ili podataka
Twitter aktivirani Zelda kontejner za srce: 4 koraka
Twitter aktivirani Zelda kontejner za srce: Sviđa li vam se Zelda? Želite li svoj spremnik za srce kojim stranci mogu upravljati putem Twittera? Pratite kako biste vidjeli KAKO sam ga napravio. Što se tiče ZAŠTO, morat ćete provjeriti kraj videozapisa. Objašnjavam i smiješnu košulju koju nosim
Twitter analiza osjećaja s Raspberry Pi: 3 koraka (sa slikama)
Twitter analiza osjećaja s Raspberry Pi: Što je analiza osjećaja i zašto biste trebali brinuti o njoj? Analiza osjećaja je proces određivanja emocionalnog tona iza niza riječi, koji se koristi za razumijevanje stavova, mišljenja i emocija izraženih unutar