Tartalomjegyzék:

Termelékenységkövető - Raspberry Pi: 9 lépés (képekkel)
Termelékenységkövető - Raspberry Pi: 9 lépés (képekkel)

Videó: Termelékenységkövető - Raspberry Pi: 9 lépés (képekkel)

Videó: Termelékenységkövető - Raspberry Pi: 9 lépés (képekkel)
Videó: Начало работы с QLC+ Управление цветомузыкой с компьютера. Как управлять светом. 2024, November
Anonim
Termelékenységkövető - Raspberry Pi
Termelékenységkövető - Raspberry Pi
Termelékenységkövető - Raspberry Pi
Termelékenységkövető - Raspberry Pi
Termelékenységkövető - Raspberry Pi
Termelékenységkövető - Raspberry Pi

A Productivity Tracker varázslatos tükör, de az idő, az időjárás és a motiváló idézet megjelenítése helyett 4 dolgot jelenít meg;

Azon idő százalékos aránya, amelyet az adott napon a számítógépen és a telefonon termelő anyagokra fordított. (RescueTime)

A teendők listája a Trellótól

Radargrafikon, amely megmutatja, hogy mennyi időt töltött a használt programok és alkalmazások kategóriáival együtt a tegnapi használathoz képest. (RescueTime)

Heti áttekintés. (RescueTime)

És ha a termelő anyagokra fordított idő százaléka meghaladja az 50% -ot, a LED -ek élénkzöld színt jelenítenek meg. Ha 50% alatt van, piros színű lesz, jelezve, hogy termelékenyebb lesz! Ön is kitűzhet egy célt.

Vázlat

Első lépésben elmagyarázom a termelékenységkövető gondolatát. Ezután két különböző eszközt és alkatrészlistát adok, így elkészítheti a teljes projektet vagy egy alapverziót (nem tartalmazza a LED -eket), amely nem igényel forrasztási ismereteket. Később megmutatom, hogyan prototípusoztam a projekt verzióját, így van ötlete a saját prototípusának modellezésére. Ezenkívül a kódrészletben részletezem, hogy személyre szabhassa a kódot saját igényei szerint. A végén adok egy Hibaelhárítási útmutatót, amely az építés során tapasztalt problémák alapján történik. És bővítse a listát kérdéseivel.

Ennek az utasításnak a célja nem csak egy szakácskönyv. Megmutatom, hogyan építettem fel ezt a projektet, és nyitott kérdéseket teszek fel Önnek, így hozzáadhatja saját ötleteit, és továbbvinheti ezt a projektet. Határozottan javaslom, hogy ha elkészült, ossza meg az építkezést! Lássunk neki.

1. lépés: Az ötlet

Az ötlet
Az ötlet

Hónapok óta szándékozom megírni ezt az utasítást. De egy régi barátom, aki "halogatás" néven szól, nem engedte. A halogatás azt jelenti, hogy késleltetünk vagy elhalasztunk egy feladatot vagy feladatsort, és ehelyett e feladatok elvégzése helyett a YouTube sötét mélyéről származó videók nézésével töltjük ki az időt.

Egy napon a halogatásról szóló cikk olvasása közben több olyan alkalmazással/programmal találkoztam, amelyek segítenek a problémám megoldásában: a Trello mint feladatkezelő alkalmazás és a RescueTime időkezelő alkalmazás. Mindkettő tökéletesen megfelelt az igényeimnek, legalábbis egy ideig. Egy idő után abbahagytam az alkalmazások ellenőrzését, és figyelmen kívül hagytam az értesítéseket. Ekkor jöttem rá erre a projektre. Az alkalmazások adatait a falra akasztott tükörben jeleníteném meg. Így nem lehetett menekülni a felelősségem alól.

Az első vázlat, amelyet a projektemhez rajzoltam, meglehetősen egyszerű volt. A RescueTime API -t használnám a produktív/zavaró munka százalékos arányának megjelenítésére. És használja a Trello API-t a napi teendők listájának megjelenítéséhez. De egy idő után további funkciókat adtam hozzá, amelyeket a következő lépésekben részletesen meg fogok kapni.

2. lépés: Eszközök és alkatrészek

Megjegyzés: Ez az eszközök listája, amelyeket az építés során használtam, nem feltétlenül kell, hogy ugyanazok legyenek a buildhez!

Az alaphoz:

4 méter 7x15 cm -es játszófa - 6 $ - Ez a képernyő méretétől függ

30x40 cm -es egyoldalas tükör - a képernyő méretétől függ

25x35 cm -es Samsung monitor - 15 USD - Talált egy bolhapiacon. bármelyik monitor megteszi

Raspberry Pi 3 B modell - 35 $ - A Raspberry pi 2 szintén rendben van, de szüksége lesz egy wifi modulra

HDMI kábel - 2 dollár

