Зміст деяких повідомлень протоколу NMEA версії 2.1 4 страница
2. Далі будемо розглядати, як функціями MS Excel вийняти зі строки необхідні нам значення. Почнемо з часу вимірювання. Як зазначалось в теоретичних відомостях час знаходиться одразу після першої коми. Наприклад в першій строчці прикладу
($GPGGA,104846.000,5023.9905,N,03036.8312,E,1,08,1.2,106.3,M,27.8,M,,0000*5E)
час буде 104846.000, це з 8 по 17 символи (усього 10). Щоб вийняти ці символи існує функція ПСТР, в цій функції вказується з якого тексту, з якого початкового символу та скільки символів вийняти. Для даного випадку функція матиме вигляд ПСТР(А1,8,10). Для того, щоб час виглядав більш сприятливо для ока можна вийняти окремо години, хвилини і секунди, з’єднати їх разом і між ними вставити дві крапки за допомогою функції СЦЕПИТЬ(). Тоді треба буде ще замінити крапку, що розділяє секунди від долей на кому (функція ПОДСТАВИТЬ()), додати до годин 2!!!, бо приймач міряє час за Грінвичем , і перевести цифри годин, хвилин і секунд в текст (функція ТЕКСТ()). Результат буде виглядати приблизно так:
СЦЕПИТЬ(ТЕКСТ(ПСТР(A1;8;2)+2;"00");":";ТЕКСТ(ПСТР(A1;10;2);"00");":";ТЕКСТ(ПОДСТАВИТЬ(ПСТР(A1;12;6);".";",");"00,000")).
В таблиці буде відображатись “12:28:02,000”. Для того, щоб вийняти координати (хв.) потрібні аналогічні дії (по Y - ПСТР(A2;21;7), по X - ПСТР(A2;34;7) ).
Складніше з висотою, бо висота не нормована за кількістю знаків (може бути з 4 або 5 символів: 80м, або160м) і до висоти також кількість знаків може змінюватись. Саме тому ми шукаємо кому перед значенням висоти, починаючи шукати з мінімально можливого значення. Всі ці значення задаються в функції НАЙТИ(). Знаходимо кому і букву М, між якими знаходиться значення висоти і використовуємо ПСТР. Виглядатиме формула так:
ПСТР(A1;НАЙТИ(",";A1;52)+1;НАЙТИ("M";A1;3)-НАЙТИ(",";A1;52)-2)
Результати всіх дій з витягування часу, координат і висоти зображені на Рис. 12.
Рис.12. Таблиця отриманих результатів після дій з витягування часу, координат і висоти
3. Такі саме дії робимо для двох інших приймачів. У першого приймача записи робляться кожні 4 с., а у двох інших щосекунди. Для того щоб порівняти виміри, треба порівнювати координати, що зняли приймачі в один і той самий час (наприклад 12:48:46,000 як перший вимір на мал. 4). Після обробки результатів для двох інших приймачів треба ввести допоміжну колонку для вибірки результатів висоти кожні 4 секунди. Це реалізується за допомогою функцій ИНДЕКС(), яка виймає значення відповідної комірки, та функцією СТРОКА(), яка як виконує функцію лічильника. Оскільки нам треба 1,5,9,13 і т.д. (кожна четверта) комірки, загальна формула для них буде 4*n+1, де n – має змінюватись на один як лічильник. Тоді кожна наступна комірка бере значення через чотири у потрібному стовпці. Формула буде приблизно наступна:
ИНДЕКС(С$2:С$3466;(СТРОКА(F2)-2)*4+1;1). Як виглядатиме стовпчик
зображено на рис. 13.
Рис. 13. Результат вибору кожні 4 с. з координат
4. Збираємо результати вимірів всіх трьох приймачів по висотах у відповідності з однаковими моментами часу в одну таблицю. В Excel, щоб вставити тільки значення, що відображаються в стовпцях, а не формули з комірок треба використовувати спеціальну вставку і в меню спеціальної вставки вказати на пункт “значення”. Потім в сусідніх стовпцях відобразимо ці результати з комою замість крапки за допомогою функції ПОДСТАВИТЬ(), та переведемо ці результати з тексту в числа функцією ЗНАЧЕН(). Все це для того, щоб Excel міг обробляти ці результати як числа (Excel через крапку числа не розпізнає).
Отже в нас вийшло 6 стовпців координат. Координати X і Y для трьох приймачів. В результаті отримаємо таблицю як на рис. 14.
Рис.14. Зведені координати X і Y для трьох приймачів
5. В наступних стовпцях розрахувати середні значення координат за допомогою функції СРЗНАЧ().
6. Розрахувати відстань від розрахованних координат середньої точки, до кожної з трьох точок за формулою
, де i – номер точки, від якої рахуємо відстань. Це і буде відхилення кожного приймача.
В Excel ця формула виглядає як КОРЕНЬ((G2-$M2)^2+(H2-$N2)^2).
7. Далі розраховуємо середнє значення відхилення і дисперсію, а також переводимо цифри знов у вигляд з крапкою (аналогічно як в першій лабораторній роботі). Отримана таблиця відображена на рис. 15.В нашому випадку найменше середнє значення похибки має третій приймач, хоча значення близькі до першого. Дисперсія третього і першого приймачів однакові. Робимо висновок, що третій приймач кращий, але ненабагато за перший.
8. Відобразити графічно похибки приймачів, тобто відстані до середнього значення в AGrapher (рис. 16) і зробити висновки на основі графічного відображення.
Рис. 15. . Зведена таблиця обробки результатів
Рис. 16. Графічне відображення похибок приймачів.
Лабораторна робота №7
Тема: Побудова маршрутів , що записані GPS-приймачами
Мета роботи: Побудувати маршрут, записаний GPS-приймачами на основі реперних точок, використовуючи програмний пакет Microsoft Office 2007.
Хід роботи:
1. Виписати відповідне завдання за варіантом (завдання є в папці Lab GPS 7 на робочому столі комп’ютера).
2. Обробити зняті приймачами записи, які створюються під час прийому супутникового сигналу (Для обробки записів в даній лабораторній роботі використовувати програмний пакет Microsoft Office 2007).
3. На основі даних точок, які видаються з завданням, графічно відобразити записаний маршрут (Карта для графічно відображення з відміченими точками видається). Для побудови графіків в даній роботі використовувати програму AGrapher або будь-яке аналогічне програмне забезпечення.
4. На основі результатів статистичного аналізу і графічного відображення зробити висновки та надати результати викладачу.
Теоретичний матеріал
1. В цій роботі процес обробки записів приймачів аналогічний процесу в 1-й роботі, тільки зараз будемо звертати увагу не на висоти, а на координати.
Згідно свого варіанту вибирається файл ВаріантN.txt де N – номер варіанту. В файлах типу .txt знаходяться записи під час розрахунків місцеположення приймачем.
Необхідно скопіювати цей текст в MS Excel і відсортувати за алфавітом (для сортування використовується відповідна функція MS Excel).
Після сортування строки типу $GPGGA перенеслись в початок стовпця, як перші за алфавітом. Саме вони нам і потрібні бо в строках $GPGGA вказується час розрахунку та розраховані координати після останньої строки $GPGGA інші види строк можна видалити.
2. Функціями MS Excel вийняти зі строки необхідні нам значення. Почнемо з часу вимірювання. Як зазначалось в теоретичних відомостях час знаходиться одразу після першої коми. Наприклад в першій строчці прикладу
($GPGGA,104846.000,5023.9905,N,03036.8312,E,1,08,1.2,106.3,M,27.8,M,,0000*5E)
час буде 104846.000, це з 8 по 17 символи (усього 10). Щоб вийняти ці символи існує функція ПСТР, в цій функції вказується з якого тексту, з якого початкового символу та скільки символів вийняти. Для даного випадку функція матиме вигляд ПСТР(А1,8,10). Для того, щоб час виглядав більш сприятливо для ока можна вийняти окремо години, хвилини і секунди, з’єднати їх разом і між ними вставити дві крапки за допомогою функції СЦЕПИТЬ(). Тоді треба буде ще замінити крапку, що розділяє секунди від долей на кому (функція ПОДСТАВИТЬ()), додати до годин 2!!!, бо приймач міряє час за Грінвичем , і перевести цифри годин, хвилин і секунд в текст (функція ТЕКСТ()). Результат буде виглядати приблизно так:
СЦЕПИТЬ(ТЕКСТ(ПСТР(A1;8;2)+2;"00");":";ТЕКСТ(ПСТР(A1;10;2);"00");":";ТЕКСТ(ПОДСТАВИТЬ(ПСТР(A1;12;6);".";",");"00,000")).
В таблиці буде відображатись “12:28:02,000”. Для того, щоб вийняти координати (хв.) потрібні аналогічні дії (по Y - ПСТР(A2;21;7), по X - ПСТР(A2;34;7) ).
Складніше з висотою, бо висота не нормована за кількістю знаків (може бути з 4 або 5 символів: 80м, або160м) і до висоти також кількість знаків може змінюватись. Саме тому ми шукаємо кому перед значенням висоти починаючи шукати з мінімально можливого значення. Всі ці значення задаються в функції НАЙТИ(). Знаходимо кому і букву М, між якими знаходиться значення висоти і використовуємо ПСТР. Виглядатиме формула так:
ПСТР(A1;НАЙТИ(",";A1;52)+1;НАЙТИ("M";A1;3)-НАЙТИ(",";A1;52)-2)
Результати всіх дій з витягування часу, координат і висоти зображені на рис. 17.
Рис. 17. Таблиця отриманих результатів
3. Такі саме дії робимо для двох інших приймачів. У першого приймача записи робляться кожні 4 с., а у двох інших щосекунди. Для того щоб порівняти виміри, треба порівнювати координати, що зняли приймачі в один і той самий час (наприклад 12:48:46,000 як перший вимір на мал. 4). Після обробки результатів для двох інших приймачів треба ввести допоміжну колонку для вибірки результатів висоти кожні 4 секунди. Це реалізується за допомогою функцій ИНДЕКС(), яка виймає значення відповідної комірки, та функцією СТРОКА(), яка як виконує функцію лічильника. Оскільки нам треба 1,5,9,13 і т.д. (кожна четверта) комірки і загальна формула для них буде 4*n+1, де n – має змінюватись на один як лічильник, і тоді кожна наступна комірка бере значення через чотири у потрібному стовпці. Формула буде приблизно наступна:
ИНДЕКС(С$2:С$3466;(СТРОКА(F2)-2)*4+1;1). Як виглядатиме стовпчик вказано на рис. 18.
Рис. 18 Результат виборки з координат кожні 4 с
4. На рис. 19 зображена мапа КПІ, шматок з карти Києва з нанесеними на ньому координатами, точками, взятими з геодезичної карти Києва. Потрібно побудувати в AGrapher функцію залежності координат Y(X) в хвилинах (як показано на рис.20).
5. Додати графік, що складається з трьох точок, відмічених на карті - (26.8’N;27.2’E), (27’N;27.5’E), (27’N;28’E).
Слід відмітити, що градуси всюди однакові, тому можна брати хвилини, але якщо градуси змінюються, то необхідно перераховувати градуси і хвилини в хвилини.
Рис. 19. Карта КПІ з трьома відміченими точками
Рис. 20. Побудовані точки результатів та відмічені координатні точки
6. Перенести точки, побудовані в AGrapher на карту КПІ, відкриту графічним редактором (для прикладу MS Paint), звичайними операціями копіювання(Ctrl+с) і вставлення (Ctrl+v). При копіюванні AGrapher спитає кількість точок та формат малюнку, для копіювання точок треба вказувати приблизно 800х800, я показано на рис.21. При вставленні в графічний редактор (рис. 22) треба відредагувати вставлений малюнок за розмірами так, щоб точки другого графіка (координатні) були якомога ближче до відмічених на карті (на три точки, що мають збігатись, вказують стрілки). В ідеальному випадку маємо отримати мал. 23.
Мал.6. Вставлення графіків зверху на карту |
Рис. 21. Параметри копіювання
Рис.22. Вставлення графіків зверху на карту
Рис.23. Ідеальний випадок збігання відмічених на карті точок із побудованими