Изучение уязвимостей электронных систем.
 
key programming immo tools emergency start device программаторы ключа заводилки Кодграббер штатных охранных систем, toyota, lexus, subaru.

Вернуться   Изучение уязвимостей электронных систем > Системы связи > Спутниковые системы

Спутниковые системы Телефония, телевидение, навигационные системы.

Ответ
 
Опции темы
Старый 13.05.2006, 21:45   #1
ZZTop
участник
 
Регистрация: 02.02.2006
Адрес: phreaker.us
Сообщений: 389
Поблагодарил: 0
Поблагодарили 14 раз в 11 сообщениях
ZZTop стоит на развилке
По умолчанию GPS изнутри.

Привет!

Ты наверное сейчас занят решением проблемы взлома очередного мега-супер-гипер сервака, но знаешь ли ты, что такое GPS и как с ним обращаться?! Если нет, то тебе сюда! В этой статье я расскажу тебе о том, как работают GPS приемники, как получить с них информацию, а так же как самому написать простенькую программу для работы с GPS-модулем.

GPS (Global Positioning System, Система Глобального Позиционирования) была введена в действие США в 1994 году. Состоит она из 24 спутников и наземных приемных комплексов, коим может являться и твой GPS-навигатор или GPS-модуль (в дальнейшем навигатор). Для точного определения координат твой навигатор должен видеть минимум 4 спутника. В недалеком прошлом точность определения координат вне территории США (а точнее для потребителей не из США) была искусственно снижена, но не так давно это ограничение было убрано и теперь ты можешь определять свое местоположение даже в тайге с точностью до нескольких метров.

На пальцах все это работает так: твой навигатор получает информацию с каждого из видимых спутников, которые являются для него как бы маяками. Внутри навигатора находится микропроцессор с зашитой в него программой, которая на основе полученных данных и высчитывает твое местоположение.

В настоящее время в продаже имеется огромное количество GPS-навигаторов и GPS-модулей для КПК и ноутбуков. GPS-навигатор это GPS-приемник с экраном, на котором отображается информация о твоем местоположении, а GPS-модуль – это GPS-приемник, который подключается к компьютеру и передает всю навигационную информацию программе, которая с ним работает. Все они в принципе отличаются только форм-фактором и принципиальных различий в работе не имеют. Но нас с тобой больше интересует каким же все таки образом он общается с компьютером и как вытащить из него информацию. Сейчас все расскажу и покажу.

Какого бы форм-фактора (COM, USB, BlueTooth и т.п.) не был GPS-модуль, он будет логически связан с компьютером через COM-порт, т.е. при подключении создается соединение по последовательному порту. Навигационная информация в большинстве случаев передается по протоколу NMEA. Это самый распространенный протокол передачи для GPS-модулей. Хотя есть и другие протоколы, но мы их рассматривать не будем.

Ну а теперь самое время узнать как же сделать софтину для работы со всем этим хозяйством. Скажу сразу, что мне не очень хочется сейчас объяснять как тыкать в кнопки в том же VB, статья носит больше ознакомительный характер. Для тех кто в танке я объясню подобно процесс создания программы в следующих статьях. Я освещу лишь наиболее важные моменты и я думаю у тебя все получится. Скажу сразу, что ваять прогу можно в любых языках программирования, лишь бы была возможность работы с последовательным портом и со строками. Первое с чего нужно начать это с открытия COM-порта. Почти все приемники по умолчанию имеют установки: скорость 9600 бит/с, 8/N/1. Как только ты откроешь порт тебе сразу с интервалом в секунду будет приходить навигационная информация примерно такого вида:

$GPGGA,143345.264, 0936.23,N,06354.15,E, 0,06,0.0,230.6,M,0.0,M,0.0,0345*76
$GPRMC,143345.26, A,0936.23,N,06354.15, E,0.0,0.0,230306,0.0,E,A*45
$GPGSA,A,3,03, 04,05,07,11,12,0.0,0.0,0.0*Е2
$GPGSV,1,1,06,05,67,120,20*34

Теперь приступим к разбору:

Данные передаются в виде предложений. Формат предложений следующий:

$AAAAA[, <данные> ]*hh<CR><LF>, где

$ - символ начала предложения (код 24h);
AAAAA - пятисимвольный адрес (имя) предложения;
[, <данные> ] - список полей данных разделенных запятыми (код 2Сh);
* - признак контрольной суммы (код 2Ah);
hh - контрольная сумма;
<CR><LF>, - конечный ограничитель (коды 0Dh и 0Ah).

Типы полей данных.
Тип поля
Обозначение
Определение

Специальный формат полей

