Innehållsförteckning:
Video: Produktivitetsspårare - Drivs av Raspberry Pi: 9 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
Produktivitetsspårare är en magisk spegel, men istället för att visa tid, väder och ett motiverande citat visar den 4 saker;
Procentandelen av tiden du har lagt på produktivt material på din dator och telefon för den dagen. (RescueTime)
Din att göra-lista från Trello
Ett radardiagram som visar hur mycket tid du spenderade tillsammans med kategorierna av de program-appar du använde jämfört med gårdagens användning. (RescueTime)
En veckovis översikt. (RescueTime)
Och om procentandelen av tiden du har lagt på produktivt material är över 50% kommer lysdioderna att visa en ljusgrön färg. Om det är under 50% kommer det att visa en röd färg, vilket signalerar dig att vara mer produktiv! Du kan också sätta upp ett mål själv.
Översikt
I det första steget kommer jag att förklara tanken bakom produktivitetsspårare. Därefter ger jag dig två olika verktyg och reservdelslistor, så att du kan bygga hela projektet eller en grundversion (inkluderar inte lysdioderna) som inte kräver lödningskunskaper. Senare kommer jag att visa dig hur jag prototyperade min version av projektet, så att du har en idé om hur du modellerar din egen prototyp. Jag kommer också att gå in på detaljer i kodavsnittet så att du kan anpassa koden efter dina egna behov. I slutet kommer jag att ge dig en felsökningsguide baserat på problemen jag stötte på under denna byggnad. Och utöka listan med dina frågor.
Syftet med denna instruerbara är inte bara att ge dig en kokbok. Jag ska visa dig hur jag byggde det här projektet och ge dig öppna frågor, så att du kan lägga till dina egna idéer och ta detta projekt ännu längre. Jag uppmuntrar dig starkt att dela ditt bygge när det är klart! Låt oss börja.
Steg 1: Idén
Jag har tänkt skriva denna instruerbara i månader. Men en gammal vän till mig som går under namnet "Procrastination" lät mig inte. Att skjuta upp är att fördröja eller skjuta upp en uppgift eller uppsättning uppgifter, och istället för att utföra dessa uppgifter fyller tiden med att titta på videor från YouTubes mörka djup.
En dag när jag läste en artikel om förhalning stötte jag på flera appar/program som skulle hjälpa mig med mitt problem, Trello som en uppgiftshanteringsapp och RescueTime som en tidshanteringsapp. Båda fungerade perfekt för mina behov, åtminstone en tid. Efter ett tag slutade jag kolla apparna helt och hållet och ignorerade aviseringarna. Det var då jag kom på det här projektet. Jag skulle visa data från appar på en spegel som hängdes upp på min vägg. På så sätt kunde jag inte komma undan mitt ansvar.
Det första utkastet jag ritade för mitt projekt var ganska enkelt. Jag skulle använda RescueTime API för att visa min produktiva/distraktiva arbetsprocent. Och använd Trello API för att visa min att-göra-lista för dagen. Men efter ett tag lade jag till fler funktioner som jag kommer att få i detalj i nästa steg.
Steg 2: Verktyg och delar
Obs: Detta är en lista över verktyg jag använde under min byggnad, de behöver inte vara desamma för din byggnad!
För basen:
4 meter 7x15cm playwood - 6 $ - Det beror på din skärmstorlek
30x40cm enkelsidig spegel - beror på din skärmstorlek
25x35cm Samsung -skärm - 15 $ - Hittade på en loppis. någon bildskärm skulle göra
Raspberry Pi 3 Model B- 35 $ - Raspberry pi 2 är också bra men du behöver en wifi -modul
HDMI -kabel - 2 $
För Led Lightning:
200 cm smd5050 RGB Led strip- 4 $ - Det måste vara smd5050 mer om detta senare …
- Tre N -kanal MOSFET (t.ex. IRLZ34N) - 2 $
- 12V -2A nätadapter - 3,15 $
- Prototypning av kretskort - 1 $
Verktyg:
- Träsåg
- Trälim
- Lödkolv (för LED -belysning)
Steg 3: Koden
Det här steget kommer att bestå av tre delar, du behöver inte alla delarna som listades i föregående steg. En hallon Pi och bildskärmen som du kommer att använda för detta projekt borde vara tillräckligt för prototyperingsstadiet.
Konfigurera din Raspberry Pi
Om du inte har ställt in din Raspberry Pi än så gör det här. För den här versionen måste du installera Apache för webbservern och PHP-LED-kontrollen.
För att installera Apache, följ den här officiella guiden.
Följ den här guiden av Christian Nikkanen för att installera PHP-LED-controller
Ladda nu ner index.php -filen från projektförvaret till din Raspberry Pi och lägg den på den här sökvägen:
/var/www/html/
Om du inte känner till att flytta filer i Linux Terminal kan du titta på den här guiden för att komma igång.
Anpassa koden
Obs! Den här delen kräver lite HTML/CSS -kunskap om du använder en annan bildskärm.
Anpassningen kommer att göras på index.php -filen som är kärnan i denna byggnad. Fortsätt nu och anslut din bildskärm till din Raspberry Pi om du inte redan gjorde det.
Om du nu försöker öppna index.php -filen fungerar det inte eftersom du först måste fylla API -nycklarna i koden, för att gå till RescueTime -webbplatsen och öppna ett konto. Gå sedan till utvecklaravsnittet och skapa en API -nyckel genom att trycka på Aktivera den här nyckeln. Skriv din API -nyckel till någonstans.
Gör samma sak för din Trello API -nyckel, öppna ett konto och gå till utvecklarportalen för att generera en API -nyckel.
Öppna sedan index.php -filen som du lägger in i/var/www/html/i din favorittextredigerare och ersätt [API_KEY] med din egen API -nyckel som du fick från RescueTime och Trello i enlighet därmed. [List_number] är listnumret som du använder för din att göra-lista Trello. För att få det numret skapar du först en ny lista på Trello och kallar den "Att göra", det här är listan som du kommer att använda för din att göra-lista och den visas i spegeln.
Ta sedan URL: en i adressfältet som ser ut som:
trello.com/b/3hS6yyLo/board-name
och lägg till.json till det så här:
trello.com/b/3hS6yyLo/board-name.json
och tryck på enter, därefter ser du en kodröra på skärmen. Försök hitta ditt listnamn '' Att göra '' på den röra. Det ska se ut ungefär så här: {"name": "To Do", "id": "5981c123cd1b23f13907cd18"}, Id är din lista Id. Sätt det numret till [list_number] i index.php -filen.
Öppna nu din webbläsare och skriv localhost i adressfältet och tryck på enter. Du bör se dina data visas i graferna.
Obs! Placeringarna i graferna kan vara olika på grund av upplösningen på bildskärmen som du använder. Du kan redigera bredden, höjden och platsen för elementen i CSS -delen av koden.
Nu är det bara att designa en låda runt monitorn och ansluta lysdioderna.
Obs! Om du inte är intresserad av API: erna i detalj kan du hoppa till nästa steg. I API: s del kommer jag att få detaljerad information om hur hela programmet fungerar och hämtar data från API: er.
API: erna (i detalj)
Kärnan i detta projekt är de två API: erna;
- Trello API
- RescueTime API
Även om dokumentationen har detaljerad information tillgänglig, ska jag förklara vilka data från API: et detta projekt använder.
På tidshanteringsdelen är RescueTime API -anropet som får tidsinformationen för den aktuella dagen, "https://www.rescuetime.com/anapi/data?key=•. "& format = json"
var, datum ('Y-m-d') är det aktuella datumet
perspektiv = rang är datasorteringstypen i detta fall "rang" som står för den mesta tid som spenderas
Detta samtal ger en fil i JSON -format som ser ut så här: (titta på data.json i slutet av detta steg)
Data vi använder från den här filen är "Spenderad tid (sekunder)" och "Produktivitet" som har värden mellan -2 och 2, -2 är distraherande och 2 är produktiva. Med denna data kan vi generera ett värde över 100 för produktivitetspoängen.
Ytterligare ett API -anrop till RescueTime, "https://www.rescuetime.com/anapi/daily_summary_feed?key=[API_KEY]"
Vilket ger dig en veckosammanfattning av dina data, som ser ut så här: (titta på summering.json i slutet av detta steg.) Jag använde dessa data för att generera veckosammanfattningsgrafen som ger dig en översikt över veckan.
Trello API -anropet, "https://api.trello.com/1/lists/[list_number]/cards?fields=name&key=[API_KEY]&token=[Token]"
Detta ger dig korten på din Trello -lista så här:
[{"id": "5a4160103bfcd14994852f59", "name": "ceylan cinemagraph"}, {"id": "59e8241f6aa8662a51eb7de6", "name": "Learn GitHuB"}, {"id": "5981c19577 ":" Publish Instructible "}, {" id ":" 5a341dba7f17d235d7c5bbd1 "," name ":" SPACE PROGRAM "}]
igen kan du dra texten på dessa kort och lägga den på någon annanstans.
data.json
Formaterad JSON -data |
{ |
"notes": "data är en rad matriser (rader), kolumnnamn för rader i row_headers", |
"row_headers": [ |
"Rang", |
"Spenderad tid (sekunder)", |
"Antal personer", |
"Aktivitet", |
"Kategori", |
"Produktivitet" |
], |
"rader": [ |
[ |
1, |
1536, |
1, |
"en.0wikipedia.org", |
"Okategoriserad", |
0 |
], |
[ |
2, |
1505, |
1, |
"youtube.com", |
"Video", |
-2 |
], |
[ |
3, |
1178, |
1, |
"Öppet kontor", |
"Skrift", |
2 |
], |
[ |
4, |
709, |
1, |
"moodle.bilkent.edu.tr", |
"Allmän referens \u0026 lärande", |
2 |
], |
[ |
5, |
602, |
1, |
"google.com.tr", |
"Sök", |
2 |
], |
[ |
6, |
439, |
1, |
"reddit.com", |
"Allmänna nyheter / yttrande", |
-2 |
], |
[ |
7, |
437, |
1, |
"tr.sharelatex.com", |
"Skrift", |
2 |
], |
[ |
8, |
361, |
1, |
"yemeksepeti.com", |
"Allmän shopping", |
-2 |
], |
[ |
9, |
356, |
1, |
"Gmail", |
"E-post", |
0 |
], |
[ |
10, |
328, |
1, |
"Google Chrome", |
"Webbläsare", |
0 |
], |
[ |
11, |
207, |
1, |
"stars.bilkent.edu.tr", |
"Allmän referens \u0026 lärande", |
2 |
], |
[ |
12, |
179, |
1, |
"whatsapp", |
"Snabbmeddelande", |
-1 |
], |
visa rawdata.json värd med ❤ av GitHub
sammanfattning.json
[ |
{ |
"id": 1515657600, |
"datum": "2018-01-11", |
"produktivitetspuls": 54, |
"mycket_produktiv_procent": 34,2, |
"produktiv_procent": 10,6, |
"neutral_procent": 25,6, |
"distracting_percentage": 0,0, |
"very_distracting_percentage": 29.6, |
"all_produktiv_procent": 44,8, |
"all_distracting_percentage": 29.6, |
"uncategorized_percentage": 16.1, |
"business_procent": 6,0, |
"Communication_and_scheduling_percentage": 4.3, |
"social_networking_percentage": 0.0, |
"design_and_composition_percentage": 0,0, |
"underhållningsprocent": 15,2, |
"news_percentage": 3.3, |
"software_development_percentage": 5.4, |
"reference_and_learning_percentage": 22.8, |
"shopping_procent": 12,9, |
"utilities_percentage": 14.1, |
"totala timmar": 2,51, |
"very_productive_hours": 0,86, |
"produktiva timmar": 0,27, |
"neutrala timmar": 0,64, |
"distraherande timmar": 0,0, |
"very_distracting_hours": 0,74, |
"all_productive_hours": 1.12, |
"all_distracting_hours": 0,74, |
"okategoriserade timmar": 0,4, |
"business_hours": 0,15, |
"Communication_and_scheduling_hours": 0,11, |
"social_networking_hours": 0.0, |
"design_and_composition_hours": 0.0, |
"underhållningstimmar": 0,38, |
"news_hours": 0,08, |
"software_development_hours": 0,13, |
"reference_and_learning_hours": 0,57, |
"shoppingtimmar": 0,32, |
"utilities_hours": 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": "ingen tid", |
"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": "ingen tid", |
"design_and_composition_duration_formatted": "ingen tid", |
"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, |
"datum": "2018-01-10", |
"produktivitetspuls": 33, |
"mycket_produktiv_procent": 21,9, |
"produktiv_procent": 2.3, |
"neutral_procent": 14,4, |
"distracting_percentage": 11,0, |
"very_distracting_percentage": 50,3, |
"all_produktiv_procent": 24,2, |
"all_distracting_percentage": 61.4, |
"uncategorized_percentage": 0,3, |
"business_procent": 0,0, |
"Communication_and_scheduling_percentage": 13,5, |
"social_networking_percentage": 0.0, |
"design_and_composition_percentage": 6,3, |
"underhållningsprocent": 44,7, |
"news_percentage": 4.2, |
"software_development_percentage": 0.0, |
"reference_and_learning_percentage": 15,5, |
"shopping_procent": 0,0, |
"utilities_percentage": 15.4, |
"totala timmar": 2,24, |
"very_productive_hours": 0,49, |
"produktiva timmar": 0,05, |
"neutrala timmar": 0,32, |
"distraherande timmar": 0,25, |
"very_distracting_hours": 1.13, |
"all_productive_hours": 0,54, |
"all_distracting_hours": 1,37, |
"okategoriserade timmar": 0,01, |
"business_hours": 0.0, |
"Communication_and_scheduling_hours": 0,3, |
"social_networking_hours": 0.0, |
"design_and_composition_hours": 0,14, |
"underhållningstimmar": 1.0, |
"news_hours": 0,09, |
"software_development_hours": 0.0, |
"reference_and_learning_hours": 0.35, |
"shoppingtimmar": 0,0, |
"utilities_hours": 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": "1t 22m", |
"uncategorized_duration_formatted": "27s", |
"business_duration_formatted": "1s", |
"Communication_and_scheduling_duration_formatted": "18m 5s", |
"social_networking_duration_formatted": "ingen tid", |
"design_and_composition_duration_formatted": "8m 30s", |
"entertainment_duration_formatted": "59m 54s", |
"news_duration_formatted": "5m 39s", |
"software_development_duration_formatted": "ingen tid", |
"reference_and_learning_duration_formatted": "20m 51s", |
"shopping_duration_formatted": "ingen tid", |
"utilities_duration_formatted": "20m 39s" |
}, |
{ |
"id": 1515484800, |
"datum": "2018-01-09", |
"produktivitetspuls": 68, |
"mycket_produktiv_procent": 60,4, |
"produktiv_procent": 0,5, |
"neutral_procent": 11,0, |
"distracting_percentage": 7.1, |
"very_distracting_percentage": 21.0, |
"all_produktiv_procent": 60,9, |
"all_distracting_percentage": 28.1, |
"uncategorized_percentage": 9.1, |
"business_procent": 21,9, |
"Communication_and_scheduling_percentage": 7,2, |
"social_networking_percentage": 5.1, |
"design_and_composition_percentage": 1.2, |
"underhållningsprocent": 1,6, |
"news_percentage": 12,5, |
"software_development_percentage": 9.1, |
"reference_and_learning_percentage": 28.2, |
"shopping_procent": 2,9, |
"utilities_percentage": 1.2, |
"totala timmar": 2,78, |
"very_productive_hours": 1,68, |
"produktiva timmar": 0,01, |
"neutrala timmar": 0,31, |
"distraherande timmar": 0,2, |
"very_distracting_hours": 0,58, |
"all_productive_hours": 1,69, |
"all_distracting_hours": 0,78, |
"okategoriserade timmar": 0,25, |
"business_hours": 0,61, |
"Communication_and_scheduling_hours": 0,2, |
"social_networking_hours": 0,14, |
"design_and_composition_hours": 0,03, |
"underhållningstimmar": 0,04, |
"news_hours": 0,35, |
"software_development_hours": 0,25, |
"reference_and_learning_hours": 0,78, |
"shoppingtimmar": 0,08, |
"utilities_hours": 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": "1t 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" |
} |
] |
visa rawsummary.json värd med ❤ av GitHub
Steg 4: Prototypning
Stora priset i Raspberry Pi -tävlingen 2017
Rekommenderad:
Raspberry Pi Box med kylfläkt med CPU -temperaturindikator: 10 steg (med bilder)
Raspberry Pi Box med kylfläkt med CPU-temperaturindikator: Jag hade introducerat hallon pi (nedan RPI) CPU-temperaturindikeringskrets i det föregående projektet. Kretsen visar helt enkelt RPI 4 olika CPU-temperaturnivå enligt följande.- Grön lysdiod tänds när CPU -temperaturen ligger inom 30 ~
Hur: Installera Raspberry PI 4 Headless (VNC) med Rpi-imager och bilder: 7 steg (med bilder)
Hur: Installera Raspberry PI 4 Headless (VNC) med Rpi-imager och bilder: Jag planerar att använda denna Rapsberry PI i ett gäng roliga projekt tillbaka i min blogg. Kolla gärna in det. Jag ville börja använda mitt Raspberry PI men jag hade inte ett tangentbord eller en mus på min nya plats. Det var ett tag sedan jag installerade en hallon
Wifi -kontrollerad 12v LED -remsa med Raspberry Pi med Tasker, Ifttt -integration: 15 steg (med bilder)
Wifi -kontrollerad 12v Led Strip med Raspberry Pi Med Tasker, Ifttt Integration .: I det här projektet kommer jag att visa dig hur du styr en enkel 12v analog led strip över wifi med en hallon pi. För detta projekt behöver du: 1x Raspberry Pi (I använder en Raspberry Pi 1 Model B+) 1x RGB 12v Le
Trådlös fjärrkontroll med 2,4 GHz NRF24L01 -modul med Arduino - Nrf24l01 4 -kanals / 6 -kanals sändarmottagare för Quadcopter - Rc helikopter - RC -plan med Arduino: 5 steg (med bilder)
Trådlös fjärrkontroll med 2,4 GHz NRF24L01 -modul med Arduino | Nrf24l01 4 -kanals / 6 -kanals sändarmottagare för Quadcopter | Rc helikopter | Rc -plan med Arduino: Att driva en Rc -bil | Quadcopter | Drone | RC -plan | RC -båt, vi behöver alltid en mottagare och sändare, antag att för RC QUADCOPTER behöver vi en 6 -kanals sändare och mottagare och den typen av TX och RX är för dyr, så vi kommer att göra en på vår
Hur man tar isär en dator med enkla steg och bilder: 13 steg (med bilder)
Hur man tar isär en dator med enkla steg och bilder: Detta är en instruktion om hur man demonterar en dator. De flesta av de grundläggande komponenterna är modulära och lätt att ta bort. Det är dock viktigt att du är organiserad kring det. Detta hjälper dig att inte förlora delar, och även för att göra ommonteringen