Если у вас есть кот или собака, возможно, вы захотите узнать, где они гуляют на протяжении дня. Может они гуляют за домом или ищут приключений, исследуя соседние территории? Для слежки за моим котом Конли, я сделал ошейник с отслеживанием через систему 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 library файлами из 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 Кб)