Статус
A
Поле одного символа. А= да, данные достоверны, предупредительного сигнала нет. V= нет, данные не достоверны, есть сигнал предупреждения.

Широта
llll.ll
Поле постоянной/переменной длины: градусы-минуты доли минуты. 2 знака градусов, 2 знака минут и переменное число знаков долей минуты. Если первый знак градусов или минут отсутствует, то его заменяют нулем с тем, чтобы сохранить постоянное число знаков. Децимальная точка и последующие знаки долей минут являются дополнительными и могут не использоваться, если не нужно большое разрешение.

Долгота
yyyyy.yy
Поле постоянной/переменной длины: градусы-минуты и доли минуты. 3 знака градусов, 2 знака минут и переменное число знаков долей минуты. Если первые знаки или первый знак минут отсутствует, то их заменяют нулем для того, чтобы сохранить постоянное число знаков. Децимальная точка и последующие знаки долей минут являются дополнительными и могут не использоваться, если не нужно большое разрешение.

Время
hhmmss.ss
Поле постоянной/переменной длины: часы/минуты/секунды и доли секунды. 2 знака часов, 2 знака минут, 2 знака секунд и переменное число знаков долей секунд. В качестве первого знака часов, минут, секунд может быть поставлен ноль, для сохранения постоянного числа знаков. Если не требуется высокая точность, то децимальная точка и доли секунд могут быть опущены.

Определенные поля
Некоторые поля специально предназначаются для размещения заранее определенных постоянных величин, чаще всего буквенных обозначений. Признаком таких полей является наличие одного или нескольких знаков.

Поля цифровых величин

Переменное число
x.x
Цифровое поле постоянной или переменной длины для целых и дробных чисел. Первый и последний знаки могут быть заменены нулями. Децимальная точка и дробная часть являются дополнением и могут быть опущены, если не требуется высокое разрешение.
Шестнадцатеричное постоянной длины
hh
Только шестнадцатеричное число постоянной длины, старший значащий бит слева.

Информационные поля

Изменяемый текст
c—c
Поле знаков изменяемой длины.

Постоянное буквенное поле
aa
Поле постоянной длины, включающее в себя большие или малые буквенные знаки.

Постоянное цифровое поле
xx
Поле постоянной длины, включающее в себя цифровые знаки.

Постоянное текстовое поле
cc
Поле знаков постоянной длины.

Примечания:

1. Пробелы могут быть использованы только в полях текстов изменяемой длины.

2. Отрицательный знак “-” (код 2Dh) является первым знаком поля, если в нем приводятся отрицательные величины. При использовании отрицательного знака в полях фиксированной длины их длина увеличивается на единицу. При положительных величинах знак опускается.

GGA – Данные определения места по GPS

Время место и данные относящиеся к обсервации.

$GPGGA,hhmmss.sss,llll.ll,a,yyyyy.yy,a,x,xx,x.x,x. x,M,x.x,M,x.x,xxxx*hh<CR><LF>

Полями данного предложения являются:

1. hhmmss.sss – время навигационных определений;
2. llll.ll,a – широта, N/S;
3. yyyyy.yy,a – долгота, E/W;
4. x – показатель качества обсервации: 0 = нет данных, 1 = обсервация получена, 2 = обсервация в дифференциальном режиме;
5. xx – число используемых спутников;
6. x.x – величина горизонтального геометрического фактора (HDOP);
7. x.x,M – высота антенны над уровнем моря (геоидом), м;
8. x.x,M – превышение геоида над эллипсоидом WGS84, м;
9. x.x – устаревание дифференциальных поправок, то есть время в секундах с момента получения последней дифференциальной поправки, нулевое поле используется в случае выключения дифференциального режима;
10. xxxx – идентификатор дифференциальной станции 0ё1023.

RMC – Рекомендуемый минимальный набор данных по GPS и ГЛОНАСС

Время, дата, координаты и курс счисляемые аппаратурой.

$GPRMC,hhmmss.ss,A,llll.ll,a,yyyyy.yy,a,x.x,x.x,xx xxxx,x.x,a,a*hh<CR><LF>

Полями данного предложения являются:

1. hhmmss.ss – время;
2. A – статус (A/V);
3. llll.ll,a – широта, N/S;
4. yyyyy.yy,a – долгота, E/W;
5. x.x – скорость в узлах;
6. x.x – курс в градусах;
7. xxxxxx – дата: dd/mm/yy (день/месяц/год);
8. x.x,a – магнитное склонение в градусах, E/W;
9. a – индикатор режима: A = автономная обсервация, D = дифференциальный режим, N = данные недостоверны.

GSA – Фактор ухудшения точности, используемые для навигации спутники

$GPGSA,a,x,xx, ... ,xx,x.x,x.x,x.x*hh<CR><LF>

Полями данного предложения являются:
1. a – режим управления количеством определяемых координат: М = ручное, указан режим, А = автоматическое переключение;
2. x – режим работы: 1 = обсервация невозможна, 2 = определяются две координаты, 3 = определяются три координаты;
3. xx...xx – номера спутников используемых для решения навигационной задачи, количество полей равно количеству каналов приемника, для GPS используются номера 1ё32, для WAAS 33ё64, для ГЛОНАСС 65ё96;
4. x.x – общий геометрический фактор ухудшения точности (PDOP);
5. x.x – горизонтальный геометрический фактор ухудшения точности (HDOP);
x.x – вертикальный геометрический фактор ухудшения точности (VDOP).

GSV – Видимые спутники

Число спутников в зоне радиовидимости, номер спутника, угол возвышения, азимут и отношение сигнал/шум. Одно предложение может содержать информацию об 1 до 4 спутников, дополнительные данные о спутниках передаются в следующих предложениях. Номер предложения указывается в первых двух полях данных. Для спутниковых систем зарезервированы следующие номера: для GPS 1-32, для WAAS 33-64, для ГЛОНАСС 65-96.

$GPGSV,x,x,xx,xx,xx,xxx,xx, ... ,xx,xx,xxx,xx*hh<CR><LF>

Полями данного предложения являются:
1. x – общее число сообщений;
2. x – номер сообщения;
3. xx – общее число спутников в зоне радиовидимости;
4. xx – номер спутника;
5. xx – угол возвышения спутника, градусы 00-90;
6. xxx – азимут истинный, градусы 000-360;
7. xx – отношение сигнал/шум 00-99 дБ, если спутник не сопровождается не передается.

Примечание: поля 4, 5, 7 повторяются для 2, 3 и 4 спутников.

Ну вот теперь, имея описание протокола NMEA и драйвер прямые_руки.sys можешь приступать к построчному разбору пакетов и созданию мега программулины )))).



по материалам хакер.ру
ZZTop вне форума   Ответить с цитированием
Старый 20.09.2006, 01:00   #2
test
Гость
 
Сообщений: n/a
По умолчанию

интересная статья!!!
как я понимаю выдача информации по компорту идет постоянно а режиме асинхронной передачи?
а какой нить схемы под рукой не валяется по сопряжению с контроллером компорта который в том же приемнике (как я понимаю)?
  Ответить с цитированием
Старый 30.12.2006, 22:47   #3
Delta100
участник
 
Аватар для Delta100
 
Регистрация: 23.06.2006
Адрес: MartiX
Сообщений: 294
Поблагодарил: 1
Поблагодарили 8 раз в 5 сообщениях
Delta100 стоит на развилке
По умолчанию

Jalko vovremja STATJKY NEZAMETIL
Logi realo snjatie s Trakera est =)
Koodrinatu sotry vulody =)

Delta100 добавил 30.12.2006 в 21:51
Kstati interestna tema podmenu GPS signala kto znaet Vukladuvajte ili PM

Последний раз редактировалось Delta100; 30.12.2006 в 22:51. Причина: Добавлено сообщение
Delta100 вне форума   Ответить с цитированием
Старый 25.06.2007, 12:37   #4
test
Гость
 
Сообщений: n/a
По умолчанию

интересно, а можно сделать чтобы приёмник принимал сигналы со спутника нисвои, а другого ЖПС приёмника???
  Ответить с цитированием
Старый 24.03.2009, 01:27   #5
ivan4
случайно влез
 
Аватар для ivan4
 
Регистрация: 20.03.2008
Сообщений: 36
Поблагодарил: 0
Поблагодарили 4 раз в 3 сообщениях
ivan4 стоит на развилке
По умолчанию

Цитата:
Сообщение от Hwost Посмотреть сообщение
интересно, а можно сделать чтобы приёмник принимал сигналы со спутника нисвои, а другого ЖПС приёмника???

Джугой ЖПС приёмник ничего тебе не передает, а только принимает, как и твой. Спутник именно тебе или твоему другу тоже ничего непередает. Приемник вычисляем свои коодинаты на основе сигналов которырые передает спутник(всем одно и то же), оценивая расстояние от спутников(3х и более) зная координаты этих спутников.
Просто нет слов.
ivan4 вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Вопрос] Отключение сигнализации изнутри на авто vladgo Новички 7 27.05.2011 11:24


Текущее время: 13:41. Часовой пояс GMT +4.


Перевод: zCarot