- Компоненты, необходимые для системы слежения за транспортными средствами на базе Arduino:
- Как можно использовать модуль GSM для отслеживания местоположения:
- Пояснение схемы для взаимодействия GSM и GPS с Arduino:
- Система слежения за транспортными средствами на основе GSM и GPS с использованием Arduino - Работает
- Интерфейс GAM и GPS с кодом Arduino для отслеживания местоположения автомобиля
Системы отслеживания транспортных средств очень часто используются в приложениях для управления автопарком и отслеживания активов. Сегодня эти системы могут не только отслеживать местоположение транспортного средства, но также сообщать о скорости и даже управлять им удаленно. В общем, слежение за транспортными средствами - это процесс, в котором мы отслеживаем местоположение транспортного средства в форме широты и долготы (координаты GPS). Координаты GPS - это значение местоположения. Эта система очень эффективна для наружного применения. Такой проект системы слежения за транспортными средствами широко используется для отслеживания такси / такси, угнанных транспортных средств, школьных / студенческих автобусов и т. Д. В этом проекте мы идем на шаг вперед, создавая систему слежения за транспортными средствами на основе GSM и GPS с использованием Arduino. Эта система слежения за транспортными средствами также может использоваться для отслеживать автомобиль с помощью GPS и GSM, а также может использоваться в качестве системы оповещения об обнаружении аварий, системы слежения за солдатами и многих других, просто внеся несколько изменений в оборудование и программное обеспечение.
Ранее мы также создали много других типов систем слежения за транспортными средствами, вы можете проверить их, если хотите.
- GPS-слежение за автомобилем и оповещение об авариях с использованием Arduino
- Отслеживание транспортных средств с помощью Google Maps с использованием Arduino и ESP8266
- GPS-слежение за автомобилем и оповещение об авариях с помощью MSP430
- GPS-слежение за транспортными средствами на основе LoRa с использованием Arduino
- Отслеживание местоположения без GPS с использованием SIM800 и Arduino
Компоненты, необходимые для системы слежения за транспортными средствами на базе Arduino:
Чтобы создать простую систему слежения за транспортными средствами на базе Arduino, нам потребуются следующие компоненты.
- Arduino UNO
- GSM модуль
- Модуль GPS
- ЖК-дисплей 16x2
- Источник питания
- Подключение проводов
- 10 K POT
Как можно использовать модуль GSM для отслеживания местоположения:
GPS расшифровывается как Global Positioning System и используется для определения широты и долготы любого места на Земле с точным временем UTC (всемирное координированное время). Модуль GPS является основным компонентом в нашем проекте системы слежения за транспортными средствами. Это устройство каждую секунду получает координаты со спутника с указанием времени и даты.
Модуль GPS отправляет данные, связанные с отслеживанием местоположения, в режиме реального времени, и он отправляет так много данных в формате NMEA (см. Снимок экрана ниже). Формат NMEA состоит из нескольких предложений, в которых нам нужно всего одно предложение. Это предложение начинается с $ GPGGA и содержит координаты, время и другую полезную информацию. Этот GPGGA называется данными о фиксации глобальной системы позиционирования. Узнайте больше о чтении данных GPS и их строк здесь.
Мы можем извлечь координату из строки $ GPGGA, посчитав запятые в строке. Предположим, вы нашли строку $ GPGGA и сохранили ее в массиве, тогда широту можно найти после двух запятых, а долготу можно найти после четырех запятых. Теперь эти широту и долготу можно поместить в другие массивы.
Ниже приведена строка $ GPGGA с ее описанием:
$ GPGGA, 104534.000,7791.0381, N, 06727.4434, E, 1,08,0.9 510.4, M, 43.9, M,, * 47
$ GPGGA, HHMMSS.SSS, широта, N, долгота, E, FQ, NOS, HDP, высота, M, высота, M, данные контрольной суммы
Идентификатор |
Описание |
$ GPGGA |
Данные исправления глобальной системы позиционирования |
ЧЧММСС.ССС |
Время в формате часов, минут, секунд и миллисекунд. |
Широта |
Широта (координата) |
N |
Направление N = Север, S = Юг |
Долгота |
Долгота (координата) |
E |
Направление E = Восток, W = Запад |
FQ |
Исправить данные о качестве |
NOS |
Количество используемых спутников |
HPD |
Горизонтальное снижение точности |
Высота |
Высота от уровня моря |
M |
Метр |
Высота |
Высота |
Контрольная сумма |
Данные контрольной суммы |
Пояснение схемы для взаимодействия GSM и GPS с Arduino:
Схема подключения этого проекта системы слежения за транспортными средствами проста и показана на изображении ниже. Здесь вывод Tx модуля GPS напрямую подключен к цифровому выводу номер 10 Arduino. Используя здесь Software Serial Library, мы разрешили последовательную связь на контактах 10 и 11, сделали их Rx и Tx соответственно и оставили контакт Rx модуля GPS открытым. По умолчанию выводы 0 и 1 Arduino используются для последовательной связи, но с помощью библиотеки SoftwareSerial мы можем разрешить последовательную связь на других цифровых выводах Arduino. Источник питания 12 В используется для питания модуля GPS.
Контакты Tx и Rx модуля GSM напрямую подключены к контактам Rx и Tx Arduino. Модуль GSM также питается от источника питания 12 В. Выводы данных D4, D5, D6 и D7 опционального ЖК-дисплея подключены к контактам 5, 4, 3 и 2 Arduino. Командные выводы RS и EN ЖК-дисплея подключены к контактам 2 и 3 Arduino, а контакт RW напрямую подключен к земле. Потенциометр также используется для настройки контрастности или яркости ЖК-дисплея.
Система слежения за транспортными средствами на основе GSM и GPS с использованием Arduino - Работает
В этом проекте Arduino используется для управления всем процессом с помощью GPS-приемника и модуля GSM. Приемник GPS используется для определения координат автомобиля, модуль GSM используется для отправки координат пользователю по SMS. А дополнительный ЖК-дисплей 16x2 также используется для отображения сообщений о состоянии или координат. Мы использовали модуль GPS SKG13BL и модуль GSM SIM900A.
Когда мы будем готовы с нашим оборудованием после программирования, мы можем установить его в наш автомобиль и включить его. Затем нам просто нужно отправить SMS «Отслеживать автомобиль» в систему, которая установлена в нашем автомобиле. Мы также можем использовать некоторый префикс (#) или суффикс (*), например #Track Vehicle *, чтобы правильно идентифицировать начало и конец строки, как мы это делали в этих проектах: Доска объявлений домашней автоматизации и беспроводной связи на базе GSM
Отправленное сообщение принимается модулем GSM, который подключен к системе и отправляет данные сообщения в Arduino. Arduino читает его и извлекает основное сообщение из всего сообщения. А затем сравните его с предопределенным сообщением в Arduino. Если происходит какое-либо совпадение, то Arduino считывает координаты, извлекая строку $ GPGGA из данных модуля GPS (работа GPS описана выше) и отправляет ее пользователю с помощью модуля GSM. Это сообщение содержит координаты местонахождения автомобиля.
Интерфейс GAM и GPS с кодом Arduino для отслеживания местоположения автомобиля
В части программирования сначала мы включаем библиотеки и определяем контакты для последовательной связи ЖК-дисплея и программного обеспечения. Также определите некоторую переменную с массивами для хранения данных. Программная последовательная библиотека используется для обеспечения последовательной связи на выводах 10 и 11.
#включают
Здесь массив str используется для хранения полученного сообщения от модуля GSM, а gpsString используется для хранения строки GPS. char * test = ”$ GPGGA” используется для сравнения нужной строки, которая нам нужна для координат.
После этого мы инициализировали модуль последовательной связи, ЖК-дисплей, GSM и GPS в функции настройки и отобразили приветственное сообщение на ЖК-дисплее.
void setup () {lcd.begin (16,2); Serial.begin (9600); gps.begin (9600); lcd.print («Отслеживание транспортных средств»); lcd.setCursor (0,1);……………
В функции цикла мы получаем сообщение и строку GPS.
недействительный цикл () {serialEvent (); если (темп) {get_gps (); отслеживание (); }}
Функции void init_sms и void send_sms () используются для инициализации и отправки сообщения. Используйте правильный 10-значный номер сотового телефона в функции init_sms .
Функция void get_gps () использовалась для извлечения координат из полученной строки.
Функция void gpsEvent () используется для приема данных GPS в Arduino.
Функция void serialEvent () используется для получения сообщения от GSM и сравнения полученного сообщения с предопределенным сообщением (Track Vehicle).
void serialEvent () {while (Serial.available ()) {if (Serial.find ("Отслеживание транспортного средства")) {temp = 1; сломать; }…………..
Функция инициализации 'gsm_init () ' используется для инициализации и настройки модуля GSM, при этом сначала модуль GSM проверяется, подключен он или нет, отправляя команду 'AT' модулю GSM. Если получен ответ ОК, значит он готов. Система продолжает проверять модуль, пока он не станет готовым или пока не будет получено сообщение «ОК». Затем ECHO отключается отправкой команды ATE0, иначе GSM-модуль будет повторять все команды. Затем, наконец, проверяется доступность сети через "AT + CPIN?" команда, если вставлена SIM-карта и присутствует PIN-код, выдает ответ + CPIN: READY. Это также проверяется неоднократно, пока сеть не будет найдена. Это ясно видно из видео ниже.
Проверьте все вышеперечисленные функции в разделе кода ниже.