Sisukord:

Tootlikkuse jälgija - Powered by Raspberry Pi: 9 sammu (koos piltidega)
Tootlikkuse jälgija - Powered by Raspberry Pi: 9 sammu (koos piltidega)

Video: Tootlikkuse jälgija - Powered by Raspberry Pi: 9 sammu (koos piltidega)

Video: Tootlikkuse jälgija - Powered by Raspberry Pi: 9 sammu (koos piltidega)
Video: Leap Motion SDK 2024, November
Anonim
Tootlikkuse jälgija - toetab Raspberry Pi
Tootlikkuse jälgija - toetab Raspberry Pi
Tootlikkuse jälgija - toetab Raspberry Pi
Tootlikkuse jälgija - toetab Raspberry Pi
Tootlikkuse jälgija - toetab Raspberry Pi
Tootlikkuse jälgija - toetab Raspberry Pi

Tootlikkuse jälgija on maagiline peegel, kuid selle asemel, et kuvada aega, ilma ja motiveerivat tsitaati, kuvab see 4 asja;

Selle aja protsent, mille olete kulutanud sellel päeval arvutis ja telefonis tootvale materjalile. (RescueTime)

Teie ülesannete loend Trellost

Radarigraafik, mis näitab kulutatud aega koos kasutatud programmide-rakenduste kategooriatega võrreldes eilse kasutusega. (RescueTime)

Iganädalane ülevaade. (RescueTime)

Ja kui produktiivsele materjalile kulutatud aja protsent on üle 50%, kuvatakse valgusdioodidel erkrohelist värvi. Kui see on alla 50%, kuvab see punase värvi, mis näitab, et olete produktiivsem! Saate ka endale eesmärgi seada.

Kontuur

Esimese sammuna selgitan ideed tootlikkuse jälgija taga. Järgmisena annan teile kaks erinevat tööriistade ja osade loendit, nii et saate koostada täieliku projekti või põhiversiooni (ei sisalda LED -e), mis ei nõua jootmisoskusi. Hiljem näitan teile, kuidas ma oma projekti versiooni prototüüpisin, nii et teil on idee oma prototüübi modelleerimiseks. Samuti tutvun üksikasjalikult koodide jaotisega, et saaksite koodi oma vajadustele kohandada. Lõpus annan teile tõrkeotsingu juhendi, mis põhineb selle ehitamise ajal tekkinud probleemidel. Ja laiendage nimekirja oma küsimustega.

Selle juhendi eesmärk ei ole anda teile ainult kokaraamatut. Näitan teile, kuidas ma selle projekti koostasin, ja pakun teile avatud küsimusi, et saaksite lisada oma ideid ja viia see projekt veelgi kaugemale. Soovitan tungivalt jagada oma ehitust, kui see on tehtud! Alustame.

Samm: idee

Idee
Idee

Olen kavatsenud seda juhendit juba mitu kuud kirjutada. Aga üks mu vana sõber, kes kannab nime "Viivitamine", ei lubanud mind. Edasilükkamine on toimingu või ülesannete komplekti edasilükkamine või edasilükkamine ning selle asemel, et neid ülesandeid täita, täites aega videote vaatamisega YouTube'i pimedast sügavusest.

Ühel päeval lugesin artiklit viivitamise kohta ja leidsin mitmeid rakendusi/programme, mis aitaksid mul oma probleemi lahendada, Trello kui ülesannete haldamise rakendus ja RescueTime ajahaldusrakendus. Mõlemad töötasid minu vajadustele ideaalselt, vähemalt mõnda aega. Mõne aja pärast lõpetasin üldse rakenduste kontrollimise ja ignoreerisin märguandeid. See oli siis, kui ma selle projekti välja mõtlesin. Ma näitaksin rakenduste andmeid oma seinale riputatud peeglile. Nii ei pääsenud minu kohustustest.

Esimene mustand, mille ma oma projekti jaoks joonistasin, oli üsna lihtne. Ma kasutaksin oma produktiivse/häiriva töö protsendi kuvamiseks RescueTime API -d. Ja kasutage minu päeva ülesannete loendi kuvamiseks Trello API-d. Kuid mõne aja pärast lisasin veel funktsioone, mida saan järgmiste sammude käigus üksikasjalikult.

