Სარჩევი:

დროის კუბი - Arduino დროის თვალთვალის გაჯეტი: 6 ნაბიჯი
დროის კუბი - Arduino დროის თვალთვალის გაჯეტი: 6 ნაბიჯი

ვიდეო: დროის კუბი - Arduino დროის თვალთვალის გაჯეტი: 6 ნაბიჯი

ვიდეო: დროის კუბი - Arduino დროის თვალთვალის გაჯეტი: 6 ნაბიჯი
ვიდეო: რეკორდულ დროში უზარმაზარი რუბიკის კუბის 15X15 მოგვარება 2024, დეკემბერი
Anonim
დროის კუბი - Arduino Time Tracking Gadget
დროის კუბი - Arduino Time Tracking Gadget
დროის კუბი - Arduino Time Tracking Gadget
დროის კუბი - Arduino Time Tracking Gadget

მე მინდა შემოგთავაზოთ მარტივი, მაგრამ მართლაც სასარგებლო arduino პროექტი, რომ თვალყური ადევნოთ დროის მოვლენებს ზოგიერთი ჭკვიანი კუბიანი მოწყობილობის გადატრიალებით. გადაატრიალეთ იგი "მუშაობა"> "ისწავლე"> "სამუშაოები"> "დასვენება" და ის დაითვლის იმ დროს, რასაც დახარჯავ ამ საქმიანობაზე. დროის კუბი აგებულია არდუინო ნანოსა და ADXL345 აქსელერომეტრის საფუძველზე, რომელიც მოთავსებულია შესაფერისი ზომის ყუთში, რომელზეც შეგიძლიათ დახაზოთ აქტივობების სიმბოლოები ან სახელები. დღის ბოლოს შეგიძლიათ შეამოწმოთ სტატისტიკა. ვიმედოვნებ, რომ ეს მოტივაციას მისცემს მეტს "ვისწავლო".

ბაზარზე უამრავი მსგავსი პროდუქტია, როგორიცაა TimeFlip.io, Timeular.com, ZEI. თქვენ ასევე შეგიძლიათ სცადოთ ლამაზი DIY პროექტი Adafruit– დან https://learn.adafruit.com/time-tracking-cube. თუმცა მე გირჩევთ, რომ ეს ბევრად უფრო მარტივი გახადოთ. დროის მონაცემების თვალყურის დევნებისთვის თქვენ არ გჭირდებათ რაიმე wifi ან bluetooth ინტერნეტ კავშირი ღრუბლოვან სერვისებთან. Time Cube იკვებება და კომპიუტერთან არის დაკავშირებული USB კაბელით. კომპიუტერზე თქვენ უნდა გაუშვათ ჩემი java პროგრამა, რომელიც უსმენს სერიულ შეტყობინებებს arduino– დან და აჩვენებს სულ გატარებულ დროს.

პროგრამის ყველა საჭირო წყარო და არც თუ ისე დეტალური ინსტრუქცია შეგიძლიათ ნახოთ ჩემს GitHub პროექტზე:

მარაგები

1. Arduino Micro ან Nano მოსწონს:

2. ADXL345 ამაჩქარებელი:

3. მუყაოს / პლასტმასის კუბის ყუთი

4. USB კაბელი

ნაბიჯი 1: მავთულის დაფა და აქსელერომეტრი

მავთულის დაფა და აქსელერომეტრი
მავთულის დაფა და აქსელერომეტრი

ADXL345 სენსორი არის 3 ღერძიანი ამაჩქარებელი, რომელსაც შეუძლია გაზომოს აჩქარების ძალები და როდესაც სტატიკურია ასევე შეგიძლიათ წაიკითხოთ მისი ორიენტაცია. თქვენ უნდა დააკავშიროთ Arduino Nano ან Micro დაფა და ADXL345 ამაჩქარებელი, როგორც სურათზეა.

მე დეტალურად არ ავხსნი როგორ მუშაობს ADXL345 ამაჩქარებელი. ყველა საჭირო ინფორმაცია ვიპოვე ძალიან ლამაზ სტატიაში არდუინოს და პროგრამირების ამაჩქარებლების დაკავშირების შესახებ:

ნაბიჯი 2: Flash პროგრამა Arduino Nano– სთვის

Flash პროგრამა არდუინო ნანოსთვის
Flash პროგრამა არდუინო ნანოსთვის
Flash პროგრამა არდუინო ნანოსთვის
Flash პროგრამა არდუინო ნანოსთვის

ამ ეტაპზე ჩვენ უნდა ატვირთოთ პროგრამა Arduino სტუდიიდან arduino დაფაზე. Arduino nano– ს შეეძლება წაიკითხოს XYZ კოორდინატები ამაჩქარებელიდან და გაგზავნოს ისინი სერიულ პორტში მონაცემთა გარკვეული სახის პაკეტებში, როგორიცაა

თქვენ შეგიძლიათ ჩამოტვირთოთ ყველა საჭირო წყარო ჩემი GitHub პროექტის გვერდიდან (როგორც ერთი საარქივო ფაილი):

1. გახსენით გადმოწერილი zip არქივი ზოგიერთ საქაღალდეში, როგორიცაა c: / program / tcube და გახსენით ფაილი tcube / arduino / tcub / tcub.ino Arduino სტუდიაში.

2. დაუკავშირეთ arduino დაფა კომპიუტერს USB კაბელის გამოყენებით.

3. ინსტრუმენტებიდან-დაფა: აირჩიეთ "Arduino Nano" (ან სხვა დაფა, რომლის გამოყენებასაც აპირებთ).

4. თუ იყენებთ ჩინურ არდუინოს კლონებს, თქვენ უნდა აირჩიოთ ინსტრუმენტებიდან-> პროცესორი-> ATmega328P (ძველი მტვირთავი)

5. აირჩიეთ დაკავშირებული პორტი Tools-> Port -> COM3 (ჩემს შემთხვევაში)

6. ატვირთეთ პროგრამა arduino– ზე

7. იმ მომენტიდან იგი დაუყოვნებლივ გაგზავნის მონაცემთა პაკეტებს USB სერიულ პორტში.

8. იმის შესამოწმებლად, მუშაობს თუ არა ყველაფერი კარგად, შეგიძლიათ გახსნათ "სერიული მონიტორი" არდუინოს სტუდიაში. თქვენ უნდა ნახოთ პაკეტები, რომლებიც წარმოქმნიან ყოველ წამს …… (რაც ნიშნავს ამაჩქარებლის ზუსტ კოორდინატებს).

ნაბიჯი 3: დააინსტალირეთ Java Runtime Environment კომპიუტერის კლიენტის პროგრამის გასაშვებად

დააინსტალირეთ Java Runtime Environment კომპიუტერზე კლიენტის პროგრამის გასაშვებად
დააინსტალირეთ Java Runtime Environment კომპიუტერზე კლიენტის პროგრამის გასაშვებად

სანამ გავაგრძელებთ, თქვენ უნდა დარწმუნდეთ, რომ თქვენს კომპიუტერში დაინსტალირებულია Java Runtime Environment (JRE).

კლიენტის პროგრამა, რომელიც მე შევქმენი Arduino– დან შეტყობინებების მისაღებად და საერთო სტატისტიკისათვის, დაწერილია Java პროგრამირების ენაზე. და JRE საჭიროა Java პროგრამების გასაშვებად. თქვენ უნდა გქონდეთ მინიმუმ JRE8 დაინსტალირებული. მე გირჩევთ გადმოწეროთ x64 ვერსია Windows- ისთვის. გთხოვთ გადმოწეროთ ის Oracle– ის საიტიდან

ნაბიჯი 4: დააინსტალირეთ კლიენტის პროგრამა Arduino– დან კოორდინატების წასაკითხად და სტატისტიკის თვალყურის დევნება

დააინსტალირეთ კლიენტის პროგრამა Arduino– ს კოორდინატების წასაკითხად და სტატისტიკის თვალყურის დევნისთვის
დააინსტალირეთ კლიენტის პროგრამა Arduino– ს კოორდინატების წასაკითხად და სტატისტიკის თვალყურის დევნისთვის
დააინსტალირეთ კლიენტის პროგრამა Arduino– ს კოორდინატების წასაკითხად და სტატისტიკის თვალყურის დევნისთვის
დააინსტალირეთ კლიენტის პროგრამა Arduino– ს კოორდინატების წასაკითხად და სტატისტიკის თვალყურის დევნისთვის

ახლა დროა მოამზადოთ და გაუშვათ კლიენტის პროგრამა თქვენს კომპიუტერზე, რომელიც დაუკავშირდება USB პორტს დროის სტატისტიკის მოსასმენად და თვალყურის დევნისთვის.

თუ თქვენ იცნობთ ჯავას, შეგიძლიათ გადმოწეროთ და შეადგინოთ Time Cube java პროგრამის წყაროები ჩემი GitHub პროექტიდან. თუმცა სრული არქივის შიგნით, რომელიც თქვენ უკვე გადმოწერილი გაქვთ, უკვე არის შედგენილი და მზადაა გამოსაყენებლად განაცხადის არქივი tcube.zip, რომელიც უნდა გახსნათ რომელიმე საქაღალდეში (ეს შეიძლება იყოს c: / პროგრამები / tcube)

თუ გაუშვებთ ფაილს run.bat, უნდა დაიწყოს პროგრამა, რომელიც დაუყოვნებლივ შეეცდება დაუკავშირდეს Arduino დაფის მიერ გამოყენებულ აქტიურ COM პორტს (USB– თან დაკავშირებული Arduino ავტომატურად აღიარებულია Windows– ის მიერ, როგორც ვირტუალური COM პორტი).

თუ ყველაფერი სწორად არის კონფიგურირებული, მაშინვე უნდა ნახოთ დროის მრიცხველები, რომლებიც მუშაობს გარკვეული აქტივობის მიხედვით. კუბის გადაბრუნებით თქვენ უნდა შეძლოთ თვალყური ადევნოთ სხვადასხვა აქტივობას. პროგრამის ფანჯარა აჩვენებს მოვლენების ჟურნალს და თქვენ ხედავთ კავშირის შეცდომებს, რაც შეიძლება მოხდეს.

ნაბიჯი 5: აქსელერომეტრის კალიბრაცია

აქსელერომეტრის კალიბრაცია
აქსელერომეტრის კალიბრაცია

შეიძლება მოხდეს, რომ თქვენ დააკალიბროთ თქვენი დროის კუბი, რადგან თქვენი ამაჩქარებელი არ არის ორიენტირებული ზუსტად ისე, როგორც ჩემი. უბრალოდ გახსენით app.properties ფაილი და შეცვალეთ დიაპაზონი თითოეული კუბის მხარის კოორდინატებისთვის, ფაქტობრივი კოორდინატების მიხედვით, რომელსაც იხილავთ განაცხადის ჟურნალის ფანჯარაში თითოეული კუბის მხარისთვის.

ან შეგიძლიათ ექსპერიმენტი გააკეთოთ ორიენტაციით და იპოვოთ აქსელერომეტრის პოზიცია ზუსტად ისეთი, როგორიც ჩემია.

ნაბიჯი 6: დამატებითი ანალიზი

დამატებითი ანალიზი
დამატებითი ანალიზი

ჩემი java პროგრამა საკმაოდ მარტივია და უბრალოდ აჩვენებს დროს გატარებულ თითოეულ აქტივობაზე დღის განმავლობაში. თუ გსურთ გქონდეთ მეტი ანალიტიკა, შეგიძლიათ გამოიყენოთ Microsoft Excel დამატებითი ანალიზისთვის.

აპლიკაცია აწარმოებს time-log.csv ფაილს CSV ფორმატში, რომელიც შეიცავს arduino– დან გამოგზავნილ ყველა მოვლენას. მას შემდეგ, რაც მოვლენები წარმოიქმნება ყოველ წამში, შეგიძლიათ განახორციელოთ დღის დეტალური ანალიზი MS Excel– ში, რომ შექმნათ ლამაზი სქემები, გრაფიკები და დამატებითი ანალიტიკა.

იმ საქაღალდეში, რომელიც გადმოწერილი გაქვთ ჩემი GitHub პროექტიდან, შეგიძლიათ იპოვოთ log_analytics.xlsx Excel ფაილი, რომელიც აგებს ღვეზელს გრაფიკის მონაცემების გამოყენებით time-log.csv ფაილიდან. თქვენ უნდა განაახლოთ სქემა ხელით დაჭერით ღილაკზე "ყველა განახლება" Excel- ში.

გირჩევთ: