İçindekiler:
Video: Verimlilik Takipçisi - Raspberry Pi Tarafından Desteklenir: 9 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:21
Productivity Tracker sihirli bir aynadır, ancak zamanı, hava durumunu ve motive edici bir alıntıyı göstermek yerine 4 şeyi gösterir;
O gün için bilgisayarınızda ve telefonunuzda üretken materyallere harcadığınız zamanın yüzdesi.(RescueTime)
Trello'dan yapılacaklar listeniz
Kullandığınız program-uygulamaların kategorileri ile birlikte ne kadar zaman harcadığınızı dünkü kullanıma göre gösteren bir radar grafiği.(RescueTime)
Haftalık genel bakış.(RescueTime)
Üretken malzemeye harcadığınız zamanın yüzdesi %50'nin üzerindeyse, LED'ler parlak yeşil bir renk gösterecektir. %50'nin altındaysa, daha üretken olmanız gerektiğini gösteren kırmızı bir renk gösterecektir! Kendiniz de bir hedef belirleyebilirsiniz.
anahat
İlk adımda, verimlilik izleyicinin arkasındaki fikri açıklayacağım. Daha sonra, size iki farklı araç ve parça listesi vereceğim, böylece tam projeyi veya lehimleme becerileri gerektirmeyen temel bir sürümü (LED'leri içermez) oluşturabilirsiniz. Daha sonra, kendi prototipinizi nasıl modelleyeceğinize dair bir fikriniz olması için projemin versiyonunu nasıl prototiplediğimi size göstereceğim. Ayrıca, kodu kendi ihtiyaçlarınıza göre özelleştirebilmeniz için kod bölümünde ayrıntılara gireceğim. Sonunda, bu derleme sırasında karşılaştığım sorunlardan yola çıkarak size bir Sorun Giderme kılavuzu vereceğim. Ve listeyi sorularınızla genişletin.
Bu talimatın amacı sadece size bir yemek kitabı vermek değildir. Size bu projeyi nasıl kurduğumu göstereceğim ve size açık uçlu sorular vereceğim, böylece kendi fikirlerinizi ekleyebilir ve bu projeyi daha da ileriye taşıyabilirsiniz. İşiniz bittiğinde yapınızı paylaşmanızı şiddetle tavsiye ediyorum! Başlayalım.
Adım 1: Fikir
Aylardır bu Eğitilebilir Yazıyı yazmak niyetindeyim. Ama "Erteleme" lakaplı eski bir arkadaşım izin vermedi. Erteleme, bir görevi veya bir dizi görevi ertelemek veya ertelemek ve bu görevleri YouTube'un karanlık derinliklerinden video izleyerek zamanı doldurmak yerine yapmaktır.
Bir gün ertelemeyle ilgili bir makale okurken, sorunumda bana yardımcı olacak birden çok uygulama/programla karşılaştım, bir görev yönetimi uygulaması olarak Trello ve bir zaman yönetimi uygulaması olarak RescueTime. Her ikisi de en azından bir süre için ihtiyaçlarım için mükemmel çalıştı. Bir süre sonra uygulamaları kontrol etmeyi tamamen bıraktım ve bildirimleri görmezden geldim. İşte o zaman bu proje aklıma geldi. Uygulamalardan gelen verileri duvarıma asılı bir aynada görüntülerdim. Bu şekilde sorumluluklarımdan kaçış yoktu.
Projem için çizdiğim ilk taslak oldukça basitti. Üretken/Dikkati dağıtan çalışma yüzdemi görüntülemek için RescueTime API'sini kullanırdım. Ve gün için yapılacaklar listemi görüntülemek için Trello API'sini kullanın. Ancak bir süre sonra, sonraki adımlarda ayrıntılı olarak alacağım daha fazla özellik ekledim.
2. Adım: Araçlar ve Parçalar
Not: Bu, derlemem sırasında kullandığım araçların bir listesidir, derlemeniz için aynı olmaları gerekmez!
Baz için:
4 Metre 7x15cm playwood - 6$ - Ekran boyutunuza göre değişir
30x40cm tek taraflı ayna - ekran boyutunuza bağlıdır
25x35cm Samsung monitör - 15$ - Bit pazarında bulundu. herhangi bir monitör yapar
Raspberry Pi 3 Model B- 35$ - Raspberry pi 2 de gayet iyi ama bir wifi modülüne ihtiyacınız olacak
HDMI kablosu - 2$
Led Yıldırım için:
200cm smd5050 RGB Led şerit- 4$ - Daha sonra smd5050 olmalı…
- Üç N-kanallı MOSFET (ör. IRLZ34N) - 2$
- 12V-2A güç adaptörü - 3.15$
- Prototipleme PCB'si - 1$
Aletler:
- Ağaç testeresi
- Ahşap tutkalı
- Havya (LED aydınlatma için)
Adım 3: Kod
Bu adım 3 parça olacak, bir önceki adımda listelenen tüm parçalara ihtiyacınız yok. Prototipleme aşaması için bir Raspberry Pi ve bu proje için kullanacağınız monitör yeterli olacaktır.
Raspberry Pi'nizi ayarlama
Ahududu Pi'nizi henüz ayarlamadıysanız, devam edin ve burada yapın. Bu yapı için, web sunucusu ve PHP-LED denetleyicisi için Apache'yi yüklemeniz gerekir.
Apache'yi kurmak için bu resmi kılavuzu izleyin.
PHP-LED denetleyicisini kurmak için Christian Nikkanen'in bu kılavuzu izleyin
Şimdi proje deposundan index.php dosyasını Raspberry Pi'nize indirin ve şu yola koyun:
/var/www/html/
Linux Terminalinde dosya taşıma konusunda bilginiz yoksa, başlamak için bu kılavuza bakabilirsiniz.
Kodu Özelleştirin
Not: Farklı bir monitör kullanıyorsanız, bu bölüm biraz HTML/CSS bilgisi gerektirir.
Özelleştirme, bu derlemenin kalbi olan index.php dosyasında yapılacaktır. Şimdi devam edin ve henüz yapmadıysanız monitörünüzü Raspberry Pi'nize bağlayın.
Şimdi index.php dosyasını açmaya çalışırsanız, işe yaramaz çünkü önce koddaki API anahtarlarını doldurmanız gerekir, bunun için RescueTime web sitesine gidin ve bir hesap açın. Ardından geliştirici bölümüne gidin ve Bu Anahtarı Etkinleştir'e basarak bir API anahtarı oluşturun. API anahtarınızı bir yere yazın.
Aynısını Trello API anahtarınız için yapın, Bir hesap açın ve bir API anahtarı oluşturmak için geliştirici portalına gidin.
Ardından, /var/www/html/ içine koyduğunuz index.php dosyasını favori metin düzenleyicinizde açın ve [API_KEY] yerine RescueTime ve Trello'dan aldığınız kendi API anahtarınızla değiştirin. [list_numarası], yapılacaklar listeniz Trello için kullandığınız liste numarasıdır. Bu numarayı almak için önce Trello'da yeni bir liste oluşturun ve "Yapılacaklar" olarak adlandırın, bu yapılacaklar listeniz için kullanacağınız liste olacak ve aynada görünecektir.
Ardından, adres çubuğunuzdaki şuna benzeyen URL'yi alın:
trello.com/b/3hS6yyLo/board-name
ve buna şu şekilde.json ekleyin:
trello.com/b/3hS6yyLo/board-name.json
ve enter tuşuna basın, ardından ekranda bir kod karmaşası göreceksiniz. Bu karışıklık üzerinde liste adınızı ''Yapılacaklar'' bulmaya çalışın. Şuna benzemelidir: {"name":"Yapılacaklar", "id":"5981c123cd1b23f13907cd18"}, Bu kimlik sizin liste kimliğinizdir. bu numarayı index.php dosyasında [list_number] olarak ayarlayın.
Şimdi tarayıcınızı açın ve adres çubuğuna localhost yazın ve enter tuşuna basın. Verilerinizin grafiklerde görüntülendiğini görmelisiniz.
Not: Kullandığınız monitörün çözünürlüğü nedeniyle grafiklerin yerleşimleri farklı olabilir. Kodun CSS bölümündeki öğelerin genişliğini, yüksekliğini ve konumunu düzenleyebilirsiniz.
Şimdi yapılması gereken tek şey monitörün etrafına bir kutu tasarlamak ve LED'leri bağlamak.
Not: Eğer API'lerin detaylarıyla ilgilenmiyorsanız bir sonraki adıma geçebilirsiniz. API bölümünde, tüm programın nasıl çalıştığını ve API'lerden veri aldığını ayrıntılı olarak anlatacağım.
API'ler (ayrıntılı olarak)
Bu projenin kalbi İki API'dir;
- Trello API'si
- RescueTime API'si
Belgelerde ayrıntılı bilgiler mevcut olsa da, bu projenin API'den hangi verileri kullandığını açıklayacağım.
Zaman yönetimi kısmında, o gün için zaman bilgisini alan RescueTime API çağrısı, "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"
nerede, date('Y-m-d') geçerli tarihtir
perspektif=rank, bu durumda harcanan zamanın çoğu anlamına gelen "rank" veri sıralama türüdür
Bu çağrı şuna benzeyen JSON formatında bir dosya verecektir:(bu adımın sonunda data.json'a bakın)
Bu dosyadan kullandığımız veriler "Harcanan Zaman (saniye)" ve -2 ile 2 arasında değerlere sahip "Verimlilik", -2 dikkat dağıtıcı ve 2 üretkendir. Bu verilerle verimlilik puanı için 100'ün üzerinde bir değer üretebiliriz.
RescueTime'a başka bir API çağrısı, "https://www.rescuetime.com/anapi/daily_summary_feed?key=[API_KEY]"
Bu, size verilerinizin haftalık bir özetini verir ve şuna benzer:(bu adımın sonundaki özet.json'a bakın.) Bu verileri, size haftanın bir özetini veren haftalık özet grafiğini oluşturmak için kullandım.
Trello API çağrısı, "https://api.trello.com/1/lists/[list_number]/cards?fields=name&key=[API_KEY]&token=[Jeton]"
Bu size Trello listenizdeki kartları şu şekilde verecektir:
[{"id":"5a4160103bfcd14994852f59", "name":"ceylan Cinemagraph"}, {"id":"59e8241f6aa8662a51eb7de6", "name":"GitHuB Öğren"}, {"id":"5981c19577c732f826ad8025" ":"Yayınlama Talimatı"}, {"id":"5a341dba7f17d235d7c5bbd1", "name":"UZAY PROGRAMI"}]
yine o kartlardaki metni çekip başka bir yere koyabilirsiniz.
veri.json
Biçimlendirilmiş JSON Verileri |
{ |
"notes":"veri, bir dizi (satır) dizisidir, satır_başlıklarındaki satırlar için sütun adlarıdır", |
"row_headers":[ |
"Rütbe", |
"Harcanan Zaman (saniye)", |
"İnsanların sayısı", |
"Aktivite", |
"Kategori", |
"Verimlilik" |
], |
"satırlar":[ |
[ |
1, |
1536, |
1, |
"tr.0wikipedia.org", |
"Kategorize edilmemiş", |
0 |
], |
[ |
2, |
1505, |
1, |
"youtube.com", |
"Video", |
-2 |
], |
[ |
3, |
1178, |
1, |
"Açık ofis", |
"Yazı", |
2 |
], |
[ |
4, |
709, |
1, |
"moodle.bilkent.edu.tr", |
"Genel Referans \u0026 Öğrenme", |
2 |
], |
[ |
5, |
602, |
1, |
"google.com.tr", |
"Arama", |
2 |
], |
[ |
6, |
439, |
1, |
"reddit.com", |
"Genel Haberler \u0026 Görüş", |
-2 |
], |
[ |
7, |
437, |
1, |
"tr.sharelatex.com", |
"Yazı", |
2 |
], |
[ |
8, |
361, |
1, |
"yemeksepeti.com", |
"Genel Alışveriş", |
-2 |
], |
[ |
9, |
356, |
1, |
"Gmail", |
"E-posta", |
0 |
], |
[ |
10, |
328, |
1, |
"Google Chrome", |
"Tarayıcılar", |
0 |
], |
[ |
11, |
207, |
1, |
"stars.bilkent.edu.tr", |
"Genel Referans \u0026 Öğrenme", |
2 |
], |
[ |
12, |
179, |
1, |
"Naber", |
"Anında mesaj", |
-1 |
], |
GitHub tarafından ❤ ile barındırılan rawdata.json'u görüntüleyin
özet.json
[ |
{ |
"kimlik":1515657600, |
"tarih":"2018-01-11", |
"üretkenlik_pulse":54, |
"çok_üretken_yüzde":34,2, |
"üretken_yüzde":10.6, |
"nötr_yüzde":25,6, |
"dikkat dağıtıcı_yüzde":0.0, |
"very_distracting_percentage":29.6, |
"all_productive_percentage":44,8, |
"all_distracting_percentage":29.6, |
"uncategorized_percentage":16.1, |
"iş_yüzdesi":6.0, |
"communication_and_scheduling_percentage":4.3, |
"social_networking_percentage":0.0, |
"design_and_composition_percentage":0.0, |
"eğlence_yüzdesi":15.2, |
"haber_yüzdesi":3.3, |
"software_development_percentage":5.4, |
"reference_and_learning_percentage":22,8, |
"alışveriş_yüzdesi":12.9, |
"yardımcı hizmetler_yüzdesi":14.1, |
"toplam_saat":2.51, |
"very_productive_hours":0.86, |
"üretken_saat":0.27, |
"nötr_saat":0.64, |
"dikkat dağıtan_saatler":0.0, |
"very_distracting_hours":0.74, |
"all_productive_hours":1.12, |
"all_distracting_hours":0.74, |
"uncategorized_hours":0.4, |
"iş_saatleri":0.15, |
"communication_and_scheduling_hours":0.11, |
"social_networking_hours":0.0, |
"design_and_composition_hours":0.0, |
"eğlence_saatleri":0.38, |
"haber_saatleri":0.08, |
"software_development_hours":0.13, |
"reference_and_learning_hours":0.57, |
"alışveriş_saatleri":0.32, |
"utilities_hours":0.35, |
"total_duration_formatted":"2sa 30dk", |
"very_productive_duration_formatted":"51dk 26sn", |
"productive_duration_formatted":"15m 56sn", |
"neutral_duration_formatted":"38dk 34sn", |
"distracting_duration_formatted":"zaman yok", |
"very_distracting_duration_formatted":"44m 30s", |
"all_productive_duration_formatted":"1sa 7dk", |
"all_distracting_duration_formatted":"44m 30s", |
"uncategorized_duration_formatted":"24dk 11s", |
"business_duration_formatted":"9dk 6sn", |
"communication_and_scheduling_duration_formatted":"6dk 26sn", |
"social_networking_duration_formatted":"zaman yok", |
"design_and_composition_duration_formatted":"zaman yok", |
"entertainment_duration_formatted":"22dk 49sn", |
"news_duration_formatted":"4dk 55sn", |
"software_development_duration_formatted":"8m 3s", |
"reference_and_learning_duration_formatted":"34m 17s", |
"shopping_duration_formatted":"19dk 22sn", |
"utilities_duration_formatted":"21dk 17sn" |
}, |
{ |
"kimlik": 1515571200, |
"tarih":"2018-01-10", |
"üretkenlik_pulse":33, |
"çok_üretken_yüzde":21.9, |
"üretken_yüzde":2.3, |
"nötr_yüzde":14.4, |
"dikkat dağıtıcı_yüzde":11.0, |
"çok_distracting_percentage":50,3, |
"all_productive_percentage":24.2, |
"all_distracting_percentage":61,4, |
"kategorize edilmemiş_yüzde":0.3, |
"iş_yüzdesi":0.0, |
"communication_and_scheduling_percentage":13.5, |
"social_networking_percentage":0.0, |
"design_and_composition_percentage":6.3, |
"eğlence_yüzdesi":44.7, |
"haber_yüzdesi":4.2, |
"software_development_percentage":0.0, |
"reference_and_learning_percentage":15.5, |
"alışveriş_yüzdesi":0.0, |
"utilities_percentage":15.4, |
"toplam_saat":2.24, |
"very_productive_hours":0.49, |
"üretken_saat":0.05, |
"nötr_saat":0.32, |
"dikkat dağıtan_saatler":0,25, |
"very_distracting_hours":1.13, |
"all_productive_hours":0.54, |
"all_distracting_hours":1.37, |
"uncategorized_hours":0.01, |
"iş_saatleri":0.0, |
"communication_and_scheduling_hours":0.3, |
"social_networking_hours":0.0, |
"design_and_composition_hours":0.14, |
"eğlence_saatleri":1.0, |
"haber_saatleri":0.09, |
"software_development_hours":0.0, |
"reference_and_learning_hours":0.35, |
"alışveriş_saatleri":0.0, |
"utilities_hours":0.34, |
"total_duration_formatted":"2sa 14dk", |
"very_productive_duration_formatted":"29m 22s", |
"productive_duration_formatted":"3dk 8sn", |
"neutral_duration_formatted":"19dk 18sn", |
"distracting_duration_formatted":"14dk 48sn", |
"very_distracting_duration_formatted":"1sa 7dk", |
"all_productive_duration_formatted":"32m 30s", |
"all_distracting_duration_formatted":"1sa 22dk", |
"uncategorized_duration_formatted":"27s", |
"business_duration_formatted":"1s", |
"communication_and_scheduling_duration_formatted":"18m 5s", |
"social_networking_duration_formatted":"zaman yok", |
"design_and_composition_duration_formatted":"8m 30s", |
"entertainment_duration_formatted":"59dk 54sn", |
"news_duration_formatted":"5dk 39sn", |
"software_development_duration_formatted":"zaman yok", |
"reference_and_learning_duration_formatted":"20m 51s", |
"shopping_duration_formatted":"zaman yok", |
"utilities_duration_formatted":"20m 39sn" |
}, |
{ |
"kimlik":1155484800, |
"tarih":"2018-01-09", |
"üretkenlik_pulse":68, |
"çok_üretken_yüzde":60,4, |
"üretken_yüzde":0.5, |
"nötr_yüzde":11.0, |
"dikkat dağıtıcı_yüzde":7.1, |
"very_distracting_percentage":21.0, |
"all_productive_percentage":60,9, |
"all_distracting_percentage":28.1, |
"kategorize edilmemiş_yüzde":9.1, |
"iş_yüzdesi":21,9, |
"communication_and_scheduling_percentage":7.2, |
"social_networking_percentage":5.1, |
"design_and_composition_percentage":1.2, |
"eğlence_yüzdesi":1.6, |
"haber_yüzdesi":12,5, |
"software_development_percentage":9.1, |
"reference_and_learning_percentage":28.2, |
"alışveriş_yüzdesi":2.9, |
"utilities_percentage":1.2, |
"toplam_saat":2.78, |
"very_productive_hours":1.68, |
"üretken_saatler":0.01, |
"nötr_saat":0.31, |
"dikkat dağıtan_saatler":0.2, |
"very_distracting_hours":0.58, |
"all_productive_hours":1.69, |
"all_distracting_hours":0,78, |
"uncategorized_hours":0.25, |
"business_hours":0.61, |
"communication_and_scheduling_hours":0.2, |
"social_networking_hours":0.14, |
"design_and_composition_hours":0.03, |
"eğlence_saatleri":0.04, |
"haber_saatleri":0.35, |
"software_development_hours":0,25, |
"reference_and_learning_hours":0.78, |
"shopping_hours":0.08, |
"utilities_hours":0.03, |
"total_duration_formatted":"2sa 46dk", |
"very_productive_duration_formatted":"1sa 40dk", |
"productive_duration_formatted":"47s", |
"neutral_duration_formatted":"18dk 23sn", |
"distracting_duration_formatted":"11dk 49sn", |
"very_distracting_duration_formatted":"34dk 57sn", |
"all_productive_duration_formatted":"1sa 41dk", |
"all_distracting_duration_formatted":"46dk 46sn", |
"uncategorized_duration_formatted":"15dk 7sn", |
"business_duration_formatted":"36dk 26sn", |
"communication_and_scheduling_duration_formatted":"11m 59s", |
"social_networking_duration_formatted":"8dk 28sn", |
"design_and_composition_duration_formatted":"2dk 4s", |
"entertainment_duration_formatted":"2dk 39sn", |
"news_duration_formatted":"20dk 49sn", |
"software_development_duration_formatted":"15m 5s", |
"reference_and_learning_duration_formatted":"46m 59s", |
"shopping_duration_formatted":"4dk 51sn", |
"utilities_duration_formatted":"2dk 3sn" |
} |
] |
GitHub tarafından ❤ ile barındırılan rawsummary.json'u görüntüleyin
Adım 4: Prototipleme
Raspberry Pi Yarışması 2017'de Büyük Ödül
Önerilen:
Verimlilik Arayışında: 9 Adım
Verimlilik Arayışında.: "DPAK" Size.Genellikle, elektronik tasarımcılığına yeni başlayanlar veya bir hobici için baskılı devre kartı veya bir devre tahtasında bir voltaj regülatörüne ihtiyacımız var. Ne yazık ki basitlikten dolayı, doğrusal bir voltaj regülatörü kullanıyoruz, ancak
Laminasyon Yardımı - Arthur Demeyer ve Arno Weymaere tarafından: 23 Adım (Resimlerle)
Laminasyon Yardımı - Arthur Demeyer ve Arno Weymaere.: Bu ürün, kitapları daha rahat ve verimli bir şekilde lamine etmenize yardımcı olmak için tasarlanmıştır. Bir kitabın kenarlarını laminasyon yapmak çok zor olabilir. Bu cihazla artık sorun değil
Arduino Kullanarak Çizgi Takipçisi Nasıl Yapılır: 8 Adım (Resimlerle)
Arduino Kullanarak Çizgi Takipçisi Nasıl Yapılır: Robotik ile başlıyorsanız, yeni başlayanların yaptığı ilk projelerden biri çizgi takipçisi içerir. Normalde siyah olan ve arka planın aksine bir çizgi boyunca ilerleme özelliğine sahip özel bir oyuncak arabadır.Yıldız alalım
Odroid XU4 Tarafından Desteklenen N64 Öykünme Sistemi: 8 Adım (Resimlerle)
Odroid XU4 Tarafından Desteklenen N64 Öykünme Sistemi: Bu, Nintendo 64'ün kabuğuna monte edilmiş bir Odroid Xu4 bilgisayardır. Birkaç yıl önce içine bir Raspberry Pi 3 kurmak amacıyla ölü bir N64 aldım, ama öyle değildi. n64'ü düzgün şekilde taklit edecek kadar güçlü. Odroid Xu4
TA-ZON-BOT (Çizgi Takipçisi): 3 Adım (Resimlerle)
TA-ZON-BOT (Çizgi Takipçisi): TA-ZON-BOTEl tazón siguelineasHemos realizado este robot siguelineas con la ayuda de los nuestros mezunları, (lütfen minimakers). OSHWDEN de A Coruña.https://oshwdem.org/2017/06/o