2. samm: tööriistad ja osad

Märkus. See on tööriistade loend, mida ma oma ehitamise ajal kasutasin, need ei pea olema teie ehituse jaoks samad!

Aluse jaoks:

4 meetrit 7x15cm mängupuid - 6 $ - See sõltub teie ekraani suurusest

30x40cm ühepoolne peegel - sõltub teie ekraani suurusest

25x35cm Samsungi monitor - 15 $ - Leitud kirbuturult. iga monitor teeks

Raspberry Pi 3 mudel B- 35 $ - Raspberry pi 2 sobib ka hästi, kuid vajate WiFi -moodulit

HDMI -kaabel - 2 dollarit

Led Lightning jaoks:

200 cm smd5050 RGB LED -riba - 4 $ - hiljem peab see olema smd5050 rohkem…

  • Kolm N -kanaliga MOSFET -i (nt IRLZ34N) - 2 dollarit
  • 12V -2A toiteadapter - 3,15 $
  • PCB prototüüpimine - 1 $

Tööriistad:

  • Puidust saag
  • Puiduliim
  • Jootekolb (LED -valgustite jaoks)

3. samm: kood

Kood
Kood

See samm koosneb kolmest osast, te ei vaja kõiki eelmises etapis loetletud osi. Prototüüpimise etapis peaks piisama Raspberry Pi -st ja monitorist, mida selles projektis kasutate.

Raspberry Pi seadistamine

Kui te pole veel oma Raspberry Pi seadistanud, jätkake ja tehke seda siin. Selle ehituse jaoks peate veebiserveri ja PHP-LED-kontrolleri jaoks installima Apache.

Apache installimiseks järgige seda ametlikku juhendit.

PHP-LED-kontrolleri paigaldamiseks järgige Christian Nikkaneni juhendit

Laadige nüüd fail index.php projekti hoidlast oma Raspberry Pi alla ja pange see sellele teele:

/var/www/html/

Kui te ei tunne Linuxi terminalis failide teisaldamist, võite alustamiseks tutvuda selle juhendiga.

Kohanda koodi

Märkus. Kui kasutate erinevat kuvarit, nõuab see osa HTML/CSS -i tundmist.

Kohandamine toimub failis index.php, mis on selle ehitise koldeks. Nüüd jätkake ja ühendage monitor Raspberry Pi -ga, kui te seda veel teinud pole.

Kui proovite faili index.php avada, ei tööta see, sest peate esmalt täitma koodis API -võtmed, minge selleks RescueTime'i veebisaidile ja avage konto. Seejärel minge arendaja sektsiooni ja looge API -võti, vajutades nuppu Aktiveeri see võti. Kirjutage oma API -võti kuhugi.

Tehke sama oma Trello API võtmega, avage konto ja minge arendajaportaali, et luua API võti.

Seejärel avage fail index.php, mille sisestasite oma lemmiktekstiredaktorisse/var/www/html/, ja asendage [API_KEY] oma API võtmega, mille saite vastavalt RescueTime'ist ja Trellost. [Loendi_number] on loendi number, mida kasutate ülesannete loendis Trello. Selle numbri saamiseks looge Trellos esmalt uus loend ja nimetage see ülesanneteks. See on nimekiri, mida kasutate oma ülesannete loendis ja see kuvatakse peeglis.

Seejärel võtke oma aadressiribale järgmine URL:

trello.com/b/3hS6yyLo/board-name

ja lisage sellele.json järgmiselt:

trello.com/b/3hS6yyLo/board-name.json

ja vajutage sisestusklahvi, seejärel näete ekraanil koodi jama. Proovige leida segadusest oma loendi nimi '' Ülesanded ''. See peaks välja nägema umbes selline: {"name": "To Do", "id": "5981c123cd1b23f13907cd18"}, See ID on teie loendi ID. selle numbri failiks index.php [loendinumber].

Nüüd avage brauser ja tippige aadressiribale localhost ja vajutage sisestusklahvi. Te peaksite nägema oma andmeid graafikutel.

Märkus. Graafikute paigutused võivad olla erinevad kasutatava monitori eraldusvõime tõttu. Saate muuta koodi CSS -osa elementide laiust, kõrgust ja asukohta.

Nüüd jääb üle vaid monitor ümber kujundada ja LED -id ühendada.

Märkus. Kui teid API -d üksikasjalikult ei huvita, võite järgmise sammu juurde liikuda. API osas saan üksikasjalikult teada, kuidas kogu programm töötab ja API -dest andmeid saab.

API -d (üksikasjalikult)

Selle projekti keskmes on kaks API -d;

  • Trello API
  • RescueTime API

Kuigi dokumentatsioonis on üksikasjalik teave saadaval, selgitan, milliseid API andmeid see projekt kasutab.

Ajahalduse osas on RescueTime API kõne, mis saab jooksva päeva ajateabe, "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"

kus, kuupäev ('Y-m-d') on praegune kuupäev

perspektiiv = auaste on andmete sortimise tüüp, antud juhul "auaste", mis tähistab enamikku kulutatud ajast

See kõne annab JSON -vormingus faili, mis näeb välja selline: (vaadake selle sammu lõpus aadressi data.json)

Sellest failist kasutatavad andmed on "Kulutatud aeg (sekundites)" ja "Tootlikkus", mille väärtused on vahemikus -2 kuni 2, -2 on häiriv ja 2 tootlik. Nende andmete abil saame tootlikkuse skoori jaoks luua väärtuse üle 100.

Veel üks API kutse RescueTime'ile, "https://www.rescuetime.com/anapi/daily_summary_feed?key=[API_KEY]"

Mis annab teile iganädalase kokkuvõtte teie andmetest, mis näeb välja selline: (vaadake selle sammu lõpus aadressi summary.json.) Kasutasin neid andmeid iganädalase kokkuvõttegraafiku loomiseks, mis annab teile nädala ülevaate.

Trello API kõne, "https://api.trello.com/1/lists/[list_number]/cards?fields=name&key=[API_KEY]&token=[Token]"

See annab teile Trello loendis olevad kaardid järgmiselt:

[{"id": "5a4160103bfcd14994852f59", "name": "ceylan cinemagraph"}, {"id": "59e8241f6aa8662a51eb7de6", "name": "Learn GitHuB"}, {"id": "5981c19877725 ":" Publish Instructible "}, {" id ":" 5a341dba7f17d235d7c5bbd1 "," name ":" SPACE PROGRAM "}]

jälle saate nende kaartide teksti tõmmata ja mujale panna.

data.json

Vormindatud JSON -andmed
{
"notes": "andmed on massiivimassiivid (read), ridade veergude nimed rida_pealkirjades",
"rea_pealkirjad": [
"Koht",
"Kulutatud aeg (sekundites)",
"Inimeste arv",
"Tegevus",
"Kategooria",
"Tootlikkus"
],
"read": [
[
1,
1536,
1,
"et.0wikipedia.org",
"Kategooriateta",
0
],
[
2,
1505,
1,
"youtube.com",
"Video",
-2
],
[
3,
1178,
1,
"Avatud kontor",
"Kirjutamine",
2
],
[
4,
709,
1,
"moodle.bilkent.edu.tr",
"Üldine viide \u0026 Õppimine",
2
],
[
5,
602,
1,
"google.com.tr",
"Otsing",
2
],
[
6,
439,
1,
"reddit.com",
"Üldised uudised ja arvamus",
-2
],
[
7,
437,
1,
"tr.sharelatex.com",
"Kirjutamine",
2
],
[
8,
361,
1,
"yemeksepeti.com",
"Üldine ostlemine",
-2
],
[
9,
356,
1,
"Gmail",
"E -post",
0
],
[
10,
328,
1,
"Google Chrome",
"Brauserid",
0
],
[
11,
207,
1,
"stars.bilkent.edu.tr",
"Üldine viide \u0026 Õppimine",
2
],
[
12,
179,
1,
"whatsapp",
"Kiirsõnum",
-1
],

vaadake rawdata.json, mille hostiks on GitHub ❤

summary.json

[
{
"id": 1515657600,
"date": "2018-01-11",
"tootlikkuse_pulss": 54,
"väga_produktiivne_protsent": 34,2,
"produktiivne_protsent": 10,6,
"neutraalne_protsent": 25,6,
"häiriv_protsent": 0,0,
"very_distracting_percentage": 29,6,
"kõik_produktiivsed_protsendid": 44,8,
"all_distracting_percentage": 29,6,
"liigitamata_protsent": 16,1,
"äri_protsent": 6,0,
"side_ja_plaani_protsent": 4.3,
"social_networking_percentage": 0,0,
"disaini_ja koostise_protsent": 0,0,
"meelelahutuse_protsent": 15,2,
"uudiste_protsent": 3.3,
"Tarkvaraarenduse_protsent": 5.4,
"viite_ja_õppe_protsent": 22,8,
"ostude_protsent": 12,9,
"kommunaalteenuste_protsent": 14,1,
"kokku_tundi": 2.51,
"väga_produktiivsed tunnid": 0,86,
"tootlikud tunnid": 0,27,
"neutraalsed tunnid": 0,64,
"häirivad tunnid": 0,0,
"very_distracting_hours": 0,74,
"kõik_tootlikud_tunnid": 1.12,
"all_distracting_hours": 0,74,
"liigitamata tunnid": 0,4,
"äritunnid": 0,15,
"side_ja_plaani_tunnid": 0,11,
"social_networking_hours": 0,0,
"design_and_composition_hours": 0,0,
"meelelahutustunnid": 0,38,
"news_hours": 0,08,
"tarkvara_arendustunnid": 0,13,
"viite_ja_õppetunnid": 0,57,
"shopping_hours": 0,32,
"utilities_hours": 0,35,
"total_duration_formatted": "2h 30m",
"very_productive_duration_formatted": "51m 26s",
"productive_duration_formatted": "15 m 56 s",
"neutral_duration_formatted": "38 m 34 s",
"distracting_duration_formatted": "pole aega",
"very_distracting_duration_formatted": "44 minutit 30 sekundit",
"all_productive_duration_formatted": "1h 7 min",
"all_distracting_duration_formatted": "44 minutit 30 sekundit",
"uncategorized_duration_formatted": "24m 11s",
"business_duration_formatted": "9 kuud 6 sekundit",
"communication_and_scheduling_duration_formatted": "6m 26s",
"social_networking_duration_formatted": "pole aega",
"design_and_composition_duration_formatted": "pole aega",
"entertainment_duration_formatted": "22 minutit 49 sekundit",
"news_duration_formatted": "4 minutit 55 sekundit",
"software_development_duration_formatted": "8m 3s",
"reference_and_learning_duration_formatted": "34 m 17 s",
"shopping_duration_formatted": "19 minutit 22 sekundit",
"utilities_duration_formatted": "21 m 17 s"
},
{
"id": 1515571200,
"date": "2018-01-10",
"tootlikkuse_pulss": 33,
"väga_produktiivne_protsent": 21,9,
"produktiivne_protsent": 2,3,
"neutraalne_protsent": 14,4,
"häiriv_protsent": 11,0,
"very_distracting_percentage": 50,3,
"kõik_produktiivsed_protsendid": 24,2,
"all_distracting_percentage": 61,4,
"liigitamata_protsent": 0,3,
"äri_protsent": 0,0,
"side_ja_plaani_protsent": 13,5,
"social_networking_percentage": 0,0,
"design_and_composition_percentage": 6.3,
"meelelahutuse_protsent": 44,7,
"uudiste_protsent": 4.2,
"tarkvara_arenduse_protsent": 0,0,
"viite_ja_õppe_protsent": 15,5,
"ostude_protsent": 0,0,
"kommunaalteenuste_protsent": 15,4,
"kokku_tundi": 2,24,
"väga_produktiivsed tunnid": 0,49,
"tootlikud tunnid": 0,05,
"neutraalsed tunnid": 0,32,
"häirivad tunnid": 0,25,
"very_distracting_hours": 1.13,
"kõik_tootlikud_tunnid": 0,54,
"all_distracting_hours": 1,37,
"liigitamata tunnid": 0,01,
"äri_tunnid": 0,0,
"side_ja_plaani_tunnid": 0,3,
"social_networking_hours": 0,0,
"disain_ja koostise_tunnid": 0,14,
"meelelahutustunnid": 1,0,
"news_hours": 0,09,
"tarkvara_arendustunnid": 0,0,
"viite_ja_õppetunnid": 0,35,
"shopping_hours": 0,0,
"utilities_hours": 0,34,
"total_duration_formatted": "2h 14m",
"very_productive_duration_formatted": "29 minutit 22 sekundit",
"productive_duration_formatted": "3 m 8 s",
"neutral_duration_formatted": "19 m 18 s",
"distracting_duration_formatted": "14 minutit 48 sekundit",
"very_distracting_duration_formatted": "1h 7 min",
"all_productive_duration_formatted": "32 m 30 s",
"all_distracting_duration_formatted": "1h 22 min",
"uncategorized_duration_formatted": "27s",
"business_duration_formatted": "1 s",
"communication_and_scheduling_duration_formatted": "18 m 5 s",
"social_networking_duration_formatted": "pole aega",
"design_and_composition_duration_formatted": "8m 30s",
"entertainment_duration_formatted": "59 minutit 54 sekundit",
"news_duration_formatted": "5 minutit 39 sekundit",
"software_development_duration_formatted": "pole aega",
"reference_and_learning_duration_formatted": "20 m 51 s",
"shopping_duration_formatted": "pole aega",
"utilities_duration_formatted": "20m 39s"
},
{
"id": 1515484800,
"date": "2018-01-09",
"tootlikkuse_pulss": 68,
"väga_produktiivne_protsent": 60,4,
"produktiivne_protsent": 0,5,
"neutraalne_protsent": 11,0,
"häiriv_protsent": 7.1,
"very_distracting_percentage": 21,0,
"kõik_produktiivsed_protsendid": 60,9,
"all_distracting_percentage": 28,1,
"liigitamata_protsent": 9.1,
"äri_protsent": 21,9,
"side_ja_plaani_protsent": 7.2,
"social_networking_percentage": 5.1,
"design_and_composition_percentage": 1.2,
"meelelahutuse_protsent": 1,6,
"uudiste_protsent": 12,5,
"Tarkvaraarenduse_protsent": 9.1,
"viite_ja_õppimisprotsent": 28,2,
"ostude_protsent": 2,9,
"kommunaalteenuste_protsent": 1,2,
"kokku_tundi": 2,78,
"väga_produktiivsed tunnid": 1,68,
"produktiivtunnid": 0,01,
"neutraalsed tunnid": 0,31,
"häirivad tunnid": 0,2,
"very_distracting_hours": 0,58,
"kõik_tootlikud_tunnid": 1,69,
"all_distracting_hours": 0,78,
"liigitamata tunnid": 0,25,
"äritunnid": 0,61,
"side_ja_plaani_tunnid": 0,2,
"social_networking_hours": 0,14,
"disain_ja koostise_tunnid": 0,03,
"meelelahutustunnid": 0,04,
"news_hours": 0,35,
"tarkvara_arendustunnid": 0,25,
"viite_ja_õppetunnid": 0,78,
"shopping_hours": 0,08,
"utilities_hours": 0,03,
"total_duration_formatted": "2h 46m",
"very_productive_duration_formatted": "1h 40 min",
"productive_duration_formatted": "47s",
"neutral_duration_formatted": "18 m 23 s",
"distracting_duration_formatted": "11 minutit 49 sekundit",
"very_distracting_duration_formatted": "34 minutit 57 sekundit",
"all_productive_duration_formatted": "1h 41 min",
"all_distracting_duration_formatted": "46m 46s",
"uncategorized_duration_formatted": "15 m 7 s",
"business_duration_formatted": "36m 26s",
"communication_and_scheduling_duration_formatted": "11 minutit 59 sekundit",
"social_networking_duration_formatted": "8m 28s",
"design_and_composition_duration_formatted": "2m 4s",
"entertainment_duration_formatted": "2 minutit 39 sekundit",
"news_duration_formatted": "20 m 49 s",
"software_development_duration_formatted": "15m 5s",
"reference_and_learning_duration_formatted": "46m 59s",
"shopping_duration_formatted": "4m 51s",
"utilities_duration_formatted": "2m 3s"
}
]

vaadake rawsummary.json, mille hostiks on GitHub

4. samm: prototüüpide koostamine

Raspberry Pi konkursi peaauhind 2017

Soovitan: