Съдържание:

Time Cube - Притурка за проследяване на времето на Arduino: 6 стъпки
Time Cube - Притурка за проследяване на времето на Arduino: 6 стъпки

Видео: Time Cube - Притурка за проследяване на времето на Arduino: 6 стъпки

Видео: Time Cube - Притурка за проследяване на времето на Arduino: 6 стъпки
Видео: привет курица😂😂😂 2024, Ноември
Anonim
Time Cube - Притурка за проследяване на времето на Arduino
Time Cube - Притурка за проследяване на времето на Arduino
Time Cube - Притурка за проследяване на времето на Arduino
Time Cube - Притурка за проследяване на времето на Arduino

Бих искал да ви предложа прост, но наистина полезен проект arduino за проследяване на събития във времето, като обърнете някоя притурка с интелигентен куб. Обърнете го на "Работа"> "Научете"> "Задачи"> "Почивка" и той ще отчита времето, което прекарвате в тази дейност. Time cube е изграден на базата на Arduino Nano и 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. Цялата необходима информация, която намерих в много хубава статия за свързване на акселерометри към arduino и програмиране:

Стъпка 2: Програма за Flash към Arduino Nano

Flash програма за Arduino Nano
Flash програма за Arduino Nano
Flash програма за Arduino Nano
Flash програма за Arduino Nano

В тази стъпка трябва да качим програма от студио Arduino на дъската на arduino. Arduino nano ще може да чете XYZ координати от акселерометъра и да ги изпраща до серийния порт в някакъв вид пакети данни като

Можете да изтеглите всички необходими източници от моята страница на проекта GitHub (като единичен архивен файл):

1. Разопаковайте изтегления zip архив в някоя папка като c: / program / tcube и отворете файла tcube / arduino / tcub / tcub.ino в Arduino studio.

2. Свържете arduino платката към компютъра с помощта на USB кабел.

3. От Tools-> Board: изберете „Arduino Nano“(или друга дъска, която планирате да използвате).

4. Ако използвате някои китайски клонове arduino, тогава трябва да изберете от Инструменти-> Процесор-> ATmega328P (Стар Loader)

5. Изберете свързан порт от Инструменти-> Порт -> COM3 (в моя случай)

6. Качете програма в arduino

7. От този момент той незабавно ще изпраща пакети данни към USB сериен порт.

8. За да проверите дали всичко работи добре, можете да отворите „Serial Monitor“в Arduino Studio. Трябва да видите пакети, които генерират всяка секунда като … (което означава действителни координати на акселерометъра).

Стъпка 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 порт, за да слуша и следи статистиката на времето.

Ако сте запознати с Java, можете да изтеглите и компилирате източници на java приложението Time Cube от моя проект GitHub. Въпреки това в пълния архив на проекта, който вече сте изтеглили, вече е компилиран и готов за използване архив на приложения tcube.zip, който трябва да разопаковате в някаква папка (може да бъде c: / programs / tcube)

Ако стартирате файла run.bat, той трябва да стартира приложението, което незабавно ще се опита да започне връзка с някакъв активен COM порт, използван от платката Arduino (Arduino, свързан към USB, се разпознава автоматично от Windows като някакъв виртуален COM порт).

Ако всичко е конфигурирано правилно, веднага трябва да видите броячи на време, работещи според някаква дейност. И като обърнете куба, трябва да можете да проследявате различни дейности. Прозорецът на приложението показва дневник на събитията и можете да видите всички грешки при връзката, които могат да се случат.

Стъпка 5: Калибриране на акселерометъра

Калибриране на акселерометъра
Калибриране на акселерометъра

Може да се случи да калибрирате своя Time Cube, защото вашият акселерометър не е ориентиран точно като моя. Просто отворете файла app.properties и редактирайте диапазоните за координати на всяка страна на куба според действителните координати, които ще видите в прозореца на дневника на приложението за всяка страна на куба.

Или можете да експериментирате с ориентация и да намерите позицията на акселерометъра точно като моята.

Стъпка 6: Допълнителен анализ

Допълнителен анализ
Допълнителен анализ

Моето приложение за java е доста просто и просто показва времето, прекарано за всяка дейност през деня. Ако искате да имате повече анализи, можете да използвате Microsoft Excel за допълнителен анализ.

Приложението произвежда файл time-log.csv във CSV формат, който съдържа всички събития, изпратени от arduino. Тъй като събития се генерират всяка секунда, можете да извършвате подробен анализ на деня в MS Excel, за да изградите хубави диаграми, графики и допълнителни анализи.

В папката, която сте изтеглили от моя проект GitHub, можете да намерите log_analytics.xlsx excel файл, който изгражда кръгова диаграма, използвайки данни от файла time-log.csv. Трябва да актуализирате диаграмата ръчно, като натиснете бутона „Опресняване на всички“в Excel.

Препоръчано: