У меня есть друг, который заканчивает учебу в аэрокосмической технике. Для его окончательного проекта он находится в небольшой команде, которой поручено написать программу для отслеживания воздушных шаров, ракет и спутников. Программа получает данные от устройства GPS, выполняет расчеты с данными и использует результаты этих вычислений для управления серией двигателей, предназначенных для ориентации направленной антенны связи, поэтому баллон, ракета или спутник всегда остаются в фокусе.Анализ вывода приемника GPS через регулярное выражение в Python
Я как-то (вечный) начинающий, у меня больше опыта программирования, чем у моего друга. Поэтому, когда он попросил меня дать совет, я убедил его написать программу на Python, мой язык выбора.
На данный момент в проекте мы работаем над кодом, который анализирует вход с устройства GPS. Вот несколько примеров ввода, с данными, которые мы должны извлечь жирным шрифтом:
$ GPRMC, 092204.999, 4250.5589, S, 14718.5084, E, 1,12,24.4, 89,6, M ,,, 0000 * 1F $ GPRMC, 093345,679, 4234,7899, N, 11344,2567, Вт, 3,02,24.5, 1000.23, M ,,, 0000 * 1F $ GPRMC, 044584,936, 1276,5539, N, 88734,1543, Е , 2,04,33,5, 600.323, M ,,, * 00 $ GPRMC, 199304.973, 3248,7780, N, 11355,7832, W, 1,06,02.2, 25722,5, M ,,, * 00 $ GPRMC, 066487,954, 4572,0089, S, 45572,3345, W, 3,09,15.0, 35000,00, M ,,, * 1F
Вот некоторые дополнительные пояснение данных:
«Похоже, мне понадобятся пять вещей из каждой строки. И помните , что любая из этих областей может быть пустым. Значит, рядом друг с другом будут только две запятые . Такие как ',,,' Есть два поля, которые могут быть заполнены в любое время. Некоторые из них только есть два или три варианта, которые они могут быть, но я не думаю, что я должен быть в расчете на что «.
Два дня назад мой друг был в состоянии получить полный отчет от приемник GPS используется для отслеживания недавнего запуска погоды на воздушный шар. данные довольно долго, так что я положил все это в this pastebin.
Я все еще довольно новый с регулярными выражениями себя, поэтому я ищу некоторую помощь.
Кстати, ваш $ GPRMC линия не кажется, чтобы соответствовать стандарту. http://home.mira.net/~gnb/gps/nmea.html#gprmc Я что-то упустил? – 2008-11-22 21:04:29
Спасибо, что указал, что Федерико. Я обязательно посмотрю на это. – crashsystems 2008-11-22 21:06:11
Кажется, это больше $ GPGGA линии. – 2008-11-22 21:14:08