A Led Lightning számára:

200 cm -es smd5050 RGB LED -csík - 4 $ - Erről később smd5050 -nek kell lennie…

  • Három N -csatornás MOSFET (pl. IRLZ34N) - 2 $
  • 12V -2A hálózati adapter - 3,15 $
  • PCB prototípus készítése - 1 $

Eszközök:

  • Fa fűrész
  • Fa ragasztó
  • Forrasztópáka (LED -es világításhoz)

3. lépés: A kód

A kód
A kód

Ez a lépés 3 részből fog állni, nincs szüksége az előző lépésben felsorolt összes alkatrészre. Egy prototípus készítéséhez elegendő egy Raspberry Pi és a monitor, amelyet ehhez a projekthez használni fog.

A Raspberry Pi beállítása

Ha még nem állította be a Raspberry Pi -t, akkor tegye meg itt. Ehhez a telepítéshez telepítenie kell az Apache webszervert és a PHP-LED-vezérlőt.

Az Apache telepítéséhez kövesse ezt a hivatalos útmutatót.

A PHP-LED vezérlő telepítéséhez kövesse Christian Nikkanen ezen útmutatóját

Most töltse le az index.php fájlt a projekt lerakatából a Raspberry Pi -re, és tegye ezt az útvonalat:

/var/www/html/

Ha nem ismeri a fájlok mozgatását a Linux terminálon, akkor nézze meg ezt az útmutatót a kezdéshez.

A kód testreszabása

Megjegyzés: Ez a rész egy kis HTML/CSS ismereteket igényel, ha más monitort használ.

A testreszabás az index.php fájlon történik, amely ennek a buildnek a tűzhelye. Most folytassa, és csatlakoztassa a monitort a Raspberry Pi -hez, ha még nem tette meg.

Ha most megpróbálja megnyitni az index.php fájlt, az nem fog működni, mert először ki kell töltenie az API -kulcsokat a kódban, ehhez nyissa meg a RescueTime webhelyet, és nyisson egy fiókot. Ezután lépjen a fejlesztői részre, és hozzon létre egy API -kulcsot a kulcs aktiválása gomb megnyomásával. Írja valahova az API kulcsát.

Tegye ugyanezt a Trello API -kulccsal, nyisson egy fiókot, és lépjen a fejlesztői portálra, hogy hozzon létre egy API -kulcsot.

Ezután nyissa meg az index.php fájlt, amelyet a kedvenc szövegszerkesztőjében a/var/www/html/fájlba helyezett, és cserélje le az [API_KEY] fájlt a saját API -kulcsával, amelyet a RescueTime és a Trello szolgáltatástól kapott. A [list_number] az a lista, amelyet a Trello feladatlistához használ. Ennek a számnak a megszerzéséhez először hozzon létre egy friss listát a Trello-n, és nevezze el "Teendők" -nek. Ezt a listát fogja használni a teendők listájához, és megjelenik a tükörben.

Ezután vegye a címsorba a következő URL -t:

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

és adja hozzá.json -t így:

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

és nyomja meg az enter billentyűt, majd megjelenik a kódzavar a képernyőn. Próbálja megtalálni a lista nevét '' Teendő "ezen a rendetlenségen. Ennek valahogy így kell kinéznie: {" name ":" To Do "," id ":" 5981c123cd1b23f13907cd18 "}, Ez az azonosító a lista azonosítója. ezt a számot a [list_number] -ra az index.php fájlban.

Most nyissa meg a böngészőt, és írja be a localhost címsorba, majd nyomja meg az enter billentyűt. Látnia kell az adatokat a grafikonokon.

Megjegyzés: A grafikonok elhelyezése eltérő lehet a használt monitor felbontása miatt. A kód CSS részében szerkesztheti az elemek szélességét, magasságát és helyét.

Most már csak egy dobozt kell tervezni a monitor körül, és csatlakoztatni kell a LED -eket.

Megjegyzés: Ha nem érdekli részletesen az API, ugorhat a következő lépésre. Az API részben részletesen bemutatom az egész program működését és az API -kból származó adatokat.

Az API -k (részletesen)

Ennek a projektnek a tűzhelye a Két API;

  • Trello API
  • RescueTime API

Bár a dokumentáció részletes információkat tartalmaz, elmagyarázom, hogy mely adatokat használja az API -ból ez a projekt.

Az időmenedzsment résznél a RescueTime API hívás, amely az aktuális nap időadatait kapja, "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"

ahol, date ('Y-h-d') az aktuális dátum

perspektíva = rang az adatrendező típus ebben az esetben "rang", amely a legtöbb eltöltött időt jelenti

Ez a hívás egy JSON formátumú fájlt ad, amely így néz ki: (nézze meg a data.json fájlt a lépés végén)

Az ebből a fájlból felhasznált adatok az "Eltöltött idő (másodperc)" és a "Termelékenység", amelyek értékei -2 és 2 között vannak, -2 zavaró és 2 produktív. Ezekkel az adatokkal 100 fölötti értéket generálhatunk a termelékenységi pontszámhoz.

Újabb API -hívás a RescueTime -hez, "https://www.rescuetime.com/anapi/daily_summary_feed?key=[API_KEY]"

Ez heti összefoglalót ad az adatokból, amely így néz ki: (nézze meg a summary.json oldalt ennek a lépésnek a végén.) Ezekből az adatokból generáltam a heti összefoglaló grafikont, amely áttekintést nyújt a hétről.

A Trello API hívás, "https://api.trello.com/1/lists/[list_number]/cards?fields=name&key=[API_KEY]&token=[Token]"

Így kapja meg a Trello listában szereplő kártyákat:

[{"id": "5a4160103bfcd14994852f59", "name": "ceylan cinemagraph"}, {"id": "59e8241f6aa8662a51eb7de6", "name": "Learn GitHuB"}, {"id": "5981c19577c77 ":" Utasítás közzététele "}, {" id ":" 5a341dba7f17d235d7c5bbd1 "," name ":" SPACE PROGRAM "}]

ismét húzza a szöveget a kártyákra, és tegye fel máshová.

data.json

Formázott JSON adatok
{
"notes": "az adatok tömbök (sorok), oszlopnevek a sorok fejlécében",
"row_headers": [
"Rang",
"Eltöltött idő (másodperc)",
"Emberek száma",
"Tevékenység",
"Kategória",
"Termelékenység"
],
"sorok": [
[
1,
1536,
1,
"en.0wikipedia.org",
"Kategorizálatlan",
0
],
[
2,
1505,
1,
"youtube.com",
"Videó",
-2
],
[
3,
1178,
1,
"OpenOffice",
"Írás",
2
],
[
4,
709,
1,
"moodle.bilkent.edu.tr",
"Általános referencia és tanulás",
2
],
[
5,
602,
1,
"google.com.tr",
"Keresés",
2
],
[
6,
439,
1,
"reddit.com",
"Általános hírek és vélemény",
-2
],
[
7,
437,
1,
"tr.sharelatex.com",
"Írás",
2
],
[
8,
361,
1,
"yemeksepeti.com",
"Általános vásárlás",
-2
],
[
9,
356,
1,
"Gmail",
"Email",
0
],
[
10,
328,
1,
"Google Chrome",
"Böngészők",
0
],
[
11,
207,
1,
"stars.bilkent.edu.tr",
"Általános referencia és tanulás",
2
],
[
12,
179,
1,
"whatsapp",
"Azonnali üzenet",
-1
],

Tekintse meg a rawdata.json webhelyet, amelyet a GitHub ❤ üzemeltet

summary.json

[
{
"azonosító": 1515657600,
"date": "2018-01-11",
"termelékenység_impulzus": 54,
"nagyon_termékeny_százalék": 34,2,
"produktív_százalék": 10,6,
"semleges_százalék": 25,6,
"zavaró_százalék": 0,0,
"very_distracting_percentage": 29.6,
"all_productive_percentage": 44,8,
"all_distracting_percentage": 29.6,
"kategorizálatlan_százalék": 16.1,
"üzleti_százalék": 6,0,
"communication_and_scheduling_percentage": 4.3,
"social_networking_percentage": 0,0,
"design_and_composition_percentage": 0,0,
"szórakoztató_százalék": 15,2,
"news_percentage": 3.3,
"software_development_percentage": 5.4,
"reference_and_learning_percentage": 22,8,
"vásárlási_százalék": 12,9,
"segédprogramok_százaléka": 14.1,
"total_hours": 2.51,
"nagyon_termékeny_órák": 0,86,
"produktív_óra": 0,27,
"semleges_óra": 0,64,
"zavaró_óra": 0,0,
"very_distracting_hours": 0,74,
"all_productive_hours": 1.12,
"all_distracting_hours": 0,74,
"kategória nélküli órák": 0,4,
"business_hours": 0,15,
"communication_and_scheduling_hours": 0.11,
"social_networking_hours": 0,0,
"design_and_composition_hours": 0,0,
"szórakoztató_óra": 0,38,
"news_hours": 0,08,
"software_development_hours": 0,13,
"reference_and_learning_hours": 0,57,
"shopping_hours": 0,32,
"segédprogramok órája": 0,35,
"total_duration_formatted": "2 óra 30 perc",
"very_productive_duration_formatted": "51m 26s",
"productive_duration_formatted": "15m 56s",
"neutral_duration_formatted": "38m 34s",
"distracting_duration_formatted": "nincs idő",
"very_distracting_duration_formatted": "44m 30s",
"all_productive_duration_formatted": "1 óra 7 perc",
"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": "nincs idő",
"design_and_composition_duration_formatted": "nincs idő",
"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"
},
{
"azonosító": 1515571200,
"date": "2018-01-10",
"termelékenység_impulzus": 33,
"nagyon_produktív_százalék": 21,9,
"produktív_százalék": 2.3,
"semleges_százalék": 14,4,
"zavaró_százalék": 11.0,
"very_distracting_percentage": 50,3,
"all_productive_percentage": 24,2,
"all_distracting_percentage": 61.4,
"kategorizálatlan_százalék": 0,3,
"üzleti_százalék": 0,0,
"communication_and_scheduling_percentage": 13.5,
"social_networking_percentage": 0,0,
"design_and_composition_percentage": 6.3,
"szórakoztató_százalék": 44,7,
"news_percentage": 4.2,
"software_development_percentage": 0,0,
"reference_and_learning_percentage": 15,5,
"vásárlási_százalék": 0,0,
"segédprogramok_százaléka": 15,4,
"total_hours": 2.24,
"nagyon_termékeny_órák": 0,49,
"produktív_óra": 0,05,
"semleges_óra": 0,32,
"zavaró_óra": 0,25,
"very_distracting_hours": 1.13,
"all_productive_hours": 0,54,
"all_distracting_hours": 1,37,
"kategória nélküli órák": 0,01,
"business_hours": 0,0,
"communication_and_scheduling_hours": 0,3,
"social_networking_hours": 0,0,
"design_and_composition_hours": 0,14,
"szórakoztató_óra": 1.0,
"news_hours": 0,09,
"software_development_hours": 0,0,
"reference_and_learning_hours": 0,35,
"shopping_hours": 0.0,
"segédprogramok_órái": 0,34,
"total_duration_formatted": "2 óra 14 perc",
"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": "1 óra 7 perc",
"all_productive_duration_formatted": "32m 30s",
"all_distracting_duration_formatted": "1 óra 22 perc",
"uncategorized_duration_formatted": "27s",
"business_duration_formatted": "1s",
"communication_and_scheduling_duration_formatted": "18m 5s",
"social_networking_duration_formatted": "nincs idő",
"design_and_composition_duration_formatted": "8m 30s",
"entertainment_duration_formatted": "59m 54s",
"news_duration_formatted": "5m 39s",
"software_development_duration_formatted": "nincs idő",
"reference_and_learning_duration_formatted": "20m 51s",
"shopping_duration_formatted": "nincs idő",
"utilities_duration_formatted": "20m 39s"
},
{
"azonosító": 1515484800,
"date": "2018-01-09",
"termelékenység_impulzus": 68,
"nagyon_termékeny_százalék": 60,4,
"produktív_százalék": 0,5,
"semleges_százalék": 11.0,
"zavaró_százalék": 7.1,
"very_distracting_percentage": 21.0,
"all_productive_percentage": 60,9,
"all_distracting_percentage": 28.1,
"kategorizálatlan_százalék": 9.1,
"üzleti_százalék": 21,9,
"communication_and_scheduling_percentage": 7.2,
"social_networking_percentage": 5.1,
"design_and_composition_percentage": 1.2,
"szórakoztató_százalék": 1,6,
"news_percentage": 12,5,
"software_development_percentage": 9.1,
"reference_and_learning_percentage": 28.2,
"vásárlási_százalék": 2,9,
"segédprogramok_százaléka": 1.2,
"total_hours": 2,78,
"nagyon_termékeny_órák": 1.68,
"produktív_óra": 0,01,
"semleges_óra": 0,31,
"zavaró_óra": 0,2,
"very_distracting_hours": 0,58,
"all_productive_hours": 1,69,
"all_distracting_hours": 0,78,
"kategória nélküli órák": 0,25,
"business_hours": 0,61,
"communication_and_scheduling_hours": 0,2,
"social_networking_hours": 0,14,
"design_and_composition_hours": 0,03,
"szórakoztató_óra": 0,04,
"news_hours": 0,35,
"software_development_hours": 0,25,
"reference_and_learning_hours": 0,78,
"shopping_hours": 0,08,
"segédprogramok_órái": 0,03,
"total_duration_formatted": "2 óra 46 perc",
"very_productive_duration_formatted": "1 óra 40 perc",
"productive_duration_formatted": "47s",
"neutral_duration_formatted": "18m 23s",
"distracting_duration_formatted": "11m 49s",
"very_distracting_duration_formatted": "34m 57s",
"all_productive_duration_formatted": "1 óra 41 perc",
"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"
}
]

Tekintse meg a rawsummary.json -t, amelyet a GitHub üzemeltet a ❤ -vel

4. lépés: Prototípuskészítés

Fődíj a Raspberry Pi versenyen 2017

Ajánlott: