Sadržaj:
Video: Praćenje produktivnosti - Pokreće Raspberry Pi: 9 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
Tracker za produktivnost je čarobno ogledalo, ali umjesto da prikazuje vrijeme, vrijeme i motivirajući citat, prikazuje 4 stvari;
Postotak vremena koje ste potrošili na produktivni materijal na računaru i telefonu za taj dan. (RescueTime)
Vaša lista zadataka iz Trella
Radarski grafikon koji prikazuje koliko ste vremena proveli zajedno s kategorijama programa i aplikacija koje ste koristili u odnosu na jučerašnju upotrebu. (RescueTime)
Tjedni pregled. (RescueTime)
A ako je postotak vremena koje ste potrošili na produktivni materijal veći od 50%, LED diode će prikazati jarko zelenu boju. Ako je ispod 50%, prikazat će crvenu boju, signalizirajući vam da budete produktivniji! Možete i sami postaviti cilj.
Outline
U prvom koraku ću objasniti ideju koja stoji iza praćenja produktivnosti. Zatim ću vam dati dva različita alata i popis dijelova kako biste mogli izgraditi cijeli projekt ili osnovnu verziju (ne uključuje LED diode) koja ne zahtijeva vještine lemljenja. Kasnije ću vam pokazati kako sam prototipirao svoju verziju projekta, tako da imate ideju kako modelirati svoj vlastiti prototip. Također ću ući u detalje u odjeljku koda kako biste mogli prilagoditi kôd za svoje potrebe. Na kraju ću vam dati vodič za rješavanje problema na osnovu problema na koje sam naišao tokom ove izgradnje. I proširite listu svojim pitanjima.
Svrha ovog uputstva nije samo da vam pokloni kuharicu. Pokazat ću vam način na koji sam izgradio ovaj projekt i pružit ću vam otvorena pitanja, tako da možete dodati vlastite ideje, te ovaj projekt odvesti dalje. Snažno vas ohrabrujem da podijelite svoju izgradnju kada završi! Hajde da počnemo.
Korak 1: Ideja
Nameravao sam mesecima da napišem ovaj Instructable. Ali moj stari prijatelj koji se zove "Procrastination" nije mi dopustio. Odugovlačenje je čin odgađanja ili odgađanja zadatka ili niza zadataka, umjesto da radite te zadatke ispunjavajući vrijeme gledanjem videozapisa iz mračnih dubina YouTubea.
Jednog dana dok sam čitao članak o odugovlačenju naišao sam na više aplikacija/programa koji bi mi pomogli u mom problemu, Trello kao aplikacija za upravljanje zadacima i RescueTime kao aplikacija za upravljanje vremenom. Oboje su radili savršeno za moje potrebe, barem neko vrijeme. Nakon nekog vremena prestao sam potpuno provjeravati aplikacije i zanemario obavijesti. Tada sam osmislio ovaj projekat. Prikazao bih podatke iz aplikacija na ogledalu obješenom na zid. Na ovaj način nije bilo bijega od odgovornosti.
Prvi nacrt koji sam nacrtao za svoj projekt bio je prilično jednostavan. Koristio bih RescueTime API za prikaz svog postotka produktivnog/distraktivnog rada. I koristite Trello API za prikaz moje liste obaveza za taj dan. Ali nakon nekog vremena, dodao sam još funkcija koje ću detaljno dobiti u sljedećim koracima.
Korak 2: Alati i dijelovi
Napomena: Ovo je spisak alata koje sam koristio tokom izrade, ne moraju biti isti za vašu verziju!
Za bazu:
4 metra drva za presvlačenje 7x15 cm - 6 USD - Ovisi o veličini vašeg ekrana
30x40cm jednostrano ogledalo - zavisi od veličine ekrana
Samsung monitor dimenzija 25x35 cm - 15 USD - Pronađen na buvljaku. bilo koji monitor bi to uradio
Raspberry Pi 3 Model B- 35 $ - Raspberry pi 2 je takođe u redu, ali trebat će vam wifi modul
HDMI kabel - 2 USD
Za Led Lightning:
200 cm smd5050 RGB LED traka - 4 USD - Mora biti više o smd5050 o ovome kasnije…
- Tri N -kanalna MOSFET -a (npr. IRLZ34N) - 2 USD
- Adapter za napajanje 12V -2A - 3,15 USD
- Prototipiranje PCB -a - 1 USD
Alati:
- Testera za drvo
- Ljepilo za drvo
- Lemilica (za LED osvetljenje)
Korak 3: Kôd
Ovaj korak će se sastojati od 3 dijela. Ne trebaju vam svi dijelovi navedeni u prethodnom koraku. Raspberry Pi i monitor koji ćete koristiti za ovaj projekt trebali bi biti dovoljni za fazu izrade prototipa.
Postavljanje vašeg Raspberry Pi
Ako još niste postavili Raspberry Pi, učinite to ovdje. Za ovu verziju morate instalirati Apache za web server i PHP-LED-kontroler.
Da biste instalirali Apache, slijedite ovaj službeni vodič.
Da biste instalirali PHP-LED-kontroler, slijedite ovaj vodič od Christiana Nikkanena
Sada preuzmite datoteku index.php iz spremišta projekta na svoj Raspberry Pi i stavite je na ovu putanju:
/var/www/html/
Ako niste upoznati s premještanjem datoteka u Linux Terminalu, za početak pogledajte ovaj vodič.
Prilagodite kôd
Napomena: Ovaj dio zahtijeva malo HTML/CSS znanja ako koristite drugi monitor.
Prilagođavanje će se izvršiti na datoteci index.php koja je ognjište ove verzije. Sada nastavite i povežite svoj monitor s Raspberry Pi -om ako to već niste učinili.
Ako pokušate otvoriti datoteku index.php, to neće funkcionirati jer prvo morate unijeti API ključeve u kôd, za to idite na RescueTime web stranicu i otvorite račun. Zatim idite na odjeljak za programere i kreirajte API ključ pritiskom na Aktiviraj ovaj ključ. Zapišite svoj API ključ negdje.
Učinite isto za svoj Trello API ključ, otvorite račun i idite na portal za programere da biste generirali API ključ.
Zatim otvorite datoteku index.php koju ste stavili u/var/www/html/u svom omiljenom uređivaču teksta i zamijenite [API_KEY] vlastitim API ključem koji ste prema tome dobili od RescueTime i Trello. [List_number] je broj liste koji koristite za svoju listu zadataka Trello. Da biste dobili taj broj, prvo stvorite novu listu u Trellu i nazovite je "To-Do", ovo će biti lista koju ćete koristiti za svoju listu obaveza i pojavit će se na ogledalu.
Zatim uzmite URL na adresnoj traci koji izgleda ovako:
trello.com/b/3hS6yyLo/name-odbora
i dodajte mu.json ovako:
trello.com/b/3hS6yyLo/board-name.json
i pritisnite enter, zatim ćete na ekranu vidjeti nered. Pokušajte pronaći naziv liste '' To-Do "u tom neredu. To bi trebalo izgledati otprilike ovako: {" name ":" To Do "," id ":" 5981c123cd1b23f13907cd18 "}, Taj ID je vaš ID liste. taj broj do [list_number] u datoteci index.php.
Sada otvorite svoj preglednik i upišite localhost u adresnu traku i pritisnite enter. Trebali biste vidjeti svoje podatke prikazane na grafikonima.
Napomena: Položaji grafikona mogu biti različiti zbog rezolucije monitora koji koristite. Možete urediti širinu, visinu i lokaciju elemenata u CSS dijelu koda.
Sada ostaje samo da dizajnirate okvir oko monitora i spojite LED diode.
Napomena: Ako vas detalji API -ja ne zanimaju, možete prijeći na sljedeći korak. U dijelu API -ja ću detaljno saznati kako cijeli program funkcionira i dobiva podatke iz API -ja.
API -ji (detaljno)
Ognjište ovog projekta su dva API -ja;
- Trello API
- RescueTime API
Iako dokumentacija sadrži detaljne informacije, objasnit ću koje podatke iz API -ja ovaj projekt koristi.
Što se tiče upravljanja vremenom, RescueTime API poziv koji dobiva informacije o vremenu za tekući dan je, "https://www.rescuetime.com/anapi/data?key=[API_KEY]&perspective=rank&interval=hour&restrict_begin=".date('Ym-d')."&restrict_end=".date('Ym-d '). "& format = json"
gdje, datum ('Y-m-d') je trenutni datum
perspektiva = rang je vrsta sortiranja podataka u ovom slučaju "rang" koja predstavlja većinu provedenog vremena
Ovaj poziv će dati datoteku u JSON formatu koja izgleda ovako: (pogledajte data.json na kraju ovog koraka)
Podaci koje koristimo iz ove datoteke su "Vrijeme provedeno (sekunde)" i "Produktivnost" koje imaju vrijednosti između -2 i 2, -2 odvlače pažnju, a 2 produktivno. Pomoću ovih podataka možemo generirati vrijednost veću od 100 za ocjenu produktivnosti.
Još jedan API poziv RescueTime, "https://www.rescuetime.com/anapi/daily_summary_feed?key=[API_KEY]"
Što vam daje sedmični sažetak vaših podataka, koji izgleda ovako: (pogledajte summary.json na kraju ovog koraka.) Koristio sam ove podatke za generiranje sedmičnog sažetog grafikona koji vam daje pregled sedmice.
Trello API poziv, "https://api.trello.com/1/lists/[list_number]/cards?fields=name&key=[API_KEY]&token=[Token]"
Ovo će vam dati karte na vašoj Trello listi ovako:
[{"id": "5a4160103bfcd14994852f59", "name": "ceylan cinemagraph"}, {"id": "59e8241f6aa8662a51eb7de6", "name": "Naučite GitHuB"}, {"id": "5981c19577c732f8ad ":" Publish Instructible "}, {" id ":" 5a341dba7f17d235d7c5bbd1 "," name ":" SPACE PROGRAM "}]
opet možete povući tekst na tim karticama i staviti ga negdje drugdje.
data.json
Formatirani JSON podaci |
{ |
"notes": "data je niz niza (redova), imena stupaca za redove u zaglavljima redaka", |
"row_headers": [ |
"Rang", |
"Utrošeno vrijeme (sekunde)", |
"Broj ljudi", |
"Aktivnost", |
"Kategorija", |
"Produktivnost" |
], |
"redovi": [ |
[ |
1, |
1536, |
1, |
"en.0wikipedia.org", |
"Nekategorizirano", |
0 |
], |
[ |
2, |
1505, |
1, |
"youtube.com", |
"Video", |
-2 |
], |
[ |
3, |
1178, |
1, |
"OpenOffice", |
"Pisanje", |
2 |
], |
[ |
4, |
709, |
1, |
"moodle.bilkent.edu.tr", |
"Opće reference i učenje", |
2 |
], |
[ |
5, |
602, |
1, |
"google.com.tr", |
"Traži", |
2 |
], |
[ |
6, |
439, |
1, |
"reddit.com", |
"Opće vijesti i mišljenje", |
-2 |
], |
[ |
7, |
437, |
1, |
"tr.sharelatex.com", |
"Pisanje", |
2 |
], |
[ |
8, |
361, |
1, |
"yemeksepeti.com", |
"Opća kupovina", |
-2 |
], |
[ |
9, |
356, |
1, |
"Gmail", |
"Email", |
0 |
], |
[ |
10, |
328, |
1, |
"Google chrome", |
"Preglednici", |
0 |
], |
[ |
11, |
207, |
1, |
"stars.bilkent.edu.tr", |
"Opće reference i učenje", |
2 |
], |
[ |
12, |
179, |
1, |
"whatsapp", |
"Instant poruka", |
-1 |
], |
pogledajte rawdata.json hostirano sa ❤ od strane GitHub -a
summary.json
[ |
{ |
"id": 1515657600, |
"date": "2018-01-11", |
"puls_produktivnosti": 54, |
"vrlo_produktivan_procent": 34,2, |
"produktivni_procent": 10,6, |
"neutralni_procent": 25,6, |
"ometajući_procent": 0.0, |
"vrlo_odvraćajući_procent": 29.6, |
"all_productive_procentage": 44.8, |
"all_distracting_percentage": 29.6, |
"nekategorizirani_procent": 16.1, |
"poslovni_procent": 6.0, |
"postotak_komunikacije_i_ rasporeda": 4.3, |
"procenat društvenog_ umrežavanja": 0,0, |
"postotak_ dizajna i_kompozicije": 0,0, |
"postotak_zabave": 15.2, |
"postotak_ vijesti": 3.3, |
"procenat softverskog razvoja": 5.4, |
"referentni_i_učenički_procent": 22.8, |
"postotak kupovine": 12,9, |
"postotak uslužnih programa": 14,1, |
"ukupno_ sati": 2,51, |
"vrlo_produktivni_sati": 0,86, |
"produktivni_sati": 0,27, |
"neutralni_sati": 0,64, |
"distracting_hours": 0.0, |
"vrlo_ometajući sati": 0,74, |
"all_productive_hours": 1.12, |
"all_distracting_hours": 0.74, |
"nekategorizirani_sati": 0,4, |
"poslovni_sati": 0,15, |
"communication_and_scheduling_hours": 0,11, |
"sati društvenog umrežavanja": 0.0, |
"dizajn_i_kompozicija_sati": 0.0, |
"sati_zabave": 0,38, |
"news_hours": 0.08, |
"software_development_hours": 0.13, |
"referentni_i_učni_sati": 0.57, |
"shopping_hours": 0,32, |
"komunalije_sati": 0,35, |
"total_duration_formatted": "2h 30m", |
"very_productive_duration_formatted": "51m 26s", |
"productive_duration_formatted": "15m 56s", |
"neutral_duration_formatted": "38m 34s", |
"distracting_duration_formatted": "nema vremena", |
"very_distracting_duration_formatted": "44m 30s", |
"all_productive_duration_formatted": "1h 7m", |
"all_distracting_duration_formatted": "44m 30s", |
"uncategorized_duration_formatted": "24m 11s", |
"business_duration_formatted": "9m 6s", |
"communication_and_scheduling_duration_formatted": "6m 26s", |
"social_networking_duration_formatted": "nema vremena", |
"design_and_composition_duration_formatted": "nema vremena", |
"entertainment_duration_formatted": "22m 49s", |
"news_duration_formatted": "4m 55s", |
"software_development_duration_formatted": "8m 3s", |
"reference_and_learning_duration_formatted": "34m 17s", |
"shopping_duration_formatted": "19m 22s", |
"utilities_duration_formatted": "21m 17s" |
}, |
{ |
"id": 1515571200, |
"date": "2018-01-10", |
"puls_produktivnosti": 33, |
"vrlo_produktivan_procent": 21.9, |
"produktivni_procent": 2,3, |
"neutralni_procent": 14,4, |
"ometajući_procent": 11.0, |
"vrlo_odvraćajući_procent": 50,3, |
"all_productive_percentage": 24,2, |
"all_distracting_percentage": 61.4, |
"nekategorizirani_procent": 0,3, |
"poslovni_procent": 0.0, |
"komunikacijski_i_razmjer_procenta": 13,5, |
"procenat društvenog_ umrežavanja": 0,0, |
"postotak dizajna i sastava": 6.3, |
"postotak_zabave": 44,7, |
"postotak_ vijesti": 4.2, |
"procenat softverskog_razvoja": 0.0, |
"referentni_i_učenički_procent": 15,5, |
"postotak kupovine": 0.0, |
"postotak uslužnih programa": 15,4, |
"ukupno_ sati": 2,24, |
"vrlo_produktivni_sati": 0,49, |
"produktivni_sati": 0,05, |
"neutralni_sati": 0,32, |
"distracting_hours": 0.25, |
"vrlo_ometajući sati": 1,13, |
"all_productive_hours": 0.54, |
"all_distracting_hours": 1.37, |
"nekategorizirani_sati": 0,01, |
"business_hours": 0.0, |
"komunikacija_i_zakazivanje_sata": 0,3, |
"sati društvenog umrežavanja": 0.0, |
"sati_ dizajna i_kompozicije": 0,14, |
"sati_zabave": 1.0, |
"news_hours": 0.09, |
"programski_razvoj_sati": 0.0, |
"referentni_i_učni_sati": 0,35, |
"shopping_hours": 0.0, |
"komunalije_sati": 0,34, |
"total_duration_formatted": "2h 14m", |
"very_productive_duration_formatted": "29m 22s", |
"productive_duration_formatted": "3m 8s", |
"neutral_duration_formatted": "19m 18s", |
"distracting_duration_formatted": "14m 48s", |
"very_distracting_duration_formatted": "1h 7m", |
"all_productive_duration_formatted": "32m 30s", |
"all_distracting_duration_formatted": "1h 22m", |
"uncategorized_duration_formatted": "27s", |
"business_duration_formatted": "1s", |
"communication_and_scheduling_duration_formatted": "18m 5s", |
"social_networking_duration_formatted": "nema vremena", |
"design_and_composition_duration_formatted": "8m 30s", |
"entertainment_duration_formatted": "59m 54s", |
"news_duration_formatted": "5m 39s", |
"software_development_duration_formatted": "nema vremena", |
"reference_and_learning_duration_formatted": "20m 51s", |
"shopping_duration_formatted": "nema vremena", |
"utilities_duration_formatted": "20m 39s" |
}, |
{ |
"id": 1515484800, |
"date": "2018-01-09", |
"puls_produktivnosti": 68, |
"vrlo_produktivan_procent": 60,4, |
"produktivni_procent": 0,5, |
"neutralni_procent": 11,0, |
"procenat ometanja": 7.1, |
"vrlo_odvraćajući_procent": 21.0, |
"all_productive_procentage": 60.9, |
"all_distracting_percentage": 28.1, |
"nekategorizirani_procent": 9.1, |
"poslovni_procent": 21.9, |
"postotak_komunikacije_i_ rasporeda": 7.2, |
"procenat društvenog_ umrežavanja": 5.1, |
"postotak_ dizajna i_kompozicije": 1.2, |
"postotak_zabave": 1.6, |
"postotak_ vijesti": 12,5, |
"postotak_razvoja softvera": 9.1, |
"referentni_i_učenički_procent": 28.2, |
"postotak kupovine": 2,9, |
"utilities_procentage": 1.2, |
"total_hours": 2.78, |
"vrlo_produktivni_sati": 1,68, |
"produktivni_sati": 0,01, |
"neutralni_sati": 0,31, |
"distracting_hours": 0.2, |
"vrlo_ometajući sati": 0,58, |
"all_productive_hours": 1.69, |
"all_distracting_hours": 0.78, |
"uncategorized_hours": 0.25, |
"poslovni_sati": 0,61, |
"komunikacija_i_zakazivanje_sata": 0,2, |
"sati društvenog umrežavanja": 0,14, |
"dizajn_i_kompozicija_sati": 0,03, |
"sati_zabave": 0,04, |
"news_hours": 0,35, |
"programski_razvoj_sati": 0.25, |
"referentni_i_učni_sati": 0,78, |
"shopping_hours": 0.08, |
"komunalije_sati": 0,03, |
"total_duration_formatted": "2h 46m", |
"very_productive_duration_formatted": "1h 40m", |
"productive_duration_formatted": "47s", |
"neutral_duration_formatted": "18m 23s", |
"distracting_duration_formatted": "11m 49s", |
"very_distracting_duration_formatted": "34m 57s", |
"all_productive_duration_formatted": "1h 41m", |
"all_distracting_duration_formatted": "46m 46s", |
"uncategorized_duration_formatted": "15m 7s", |
"business_duration_formatted": "36m 26s", |
"communication_and_scheduling_duration_formatted": "11m 59s", |
"social_networking_duration_formatted": "8m 28s", |
"design_and_composition_duration_formatted": "2m 4s", |
"entertainment_duration_formatted": "2m 39s", |
"news_duration_formatted": "20m 49s", |
"software_development_duration_formatted": "15m 5s", |
"reference_and_learning_duration_formatted": "46m 59s", |
"shopping_duration_formatted": "4m 51s", |
"utilities_duration_formatted": "2m 3s" |
} |
] |
pogledajte rawsummary.json hostirano sa ❤ od GitHub -a
Korak 4: Prototipiranje
Velika nagrada na takmičenju Raspberry Pi 2017
Preporučuje se:
Kako izgraditi PHIL - robota za praćenje svjetla: 6 koraka (sa slikama)
Kako izgraditi PHIL - robota za praćenje svjetlosti: U ovom uputstvu ću vam pokazati kako sam napravio ovog dvoosnog robota za praćenje svjetla koristeći Arduino Uno. Sav CAD i kôd će biti uključeni tako da ih možete sami izgraditi bez potrebe za programiranjem ili dizajnerskim vještinama. Sve što će vam trebati
Arduino štap za praćenje vlage tla - nikada ne zaboravite zalijevati vaše biljke: 4 koraka (sa slikama)
Arduino štap za praćenje vlažnosti tla - nikada ne zaboravite zalijevati vaše biljke: Zaboravljate li često zalijevanje sobnih biljaka? Ili im možda pridajete previše pažnje i zalijevate ih? Ako to učinite, trebali biste sami napraviti štap za praćenje vlažnosti tla na baterije. Ovaj monitor koristi kapacitivnu vlagu tla
Praćenje i praćenje za male trgovine: 9 koraka (sa slikama)
Track & trace za male trgovine: Ovo je sistem koji je napravljen za male trgovine koje bi trebalo montirati na e-bicikle ili e-skutere za kratke isporuke, na primjer pekara koja želi isporučivati peciva. Track and Trace je sistem koji koriste ca
DIY Pametni robotski alati za praćenje Auto kompleti za praćenje Auto fotoosjetljivi: 7 koraka
DIY Pametni roboti za praćenje automobila Kompleti za praćenje Automobil Fotoosjetljivi: Dizajn SINONING ROBOT -a Možete kupiti od robota za praćenje Roboti TheoryLM393 čip uporedite dva fotootpornika, kada LED dioda sa jedne strane na BELOJ strani LED motora zaustavi se, s druge strane motora okreni se pa
Raspberry Pi NFC alat za praćenje odjeće: 5 koraka (sa slikama)
Raspberry Pi NFC Tracker Clothing Tracker: Ako ste poput mene, onda na podu imate malu hrpu odjeće koja može biti prljava ili ne. To može uključivati traperice, košulje i jedva nošene kratke hlače. Pa kako možete znati koja je odjeća čista ili prljava? Smislio sam način praćenja