Нашийник для кота з GPS навігацією на базі мікроконтролера TinyDuino
Якщо у вас є кіт або собака, можливо, ви захотіли б дізнатися, де вони гуляють протягом дня. Можливо, вони гуляють за домом або шукають пригод, досліджуючи сусідні території? Для стеження за моїм котом Конлі я зробив нашийник з відстеженням через систему GPS. Пристрій дозволяє визначати місцезнаходження кота протягом дня, а також завантажувати дані на комп'ютер, коли він повертається додому.
Основним компонентом нашийника є мікроконтролер TinyDuino та кілька плат розширення TinyShields, які доступні для цієї платформи. TinyDuino працює аналогічно Arduino Uno і може запускати точно такі ж скетчі, однак розміром всього лише чверть. Ви можете додати функції, просто вставивши в нього плату розширення TinyShields — я використовував GPS TinyShield, щоб отримати дані місцезнаходження, а також карту пам'яті microSD Card TinyShield для запису цих даних.
Для живлення системи необхідно використовувати невелику і легку батарею ємністю, що забезпечує тривалу роботу системи, з метою отримання корисних даних. GPS та SD-карта споживають багато електроенергії, тому я використовував невелику перезаряджувану літій-іонну батарею, яка забезпечує час запису даних до 6 годин. Також для цих цілей можна використовувати велику батарею, яка забезпечить більш тривале час запису даних.
В якості корпусу для електронних компонентів пристрою я використав коробочку з-під Tic Tac, вирізану під потрібний розмір, з невеликим вирізом для вільного переміщення по нашийнику. Це дозволяє GPS модулю розташовуватися ззаду нашийника Конлі під час його прогулянки та забезпечує найкращий прийом для GPS антени.
Програмне забезпечення, що використовується для програмування системи, дуже просте: Arduino скетч запускається на TinyDuino, який отримує вихідні дані від GPS модуля і записує їх у текстовий файл на microSD карту. Вийміть microSD карту, вставте її у ваш комп'ютер, і ви можете відкрити файл у програмі, такій як Google Earth і подивитися, де гуляв ваш кіт протягом дня, разом із часовими мітками.
Крок #1: Збірка електронних блоків.
- Для того щоб було легко підключати та відключати батарею, необхідно відрізати подовжувальний кабель батареї та припаяти його до контролера TinyDuino. Відріжте кабель довжиною близько 1 дюйма, залиште на ньому роз'єм типу «мама» та оголите кожен провід на ¼ дюйма.
- Вставте і припаяйте провід у отвір з міткою "+” на TinyDuino, а чорний провід припаяйте в отвір “–“. Використовуйте кусачки, щоб обрізати зайві проводи, що виступають з отворів.
- Вставте карту microSD TinyShield у контролер TinyDuino. Потім вставте GPS TinyShield зверху microSD TinyShield.
- Скрепіть плати разом, використовуючи кріпильні гвинти: вставте пластикові стійки між платами, де розташовані отвори під гвинти (рекомендується використовувати пінцет), потім вставте гвинти в отвори. Затягніть пальцями гайки на гвинтах. Ви можете обрізати виступаючі частини гвинтів, якщо вони трохи виступають назовні.
Крок #2: Програмування та тестування електронних блоків.
- Використовуйте комп'ютер для форматування microSD карти, якщо вона ще не була відформатована раніше. Вставте microSD-карту в microSD-адаптер TinyShield.
- Вставте USB TinyShield з комплекту зверху набору плат (зверху GPS TinyShield). Підключіть USB TinyShield до вашого комп'ютера за допомогою USB кабелю.
- Завантажте скетч TinyDuino GPS Data Logger [GPS_datalogger.ino] у контролер TinyDuino, використовуючи Arduino IDE. Потім відкрийте вбудований монітор Serial Monitor в Arduino IDE. Ви повинні побачити безліч даних, потім почне з'являтися дивний текст. Це дані від GPS модуля (в форматі NMEA). У бібліотеці Arduino SoftwareSerial Library (під ArduinolibrariesSoftwareSerial) файл SoftwareSerial.h вимагає невеликих змін, щоб можна було використовувати послідовний буфер більшого розміру. Замініть файли бібліотеки Software Serial файлами з zip архіву SoftwareSerial.zip.
- Якщо ви побачите будь-які повідомлення про помилку при запису на SD-карту, перевірте, що карта правильно встановлена та відформатована. Світлодіодний індикатор на процесорній платі TinyDuino також буде мигати при записі на SD-карту, приблизно один раз на секунду.
- Вийміть USB кабель з USB TinyShield. Вийміть USB TinyShield зверху набору плат (це з'єднання не потрібне, якщо вам не потрібно підключатися до комп'ютера).
Крок #3: Виготовлення корпусу.
- Опорожніть коробочку Tic Tac стандартного розміру. Потім використовуйте невеликий канцелярський ніж, щоб відрізати етикетку і звільнити верхню білу кришку, потім зніміть її.
- Далі обріжте нижню частину до потрібного розміру: відміряйте 1-1/2 дюйма від нижньої частини коробочки і обріжте решту, використовуючи канцелярський ніж.
- Проріжте невеликі прорізи на бічних сторонах коробочки біля стінок. Через ці прорізи можна буде пропустити нашийник.
Крок #4: Остаточна збірка.
- Переконайтеся, що батарея повністю заряджена. Для заряду батареї використовуйте зарядний пристрій для літій-іонних батарей. Потім вставте microSD-карту в microSD-адаптер TinyShield.
- Вставте батарею в систему. Світлодіодний індикатор на процесорній платі TinyDuino почне мигати один раз на секунду (це вказує на те, що GPS дані записуються на microSD карту).
- Вставте електронні компоненти та батарею в корпус з Tic Tac і надягніть кришку — TinyDuino буде розташовуватися поряд з батареєю. Невеликий прямокутний компонент у верхній правій частині GPS TinyShield – це антена; помістіть її на далеку сторону батареї.
Крок #5: Надягання нашийника на кота!
Для отримання найкращих результатів, корпус пристрою повинен розташовуватися ззаду нашийника кота. GPS антена повинна бути направлена вгору. Також тримайте будь-які металеві частини подалі від антени, оскільки вони можуть впливати на GPS прийом. Дайте вашому коту погуляти цілий день, і коли він повернеться назад додому, час подивитися, де ж він був увесь цей день.
Крок #6: Перегляд зібраних даних
- Після повернення кота зніміть нашийник, відключіть батарею та вийміть microSD-карту. Вставте microSD-карту у ваш комп'ютер. На карті має бути файл gps.nmea.
- ПРИМІТКА: Якщо на вашому комп'ютері немає зчитувача SD-карт, тоді ви можете завантажити Arduino-скетч, який дозволить зчитувати файл по USB порту.
- Існує безліч програм, які читають формат файлів .nmea — одна з найкращих і безкоштовних це Google Earth. Для використання відкрийте програму Google Earth на вашому комп'ютері, далі виберіть Tools —>GPS (Інструменти —>GPS). Під вкладкою Device (Пристрій), виберіть “Import from File” (Імпорт з файлу). У секції import і output (імпорт і вихід), переконайтеся, що вибрані всі опції. Щелкніть на Import (Імпорт) і виберіть файл gps.nmea. Google Earth буде відображати дані як "дорожку," яка вказує, де ваш кіт гуляв протягом дня, разом із часовими мітками.
Прикріплені файли:
- SoftwareSerial.zip (6 Кб)
- GPS_datalogger.ino (2 Кб)