Розробка розподіленої інформаційно-навігаційної системи

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Украинский
    ,
    Формат файла:
    MS Word
    88,1 Кб
  • Опубликовано:
    2015-12-17
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Розробка розподіленої інформаційно-навігаційної системи

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ

НАЦІОНАЛЬНИЙ ТРАНСПОРТНИЙ УНІВЕРСИТЕТ

Факультет транспортних та інформаційних технологій

Кафедра інформаційних систем і технологій









ДИПЛОМНИЙ ПРОЕКТ (РОБОТА)

(ПОЯСНЮВАЛЬНА ЗАПИСКА)

Тема Розробка розподіленої інформаційно-навігаційної системи для диспетчерського центру автотранспортного підприємства


Розробив / студент Пількевич А.А. /

Керівник / к.т.н., доц. Топольськов Є.О. /

Консультанти:

з економічного / ст. викл. Шумейко О.А. /



Київ - 2015

РЕФЕРАТ

У даному дипломному проекті представлені результати розробки розподіленої інформаційно-навігаційної системи (далі по тексту AVL системи) диспетчерського центру автотранспортного підприємства, що виконує збір, обробку, відображення та збереження даних, отриманих від апаратури автотранспортних засобів, а також забезпечує підвищену точність визначення координат автотранспортних засобів.

Пояснювальна записка складається з 4 розділів, які містять 126 сторінок тексту, 39 рисунков, 15 таблиць і 2 додатки.

Перший розділ присвячений аналізу застосування навігаційних технології у сучасних AVL системах, а також розгляду представлених на українському ринку розробок таких систем з метою оцінки їх функціональних можливостей, переваг і недоліків.

У другому розділі проведений аналіз існуючих технологій місцевизначення рухомих об’єктів, зокрема з використанням супутникових навігаційних систем (СНС), описані фактори, що впливають на точність місцевизначення об’єктів, а також наведені рекомендації щодо реалізації в AVL системах відносно-диференційного методу для забезпечення достатньо високої точності визначення координат об’єктів у складних експлуатаційних умовах.

У третьому розділі було проведено проектування і розробку програмного забезпечення AVL систем, зокрема обґрунтовано структуру системи і вимоги до апаратного забезпечення, розроблені алгоритми функціонування окремих програмних модулів, обрано мову програмування і СУБД, з використанням яких створено тестовий варіант програмного забезпечення для АРМ диспетчера AVL системи.

У четвертому розділі наведені розрахунки щодо економічної ефективності розробки і комерційної експлуатації даної AVL системи.

РЕФЕРАТ

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

Пояснительная записка состоит из 4 глав, которые содержат 126 страниц текста, 39 рисунков, 15 таблиц и 2 приложения.

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

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

В третьем разделе было проведено проектирование и разработку программного обеспечения AVL систем, в частности обосновано структуру системы и требования к аппаратному обеспечению, разработаны алгоритмы функционирования отдельных программных модулей, выбран язык программирования и СУБД, с использованием которых создан тестовый вариант программного обеспечения для АРМ диспетчера AVL системы.

В четвертом разделе приведены расчеты экономической эффективности разработки и коммерческой эксплуатации данной AVL системы.

ABSTRACT

Results of the development of distributed information-navigation system (hereinafter AVL System) of control center of autotransport enterprise which performs collection, processing, display and storage of the data received from the equipment of vehicles, and also provides increased accuracy of the vehicles coordinates is presented in this diploma project.memorandum consists of 4 chapters containing 126 pages of text, 39 drawings, 15 tables and 2 appendices.first chapter is devoted to analysis of the use of navigation technologies in modern AVL systems and to review of software developments of such systems presented on Ukrainian market aiming to evaluate their features, advantages and disadvantages.the second chapter the analysis of existing positioning technologes, including satellite navigation systems (SNS) was done. There was described the factors affecting the accuracy of the positioning and was presented recommendations for implementing of relative-differential method in AVL system to provide sufficiently high accuracy of objects positioning in difficult operating conditions.design and software development for AVL systems, including substantiated structure of the system and hardware requirements was conducted in the third chapter. There was designed functioning algorithms of individual software modules and chosen programming language and database operating system. A test version of the software for workstation controller of AVL system was developed.

Calculations of the economic efficiency of development and commercial operation of the AVL system were done in the fourth chapter.

ПЕРЕЛІК УМОВНИХ ПОЗНАЧЕНЬ, СКОРОЧЕНЬ І ТЕРМІНІВ

АРМ - автоматизоване робоче місце

АСМДУ - автоматизована система моніторингу і диспетчерського управління

AVL (Automatic Vehicle Location system) - автоматична система місцевизначення наземних транспортних засобів)

АТП - автотранспортне підприємство

БД - база даних

БС - базова станція

ГІС - геоінформаційна система

ДЦ - диспетчерський центр

ЕОМ - електронно-обчислювальна машина

ЕПД(Ш) - еквівалентна похибка дальності (швидкості)

ЛРП - лінія рівних пеленгів

ЛРВ - лінія рівних відстаней

МНК - метод найменших квадратів

НС - навігаційний супутник

НШСЗ - навігаційний штучний супутник Землі

ОС - операційна система

ПЗ - програмне забезпечення

ПК - персональний комп’ютер

РБД - розподілена база даних

РО - рухомий об’єкт

РНО - радіонавігаційний орієнтир

СКВ - середньоквадратичне відхилення

СНС - супутникова навігаційна система

СУБД - система управління базами даних

ТЗ - транспортний засіб/WAN - Local Aria\Wide Aria Network

MDI - багатодокументний інтерфейс користувача- глобальна система позиціонування

GPRS - General Packet Radio Service- Radio Friequency Identification- структурована мова запитів

 


ВСТУП


Розвиток і ефективне функціонування транспортної галузі є важливою умовою зростання економіки нашої держави, забезпечення її обороноздатності та приоритетним завданням на шляху до європейської інтеграції. Закордонний досвід і сучасні тенденції розвитку транспорту показують, що одним з ключових факторів, які сприяє підвищенню ефективності та безпеки транспортних перевезень, є високий рівень їх інформаційного забезпечення, що досягається шляхом застосування прогресивних телематичних технологій.

Завдяки використанню сучасних навігаційних і телекомунікаційних технологій в автоматизованих системах моніторингу і диспетчерського управління (АСМДУ) відкривається можливість дистанційно вирішувати широке коло задач - починаючи від контролю місцезнаходження і стану окремих транспортних засобів та закінчуючи реалізацією складних оптимізаційних задач управління потоками [1, 2, 6].

Незалежно від призначення інформаційно-навігаційної системи і виду транспорту, який вона обслуговує, процес управління передбачає вирішення наступних задач:

· збір первинної інформації про стан контрольованого об'єкта;

· обробка первинної інформації з метою підвищення її достовірності;

· прийняття рішення про управляючий вплив на об'єкт на основі одержаної і уточненої інформації;

· реалізація прийнятого рішення шляхом застосування управляючого впливу до контрольованого об’єкту.

В 60-і рр. XX століття відбулася революція в технологіях позиціонування. Успішні запуски космічних супутників позначили практичну можливість розробки системи глобального позиціонування, яка дозволяє обчислювати географічні координати на поверхні Землі на базі вимірювання відстаней до декількох супутників у космосі [3,5,8].

Поява систем супутниковї навігації відкрила перед людством масу можливостей. Супутникова навігація сьогодні дає можливість:

-   встановити з високою точністю місце розташування об’єктів на Землі і в навколоземному просторі;

-       знаючи пункти відправлення і призначення прокладати маршрути по магістральних і місцевих грунтових дорогах, а також по вулицях незнайомого міста;

-       побачити шляхи об'їзду заторів, ділянок доріг, на яких проводиться ремонт та інші перешкоди, які можуть ускладнити пересування;

-       відмічати на електонних картах небезпечні ділянки доріг, АЗС, пости ДАІ, придорожні кафе, мотелі і потім за необхідністю скористатися даною інформацією під час проходження маршруту;

-       використовувати навігаційний комп'ютер, який відображає поточну та середню швидкість руху (у тому числі з урахуванням зупинок), тривалість зупинок і безперервного руху;

-       виконувати землемірні і картографічні роботи, контролювати зсув грунтів та зміну просторового положення будівель і споруд.

Приймачі сигналів навігаційних супутників вже давно стали невід'ємною частиною обладнання військових, цивільних і аматорських літаків та кораблів, а останні 10-15 років вони одержали широке застосування у складі автомобільних та індивідуальних (побутових) навігаторів, що допомагають транспортно-логістичним компаніям, водіям автомобілів і приватним особам визначати у режимі реального часу місцезнаходження рухомого складу, вантажів і пасажирів та контролювати їх переміщення відповідно до запланованих маршрутів та графіків руху [1-3, 5].

В результаті успішного використання навігаційних технологій на наземному транспорті та необхідності здійснення моніторингу за рухом і станом автомобілів зявилося поняття система класу AVL (Automatic Vehicle Location system-автоматична система місцевизначення наземних транспортних засобів), яка є складним апаратно-програмним комплексом, що не просто забезпечує місцевизначення рухомого складу, а ще й охоплює широке коло задач управління наземним транспортом і забезпечення безпеки перевезень [1, 2, 5].

Треба відмітити, що в переважній більшості існуючих на ринку розробок апаратно-програмних комплексів AVL систем, що призначені для вирішення виробничих задач управління наземним транспортом, використовуються «бюджетні», односистемні приймачі сигналів супутникових навігаційних систем (СНС) GPS і ГЛОНАСС. Така апаратура працюючи у номінальному режимі, забезпечує за нинішніми стандартами задовільну (а в деяких випадках зовсім неприпустиму) якість навігаційних визначень [1, 5, 6]. Суттєве зниження точності і надійності навігаційних визначень обумовлено впливом багатьох факторів систематичного й несистематичного характеру і, як правило, спостерігається у складних експлуатаційних умовах (містах з висотною забудовою, щільному транспортному потоці, нерівномірному рельєфі місцевості тощо). Ситуація також ускладнюється тим, що більшість «бюджетних» навігаційних приймачів GPS має обмежені функціональні можливості з автономного контролю цілісність навігаційного забезпечення і за бажанням власників супутникових навігаційних систем (військові відомства Росії та США) може опинитись під впливом селективного доступу, що призведе зростання похибок місце визначення об’єктів до 100 і більше метрів.

Постановка задачі та загальна схема її вирішення.

Провівши аналіз 7 сучасних розробок AVL систем, що представлені на українському ринку, було визначено, що жодна з них не має власних засобів підвищення точності навігаційних визначень. Очевидно це пов’язано з небажанням розробників збільшувати вартість своїх систем і відсутністю підтримки сервісів диференціального режиму на території України.

Таким чином, на сьогоднішній день важливою практичною задачею в області застосування прогресивних інформаційно-навігаційних технологій на транспорті є розробка ефективного і одночасно економічно вигідного апаратно-програмного комплексу для AVL систем.

Враховуючи те, що на ринку представлена величезна кількість «бюджетних» приймачів сигналів СНС, що забезпечують приблизно однаковий рівень точності місцевизначення, в якості мети даного дипломного проекту обрано розробку клієнтської частини програмного забезпечення AVL системи диспетчерського центру АТП, що дозволить з мінімальними фінансовими витратами підвищити точність місцевизначення автомобілів.

Отже об’єктом дослідження дипломної роботи є інформаційно-навігаційна (AVL) система диспетчерського центру автотранспортного підприємства, предметом - методи навігаційних визначень, процеси збору і обробки координатної інформації в AVL системі диспетчерського центру автотранспортного підприємства.

Для досягнення поставленої мети необхідно вирішити наступні задачі:

-       провести аналіз об’єкту дослідження і сучасних розробок програмного забезпечення, що представлені на українському ринку AVL систем, а також визначити їх переваги і недоліки;

-       розглянути навігаційні системи і методи місцевизначення, що застосовуються на наземному транспорті, а також фактори, що впливають на точність визначення координат об’єктів;

-       описати структуру AVL системи диспетчерського центру АТП і алгоритми роботи її програмних модулів;

-       розробити тестовий варіант програмного забезпечення AVL системи диспетчерського центру АТП та визначити економічну ефективність даного проекту.

1. АНАЛІЗ ОБ’ЄКТУ ДОСЛІДЖЕННЯ

1.1 Застосування навігаційних технології у сучасних AVL системах

На сьогоднішній день майже 90% послуг з місцевизначення і навігації споживає транспортна галузь, у тому числі майже 80% з них припадає на наземний транспорт [1, 2].

Останні 20 років ринок транспортної і, в першу чергу, автотранспортної електроніки швидко розвивається. До автомобільної електроніки окрім традиційних пристроїв, таких, як процесори управління двигунами і режимами руху, сьогодні долучається устаткування супутникової навігації, мобільного радіозв'язку та передачі даних.

Прогнози щодо подальшого зростання обсягів використання супутникового обладнання на наземному транспорті є дуже оптимістичними (Рис. 1.1).

Рис. 1.1. Прогноз збільшення кількості наземних транспортних засобів, обладнаних приймачами сигналів СНС, у період з 2000 по 2020 р.

На кінець 2014 р. об’єм продаж перевищив 14 млрд доларів. Кожен місяць у світі випускається більше 100 000 екземплярів терміналів GPS різних типів, у тому числі у вигляді плат і модулів ОЕМ (Original Equipment Manufacturer) для вмонтовування в аппаратуру зв'язку і обробки сигналів. За матеріалами міжнародного комітету GPS Industry Council продаж терміналів GPS для автотранспортних засобів у всьому світі перевищує продаж для всіх інших застосувань цієї супутникової технології, у тому числі для військових потреб, авіації, морських транспортних засобів, геодезії і ГІС разом узятих.

Зважаючи на сучасні міжнародні вимоги, кожна транспортна одиниця як "цивілізований перевізник" повинна мати на борту засоби автономного місцевизначення і двостороннього радіозв'язку. Такий автотранспортний засіб у майбутньому перетвориться в "інтелектуальний" автомобіль, що матимє можливість не тільки оперативно відображати власне місцезнаходження на електронних картах регіону і бути включеним до систем масового обслуговування, які виконують функції управління рухом транспорту, оперативного реагування та інформаційної підтримки у випадках викрадення, ДТП, настання страхових подій тощо, а ще й буде виконувати перевезення практично без участі людини.

У великих містах Європи вже багато років функціонують сучасні автоматизовані інформаційно-навігаційні системи наземного транспорту, відомі також під назвою AVL систем (Automatic Vehicle Location system- автоматична система місцевизначення). Ці системи забезпечують підвищення безпеки перевезення пасажирів і вантажів та надають можливість водіям додержуватись оптимальних маршрутів перевезень, чітко виконувати розклад руху і уникати непередбачених ситуацій на дорогах, а диспетчерам, своєчасно отримуючи інформацію про місцезнаходження і стан транспортних засобів, приймати управлінські рішення. В результаті цього підвищується ефективність, екологічність та безпека перевезень, а користувачі транспорту отримують більш якісні та комфортні послуги [1, 2].

Широке застосування супутникової навігації і мобільних телекомунікацій на автомобільному транспорті відкриває унікальні можливості для повної комп'ютеризації всіх рівнів управління транспортом, що принципово змінює якість управління і підвищує безпеку експлуатації транспортного комплексу.

На сьогоднішній день більшість AVL систем визначають координати транспортних засобів за допомогою СНС GPS шляхом приймання ефемеридної та часової інформації від навігаційних супутників на радіочастоті L1 = 1 575,42 МГц відкритого сигналу (цивільного коду) загального користування S/A.

За останні 15 років розроблено велику кількість супутникового навігаційного обладнання для автомобилів, що поділяється на 2 групи: обладнання з каналом зв’язку (tracker) і обладнання без такового, але з можливістю запису інформації на носій (logger). Також можуть використовуватись комбіновані варіанти.

Найбільш затребуваними є gps-GPRS трекери, хоча існують трекери, що передають інформацію за допомогою SMS-повідомлень, і RF-трекери, які використовують радіосигнал на короткій відстані. Передача SMS-повідомлень економічно невигідна, а пристрої, що передають інформацію по радіоканалам, мають малий радіус дії, є громіздкими й нестабільними в роботі, і тому за всіма показниками gps-GPRS трекери вважаються кращими. Вони є компактними, постійно працюють в режимі онлайн і заощаджують інформаційний трафік, а значить і грошові кошти користувача.

На рис. 1.2 показана узагальнена структурна схема обладнання автотранспортного засобу класу AVL. Основу обладнання класу AVL становить монтажний модуль, який встановлюється всередині автомобіля в кабіні водія в безпосередній доступності водія або експедитора перевезень. У модуль встановлені всі основні вузли. Активна (з вбудованим підсилювачем сигналів) малогабаритна антена (1) СРНС GPS, встановлена зверху кабіни автомобіля (в деяких випадках - на панелі приборів під вітровим склом всередині кабіни), приймає і підсилює сигнали навігаційних супутників GPS і направляє їх по кабелю до плати GPS приймача (2).

Приймач GPS виробляє поточні координати транспортного засобу з прив’язкою до системного часу UTC. Вся робота обладнання управляється бортовим мікропроцесором - контролером (3). Реєстратор працює або повністю в автоматичному (автономному) режимі, або оперативно за допомогою клавіатури (5) з контролем на дисплеї, які разом використовуються в якості опцій.

Рис. 1.2. Узагальнена структурна схема обладнання автотранспортного засобу класу AVL

Контролер через мультиплікатор-ущільнювач каналів керує роботою навігаційного процесора і аналогових бортових датчиків, а за допомогою порта/інтерфейса I/O (Input/Output- вхід/вихід) - відповідно і цифрових датчиків. За допомогою модему зв'язку (4) контролер з'єднується з бортовими терміналами каналів зв'язку - супутниковим (10) (наприклад, Inmarsat M або Inmarsat D+) та/або мобільним стільниковим (11) (наприклад, GMS режиму GPRS). Реєстрація функцій забезпечується одним із видів електронної пам'яті типу змінної флешкарти. Накопичувачі даних розрізняються за розмірами, вагою та типом записуваних даних, можливостям витримувати несприятливі умови навколишнього середовища та кількості інформації, яку можна записати на них. Деякі накопичувачі даних повинні бути з’єднані з окремим GPS приймачем, а інші інтегруються з приймачами в одному корпусі.

Періодичний контроль роботи і налагодження обладнання, в тому числі прошивка програмного забезпечення цифрового контролера, виконується зовнішньою переносною персональною міні ЕОМ (9) типу "лаптоп" або "ноутбук". Ця ЕОМ, як і термінали радіозв'язку і бортові датчики, не входить до складу AVL обладнання, а є сервісним додатком автомобіля.обладнання окрім основної своєї задачі - місцевизначення АТЗ виконує ще й функції цифрового тахографа, а саме:

- реєстрацію пройденого шляху;

реєстрацію швидкості в заданому темпі, наприклад, кожні 10-15 с в реальному часі чи в заданому темпі на протязі тижня,місяця;

реєстрацію частоти обертання (оборотів) двигуна або інших режимів транспортного засобу;

контроль за режимами роботи екіпажу (керування, інша робота, готовність, відпочинок);

реєстрацію порушень (перевищення граничної швидкості, перевищення часу без перервного керування та ін.).

Відповідно до вимог приватних користувачів можливе також введення та програмування інших додаткових функцій. Всі ці функції забезпечуються з прив'язкою до шкали часу - національної UTC (UA) або всесвітньої UTC.

Класична AVL система окрім GPS-трекерів повинна включати також потужний апаратно-програмний комплекс у складі LAN/WAN (серверів і клієнтських робочих місць).

Структура програмного комплексу у найбільш повному варіанті реалізації відповідає так званій розподіленій AVL системі (рис.1.3), яка передбачає:

децентралізований прийом навігаційної і службової інформації від контрольованих транспортних засобів;

централізоване накопичення прийнятої від ТЗ інформації у базі даних головного серверу (серверу мобільних об’єктів);

віддалений доступ до баз даних головного і картографічного сервера по мережі Інтернет.

Рис.1.3. Структурна схема розподіленої AVL системи.

Згідно наведеної схеми програмний комплекс AVL системи повинен включати:

) Базове програмне забезпечення - операційна система Windows (Unix);

) Центральну базу даних під управлінням систем MS Access, MySQL, Oracle;

) Базу електронних карт місцевості;

) Клієнтське програмне забезпечення для АРМ диспетчерів та віддалених робочих терміналів;

) Комунікаційні мережені протоколи, необхідні для забезпечення надійного обміну інформацією між елементами системи TCP/IP, IPX;

) Засоби криптографічного захисту інформації.

В якості сервера для GPS-моніторингу може використовуватися комп'ютер з встановленим програмним забезпеченням, а для великих транспортних підприємств потрібен сервер, який здійснює збір інформації з апаратури численого рухомого складу. Сервери нового покоління здатні працювати з тисячами GPS-трекерів, а самі користувачі сучасних AVL систем отримали можливість доступу до даних про місцезнаходження об'єктів з будь-якого комп'ютера, підключеного до Інтернету.

Програмне забезпечення сучасних AVL систем дозволяє задавати певні умови швидкого реагування на події, що можуть статися з контрольованими об’єктами. GPS-трекер дозволяє посилати екстрені повідомлення при натисканні водієм чи пасажиром транспортного засобу тривожної кнопки або встановлювати голосовий зв'язок при позаштатних ситуаціях. Таким чином AVL система дає можливість здійснювати повний контроль за пересуванням об’єктів і реагувати на будь-які ситуації та події, що фіксуються бортовими датчиками контрольованих об’єктів.

Останнім часом почали створювати спрощені та більш дешеві варіанти програмного забезпечення AVL систем для малого бізнесу та індивідуального користування, які надають користувачам онлайн доступ до ресурсів системи використовуючи звичайні Інтернет браузери. Власники транспортних засобів і користувачі таких AVL систем платять тільки за використаний інформаційний трафік або сплачують абонплату. Усі витрати по створенню і адмініструванню системи бере на себе її провайдер.

Світовий досвід експлуатації AVL систем, створених на базі систем супутникової навігації і мобільного зв'язку та пов'язаних технологічним і прикладним програмним забезпеченням, став поштовхом для розвитку відповідного напрямку і в нашій країні.

1.2 Характеристика розробників AVL систем на українському ринку послуг GPS моніторингу

1.2.1 Розробки ТОВ "КІГЛІ"

Підприємство ТОВ "КІГЛІ" (м. Київ #"870339.files/image002.gif">

Рис.2.1. Пеленгаційний метод

При вимірюванні пеленгу, тобто напрямку поширення сигналу від джерела випромінення, який відкладається за годинниковою стрілкою від Півночі (визначається за компасом), будується лінія рівних пеленгів (ЛРП1), на якій знаходиться об’єкт з невідомими координатими. Для однозначного визначення горизонтальних координат об’єкта на поверхні Землі необхідно отримати радіосигнал від другого радіонавігаційного орієнтира (РНО2) і так само побудувати другу ЛРП2, яка перетнеться з першою ЛРП1 в одній точці (рис.)

Зворотно, при радіопеленгації двох і більше рознесених радіомаяків, місце розташування яких відомо, можна визначити положення радіопеленгатора. І в тому і в іншому випадку для отримання задовільної точності потрібно, щоб визначені напрямки достатньо відрізнялися один від одного. У першому випадку цього досягають вибором точок, з яких здійснюється радіопеленгація, в другому - шляхом вибору відповідних радіомаяків.

Радіопеленгація може бути в різному ступені автоматизована і використовувати різні радіотехнічні методи:

Амплітудний метод. Для пеленгації амплітудних методом застосовують антенну систему, яка має діаграму спрямованості з одним або кількома чіткими мінімумами або максимумами. Наприклад, при пеленгації джерела в УКХ діапазоні типовим є застосування антен типу хвильового каналу для пошуку по максимуму. В КХ діапазоні часто застосовується рамкова антена, діаграма спрямованості має форму вісімки з двома чіткими мінімумами. Для усунення неоднозначності доводиться застосовувати спеціальні технічні рішення (наприклад, підключення додаткової штирьової антени, що дозволяє виключити один мінімум і перетворити діаграму направленості в кардіоїду). Радіопеленгація цим методом може вироблятися як неавтоматично (шляхом повороту антени і пошуку максимуму або мінімуму на слух), так і автоматично.

Фазовий метод. При пеленгації фазовим методом застосовують антенну систему, яка дозволяє розрізняти сигнали, що приходять з різних напрямків, шляхом аналізу фаз прийнятих декількома антенами сигналів. Як правило, пеленгація цим методом автоматизована.

Допплерівський метод. Висновок про направлення (в деяких випадках - і про відстань) на джерело радіовипромінювання робиться на підставі характеру зміни доплерівського зсуву частоти сигналу, що приймається рухомим пеленгатором або рухається антеною пеленгатора. Допплерівський метод використовується, наприклад, при пеленгації аварійних радіобуїв міжнародної космічної системи пошуку і рятування потерпілих КОСПАС-САРСАТ.

Наряду з радіопеленгацією також використовується радіодальнометрія - визначення відстані між джерелом приймачем за часом і швидкістю поширення радіохвил. Радіодальнометрія використовується в радіолокаційних системах морського і авіаційного транспорту (системи інструментальної посадки), а також у сучасних системах супутникової навігації GPS і ГЛОНАСС.

Визначення відстаней R від рухомого об’єкта (РО) до що щонайменш 3-х радіомаяків (РНО) дозволяє побудувати три лінії рівних відстаней (ЛРВ), перетин яких дозволить визначити невідомі координати РО (рис.2.2).

Рис.2.2. Радіодальномірний метод на площині.

При розв’язанні спецзавдань за наявності обмеженої кількості радіомаяків та необхідності підвищення точності місцевизначення об’єктів використовують комбінації перерахованих методів, наприклад пеленгаційно-дальномірний (рис.2.3)

Рис.2.3. Пеленгаційно-дальномірний метод на площині.

Комбінований пеленгаційно-дальномірний метод використовується для визначення місцезнаходження абонентів мереж GSM та Wi-Fi, але зазвичай він не дозволяє досягти такої точності місцевизначення як дальномірний метод.

2.2 Визначення координат об’єктів з використанням супутникових навігаційних систем

2.2.1 Основні принципи і умови визначення координат об’єктів

У 60-ті рр. XX століття відбулася революція. Успішні запуски космічних апаратів позначили практичну можливість розробки системи глобального позиціонування, яка дозволяє обчислювати географічні координати на поверхні Землі і у навколоземному просторі шляхом вимірювання відстаней до декількох штучних супутників Землі [3, 5, 8].

Основними принципами визначення координат за радіосигналами навігаційних штучних супутників Землі (НШСЗ) є трілатерація, радіодальнометрія, точна часова прив'язка генераторів радіосигналу, уточнення ефемерид НШСЗ і корегування похибок визначенних координат.

Супутникова трілатерація - це спосіб визначення координат об’єкту через групу з 3-х супутників. Точні координати об’єкту можуть бути обчислені для місця на поверхні Землі через вимірювання відстаней від групи супутників, якщо відомо їх положення у просторі. У цьому розумінні НШСЗ є радіомаяками з відомими координатами. Якщо відстань від одного супутника відома, можна описати сферу заданого радіусу навколо нього (рис. 2.4, а).

                   а)                                                               б)

Рис. 2.4. Визначення координат об’єкту за сигналами групи НШСЗ

Якщо відома також відстань і до другого супутника, то місце розташування об’єкту буде у колі, що задається перетином двох сфер (рис. 2.4, б). Третій супутник визначає дві точки на колі (рис.2.5, а), а четвертий - одну (рис.2.5, б), яка і характеризує дійсне положення об’єкта у просторі.

а)                                                               б)

Рис. 2.5. Визначення координат об’єкту за сигналами групи супутників

Проте для визначення горизонтальних координат наземних об’єктів (без висоти) у більшості випадків достатньо вимірювання відстаней до 3-х навігаційних супутників (рис. 2.2).

В обох випадках для визначення відстані між супутником і об’єктом з невідомими координатами знати час розповсюдження сигналу, тобто знати, коли радіосигнал «покинув» супутник і коли «досяг» приймача РО .Для цього на супутнику і в приймачі одночасно генерується синхронний псевдовипадковий код. Тобто приймач РО та передавач супутника синхронізовують так, щоб вони одночасно генерували однаковий код. Вхідний код супутника приймається РО та визначається як давно приймач генерував такий самий код (рис. 2.6).

Рис. 2.6. Визначення затримки часу прийнятого сигналу супутника відносно сигналу приймача РО

Використання цифрового двійкового коду дозволяє приймачу визначити часову затримку в будь-який момент часу. Крім того, супутники GPS випромінюють сигнал на однаковій частоті, але при цьому кожен супутник ідентифікується за своїм псевдовипадковим кодом (PRN або PseudoRandom Number code).

Для максимально точного визначення відстаней від РО до навігаційних супутників проводиться високоточна часова синхронізації годиників в приймачі РО і в навігаційних супутниках. На супутниках встановлені атомні годинники, що мають точність близько однієї наносекунди, а у примачах РО - кварцеві, що мають точність в тисячі разім меншу, ніж атомні. Зважаючи на те, що було б занадто дорого і практично неможливо встановити атомний годинник у кожен GPS приймач, тому для усунення похибок синхронізації годинників приймача і супутників використовуються додаткові вимірювання радіосигналів від більшої кількості навігаційних супутників, ніж було б потрібно для визначення координат РО

.2.2 Точність оцінки координат об’єктів за сигналами супутникових навігаційних систем та джерела похибок

Обчислення припускають, що сигнал поширюється з незмінною швидкістю, яка дорівнює швидкості світла у вакуумі. Проте в реальності все набагато складніше. Швидкість світла є константою тільки у вакуумі. Коли сигнал проходить через іоносферу (шар заряджених частинок на висоті 130-290 км) і тропосферу, його швидкість розповсюдження зменшується, що призводить до помилок у вимірюванні дальності [3, 8-10].

Іноді виникають помилки в ході атомних годинників і орбітах супутників, але вони зазвичай незначні і ретельно відстежуються зі станцій спостереження.

Багатопроменева інтерференція також вносить помилки у визначення місця розташування за допомогою GPS. Це відбувається, коли сигнал відбивається від об'єктів, розташованих на земній поверхні, що створює помітну інтерференцію з сигналами, що приходять безпосередньо з супутників. Спеціальна технологія обробки сигналу і продумана конструкція антен дозволяє звести до мінімуму це джерело помилок.

Усі похибки визначення координат об’єктів можна поділити на систематичні та випадкові. Систематичні похибки є відносно постійними величинами, що змінюються за визначеним законом і, як правило, характеризуються просторово-часовою кореляцією. Питома вага систематичних похибок навігаційних визначень зазвичай перевищує випадкові складові похибок, закон зміни яких визначити дуже складно.

Якщо розглядати систематичні складові похибок визначення координат РО за супутниковими РНС, то до основних чинників, що їх викликають, треба віднести: похибки часу і ефемерид, іоносферні похибки, а також так званий селективний доступ (штучне загублення сигналу GPS, яке було скасовано у 2000 р., але може бути знову активоване військовими). З таблиці 2.1 видно, що саме ці фактори роблять найбільший внесок у точність визначення відстаней між об’єктами і навігаційними супутниками.

Таблиця 2.1

Середньоквадратичні похибки вимірів псевдодальностей за СНС

   Погрішності НП  СКВ, м   ГНСС

Іоносферні

Тропосферні

Часу і ефемерид

Шуми приймача

Відбиття сигналів

Селективний доступ (S/A)

Загальний бюджет похибок

ГЛОНАСС

15

2

4

3

3

0

11

GPS

7

0,7

3,6

1,5

1,2

24

25,3/8,1*


У сучасних GPS приймачах використовують різні алгоритми усунення цих затримок, але похибки від деяких джерел, що виникають при роботі GPS, важко видалити.

Визначення псевдошвидкостей у приймачах сигналів СНС базується на вимірах доплерівського зсуву несучих сигналів. Похибка виміру радіальної швидкості за фазою знаходиться в межах 1,5 - 5,5 см./с. Основні складові похибок виміру псевдошвидкостей, визначених приймачем ГНСС за фазовими вимірами, наведені у таблиці 2.2.

Таблиця 2.2

Середньоквадратичні похибки виміру псевдошвидкостей за СНС

Джерела похибок

СКВ, м/с


ГЛОНАСС

GPS

1. Шум годинника супутника

  


2. Шум приросту виміру дальності

  



Дослідження і оцінка факторів, що впливають на рівень похибок визначення координат в різних умовах застосування приймачів СНС, показали, що похибки вимірювання псевдодальностей і псевдошвидкостей, які використовуються для розрахунку поточних координат і швидкості АТЗ, можуть значно перевищувати номінальні значення, наведені у таблицях 2.1 і 2.2.

В результаті чого номінальні (регламентні) значення похибок координат і швидкостей АТЗ, одержаних в результаті обробки псевдодальностей і псевдошвидкостей у приймачах СНС, суттєво перевищуються (табл.2.3).

Таблиця 2.2.

Вплив експлуатаційних факторів на похибки визначення площинних координат рухомих об’єктів за СНС GPS

Похибка, м   Складові

 Типове значення

Найгірший випадок

Бортовий годинник супутника

2-3

25

Положення супутника

1-2

5

Селективний доступ (SA)

30-50

100

Тимчасові флуктуації

3-5

15

Затримка сигналу в іоносфері

10-15

100

Затримка сигналу у тропосфері

3-5

30

Багатопроменеве поширення сигналу

10

50

Шуми приймача

5

15

Загальний ефект

100 (95%)

300 (99,99%)


Насамперед це трапляється коли функціонування навігаційної системи виходить за припустимі межі через внутрішні збої (зсув шкал часу НС, великі похибки розрахунку ефемерид і т.д.), а також коли бортова навігаційна апаратура АТЗ працює у складних (неблагоприємних) умовах.

Окремим фактором, який може у декілька разів збільшити похибку визначення координат об’єктів, викликану вищезазначеними факторами є так званий геометричний фактор погіршення точності. Геометричний фактор стандартно представляється у вигляді деякого коефіцієнту, який залежить від азимутів і кутів піднесення кожного навігаційного супутника, що знаходиться над горизонтом РО. Для визначення координат і складових швидкості об'єкта в СНС використовуються виміри псевдодальностей і радіальної псевдошвидкості. Випадкова некорельована частина похибки вимірювання псевдодальності називається еквівалентною похибкою дальності ЕПД (в зарубіжній літературі застосовується термін UERE -User Equivalent Range Error) [8, 10], а випадкова некорельована частина похибки вимірювання швидкості - еквівалентною похибкою швидкості ЕПШ (даному терміну відповідає англійське UERRE - User Equivalent Range Rate Error).

Як вже зазначалось у п.1.2.1 для визначення трьох просторових координат потрібно використовувати чотири незалежні виміри псевдодальностей до чотирьох супутників, що утворюють з РО деяку геометричну конфігурацію. Найпростішим і найзагальнішим підходом до оцінки точності визначення координат і системного часу є множення ЕПД на геометричний фактор зниження точності Г (в англійському варіанті DOP - delution of precision), що відображує взаємну геометрію чотирьох супутників і споживача. Аналогічно похибка визначення швидкості споживача і швидкості дрейфу годинників його оцінюється множенням ЕПШ на Г.

Добуток цього коефіцієнту Г на значення похибки навігаційних визначень () (СКВ) дає значення результуючої похибки місцевизначення РО за сигналами СНС [10, 11].

                     (2.1)

Важливо відмітити, що вирішення навігаційної задачі фактично неможливе, коли осі векторів “споживач-супутник” знаходяться в одній площині (рис.2.7). Г при цьому нескінченно зростає. Навпаки ж значення Г набагато менше і відповідно менша похибка місцевизначення, коли навігаційні супутники, що використовуються для вирішення навігаційної задачі, розподілені по небу.



Якщо розглядати випадок, коли навігаційні визначення здійснюються за 4-ма супутниками і осі векторів “споживач-супутник” утворюють тетраедр, тоді об’єм цієї геометричної фігури обернено пропорційно пов’язаний з величиною Г. Тобто чим більший об’єм тетраедра, тим менше значення Г і навпаки. Тетраедр найбільшого об’єму практично можливий у випадку, коли один із супутників знаходиться у зеніті над споживачем, а решта три розташовані з рівними кутовими відстанями (по 120 градусів) і якомога ближче до горизонту (рис.2.8). При такій геометрії коефіцієнт Г досягає свого мінімального значення 1,732.

Геометричний фактор завжди є невід’ємною складовою похибок навігаційних визначень, одержаних за будь-якою РНС. Зниження його впливу на результуючу точність навігаційних визначень можливе лише за наявності інформаційної надлишковості, коли існує можливість вибору оптимальних груп НШСЗ (наприклад при одночасній роботі за декількома сузір’ями супутників різних систем). У цьому випадку геометричний фактор береться в якості критерію вибору оптимальних груп НС і потребує мінімізації. Проте на практиці не завжди вдається забезпечити навігаційні визначення з мінімальним геометричним фактором. Специфіка роботи наземного транспорту, зокрема автомобільного, характеризується частим перебуванням його навігаційної апаратури у складних для поширення радіохвиль умовах, які призводять до появи ненормованих похибок навігаційних визначень.

У зв’язку з цим доцільно дати визначення поняттю „складні умови” і охарактеризуємо основні випадки, коли вони виникають. Під складними умовами експлуатації навігаційної апаратури СНС треба розуміти:

·           позиціювання транспортних засобів в умовах висотної міської забудови, в передгір’ях, ущелинах, просіках лісних масивів, поблизу високих берегів річок і водоймищ та інших рельєфних завад на шляху поширення сигналу від навігаційних супутників (НС) до АТЗ;

·        знаходження під кронами дерев, поблизу металевих решіток, транспортної контактної мережі та ліній високовольтних електропередач;

·        рух АТЗ у щільному транспортному потоці.

Причинами зростання похибок позиціювання у складних експлуатаційних умовах є:

·           наявність перевідбивання сигналів та їх захват навіть за відсутності прямих сигналів від НС;

·        часті втрати сигналів НС і припинення слідкування за фазою їх несучих;

·        пропуск фазових циклів;

·        неможливість відстеження сигналів одних і тих самих НС на протязі часу, достатнього для реалізації алгоритмів згладжування кодових вимірів фазовими.

Додатковий внесок у бюджет похибок позиціювання, що призводить до перевищення їх регламентованих значень згідно федеральних планів ГНСС ГЛОНАСС і GPS, викликаний:

·           багатопроменевим поширенням сигналів НС;

·        неможливістю забезпечення мінімального геометричного фактору робочих сузір’їв НС;

·        частою зміною складу робочих сузір’їв НС.

Перераховані фактори призводять до збільшення загальної похибки вимірів псевдодальностей до 100 і більше метрів (результуючі похибки позиціювання АТЗ досягають приблизно таких самих значень (табл.1.3)), що є неприйнятним для вирішення багатьох задач управління автотранспортом у містах і населених пунктах, особливо при перевезеннях цінних й небезпечних вантажів та супроводження VIP пасажирів.

.3 Режим диференціальної корекції координат

Диференціальна корекція координат - це метод, який значно покращує точність визначених за допомогою СНС GPS координат об’єктів [3, 8, 12]. Для реалізації диференційного режиму використовується приймач GPS, розташований в точці з відомими координатами (Differential Base Station), та інші пересувні GPS приймачі, що знаходяться поблизу базової станції (до 500 км) і визначають свої координати за тими ж самими навігаційними супутниками, що і базова станція (БС) (рис.2.9, 2.10).

Рис.2.9. Диференціальна корекція координат РО.

Основним призначенням диференційного режиму є компенсація (зниження) сильнокорельованих (систематичних) складових похибок координат РО, що знаходяться поблизу стаціонарної апаратури базової станції.

Рис.2.10. Диференційний режим роботи ГНСС.

Вагова частка сильнокорельованих складових похибок координат визначених за сигналами СНС у середньому складає 70-90 %. Тобто якщо похибка визначення координат РО у номінальному режим роботи апаратури GPS за ідеальних геометричних умов знаходиться у межах 15-25 м., то у диференційному режимі знижується до 1-5 м.

Існує ряд ознак, за якими можна класифікувати диференційний режим:

) Тип основних вимірів - фаза коду або фаза несучої частоти сигналу;

) Тип корекції - корекція псевдодальності і псевдошвидкості або параметрів (координат, швидкостей і прискорень), що розраховуються на їх основі;

) Місце проведення процедури корекції - у споживача (на борту АТЗ) або у деякому центрі;

) Засоби передачі корегуючою інформації - неземні або супутникові системи радіозв’язку, канали Інтернет тощо.

Згідно першої ознаки диференційна корекція може здійснюватися за результатами вимірів коду і фази несучої. Перший варіант стандартно підтримується багатьма сучасними приймачами GPS і не потребує додаткових апаратних елементів, що підвищують їх вартість.

Другий спосіб, детально описаний у [3,8], потребує безперервного (без зривів) стеження за фазою несучої та відсутності пропусків фазових циклів. Реалізація диференціальної корекції за фазою несучої потребує дорогої навігаційної апаратури (класу RTK), яка має обмежену область застосування (геодезія і геологія). Застосування такої апаратури на наземному транспорті у більшості випадків є недоцільним. Отже існує необхідність розробки більш простих та економічно прийнятних рішень для використання в рамкахсистем класу AVL.

Найбільше розповсюдження на практиці одержав метод диференційної корекції координат, розрахованих за кодовими вимірами (рис.А.1 у додатку А). Співставляючи власні координати , виміряні за сигналами НШСЗ, з апріорно відомими координатами фазового центру антени  базова станція розраховує відповідні похибки власного місцевизначення :

    (2.2)

Відомо, що величина цих похибок місцезнаходження є приблизно однаковою для усіх споживачів ГНСС, які знаходяться поблизу базової станції і визначають свої координати за одними й тими ж оптимальними сузір’ями навігаційних супутників з координатами . Тому ці похибки можуть використовуватись в якості виправлень для уточнення координат рухомих об’єктів , визначених їх бортовою навігаційною апаратурою у номінальному режимі:

,       (2.3)

Метод введення виправлень у координати є порівняно простим, але має істотні недоліки - обмеження дальності дії та застосування однакових (визначених за власним оптимальним сузір’ям) виправлень до координат усіх РО, що знаходяться в зоні дії БС. Дійсно, апаратура РО використовує для розрахунку власних координат навігаційні супутники, що утворюють оптимальні (за геометричним фактором і рівнем сигналу) сузір’я, а тому і БС повинна використовувати ті ж самі сузір’я. Насправді ж для розрахунку виправлень БС використовує власні оптимальні сузір’я НС, які не завжди співпадають з робочими сузір’ями РО. В результаті чого застосування виправлень до координат РО, що знаходяться на різному віддаленні від БС, може призвести до суттєвого зниження ефективності диференціальної корекції. По мірі віддалення РО від БС точність визначення координат РО буде ще більше погіршуватись. Цей недолік можна зменшити якщо проводити централізовану обробку інформації за наявності не просто координат РО, а відстаней до навігаційних супутників і відповідних виправлень до них, що передаваються з БС. Це дозволяє апаратурі РО обирати ті сузір’я навігаційних супутників, які є оптимальними для визначення координат конкретного об’єкту. Схема застосування методу диференціальної корекції псевдовідстаней наведена на рис.А.2 (додаток А).

2.4 Застосування методу відносно-диференційних визначень координат рухомих об’єктів в AVL системах

Як вже зазначалось на сьогоднішній день найбільш ефективним методом підвищення точності навігаційних визначень є застосування разом з навігаційними супутниками наземних базових станцій диференційного режиму, що виробляють виправлення до координат рухомих об’єктів. Проте, суттєвим недоліком диференційного режиму корекції координат або псевдодальностей, що обумовлює його обмежене застосування в AVL системах, є необхідність використання дорогої навігаційної апаратури з точною геодезичною прив’язкою на місцевості і додаткових телекомунікаційних каналів для передачі корегуючих повідомлень. На даний момент в Україні поки що не створено повноцінної мережі БС диференціального режиму, хоча роботи у цьому напрямку ведуться.

У зв’язку з вищенаведеним, пропонується застосувати в AVL системах більш просте і порівняно недороге рішення, що базується на алгоритмічній реалізації методу відносно-диференційних визначень навігаційних параметрів АТЗ [14, 15], що використовує різницеві виміри псевдодальностей до навігаційних супутників. На відміну від стандартного диференційного режиму, згідно якого координати АТЗ корегуються за допомогою виправлень, вироблених БС, відносно-диференційний метод використовує властивість відносних різницевих вимірів навігаційних параметрів. При цьому усі АТЗ повинні знаходитись у межах робочої зони БС (ДЦ) і використовувати для навігаційних визначень однакові оптимальні сузір’я НШСЗ (рис.2.11).

Рис. 2.11. Схема організації збору первинної навігаційної інформації у диспетчерському центрі.

Практичне застосування цього методу передбачає наявності на борту АТЗ і в диспетчерському центрі однакового відносно недорого навігаційного обладнання у складі: приймачів сигналів ГНСС і пристроїв зв’язку.

Процес обробки навігаційної інформації розподілений на три етапи і починається, як і у номінальному режимі, з вимірювання апаратурою АТЗ часової затримки проходження сигналу від кожного з  видимих НШСЗ до  АТЗ та розрахунку відповідних псевдодальностей (відстаней „приймач АТЗ-НС”) :

,                                 (2.4)

де  - часова затримка поширення сигналу від - го НШСЗ до -го АТЗ, - швидкість поширення радіохвиль у просторі.

Навігаційна апаратура ДЦ закріплюється на місцевості з високою точністю і проводить розрахунок псевдодальностей до кожного навігаційного супутника (рис.2.11).

На основі відомих координат апаратури ДЦ і розрахованих псевдодальностей визначаються азимути і кути місця кожного НС відносно ДЦ.

Розраховані на борту АТЗ псевдодальності синхронно передаються каналами зв’язку у ДЦ для проведення комплексної (вторинної, третинної) обробки та визначення координат АТЗ. При цьому суттєвою перевагою такого варіанту порівняно зі стандартним рішенням (коли у ДЦ передаються готові координати АТЗ) є те, що під час передачі каналами зв’язку навігаційна інформація перебуває у непридатному для використання третьою стороною вигляді, що сприяє загальному покращенню її захисту. До того ж перенесення подальшої (вторинної, третинної) обробки навігаційної інформації у ДЦ дозволяє суттєво спростити бортову навігаційну апаратуру АТЗ і знизити вартість апаратно-програмного комплексу АСМДУ НТ.

Розраховані набори псевдодальностей  збираються у ДЦ для проведення вторинної обробки, що передбачає спочатку розрахунок різниць (приростів) псевдодальностей , які були визначені на борту АТЗ і апаратурою ДЦ, за формулою:

,                                     (2.5)

де ,- відповідно псевдодальності між парами “ДЦ - N-й супутник” і “k-й АТЗ - N-й супутник”.

Таким чином, диференційний ефект отримується завдяки компенсації сильнокорельованих складових похибок при вимірюванні приростів псевдодальностей між парами “k-й АТЗ - N-й супутник” і “ДЦ - N-й супутник”. Визначення приростів псевдодальностей здійснюється з високою точністю (залишкова похибка складає декілька дм).

Отримані таким способом прирости псевдодальностей  через матрицю  направляючих косинусів азимутів і кутів місця зв’язуються з приростом координат  кожного АТЗ відносно ДЦ.

,                           (2.6)

де -

матриця направляючих косинусів кутів місця  і азимутів ; у матриці направляючих косинусів елементи стовпців задають коефіцієнти по широті, довготі, висоті і часу, а кожен рядок відповідає різниці дальностей від до N-го супутника. Значення кутів місця  і азимутів  можна вважати однаковими для ДЦ і АТЗ, що знаходяться поблизу.

Знаючи точні координати ДЦ  (можуть визначаються шляхом геодезичної прив’язки або усереднення великої вибірки навігаційних вимірів) і розрахувавши за (2.6) , можна з високою точністю визначити координати АТЗ, що знаходяться в робочій зоні опорної станції ДЦ:

                                 (2.7)

У першому наближенні точність запропонованого методу відповідає диференційному режиму корекції координат, тобто залишкові похибки місцевизначення складають 1-5 м. Проте ефективність обох методик (звичайної і відносної) значно зменшується при зростанні відстані між АТЗ і ДЦ. Як показали дослідження гранична відстань між АТЗ і ДЦ, при якій доцільно застосовувати локальний диференційний режим (використовується один стаціонарний приймач СНС з відомими координатами), складає приблизно 500 км., що в принципі достатньо для моніторингу міських, приміських і навіть міжміських перевезень.

Загалом точність як стандартного так і відносного диференційних режимів може бути оцінено лінійною залежністю [8, 11] середньоквадратичного сферичного відхилення похибки місцевизначення () від відстані  і затримки надходження виправлень t (або первинної навігаційної інформації) у центр обробки (рис.2.11):

                          (2.8)

де  м,  м/с,  м/км.

Обробка експериментальних даних показала, що погрішності (СКВ) лінійної апроксимації похибок за допомогою (2.8) при оцінці компенсацій псевдодальностей можуть характеризуватися залежністю:

,                           (2.9)

де м, Т = 3847 с, км.

З урахуванням (2.8) і (2.9) середньоквадратичне сферичне відхилення при відносному місцевизначенні одного з пари об’єктів може бути визначено наступним співвідношенням:

,                 (2.10)

де  - геометричний фактор для точності визначення просторових координат (PDOP), а  були визначені вище.

У випадку застосування відносно-диференційного методу коефіцієнт b буде мати більше значення (приблизно на 15-20%), що пов’язано з появою додаткових похибок через неточність вимірів апаратурою АТЗ і ДЦ азимутів та кутів місця навігаційних супутників у матриці косинусів, які приймаються однаковими незалежно від відстані між ними.

Значною перевагою запропонованого відносно-диференційного режиму є використання однакової навігаційної апаратури побутового класу у ДЦ та на всіх АТЗ, що є необхідною умовою ефективної компенсації сильнокорельованих погрішностей при роботі з однаковими сузір’ями навігаційних супутників. Завдяки цьому запропонована методика може бути легко реалізована на базі будь-якого апаратно-програмного комплексу AVL системи.

Проте запропонований відносно-диференційний метод, як і стандартна диференційна корекція координат, включає лише детерміновані процедури обробки, які не дозволяють зменшити несистематичні (слабокорельовані) складові похибок навігаційних визначень, що викликані впливом випадкових експлуатаційних факторів. Тому для підвищення результативності відносно-диференційного методу доцільно використовувати усю корисну інформаційну надлишковість навігаційної системи. Це означає, що в обробку повинна залучатись якомога більша кількість навігаційних вимірів, одержаних від множини навігаційних підсистем, зокрема одразу декількох елементарних сузір’їв НШСЗ систем GPS, ГЛОНАСС (у перспективі ГАЛІЛЕО), наземних систем „Чайка” і „Лоран С”.

Випробування, проведені в рамках науково-дослідної роботи [16] показали достаньо високу ефективність роботи методу відносно-диференціальних визначень координат АТЗ на тестовому маршруті (рис.А.3-А.5 у додатку А).

Висновки по розділу

У другому розділі дипломної роботи було проведено аналіз технологій та методів визначення координат об’єктів, що використовуються у сучасних AVL системах, зокрема були розглянуті кутомірний і дальномірний метод, за яким проводяться визначення координат з використанням наземних та супутникових навігаційних систем. За в результаті опрацювання теоретичного матеріалу та опублікованих результатів експериментальних досліджень було визначено, що точність визначення координат рухомих об’єктів з використанням СРНС є імовірнісною характеристикою, що залежить від впливу багатьох факторів, найбільш значними з яких є:

-       неточність визначення ефемерид супутників;

-        зсув шкали часу апаратури споживача відносно атомної шкали часу навігаційних супутників;

         іоносферна і тропосферна затримка поширення сигналів навігаційних супутників;

         геометричний фактор погіршення точності.

Для підвищення точності визначення координат об’єктів за сигналами СНС було розглянуто варіанти реалізації диференційного режиму роботи обладнання користувачів СНС. В якості найбільш точного варіанту обрано диференціальний метод корегування відстаней до навігаційних супутників з кодовими вимірами. Але цей варіант також потребує удосконалення і адоптації для успішного застосування в AVL системах. Отже на практиці пропонується застосувати більш економічно вигідний відно-диференційний метод, що передбачає використання у диспетчерських центрах та на всіх контрольованих АТЗ однакових навігаційних приймачів побутового класу, що на порядок дешевші за супутникову навігаційну апаратуру геодезичного класу.

У випадках, коли трапляються збої у роботі супутникової навігаційної системи і похибки місцевизначення сягають неприйнятних значень або взагалі неможливо визначити координати АТЗ, тоді доцільно використовувати інші джерела радіосигналів (GSM, Wi-Fi/Wi-Max або навіть RFID технологію).

3. ПРОЕКТНО-КОНСТРУКТОРСЬКИЙ РОЗДІЛ

3.1 Обгрунтування інформаційної структури і апаратного забезпечення AVL системи

.1.1 Основні функції створюваної системи та характеристики її інформаційного забезпечення

Задавданнями даного розділу дипломної роботи є описання інформаційної структури AVL системи, розробка алгоритмів функціонування її окремих елементів та вибір програмних засобів для створення системи.

Спочатку визначимо основні функції створюваної системи та характеристики інформаційного забезпечення.

Система надає адміністраторові наступні функції:

-    оновлення та індексація векторних карт місцевості,

-        керування реєстром транспортних засобів,

         оновлення версій ПЗ.

Операторові (користувачу) доступні такі функції:

-    перегляд фрагменту карти у питомому масштабі,

-        перегляд поточного місцезнаходження транспортних засобів,

         перегляд ретроспективних даних щодо місцезнаходження, швидкості та напряму руху транспортних засобів

Система розмежовує права доступу користувачів та відповідно надає такі функції:

-    реєстрація користувачів,

-        оновлення версій ПЗ;

         перегляд таблиць БД;

         додавання та індексація файлів векторної карти;

         перегляд фрагменту карти у вказаному масштабі;

         перегляд поточного місцезнаходження транспортних засобів;

         перегляд ретроспективних даних щодо місцезнаходження, напряму та швидкості руху ТЗ.

Вхідною інформацією для системи є:

-    файли, у яких збережено векторну карту місцевості;

-        файли з індексною інформацією;

         навігаційні дані щодо місцезнаходження, напряму та швидкості руху ТЗ, збережені у БД;

         файл налаштувань з’єднання з БД;

         реєстраційні дані трекера.

Вхідні дані вводяться з клавіатури, з файлу та надходять з мережі Internet.

Вихідними даними є:

-        перегляд таблиць БД;

-        побудовані індексні дані;

         графічне відображення фрагменту карти у визначеному масштабі;

         графічна інтерпретація поточного місцезнаходження ТЗ;

         графічна інтерпретація ретроспективних даних щодо місцезнаходження ТЗ;

         запити до БД, згенеровані на базі даних від трекерів;

         графічна інтерпретація отриманих від трекера даних.

         Вихідна інформація виводиться на екран монітора і зберігається у базі даних.

Інформаційне забезпечення системи включає в себе внутрішньомашине інформаційне забезпечення.

Внутрішньомашине інформаційне забезпечення виконано у вигляді набору таблиць і допоміжних об'єктів, що забезпечують коректну обробку та зберігання даних.

Дані системи зберігаються у вигляді записів реляційної бази даних та структурованих текстових ini-файлів.

Робота з базою даних відбувається через інтерфейс користувача, написаний на мові Borland Delphi 7.

3.1.2 Вимоги до апаратного забезпечення

Загальні вимоги до системи

Дана версія автоматизованої системи повинна функціонувати на базі моделі «клієнт-сервер» з реалізацією «товстого» клієнта. Серверна частина складається з сервера бази даних. Клієнтська та серверна части можуть розгортатися як локально (на одному вузлі), так і з можливістю віддаленого доступу (розподілена система).

Користувач може продивлятися вхідні та вихідні дані через інтерфейс системи.

Система повинна функціонувати протягом необмеженого часу, обмеження можуть визначатися тільки ресурсом апаратного забезпечення.

Персонал, що використовує систему, повинен вміти працювати з MS Windows та його додатками.

Вимоги до апаратного забезпечення

Для функціонування системи потрібен звичайний офісний комп'ютер. Мінімальна конфігурація комп'ютера:

процесор із частотою від 1800 Mhz;

оперативна пам'ять від 512 Мб;

жорсткий диск від 4 Гб;

монітор від 15';

клавіатура;

миша.

Чітких вимог до відеокарти нема.

Вимоги до системного програмного забезпечення

Для забезпечення роботи системи повинна бути встановлена операційна система Windows 98/2000/XP/7, а також СУБД MySQL.

Система запускається на виконання після встановлення СУБД MySQL, створення і заповнення таблиць бази даних, встановлення та індексації векторних карт місцевості.

3.2 Розробка структури AVL системи і алгоритмів функціонування її окремих модулів

.2.1 Модульна структура системи

Для реалізації функцій розподіленої інформаційної-навігаційної системи збору, збереження, обробки та відображення навігаційних і службових даних було розроблено її структуру (рис. 3.1).

Рис. 3.1. Структурна схема системи

До складу системи входять наступні блоки:

1.     Блок ТСР-серверу.

2.      Блок UDP-серверу.

.        Блок декодування даних від трекерів.

.        Блоки інтерфейсу з БД.

.        База даних системи.

.        Блоки інтерфейсу адміністратора та диспетчера.

.        Блок зчитування карт.

.        Блок індексування.

.        Блок масштабування та візуалізації.

На початку роботи система виконує завантаження налаштувань (рис. 3.2).

Після завантаження налаштувань система виконує спробу з’єднання з БД. Якщо з’єднання встановити не вдалося, система виводить відповідне діагностичне повідомлення та завершує свою роботу. Якщо з’єднання встановлене успішно, система визначає тип інтерфейсу та функціоналу за налаштуваннями.

Додаток може бути налаштовано для виконання функцій клієнта або сервера.

Якщо програма працює у режимі клієнта, то після вибору режиму роботи виконується завантаження векторних карт місцевості та індексних даних. Після цього система ініціалізує початкові координати та переходить до очікування та обробки команд користувача. Якщо користувач ініціював вихід з системи, система завершує свою роботу.

Якщо додаток працює у серверному режимі, після визначення типу функціоналу система налаштовує сервери ТСР та UDP. Після виконання налаштувань серверів система переходить до очікування команд користувача та мережевих пакетів даних від трекерів.

У разі надходження пакету система його обробляє та вносить необхідні зміни до даних у БД та повертається до режиму очікування.

Якщо надійшла команда від користувача-адміністратора, система виконує відповідні дії та повертається до режиму очікування. У разі надходження команди «Вихід» система закриває відкриті з’єднання та завершує роботу.

Взаємодія між клієнтськими та серверними додатками виконується за допомогою розподіленого використання БД.

Рис. 3.2. Узагальнений алгоритм роботи системи

3.2.2 Розробка структури бази даних

БД було розроблено на основі реляційної моделі [9]. Дані представлені у вигляді двовимірних таблиць, пов’язаних між собою зв’язками типу «один-до-багатьох».

Розроблена база даних складається з шести таблиць (рис. 3.3), в яких зберігається інформація, що стосується відомостей про трекери, навігаційні дані, дані про підрозділи підприємства, транспортні засоби, на яких встановлено трекери, типи трекерів.

Рис. 3.3. Концептуальна схема бази даних

Перегляд та модифікація даних таблиць виконується за допомогою формування SQL-запитів.

Таблиця vehicles містить інформацію про окремі ТЗ та їх положення на поточний момент.

Таблиця 3.1

Поля таблиці «vehicles»

Назва поля

Ключ

Тип даних

Коментар

VehicleID

Pr.key

Int

Ідентифікаційный код ТС

VehicleRegNumber

унікальне

Сhar(8)

Бортовий номер ТС

VehicleTypeID


Short

Код марки ТС

GroupID

Default = 0


Код підрозділу

PositionX


Double

Довгота (град)

PositionY


Double

Широта (град)

Speed


Short

Швидкість (км/ч)

Course


Short

Курс (град)

VehicleStatus

Default = «0;»

Char(25)

Статус ТС

Pdop


Short

Параметр геометрії сузір’я

Nsatellits


Short

Число супутників

Validity

Default = 1

Int (1)

Ознака достовірності

RSSY


Short

Параметр RSSY (для Р23)

GMTime1


long

Службове поле для «чорної скрині»

GMTime2


Long

Службове поле для «чорної скрині»

GMTime3


Long

Час найпершої позначки у БД

GMTime4


Long

Час останньої нав. позначки у БД

PhoneNumber


Vсhar(11)

Телефонний номер

DriverName


Vchar(45)

Дані про володаря

Comments


Vchar(25)


VehicleColor

Default = 0

Long

Колір навіг. позначки

DeviceType

Default = 0

Int(1)

Тип пристрою: 0 - навігатор 1 - диспетчер; 2 - Р23 3 - чорна скриня

DevType

Default = “Navigator”

VChar(25)

Тип пристрою

VoiceGroup

Default = 0

Int(1)

Група голосового зв’язку (для Р23)

Protocol

Default = “V3.01”

VChar(25)

Версія командного протоколу

BlowfishKey


VChar(32)

Шифрувальний ключ


Поля GMTime задають час у секундах від 01.01.1970 по GMT.

У полі VehicleStatus міститься список статусів ТЗ, в якості розділювача використовується “;”

Таблиця «vehtypes» містить інформацію про марки транспортних засобів.

Таблиця 3.2

Поля таблиці «vehtypes»

Назва поля

Ключ

Тип даних

Коментар

VehicleTypeID

Pr.key

Short

Код марки

TypeText


Varchar(30)

Марка

Q1


DOUBLE

Тарировочний коефіцієнт для аналогового входа - Ain0 (0-4В)

Q2


DOUBLE

Тарировочний коефіцієнт для аналогового входа - Ain1 (0-4В)

Q3


DOUBLE

Тарировочний коефіцієнт для аналогового входа - Ain2 (0-40В)

Q4


DOUBLE

Тарировочний коефіцієнт для аналогового входа - Ain3 (0-40В)

TypeColor


Int(4)

Колір навіг. позначки


Таблиця «navdata» містить ретроспективну інформацію про навігацію.

Таблиця 3.3

Поля таблиці «navdata»

Назва поля

Ключ

Тип даних

Коментар

VehicleID

Pr.key

Int

Ідентифікаційний код ТС

GMTime

Pr.key

long

Час в сек

PositionX


Double

Довгота (град)

PositionY


Double

Широта (град)

Speed


Short

Швидкість (км/ч)

Course


Short

Курс (град)

VehicleStatus

Default = ‘0;’

Char(25)

Статус ТС

Pdop


Short

Параметр точности

NSatellits


Short

Число супутників

Validity

Default = 1

Int(1)

Ознака достовірності

Visible

Default = 1

Int(1)

Ознака відображення на карті

DataChannelID


Int(1)

Канал передачі даних

RTFlag

Default = 1

Int(1)

Ознака real-time

Ain0


Short

Напруга живлення

Ain1


Short

Рівень виібрації

Ain2


Short

Датчик 1

Ain3


Short

Датчик 2

Din


Int(1)


Dout


Int(1)


Track

Default = 0

Short

Пройдена відстань у метрах


Таблиця «trackers» містить реєстраційну інформацію щодо трекерів. За допомогою цієї таблиці виконується прив’язка IMEI трекера до його реєстраційного номера у системі.

Таблиця 3.4

Поля таблиці «trackers»

Назва поля

Ключ

Тип даних

Коментар

IMEI

Pr.key

Char(15)

IMEI код трекера

VehicleID


int

Ідентифікаційний код трекера в базі

tracker_type


int

Код типу трекера

descr


Char(30)

Текстова примітка


Таблиця «trackertypes містить інформацію про типи трекерів, з якими може працювати система.

Таблиця 3.5

Поля таблиці «trackertypes»

Назва поля

Ключ

Тип даних

Коментар

tracker_type


int

Код типу трекера

tracker_name


Char(30)

Назва типу трекера


Таблиця «Units» містить дані про структурні підрозділи підприємства.

Таблиця 3.6

Поля таблиці «Units»

Назва поля

Ключ

Тип даних

Коментар

VehicleID

Pr.key

int

Ідентифікаційний код ТС

Preffix


Char(30)

Назва підрозділу


.2.3 Блок взаємодії з БД

Блок виконує функції зв’язку системи з СУБД MySQL та контроль коректності додавання (рис. 3.4).

Рис. 3.4. Схема роботи блоку взаємодії з БД

Блок реалізовано за допомогою технології ADO.

Під час запуску програми після ініціації серверів до поля «Connection String» компоненту «ADOConnection» завантажуються дані з файлу «constr.ocs». Ці дані являють собою побудований певним чином рядок з’єднання з БД. Редагування таблиць БД здійснюється за допомогою компонентів «ADOTable». Запити виконуються за допомогою компонентів «ADOQuery». Усі компоненти ADOTable та ADOQuery зв’язуються з БД через налаштований компонент ADOConnection.

На початку роботи блок отримує запит до БД від одного з модулів системи. Після цього запит транслюється у мову SQL та передається до СУБД. Якщо запит потребує відповіді, блок чекає на її надходження, після чого відповідь передається відправникові запиту. Після обробки запитів блок завершує роботу.

.2.4 Блоки інтерфейсу користувача

Взаємодія користувача з програмним комплексом відбувається через інтерфейс. Інтерфейс реалізовано у вигляді екранних форм, на яких розміщені візуальні компоненти, за допомогою яких користувач викликає необхідні функції комплексу, задає вхідні дані, зберігає результати роботи системи.

Віконний користувацький інтерфейс системи побудовано за технологією багатодокументного інтерфейсу MDI. Головне вікно системи є контейнером для дочірніх інструментальних та діалогових вікон.

За допомогою інтерфейсу користувач може:

редагувати перелік трекингових пристроїв;

редагувати перелік транспортних засобів;

реєструвати нові пристрої у системі;

продивлятися карту місцевості з відображенням місцезнаходження, напрямку та швидкості руху пристроїв;

продивлятися протокол роботи системи;

виконувати налаштування системи.

.2.5 Блок зчитування векторних карт

Блок зчитування карт зчитує дані з файлу векторної карти у форматі *.mp та заповнює відповідні структури у програмі (рис. 3.5). Дані щодо географічних об’єктів типу «Полігон» (Polygon), «Полілінія» (Polyline) та «Точка POI» заносяться у масив географічних об’єктів у оперативній пам’яті. Одночасно з цим дані щодо опорних точок цих об’єктів теж заносяться у масиви в оперативній пам’яті.

Рис.3.5. Схема роботи блоку зчитування векторних карт

.2.6 Блок індексації

Для пришвидшення відображення карти застосовується система індексування. При першому відкритті карти або якщо файли індексу пошкоджені відбувається індексація. Процес індексації полягає у відокремленні однієї з координат у окремий масив та сортуванні цього масиву (рис. 3.6).

Рис. 3.6. Схема роботи блоку індексації

Оскільки процес індексації, особливо на великих картах, є довготривалим, після побудови індексу він зберігається у вигляді типізованих файлів ptlat.ix та ptlon.ix. При наступному завантаженні програми індекс завантажується з цих файлів.

.2.7 Блок масштабування та візуалізації

Блок призначено для створення растрового зображення на базі векторної карти, з урахуванням масштабу та положення нормалі (рис. 3.7).

Рис.3.7. Схема роботи блоку масштабування та візуалізації

У сучасних навігаційних системах карти здебільшого зберігаються у векторних форматах. Водночас графічні адаптери сучасних ПК працюють з растровими зображеннями.

Оскільки дані щодо опорних точок побудови карти зберігаються у вигляді значень широти та довготи у градусах, являючи собою полярні координати на поверхні сфери, а область побудови є пласкою проекцією цих координат, необхідним є перетворення координат опорних точок у координати пласкої поверхні та перехід від градусів полярних координат до метрів декартової площини, а згодом - до пікселів області побудови згідно з обраним масштабом.

Через те, що як правило далеко не всі точки карти відображаються у області побудови, прорисовка усіх точок при кожному відображенні фрагменту не є доцільною. Тому при формуванні масивів видимих точок ті точки, що не потрапляють до області побудови, відкидаються.

Після формування списків точок окремих географічних об’єктів вони візуалізуються за допомогою стандартних методів класу TCanvas.

.2.8 Блоки серверів ТСР та UDP

Блоки серверів ТСР та UDP працюють за схожими схемами (рис. 3.8).

На початку роботи блок виконує отримання налаштувань серверного сокета. Після цього відповідний сокет налаштовується на очікування підключень до вказаного налаштуваннями порта сервера. У якості серверного сокета ТСР система використовує компонент TServerSocket з палітри компонентів середовища Delphi. Побудову серверного сокета UDP виконано з використанням компонента TIDUDPServer з палітри компонентів Delphi. Номер порта, що використовується компонентами за замовченням - 20010. У разі необхідності це значення можна змінити за допомогою налаштувань системи. Діапазон рекомендованих значень - від 1024 до 65535.

Рис. 3.8. Схема роботи блоків серверів ТСР та UDP

.2.9 Блок декодування даних

Блок декодування отримує дані, що надійшли від трекерів, та виділяє з них інформацію щодо номеру, місцезнаходження та режиму руху трекера (рис. 3.9).

На початку роботи блок завантажує перелік моделей трекерів та властивих їм сигнатур пакетів, після чого переходить до очікування даних. У разі надходження даних блок виконує пошук сигнатури. Якщо сигнатуру не знайдено, блок формує повідомлення щодо неопізнаного пакету. Якщо сигнатуру знайдено, блок виділяє з пакету ІМЕІ пристрою та виконує пошук трекера у БД. Якщо трекер не знайдено, блок формує діагностичне повідомлення щодо незареєстрованого трекера, інакше виконує декодування полів пакету та додавання інформації до БД.

Рисунок 3.9. Схема роботи блоку декодування даних

3.2.10 Блок налаштувань

Блок налаштувань виконує налаштування модулів та режимів роботи системи. Блок дозволяє налаштовувати параметри автоматичного режиму, період опитування стану мережі, розміри ехо-пакетів, параметри з’єднання з БД.

Користувач отримує доступ до налаштувань за допомогою екранних форм інтерфейсу.

.2.11 Блок відносно-диференційних визначень координат об’єктів

Блок відносно-диференційних визначень координат об’єктів призначений для проведення процедури уточнення координат шляхом визначення різниць псевдодальностей, виміряних однотипними примачами сигналів навігаційних супутників, один з яких встановлений у ДЦ, а інші - на борту транспортних засобів. Процедура відносно-диференційних визначень була описана у п.2.4 даної роботи, а алгоритм роботи блоку наведений на рис.3.10.

Рис. 3.10. Алгоритм вирішення навігаційної задачі з використанням відносно-диференційного методу.

Передумовою рішення навігаційної задачі за відносно-диференційним методом є визначення орієнтації базової лінії між приймачами АТЗ і БС, а звідси азимутів і кутів місця усіх навігаційних супутників, що знаходяться у межах радіовидимості БС [14,15]. На основі одержаних значень азимутів і кутів місця НШСЗ формується т.зв. матриця направляючих косинусів і розраховується значення геометричного фактору для кожного сузір’я НШСЗ. Далі розраховуються прирости псевдодальностей для кожного АТЗ і відповідно вектори відносних координат

В ході рішення навігаційної задачі з використанням відносно-диференційних визначень може бути використана різна кількість n пар вимірів псевдодальностей. Мінімальною необхідною кількістю вимірів для визначення планових координат АТЗ є n=3.

У випадку наявності надлишкових вимірів псевдодальностей у кількості некратній трьом (3<n<6 або 6<n<9,..).для пошуку оптимального рішення може застосовуватись алгоритм МНК [3]. В разі, коли  кратне трьом навігаційна задача вирішується окремо по кожному набору пар псевдодальностей. Таким чином, застосування запропонованого алгоритму (рис.3.10) за наявності надлишкових вимірів від інших навігаційних систем (СНС GPS, ГЛОНАСС, Galileo) дозволяє одержувати декілька результатів вимірів координат і відповідних похибок їх розрахунку по кожному АТЗ.

Даний алгоритм завдяки проведенню різницевих вимірів дозволяє знизити рівень сильнокорельованих (систематичних) складових похибок навігаційних визначень, але вимагає введення додаткових процедур статистичної обробки для зниження рівня залишкових (несистематичних) похибок навігаційних визначень Для досягнення найвищої точності оцінки координат АТЗ необхідно знайти оптимальне рішення з усієї множини одержаних варіантів.

3.3 Вибір засобів розробки програмного забезпечення

.3.1 Вибір мови програмування

Як середовище розробки було обрано Borland Delphi 7.0 - одна з найбільш потужних систем, що дозволяє на найсучаснішому рівні створювати як окремі прикладні програми Windows, так і розгалужені комплекси, призначені для роботи в корпоративних мережах і в Інтернет.Delphi дозволяє з невеликими витратами сил і часу розробити прикладні програми різного рівня складності, розподілені програми, що працюють з будь-якими базами даних [17, 18].Delphi - це комбінація декількох важливих технологій:

-   високопродуктивний компілятор в машинний код;

-       об'єктно-орієнтована модель компонентів;

-       візуальна (а, отже, і швидкісна) побудова програм з програмних прототипів;

-       засоби, що масштабуються, для побудови баз даних.

Основною перевагою об'єктно-орієнтованої моделі програмних компонент в Borland Delphi є максимальне ревикористання коду. Це дозволяє розробникам будувати додатки дуже швидко із заздалегідь підготовлених об'єктів, а також дає їм можливість створювати свої власні об'єкти для середовища Borland Delphi. Немає жодної різниці між об'єктами, що поставляються виробниками Borland Delphi, або третіми фірмами, і об'єктами, які може створити розробник програмного забезпечення. Delphi включає повний набір візуальних інструментів для швидкої розробки програм (RAD - rapid application development), що підтримує розробку призначеного для користувача інтерфейсу і підключення до корпоративних баз даних. VCL - бібліотека візуальних компонент, включає стандартні об'єкти побудови призначеного для користувача інтерфейсу, об'єкти управління даними, графічні об'єкти, об'єкти мультимедіа, діалоги і об'єкти управління файлами, управління DDE і OLE. Delphi - це інструмент, за допомогою якого легко створити програму з професійним інтерфейсом, є можливість працювати з будь-якими базами даних, створювати прикладні програми.

.3.2 Вибір СУБД

З усього розмаїття СУБД вирішено вибрати СУБД MySQL - компактний багатопоточний сервер баз даних. MySQL характеризується високою швидкістю, стабільністю и легкістю у використанні. MySQL є ідеальним рішенням для малих та середніх додатків. Вихідний код сервера компілюється на множину платформ. підтримує мову запитів SQL в стандарті ANSI 92, має ряд розширень до цього стандарту, котрих не мають інші СУБД.

Наведемо короткий перелік можливостей MySQL:

-   підтримка не лімітованої кількості користувачів, що одночасно працюють з базою даних.

-       кількість рядків у таблицях може досягати 50 млн.

-       висока швидкість виконання команд;

-       проста та ефективна система безпеки;

-       можливість безкоштовного використання для некомерційного застосування.

Для розробки AVL системи була обрано СУБД MySQL тому, що вона є безкоштовним продуктом і задовольняє вимогам до швидкодії і стабільності роботи під навантаженням. Також важливим є те, що MySQL адаптована для роботи з ОС Linux та веб-сервером Apache.

3.4 Керівництво користувача по встановленню і роботі з програмним забезпеченням системи

.4.1 Встановлення програмного забезпечення

Система поставляється у вигляді архіву, що саморазпаковується і складається з трьох файлів (лістинг головного файлу наведений у додатку Б):

·        NavSysCS.exe - виконуваний файл додатку;

·        ConStrBuilder.exe - інструмент для налаштування з’єднання додатку з БД;

·        constr.ocs - файл з налаштуваннями.

Для роботи з системою необхідно розкрити архів у будь-яку вільну папку (Рис. 3.11).

Рис. 3.11. Інтерфейс саморозкриваючогося архіву

Для роботи системи необхідно встановити драйвер ODBC для MySQL версії не нижче 3.51 та створити системний псевдонім для бази даних. Для цього слід відкрити Панель керування->Адміністрування->Джерела даних ODBC (рис. 3.12).

Рис. 3.12. Створення нового джерела даних ODBC

Далі необхідно обрати закладку «Системний DSN» та натиснути кнопку «Додати». У вікні вибору драйвера (рис. 3.13) необхідно обрати «MySQL ODBC 3.51 Driver» та натиснути кнопку «Готово».

Рис. 3.13. Вибір драйвера ODBC

У вікні налаштувань драйверу треба задати ім’я джерела даних, адресу сервера (якщо БД знаходиться не на локальному комп’ютері), ім’я користувача, пароль та обрати базу даних (рис. 3.14).

Рис.3.14. Налаштування драйвера ODBC

Після заповнення вказаних полів треба натиснути «ОК».

Останнім підготовчим кроком є налаштування сервера на роботу зі створеним джерелом даних, що здійснюється за допомогою програми ConStrBuilder.exe (рис. 3.15). У полі «Provider» треба вказати «MSDASQL.1». Значення «PersistSecurityInfo» - «False». У полі «Data Source» вказується ім’я щойно створеного джерела даних. У полі «DATABASE» - назва бази даних, у якій треба буде зберігати навігаційні дані. Значення поля «Option» - 0. Поля «Port» та «Server» заповнюються згідно до розташування та налаштувань сервера БД. Якщо сервер встановлено на локальний комп’ютер, то «Server» - «localhost», «Port» - 0. У полі «UID» вказується ім’я користувача БД. Після заповнення полів для перевірки з’єднання з БД треба натиснути кнопку «Проверить».

Рис. 3.15. Інтерфейс програми ConStrBuilder.exe

Якщо поля заповнено вірно, то з’явиться повідомлення про успішне з’єднання (рис. 3.16).

Рис. 3.16. Повідомлення про успішне з’єднання з БД

Після появи повідомлення необхідно зберегти налаштування у файлі «constr.ocs». Це робиться за допомогою кнопки «Сохранить».

Після цього можна виконати запуск сервера.

Після запуску файлу NavSysCS.exe відкривається головне вікно програми і її функції стають доступними користувачеві.

.4.2 Запуск програмного додатку

Програмний додаток запускається на виконання шляхом запуску файлу NavSysCS.exe. Під час першого запуску додатку користувачеві пропонується обрати режим роботи - клієнт або сервер. Після запуску додатку на екрані з’являється головне вікно програми з головним меню.

.4.3 Робота системи у режимі АРМ диспетчера

Після завантаження на екрані з’являється головне вікно програми (рис. 3.17).

Рис. 3.17. Головне вікно програми

У верхній лівій частині форми знаходяться поля вводу параметрів області побудови карти. За допомогою цих полів можна ввести широту та довготу центра області побудови.

Під полями вводу параметрів області побудови карти знаходиться вікно з переліком ідентифікаційних номерів ТЗ у базі даних. Для відображення положення конкретного ТЗ на карті треба встановити навпроти його номера помітку.

Основну частину форми займає область побудови карти. На карті відмічено географічні об’єкти, а також стрілками відповідного кольору відмічається місцезнаходження та напрям руху транспортних засобів.

У верхній правій частині головного вікна програми знаходиться панель навігації. кнопками «<»,«>»,«^» та «v» можна змінювати положення центру області побудови, а кнопками «+» та «-» - масштаб.

Якщо файли індексу не існують або пошкоджені, система видає відповідне діагностичне повідомлення (рис. 3.18).

Рис. 3.18. Діагностичне повідомлення про відсутність файлів індексу

Якщо натиснути «Нет», додаток буде закрито. Після натискання «Да» з’являється діалогове вікно індексування карти (рис. 3.19).

Рис. 3.19. Діалогове вікно індексування карти

У цьому вікні треба натиснути кнопку «загрузить карту», у стандартному діалоговому вікні обрати файл з картою, після чого натиснути «Создать индекс». Процес індексування є довготривалим. Прогрес відображається індикатором прогресу у середній частині форми. Якщо встановити флаг «Отображать подробній ход индексирования», то у ході індексування у нижній частині форми буде надаватися текстове розшифрування поточної операції. Якщо встановити флаг «Автоматически сохранить индекс по завершении», то після завершення процесу побудови індексні файли буде автоматично збережено у каталозі програми. Якщо цей флаг не встановити, то потрібно буде натиснути кнопку «Сохранить индекс».

.4.4 Робота системи у режимі АРМ адміністратора

Після завантаження програмного комплексу користувач бачить головне вікно (рис. 3.20).

Рис. 3.20. Головне вікно програмного комплексу

У верхній лівій частині форми знаходиться текстове вікно логу роботи сервера. У ньому відображаються діагностичні повідомлення, а також результати розшифровки пакетів.

У нижній лівій частині форми розташоване ще одне текстове вікно - лог запитів до БД. У ньому відображаються усі згенеровані SQL-запити до БД.

У верхній правій частині знаходиться поле переліку IMEI-номерІв пристроїв, пакети від яких надходили на сервер.

У нижній правій частині форми знаходиться кнопка виклику режиму редагування даних про трекери.

Після надходження інформаційного пакету результати розшифровки потрапляють у вікно лога роботи сервера, а у верхній правій частині форми з’являється графічне відображення даних пакету (рис. 3.21).

Рис. 3.21. Результат розшифрування пакету

У випадку, якщо цей пакет - перший у рамках поточної сесії роботи серверу, IMEI трекера буде додано до переліку. Якщо IMEI трекера зареєстровано у БД, у нижньому текстовому полі з’явиться текст SQL-запитів до БД.

Для того, щоб перейти до режиму реєстрації трекера у БД, треба натиснути кнопку «Добавить трекер». Після цього з’явиться вікно керування реєстраційними даними трекерів (рис. 3.22).

Реєстрація трекера починається натисканням кнопки «добавить» у лівій частині форми. Після цього треба ввести IMEI пристрою.

Рис. 3.22. Форма керування реєстраційними даними трекерів

Ідентифікаційний номер пристрою можна ввести вручну або згенерувати автоматично (у якості номера будуть узяті останні 5 знаків IMEI). Далі необхідно обрати тип трекера з випадаючого списку. Якщо необхідно, можна додати текстовий опис трекера у відповідному полі. Після заповнення полів треба натиснути кнопку «сохранить».

Наступним кроком реєстрації є реєстрація у навігаційній базі. Для цього на формі є група елементів «Регистрация в БД Гранит». Робота з цією групою починається з натискання кнопки «Добавить». Після цього з випадаючого списку треба обрати IMEI нового пристрою. Далі заповнюються поля, що описують транспортний засіб, на якому встановлено пристрій. Поле «Цвет» задає колір, яким буде відображатися шлях трекера на формах АРМ. Колір можна задати вручну або обрати за допомогою діалогу (рис. 3.23).

Сервер може працювати у фоновому режимі. Для цього достатньо закрити головне вікно програми. Індикатором працездатності сервера є піктограма у області повідомлень (Tray).

Рис. 3.23. Діалог вибору відображуваного кольору трекера

Для завершення роботи сервера треба натиснути на цю іконку правою кнопкою миші та у контекстному меню обрати «Закрыть» (рис. 3.24). Для повернення з фонового режиму у контекстному меню потрібно обрати «Развернуть».

Рис. 3.24. Контекстне меню керування сервером

Таким чином, за допомогою розробленого програмного комплексу користувач може реєструвати у системі нові трекери та слідкувати за роботою серверу збору даних.

Розроблена система може бути використана для інформаційного забезпечення диспетчерського пункту автотранспортного підприємства, таксомоторного парку або будь-якого транспортного підрозділу служб оперативного реагування (ДАІ, МНС, пожежна охорона, інкасаторські служби тощо).

Висновки по розділу

У третьому розділі дипломної роботи було наведено обгрунтування інформаційної структури і апаратного забезпечення AVL системи, розроблено структуру AVL системи і алгоритми функціонування її окремих модулів. Також було представлено структуру блоку взаємодії з базою даних системи, блоків роботи з електронними картами і блоків серверів ТСР та UDP.

Також було обрані засоби розробки програмного забезпечення системи, зокрема мова програмування Borland Delphi 7 і СУБД MySQL. У програмному середовищі Borland Delphi 7 сторено тестові версії програмних модулів системи, розроблено керівництво по встановленню і роботі з програмним забезпеченням, а також наведені результати перевірки його працездатності.

Виходячи з отриманих результатів, можна зробити висновок, що система на даному етапі є працездатною і готовою до практичного використання та подальшого удосконалення.

 

4. ОРГАНІЗАЦІЙНО-ЕКОНОМІЧНИЙ РОЗДІЛ

4.1 Загальні положення

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

Абсолютна величина економічного ефекту без співставлення з витратами на його отримання не дозволяє однозначно оцінити, наскільки вдалим виявився відповідний інноваційний проект. Таку оцінку дають показники економічної ефективності (прибутковості) проекту.

При реалізації інвестиційного проекту випуску нової (в тому числі програмної) продукції підприємство несе разові витрати, пов'язані з розробкою проекту, а також з придбанням і налагодженням необхідного обладнання, розхідних матеріалів і таке інше. Такі разові витрати називають капітальними витратами або інвестиціями.

В процесі реалізації нової продукції підприємство отримує від споживачів певні кошти - виторг від реалізації. При розрахунках ефективності необхідно врахувати поточні витрати підприємства, пов'язані з виробництвом та реалізацією нової продукції. Величина щорічного прибутку, одержуваного підприємством за рахунок впровадження інвестиційного проекту, повинна бути достатньо високою у порівнянні з капітальними витратами підприємства, щоб інвестиції окупились у прийнятний термін.

При використанні інновацій підприємство-споживач в свою чергу отримує певний економічний ефект, що зазвичай виражається економією витрат на виконання виробничих та управлінських функцій. За умов обґрунтування поліпшення співвідношення ціна-якість у нової продукції в порівнянням з базовим варіантом підприємство-виробник може встановити певну добавку до ціни інноваційної продукції.

Зміст техніко-економічного обґрунтування розробки програмного продукту полягає в наступному:

– розрахунок трудомісткості та тривалості розробки;

–       визначення величини капітальних витрат розробника та максимальної ціни продажу програмного продукту;

–       розрахунок поточних витрат реалізації та мінімальної ціни продажу;

–       розрахунок річної економії споживача програмного продукту та остаточне встановлення ціни продажу програмного продукту;

–       визначення показників економічної ефективності проекту.

В даному проекті розроблено програмний продукт, що має наступні переваги перед аналогами:

зменшується час рішення одної задачі з 1 до 0,2 год/од;

спрощується процедура моніторингу місцезнаходження транспортних засобів;

спрощується процедура контролю за дотриманням маршрутів.

4.2 Вихідні дані для розрахунку

Вихідні дані для розрахунку економічної ефективності проекту наведено в таблиці 4.1.

Таблиця 4.1

Вихідні дані для розрахунку ефективності

Позначення

Найменування показника

Значення

Вм

Вартість ПЕОМ, грн

15000

Тсл

Плановий строк служби ПЕОМ, років

5

Nп

Кількість розроблюваних проектів, од./рік

6

Зо

Посадовий оклад інженера-програміста, грн/міс

4200

Кд

Коефіцієнт додаткової заробітної плати

0,3

Кс

Коефіцієнт відрахувань до страхових фондів

0,369

Кн

Коефіцієнт накладних витрат організації

0,4

Рн

Норматив рентабельності організації-розробника

0,35

Позначення

Найменування показника

Значення

Ппдв

Ставка податку на додану вартість, %

20

Пп

Потенційна ємність ринку для нової програми, од.

120

На

Норма амортизації, %

25

Вт

Витрати на тиражування програми, грн/од.

224

Ка

Коефіцієнт витрат на адаптацію програми

0,07

Тпр

Термін реалізації проекту, років

3

П1

Плановий обсяг продажу програми в 1-му році, од.

10

П2

Плановий обсяг продажу в 2-му році, од.

16

П3

Плановий обсяг продажу в 3-му році, од.

22

Пс

Середній плановий річний обсяг продажу, од.

20

Цб

Ціна продажу базової програми-аналога, грн.

20000

Кількість задач, що вирішуються протягом року, од.

120

tзб

Витрати машинного часу на вирішення задачі базовою програмою, годин/од.

1

tзн

Витрати машинного часу на вирішення задачі новою програмою, годин/од.

0,2

Ен

Нормативний коефіцієнт ефективності

0,2

Де

Доля ефекту споживача - добавка до ціни

0,25


4.3 Визначення трудомісткості та тривалості розробки програми

Серед чинників, що визначають величину витрат на розробку програмного додатку, одним з основних є тривалість розробки. Її можна визначити за формулою:

 

 ,

де     Т - сумарні трудовитрати;р - кількість виконавців.

Загальна трудомісткість розробки складається з трудомісткості виконання окремих етапів роботи: вивчення предметної області та формулювання постановки задачі, складання алгоритму й схеми рішення задачі, розробка й налагодження програми, підготовка документації.

Трудовитрати по окремих етапах всіх видів визначені за допомогою експертної оцінки. Розрахунок трудозатрат зведено до таблиці 4.2.

Таблиця 4.2

Розрахунок трудових затрат

Етапи робіт

Позначення

Трудовитрати (чол-дн)

Вивчення предметної області та формулювання постановки задачі

Тпз

2

Розробка алгоритму рішення задачі

Та

6

Складання схеми програми

Тс

7

Розробка програми

Тп

15

Налагодження програми

Те

7

Оформлення документації

Тд

3

РАЗОМ


40


Розробку програми виконує один інженер-програміст. Отже, тривалість розробки складає 40 робочих днів. З урахуванням середньої кількості робочих днів у місяці ( 22 дні ) тривалість розробки складе:

Тр = 40 / 22 = 1,82 (міс)

.4 Розрахунок витрат на розробку програми

Розрахунок витрат на розробку програмного продукту, тобто суми капітальних витрат, оформлюється документом - кошторис витрат по формі таблиці 4.3.

Таблиця 4.3

Кошторис витрат на проектування

Найменування статей витрат

Сума,  грн.

Обгрунту- вання

1 Спеціальне обладнання. 2 Розхідні матеріали. 3 Зарплата проектувальників. 4 Відрахування до фондів соціального страхування. 5 Усього прямих витрат. 6 Накладні витрати. 7 Усього, кошторисна вартість проекту.

5146,13 1543,84 18205,20 6717,72  31612,89 12645,17 44258,06

з розрахунку 30% ст.1 з розрахунку 36,9% ст.3  ст.1..ст.4 40% ст.5 ст.5+ст.6


Витрати, пов’язані з придбанням ПЕОМ (спеціальне обладнання) можна розрахувати за формулою:

Sоб = Вм+Sтм+Sпз+Sд+Sпл,

де Вм - прейскурантна вартість ПЕОМ;

         Sтм - витрати на транспортування, монтаж та налаштування ПЕОМ;

         Sпз - вартість загальносистемного програмного забезпечення;

         Sд - вартість допоміжного офісного обладнання;

         Sпл - вартість додаткової виробничої площі для встановлення ПЕОМ.

З урахуванням вихідних даних та прийнятих розрахункових коефіцієнтах

Sтм = 0,02 · Вм ; Sтм = 0,02 · 15000 = 300 (грн);пз = 0,2 · Вм ; Sпз = 0,2 · 15000 = 3000 (грн) ;д = 0,15 · Вм ; Sд = 0,15 · 15000 = 2250 (грн) ;

Потреби в додатковій виробничій площі немає. Таким чином, загальна сума витрат на спеціальне обладнання становить:

Sоб = 15000 + 300 + 3000 + 2250 = 20550,00 (грн)

З урахуванням кількості розроблюваних проектів та прийнятого строку служби ПЕОМ (Тсл=6 років) вартість спеціального обладнання, що включається до кошторису витрат складе:

               Sоб                         20550

sоб = -------------- ; sоб = -------------- = 685,00 (грн)

               Nп ·                      Тсл 6 · 5

Вартість розхідних матеріалів, необхідних на час розробки проекту:

Sрм = 0,3· sоб ; Sрм = 0,3 · 685,00 = 205,50 (грн) ;

Заробітна плата працівників визначається, виходячи з кількості виконавців, діючих посадових окладів та кількості місяців участі виконавців у розробці проекту, за формулою:

з = Зо · (1+Кд) · Тр ,

де      Зо - місячний посадовий оклад виконавця;

Кд - коефіцієнт урахування додаткової заробітної плати (щорічна тарифна відпустка, доплати та премії);

Тр - тривалість розробки, міс.

Таким чином, витрати по заробітній платі інженера-програміста складуть:

Sз = 4200 · (1+ 0,3) ·1,82 = 9937,20 (грн)

Відрахування до фондів соціального страхування - це фактично податок на фонд заробітної плати, що сплачується до Пенсійного фонду, фонду зайнятості та фондів страхування від загальних та професійних захворювань та виробничого травматизму. Нормативи цих відрахувань встановлюються централізовано на державному рівні.

Отже, сума відрахувань до фондів соціального страхування складе:

Sc = Sз · Кс ; Sс = 9937,20 · 0,369 = 3666,83 (грн)

Загальна сума прямих витрат становить:

Sпр = Sоб + Sрм + Sз + Sс;пр = 685 + 205,5 + 9937,20 + 3666,83 = 14494,53 (грн)

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

Sн = Кн · Sпр ; Sн = 0,4 · 14494,53 = 5797,81 (грн)

Загальна кошторисна вартість проекту - сума прямих і накладних витрат представляє собою суму капітальних вкладень (або інвестицій) в новий проект:

 

К = Sпр + Sн ; К = 14494,53 + 5797,81 = 20292,34 (грн)

При продажу розробленої програми в одному екземплярі відпускна ціна формується з урахуванням нормативного рівня рентабельності продукції, що задає мінімально допустиме значення прибутку підприємства.

Таким чином:

 

Пн = Рн · К ; Пн = 0,35 · 20292,34 = 7102,32 (грн)

Цв = К + Пн ; Цв = 20292,34 + 7102,32 = 27394,66 (грн),

де     Пн - нормативний прибуток;

Рн - нормативна рентабельність продукції;

Цв - максимальна відпускна ціна програмного продукту.

Максимально можлива ціна продажу програмного продукту з урахуванням податку на додану вартість (ПДВ):

 

Цmax = (1+Ппдв/100) · Цв ; Цmax = 1,2 · 27394,66 = 32873,59 (грн)

4.5 Розрахунок поточних витрат реалізації та мінімальної ціни продажу програми

Специфікою вироблення та реалізації програмних продуктів є те, що зазвичай розроблена програма реалізується багатьом споживачам. Поточні витрати на тиражування програми набагато менші за первинні витрати на її розробку, тому і ціна продажу може бути встановлена набагато нижчою за максимальну ціну, розраховану вище.

При розрахунку ціни реалізації треба врахувати постійні витрати, що не залежать від обсягу продажу (амортизація капітальних вкладень та реклама продукції), та змінні витрати, пропорційні обсягу продажу, - витрати на тиражування й адаптацію програмного продукту до вимог конкретних споживачів, представницькі витрати. При розрахунку мінімального значення ціни продажу програмного продукту витрати на рекламу та представницькі розходи не враховуємо.

Річна сума амортизаційних відрахувань обчислюється за нормою амортизації від загальної суми капітальних вкладень:

              На                        25

Ав = --------- · К ; Ав = -------- · 20292,34 = 5073,08 (грн)

         100                          100

Витрати на тиражування включають вартість машинних носіїв інформації та витрати на розмноження програмної документації і для одного акту продажу становлять Вт=224 грн/од.

Витрати на адаптацію програмного продукту до вимог споживачів - це витрати на вдосконалювання програмного продукту. За експертними оцінками вони можуть сягати до 40% від витрат на розробку програмного продукту. Залежно від особливостей програмного продукту ці витрати можуть бути відсутні.

При збільшенні обсягів продажу зменшується різноманітність додаткових вимог споживачів і величина витрат на адаптацію програми. Враховуючи ступінь уніфікації розробленої програми встановимо середній рівень адаптаційних витрат на рівні 15%.

Витрати на адаптацію програмного продукту можна визначити так:

Ва = Ка · (Sз + Sс) · (1 + Кн),

де     Ка - коефіцієнт витрат з адаптації програми;

         - витрати по заробітній платі при розробці проекту;

         - відповідні відрахування до страхових фондів;

         Кн - коефіцієнт накладних витрат організації-розробника.

Ва = 0,07 · (9937,20+3666,83) · (1+0,4) = 1333,19 (грн/од)

Загальна сума змінних витрат складе:

Вз = Вт + Ва ; Вз = 224,00 + 1333,19 = 1557,19 (грн/од)

Мінімальна відпускна ціна програмного продукту з урахуванням отримання нормативного прибутку розраховується за формулою:

Цвmin = (Ав/П + Вз) · (1 + Рн),

де     Ав - річна сума постійних витрат (сума амортизації);

П - річний обсяг продажу;

Вз - сума змінних витрат;

Рн - нормативна рентабельність продукції.

При середньому річному обсязі продажу Пс=15од. мінімальна відпускна ціна складе:

Цвmin = (5073,08/15 + 1557,19) · 1,4 = 2653,55 (грн)

Мінімальна ціна продажу програмного продукту з урахуванням податку на додану вартість (ПДВ):

Цмін = (1+Ппдв/100) · Цвмін ; Цмін = 1,2 · 2653,55 = 3184,26 (грн.),

де     Ппдв - ставка податку на додану вартість;

Ціна продажу програмного продукту перебуває в таких межах:

 

Цmin <= Цпп <= Цmax.

,26 грн <= Цпп <= 32873,59 грн

Для визначення обсягу продажу, що забезпечує рентабельну діяльність, побудуємо графік досягнення беззбитковості - схему, що показує вплив на прибуток обсягів реалізації програмного продукту, ціни, постійних і змінних витрат (рис.4.1).

Рис. 4.1 Графік досягнення беззбитковості

За допомогою цього графіка можна знайти так звану точку беззбитковості. Точка беззбитковості показує кількість програмного продукту, який необхідно продати, щоб загальний виторг від реалізації (без ПДВ) рівнявся загальним витратам. Очевидно, що при цьому обсязі продажів буде, нарешті, досягнута беззбитковість виробництва й подальше збільшення обсягу реалізації приведе до появи прибутку.

Таким чином, навіть при мінімальній відпускній ціні програми річний продаж 4 одиниць програмного продукту вже приносить певний прибуток.

Для успішного впровадження програмного продукту на ринок і досягнення запланованого обсягу продажу необхідно ретельно спланувати рекламну кампанію, що дало б можливість довідатися про існування розробленого програмного продукту і його перевагах всім потенційним споживачам.

У нашому випадку кількість потенційних споживачів невелике й розміщувати рекламу в засобах масової інформації економічно недоцільно. Прийнято рішення про розміщення рекламної інформації на основних тематичних форумах і порталах в мережі Internet. При цьому річні витрати на розміщення реклами в глобальній мережі складуть:

 

Зри = Зпр + М · Зпм,

де     Зпр - витрати на первинне розміщення реклами;

Зпм - плата за щомісячну підтримку рекламних повідмлень;

М - кількість місяців підтримки.

Зри = 1650 + 3 · 450 = 3000 (грн/рік)

Крім цього, планується організувати пряму адресну рекламу для потенційних споживачів програмного продукту. Ємність ринку збуту - 80 споживачів. Витрати на виготовлення індивідуальних рекламних матеріалів та їх доставку складуть 100 грн/од. Планується на протязі трьох років реалізації проекту охватити адресною рекламою по 25 споживачів на рік, що складе Зра=100·25=2500 грн/рік.

Таким чином загальні щорічні витрати на рекламу становлять:

Зр = Зри +Зра ; Зр = 3000 + 2500 = 5500 (грн/рік)

При визначенні показників економічної ефективності проекту отриману суму потрібно буде врахувати як додаткові постійні річні витрати з реалізації програмного продукту.

.6 Економія у споживача програмного продукту

Користувач запропонованої програми отримує економічний ефект за рахунок скорочення часу вирішення задач в порівнянні з використанням базового варіанту програми. Проведемо розрахунки, вважаючи, що ціна нової програми співпадає з ціною базової Цн = Цб = 20000 грн.

Річний економічний ефект можна розрахувати як різницю приведених витрат при використанні базової та нової програми:

 

Ер = Впрб - Впрн

Приведені витрати визначаються за формулою:

 

Впр = Спр + Ен · Кпр,

де     Спр - приведені річні експлуатаційні витрати, пов’язані з вирішенням задач;

Кпр - сума приведених капітальних вкладень;

Ен - нормативний коефіцієнт економічної ефективності.

Для базового варіанту загальну суму капітальних вкладень визначається витратами на придбання ПЕОМ. В такому разі у відповідності з розрахунками пункту 3.4 Кб = Sоб = 20550 грн.

Для нового варіанта загальна сума капіталовкладень додатково включає ціну придбання нової програми : Кн = Sоб + Цн = 20550+20000 = 40550 грн.

Величина приведених капіталовкладень в розрахунку приведених витрат визначається з урахуванням долі часу вирішення задач, що розглядаються, в річному корисному фонді часу роботи ПЕОМ:

          Тм

Кпр = -------- · К,

          Ткор

де     Ткор - річний корисний фонд часу роботи ПЕОМ;

Тм - машинний час вирішення даних задач протягом року.

Річний корисний фонд часу роботи ПЕОМ розраховується за формулою:

 

Ткор = Тзаг · Тз · Nз · (1 - Пп/100),

де     Тзаг - загальний річний фонд часу роботи ПЕОМ (робочих днів);

Тз - тривалість робочої зміни;

- кількість робочих змін на день;

Пп - процент планових простоїв ПЕОМ.

При 5-денному робочому тижні та роботі в одну зміну отримаємо:

Ткор = 250 · 8 · 1 · (1 - 5/100) = 1900 годин/рік

Машинний час за рік для вирішення задач з використанням базової та нової програми:

 


де     - кількість задач, що вирішуються за рік;

- машинний час вирішення одної задачі.

Отже, для базового і нового варіантів маємо:

Тмб = 120 · 1 = 120 (год/рік) ; Тмн = 120 ·0,2 = 24 год/рік.

Відповідне значення приведених капітальних вкладень:

Кпрб = (120/1900) · 4384 = 276,88 (грн) ;

Кпрн = (24/1900) · 6384 = 80,64 (грн).

Аналогічним чином визначаються приведені річні експлуатаційні витрати при використанні ПЕОМ з урахуванням долі використання корисного машинного часу:

 

Спр = С · Тм/Ткор ,

де     С - загальна річна сума експлуатаційних витрат.

 

С = Ав + Sз + Sм + Sр ,

де     Ав - амортизаційні відрахування;

- витрати по заробітній платі спеціаліста;

- вартість спожитої електроенергії та розходних матеріалів;

- річні витрати на ремонт ПЕОМ.

Сума амортизаційних відрахувань визначається за нормою амортизації:

Ав = К · На/100 ;

 

Авб = 20292,34 · 25/100 = 5073,08 (грн) ;

Авн = 8376 · 25/100 = 10137,5 (грн).

Річні витрати по заробітній платі користувача ПЕОМ розрахуємо в припущенні, що умови оплати праці у споживачів і розробників програмного продукту тотожні, за формулою:

Sз = 12 · Зо · (1+Кд) · (1+Кс) ,

де     Зо - посадовий оклад спеціаліста;

Кд - коефіцієнт, що враховує додаткову заробітну плату;

Кс - коефіцієнт відрахувань до фондів соціального страхування.

Sз = 12 · 4200 · (1 + 0,3) · (1 + 0,369) = 89696,88 (грн).

Вартість спожитої електроенергії, розхідних матеріалів та річні витрати на ремонт ПЕОМ розрахуємо за укрупненими нормативами в відсотках від вартості ПЕОМ:

Sм = 0,03 · Вм ; Sм = 0,03 · 15000 = 450 (грн);р = 0,08 · Вм ; Sр = 0,08 · 15000 = 1200 (грн).

Загальна сума річних витрат з експлуатації ПЕОМ:

 Сб = 5073,08 + 46984,10 + 96 + 256 = 52409,18 (грн);

Сн = 10137,5 + 46984,10 + 96 + 256 = 57473,6 (грн).

Приведені експлуатаційні витрати:

 Спрб = 52409,18 · 120/1900 = 3310,05 (грн);

Спрн = 57473,6 · 24/1900 = 725,98 (грн).

Сумарні приведені витрати:

Впрб = 3310,05 + 0,2 · 276,88 = 3365,42 (грн)

Впрн = 725,98 + 0,2 · 80,64 = 742,11 (грн).

Річний економічний ефект у споживача нової програми:

Ер = 3365,42 - 742,11 = 2623,31 (грн)

З урахуванням річної економії споживача ціну продажу нової програми встановимо за наступним співвідношенням:

Ц = Цб + 0,25 · Ер ; Ц = 20000 + 0,25 · 2623,31 = 20655,83 (грн)

Остаточне значення ціни продажу нової програми встановимо на рівні Ц=20655,83 грн.

.7 Розрахунок економічної ефективності проекту

Економічна ефективність інвестиційних проектів характеризується системою показників, що відображають співвідношення фінансових витрат і результатів. В умовах високого рівня інфляції, характерного для України, різночасові фінансові показники доцільно приводити к одному моменту часу (першому року реалізації проекту) шляхом дисконтування. Норма дисконту розраховується за формулою:

= a + b + c ,

де     а - облікова ставка НБУ (30% початок дїї 04.03.2015 р.);

b - коефіцієнт врахування ризиків;

c - плановий рівень інфляції.

r = 0,30 + 0,04 + 0,25 = 0,59

Для розрахунку показників економічної ефективності потрібно скласти план грошових потоків (табл. 4.4).

Таблиця 4.4

План грошових потоків

Показник

Значення, грн


0-й рік

1-й рік

2-й рік

3-й рік

Плановий обсяг продажу, од.


10

16

22

Виторг від продажу


206558,3

330493,28

454428,26

ПДВ (20%)


41311,66

66098,66

90885,65

Виторг від продажу без ПДВ


165246,64

264394,62

363542,61

Витрати на тиражування


240

384

528

Витрати на адаптацію


6983,40

11173,40

15363,50

Витрати на рекламу


2150

2150

2150

Амортизаційні відрахування


2560,56

2560,56

2560,56

Прибуток від реалізації


9732,71

18398,70

27064,60

Податок на прибуток (25%)


2433,18

4599,67

6766,16

Чистий прибуток


7299,53

13799,00

20298,50

Сума капітальних вкладень

10242,3




Грошовий потік

-10242,3

9860,09

16359,60

22859,00

Коефіцієнт дисконтування


1

0,76923077

0,59171598

Поточна дисконтована вартість

-10242,3

9860,09

12584,30

13526,10

Чиста дисконтована вартість

-10242,3

-382,16

12202,10

25728,20


Сума виторгу від продажу програмного продукту розраховується з урахуванням планового обсягу продажу та визначеною ціною продажу Ц= 20655,83 грн.

Сума грошового потоку або поточна вартість визначається як різниця між фінансовим результатом поточного року Рt (чистий прибуток+амортизаційні відрахування) та поточними витратами Bt .

Поточна дисконтована вартість (ПДВ) - це поточна вартість, приведена до начала першого року реалізації проекту за допомогою коефіцієнту дисконтування КДt , тобто річний економічний ефект з урахуванням інфляції:

ПДВt = (Рt - Bt) · КДt ;

КДt = 1/(1+r)t

Чиста дисконтована вартість - це сума показників ПДВ наростаючим підсумком з першого до поточного року реалізації проекту, тобто сума грошей (з урахуванням інфляції), отриманих по даний рік включно. Показник ЧДС за останній рік відображає всю суму грошей від реалізації проекту.

Індекс прибутковості - це відносний показник, що характеризує рівень доходів, отриманих на одну гривню інвестицій за весь строк реалізації проекту:

         ∑ ПДВ                     35970,42

ІП = ----------- ; ІП = ------------- = 3,512

           К                       10242,30

Середня рентабельність проекту - це аналогічний показник, що відображає середньорічний рівень ефективності проекту:

РП = ІП / Тпр , РП = 3,512 / 3 = 1,17

 

де     Тпр - строк реалізації проекту.

Термін окупності інвестицій - це строк, за який капітальні вкладення погашаються кумулятивним доходом, тобто строк, за який отримані від проекту реальні (з урахуванням інфляції) гроші перекривають вкладену суму інвестицій:

                   - ЧДВt

Ток = t + -------------- ,

                  ПДВt+1

де     t - останній рік, в якому чиста дисконтована вартість залишається від’ємною.

Якщо в останньому році реалізації проекту ЧДВТ < 0, то проект не окупається протягом своєї реалізації. Для даного проекту:

                   382,16

Ток =1 + ---------------- = 1,03 (років)

                 12584,28

Основні техніко-економічні показники проекту зведені в таблицю 4.5 .

Таблиця 4.5

Техніко-економічні показники проекту

Найменування показника

Значення

Разові витрати на обладнання, грн

4384,00

Доля вартості обладнання в кошторисі проекту, грн

5146,13

Загальна сума капітальних вкладень, грн

44258,06

Постійні витрати експлуатації, грн : – амортизаційні відрахування; – витрати на рекламу

 2560,56 2150,00

Змінні витрати експлуатації, грн/од : – тиражування програми; – адаптація програми

 224,00 698,34

Точка беззбитковості продажу, од/рік

5

Ціна базової програми-аналога, грн

20000,00

Річний економічний ефект у споживача, грн

12480,03

Встановлена ціна продажу програми, грн

20655,83

Термін реалізації проекту, років

3

Плановий обсяг продажу за 3 роки, од.

48

Чиста дисконтована вартість (при r = 30%), грн

35970,42

Індекс прибутковості

3,512

Середня рентабельність проекту

1,17

Термін окупності, років

1,03


Висновки по розділу

Показник чистої приведеної вартості ЧПВ >0 , індекс прибутковості проекту ІП > 1, це свідчить про те, що проект є економічно ефективним, його розробка і впровадження є економічно доцільними. Інвестиції, вкладені в проект окупаються за 1,03 року, а кожна вкладена гривня щорічно приносить 0,63 грн. доходу.

ЗАГАЛЬНІ ВИСНОВКИ

У процесі виконання дипломного проекту було проведено аналіз застосування навігаційних технології у сучасних AVL системах та розглянуті сучасні розробки таких систем з метою оцінки їх функціональних можливостей, переваг і недоліків.

Також був проведений аналіз існуючих технологій місцевизначення рухомих об’єктів, зокрема з використанням супутникових навігаційних систем (СНС), описані фактори, що впливають на точність місцевизначення об’єктів, і наведені рекомендації щодо реалізації в AVL системах відносно-диференційного методу для забезпечення достатньо високої точності визначення координат об’єктів у складних експлуатаційних умовах.

У третьому розділі було проведено проектування і розробку програмного забезпечення AVL систем, зокрема обґрунтовано структуру системи і вимоги до апаратного забезпечення, розроблені алгоритми функціонування окремих програмних модулів, обрано мову програмування і СУБД, з використанням яких створено тестовий варіант програмного забезпечення для АРМ диспетчера AVL системи.

Розроблене програмне забезпечення на даному етапі є працездатним та готовим до практичного використання і подальшого удосконалення.

На завершення у дипломному проекті проведений розрахунок економічної ефективності розробки і впровадження програмного забезпечення. Оцінено термін окупності, прибутковість, а також загальна інвестиційна привабливість проекту. Результати проведених розрахунків показують, що даний проект є економічно вигідним.

ПЕРЕЛІК ПОСИЛАНЬ

1.   Пржибыл П., Свитек М. Телематика на транспорте. BEN, Прага-Москва, 2004. - 534 c.

2.      Баранов Г.Л. Диспетчерські системи класу AVL по управлінню перевезеннями із застосуванням супутникових технологій // Системні методи керування, технологія та організація виробництва, ремонту і експлуатації автомобілів. Застосування супутникових технологій у транспортній галузі. - К.: НТУ, ТАУ. - 2002. - С.18 - 23.

.        Бєляєвський Л.С., Топольськов Є.О., Сердюк А.А. та інш. Глобальні супутникові системи навігації та зв’язку на транспорті. Навчальний посібник для ВУЗів транспортного профілю. - К.: В-во «ДажБог», 2009. - Іл., табл., бібліогр. - 216 с.

.        Беляевский Л.С., Новиков Б.С, Олянюк П.В. Основы радионавигации. - М.: Транспорт; 1997. - 316 с.

.        Навігація. Основи визначення місцеположення та скеровування / Б. Гофманн-Велленгоф, К. Легат, М.Візер; Пер. з англ.. за ред. Я.С.Яцківа. - Львів: Львівський національний університет імені Івана Франка, 2006. - 443 с.

.        Баранов Г.Л., Кошовий А.А. и др. Радіонавігаційний план України: Київ, ЦНДІНУ, 2002., 78 с.

.        Системи супутникові радіонавігаційні мережні. Терміни та визначення. Державний стандарт України. ДСТУ 2599-94. - Київ, 1994. - 31с.

.        Соловьев Ю.А. Системы спутниковой навигации. - М,: ЭКО-Трендз, 2000. - 267 с.

.        Котяшкин С. И. Определение ионосферной задержки сигналов в одночастотной аппаратуре потребителей спутниковой системы навигации NAVSTAR // Зapyбeжнaя радиоэлектроника-1989.-№ 5.-С. 85-95.

.        Бєляєвський Л.С., Левковець П.Р., Топольськов Є.О. Аналіз точносних характеристик супутникових систем диспетчерського контролю і управління автотранспортом// Системні методи керування, технологія та організація виробництва, ремонту і експлуатації автомобілів. -К.: НТУ, ТАУ. - 2003, вип.17, - с.7-12.

.        Методичні вказівки до виконання лабораторних робіт з навчальної дисципліни "Глобальні супутникові системи навігації і зв'язку на транспорті" для студентів заочної та дистанційної форм навчання напрямів 070101 «Транспортні технології» і 050101 «Комп’ютерні науки» / Топольськов Є.О., Аль-Амморі А., Косенко В.Р., Пилипейко С.С. - К.: НТУ, 2014. - с. 62

.        Кутиков В.Ю., Сошин A. П. и др. Перспективная аппаратура дифференциальной геодезической подсистемы спутниковых РНС ГЛОНАСС и GPS// Радионавигация и время, РИРВ, 1992.

.        Топольськов Є.О. Аналіз методів достовірного відтворення траєкторій руху автотранспортних засобів у складних експлуатаційних умовах // Управління проектами, системний аналіз і логістика. -К.: НТУ, ТАУ. - 2006, вип. 3.- с.148-153.

.        Топольськов Є.О. Перспективи застосування методики відносної корекції координат для підвищення точності місцевизначення транспортних засобів // Управління проектами, системний аналіз і логістика. - К.: НТУ. - 2004. - Вип. 1.- с.53-56.

.        Топольськов Є.О. Удосконалена методика визначення азимутів і кутів місця навігаційних супутників з використанням базових лінії та різницевих вимірів // Автошляховик України: Вісник Північного наукового центру ТАУ. - 2007. - Вип. 10.

16.    Держбюджетна НДР "Методи і алгоритми просторово-часової обробки навігаційної інформації у системах супутникового моніторингу і управління транспортними засобами" (шифр за номером державної реєстрації 0106U002143, 2005-2007 рр.)

.        Галисеев Г.В. Программирование в среде Delphi 7. Самоучитель. - М.: Диалектика, 2007. - 288 с.

.        Марселлус Д. Программирование экспертных систем. - М.: Финансы и статистика, 1994. - 256 с.: ил. I8ВN 5-279-00613-0.

.        Лапуста М.Е., Шаршукова Л.Г. Риски в предпринимательской деятельности. - М.: ИНФРА, 1998. - 223 с.

.        Бачкаи Т., Месена Д., Мико Д. и др. Хозяйственный риск и методы его измерения. -М.: Экономика, 1979. - 184 с.

.        Сытник В.Ф., Срока X., Еремина Н.В. и др. Компьютеризация информационных процессов на промышленных предприятиях. - К.: Техника; Катовице: Эконом, академия им. Карола Адамецкого, 1991.- 215с.

ДОДАТКИ

Додаток А

Рис.А.1. До диференційного методу корекції координат.

Рис.А.2. До диференційного методу корекції псевдодальностей.

Додаток А

Рис.А.3. Тестовий маршрут руху АТЗ: вул. Січневого повстання - Московська - Цитадельна.

Додаток А

Рис.А.4. Траєкторія АТЗ, одержана з використанням фільтра Калмана.

Додаток А

 

Рис.А.5 Траєкторія руху АТЗ, одержана з використанням методу відносно-диференційних визначень і фільтра Калмана.

Додаток Б

Лістинг програми

Фрагмент головного модулю системиUnit1;

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ComCtrls, ExtCtrls, CheckLst, DB, Grids, DBGrids,

ADODB;

geopoint=record:integer;,lon:double;;

geolat=record:integer;:double;;

geolon=record:integer;:double;:double;:integer;;

geoobj=record:string;:integer;:string;;

TForm1 = class(TForm)

Button1: TButton;

Memo1: TMemo;

Button2: TButton;

Button3: TButton;

Edit1: TEdit;

Edit2: TEdit;

Edit3: TEdit;

Edit4: TEdit;

ProgressBar1: TProgressBar;

Button4: TButton;

Button5: TButton;

Button6: TButton;

Button7: TButton;

Image1: TImage;

Button8: TButton;

Button9: TButton;

Button10: TButton;

Button11: TButton;

Button12: TButton;

Button13: TButton;

ADOConnection1: TADOConnection;

ADOQuery1: TADOQuery;

DBGrid1: TDBGrid;

DataSource1: TDataSource;

CheckListBox1: TCheckListBox;

Button14: TButton;

Button15: TButton;

ADOQuery2: TADOQuery;

DataSource2: TDataSource;

DBGrid2: TDBGrid;

procedure Button1Click(Sender: TObject);

procedure Button2Click(Sender: TObject);

procedure Button3Click(Sender: TObject);

procedure Button5Click(Sender: TObject);

procedure Button4Click(Sender: TObject);

procedure Button6Click(Sender: TObject);

procedure Button7Click(Sender: TObject);

procedure Button8Click(Sender: TObject);

procedure Button11Click(Sender: TObject);

procedure Button9Click(Sender: TObject);

procedure Button10Click(Sender: TObject);

procedure Button12Click(Sender: TObject);

procedure Button13Click(Sender: TObject);

procedure Button14Click(Sender: TObject);

procedure Button15Click(Sender: TObject);

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

Form1: TForm1;

ptlat:array[0..40000000]of geolat;

ptlon:array[0..40000000]of geolon;

gomas:array[0..5000000]of geoobj;

wrkpt:array[0..200000]of integer;

npt,nob,nwrkpt:integer;

maxlat,maxlon,minlat,minlon:double;

{$R *.dfm}objcf(objkind:integer;objtype:string;c:tcanvas);

//

//canvas.pen.style.Pen.Color:=clwhite;.Brush.Color:=clwhite;.Pen.Style:=pssolid;.Pen.Width:=1;objkind=1 then begin(objtype='0x28')or(objtype='0x3e')(objtype='0x46')or(objtype='0x44')(objtype='0x43')or(objtype='0x42')(objtype='0x40')or(objtype='0x3d')(objtype='0x3c')or(objtype='0x1f')(objtype='0x3b')or(objtype='0x3f')(objtype='0x47')begin c.Pen.Color:=clblue;c.Brush.Color:=clblue;end;

(objtype='0x1')begin c.Pen.Color:=clbtnface;c.Brush.Color:=clbtnface;end;

(objtype='0x2')begin c.Pen.Color:=clsilver;c.Brush.Color:=clsilver;end;

(objtype='0x3')begin c.Pen.Color:=rgb(100,0,100);c.Brush.Color:=rgb(100,0,100);end;

(objtype='0x17')begin c.Pen.Color:=cllime;c.Brush.Color:=cllime;end;

(objtype='0x1a')begin c.Pen.Color:=clgreen;c.Brush.Color:=clgreen;end;

(objtype='0x4f')begin c.Pen.Color:=rgb(128,255,128);c.Brush.Color:=rgb(128,255,128);end;

(objtype='0x4e')begin c.Pen.Color:=rgb(100,255,100);c.Brush.Color:=rgb(128,255,128);end;

(objtype='0x50')begin c.Pen.Color:=rgb(100,255,100);c.Brush.Color:=rgb(100,255,100);end;

(objtype='0xc')begin c.Pen.Color:=rgb(100,100,100);c.Brush.Color:=rgb(100,100,100);end;

(objtype='0x8')or(objtype='0x13')(objtype='0x17')or(objtype='0xa')begin c.Pen.Color:=rgb(150,150,100);c.Brush.Color:=rgb(150,150,100);end;

;

objkind=0 then begin

(objtype='0x26')or(objtype='0x1f')(objtype='0x18')begin c.Pen.Color:=clblue;c.Brush.Color:=clwhite;end;

(objtype='0x4')begin c.Pen.Width:=2; c.Pen.Color:=clblack;c.Brush.Color:=clwhite;end;

(objtype='0x1')begin c.Pen.Style:=psinsideframe; c.Pen.Width:=3;c.Pen.Color:=tcolor($009090);c.Brush.Color:=clwhite;end;

(objtype='0x2')begin c.Pen.Width:=2;c.Pen.Color:=tcolor($000000);c.Brush.Color:=clwhite;end;

(objtype='0x3')begin c.Pen.Width:=2;c.Pen.Color:=tcolor($900000);c.Brush.Color:=clwhite;end;

(objtype='0x15')begin c.Pen.Width:=2;c.Pen.Color:=tcolor($900000);c.Brush.Color:=clwhite;end;

(objtype='0x6')begin c.Pen.Color:=tcolor($900000);c.Brush.Color:=clwhite;end;

(objtype='0x7')begin c.Pen.Color:=tcolor($aa0000);c.Brush.Color:=clwhite;end;

(objtype='0x9')begin c.Pen.Color:=tcolor($aaaaaa);c.Brush.Color:=clwhite;end;

(objtype='0x27')begin c.Pen.Color:=tcolor($0000ff);c.Brush.Color:=clwhite;end;

(objtype='0x10f13')begin c.Pen.Style:=psdash; c.Pen.Color:=tcolor($0000ff);c.Brush.Color:=clwhite;end;

;

//form1.Memo1.Lines.Append(objkind+objtype);;

quicksort(var a: array of integer; Lo,Hi: integer);

procedure sort(l,r: integer);

var

i,j,x,y: integer;

begin

i:=l; j:=r; x:=a[(l+r) DIV 2];

repeat

while a[i]<x do i:=i+1;

while x<a[j] do j:=j-1;

if i<=j then

begin

if a[i] <> a[j] then BEGIN y:=a[i]; a[i]:=a[j]; a[j]:=y; END;

i:=i+1; j:=j-1;

end;

until i>j;

if l<j then sort(l,j);

if i<r then sort(i,r);

end;

begin {quicksort};

sort(Lo,Hi);

end;

latgt(lat:double):integer;i,j:integer;:=0;:=npt;ptlat[i+((j-i)div 2)].lat<lat then i:=i+((j-i)div 2) else j:=j-((j-i)div 2);((ptlat[i].lat<=lat)and(ptlat[i+1].lat>lat))or((j-i)<2);:=i;;

longt(lon:double):integer;i,j:integer;:=0;:=npt;ptlon[i+((j-i)div 2)].lon<lon then i:=i+((j-i)div 2) else j:=j-((j-i)div 2);((ptlon[i].lon<=lon)and(ptlon[i+1].lon>lon))or(j-i<2);:=i;;

TForm1.Button1Click(Sender: TObject);f:textfile; s,s1,s2:string;i:integer;d,newobj:integer;gp:geopoint;(f,'d:\gps\Ukraine.mp');(f);:=0;:=0;:=0;(f,s);pos('[END]',s)>0 then begin:=1;:=nob+1;;

pos('Type',s)>0 then begin(s,1,5);[nob].objtype:=s;:=1;;

pos('Label',s)>0 then begin(s,1,6);[nob].objname:=s;

//newobj:=1;;

{if pos('[POLYLINE]',s)>0 then begin[nob].objkind:=0;;}

pos('[POLYGON]',s)>0 then begin[nob].objkind:=1;:=1;;

pos('[POI]',s)>0 then begin[nob].objkind:=2;:=1;;

(pos('Data',s)>0){and(newobj=1)} then

newobj=0 then begin[nob+1]:=gomas[nob];:=nob+1;;

(s,1,pos('(',s));:=s;:=s;(s1,pos(',',s1),length(s1)-pos(',',s1)+1);(s2,1,pos(',',s2));(s2,pos(')',s2),length(s2)-pos(')',s2)+1);(s1,ptlat[npt].lat,i);(s2,ptlon[npt].lon,i);[npt].lat:=ptlat[npt].lat;[npt].pid:=npt;[npt].oid:=nob;[npt].pid:=npt;:=npt+1;pos('(',s)=0;:=0;;

eof(f);(f);.Lines.Append(inttostr(npt));.Click;;

TForm1.Button2Click(Sender: TObject);i,j:integer;gp:geolat;gl:geolon;.Max:=npt;i:=0 to npt-1 doj:=i to npt doptlat[i].lat>ptlat[j].lat then begin:=ptlat[i];[i]:=ptlat[j];[j]:=gp;;

{if ptlon[i].lon>ptlon[j].lon then begin:=ptlon[i];[i]:=ptlon[j];[j]:=gl;;};.Position:=i;;.Lines.Append('Indexing complete');;

TForm1.Button3Click(Sender: TObject);,ptlatmax,ptlonmin,ptlonmax,i,j,k:integer;dlat,dlon:double;:=strtofloat(edit1.text);:=strtofloat(edit2.text);:=strtofloat(edit3.text);:=strtofloat(edit4.text);

:=maxlat-minlat;:=maxlon-minlon;:=minlat-(dlat/2);:=minlon-(dlon/2);:=maxlat+(dlat/2);:=maxlon+(dlon/2);

:=latgt(minlat);

//ptlonmin:=longt(minlon);:=latgt(maxlat);

//ptlonmax:=longt(maxlon);.Lines.Append(inttostr(ptlatmin));.Lines.Append(inttostr(ptlonmin));.Lines.Append(inttostr(ptlatmax));.Lines.Append(inttostr(ptlonmax));:=0;:=0;i:=ptlatmin to ptlatmax do

if(ptlon[ptlat[i].pid].lon>=minlon)and(ptlon[ptlat[i].pid].lon<maxlon) then

begin

wrkpt[nwrkpt]:=ptlat[i].pid;

nwrkpt:=nwrkpt+1;

end;(wrkpt,0,nwrkpt);

{for i:=0 to nwrkpt-1 doj:=i to nwrkpt do if wrkpt[i]>wrkpt[j] then begin:=wrkpt[i];wrkpt[i]:=wrkpt[j];wrkpt[j]:=k;;}:=minlat+(dlat/2);:=minlon+(dlon/2);:=maxlat-(dlat/2);:=maxlon-(dlon/2);

.Click;.Lines.Append(inttostr(nwrkpt));

//memo1.Lines.Append(inttostr(ptlon[j].pid)+':'+inttostr(ptlat[i].pid));;

TForm1.Button5Click(Sender: TObject);flat:file of geolat;flon:file of geolon;i:integer;(flat,'c:\ptlat.ix');(flon,'c:\ptlon.ix');(flat);(flon);i:=0 to npt-1 do begin(flat,ptlat[i]);(flon,ptlon[i]);;(flat);(flon);;

TForm1.Button4Click(Sender: TObject);flat:file of geolat;flon:file of geolon;i:integer;(flat,'c:\ptlat.ix');

//assignfile(flon,'c:\ptlon.ix');(flat);

//reset(flon);:=0;(flat,ptlat[npt]);

//read(flon,ptlon[npt]);:=npt+1;eof(flat);(flat);

//closefile(flon);.Click;.Click;.Click;;

TForm1.Button6Click(Sender: TObject);i:integer;i:=0 to npt do memo1.Lines.Append(floattostr(ptlat[i].lat));;

arrow(c:tcanvas;x,y:integer;course:double;color:integer);.Pen.Color:=tcolor($0f0f0f);.Brush.Color:=color;.MoveTo(round(sin(course/180*pi)*5)+x,round(cos(course/180*pi)*5)+y);.lineTo(round(sin((course+160)/180*pi)*5)+x,round(cos((course+160)/180*pi)*5)+y);.lineTo(round(sin((course+180)/180*pi)*3)+x,round(cos((course+180)/180*pi)*3)+y);.lineTo(round(sin((course-160)/180*pi)*5)+x,round(cos((course-160)/180*pi)*5)+y);.LineTo(round(sin(course/180*pi)*5)+x,round(cos(course/180*pi)*5)+y);.FloodFill(x,y,c.Pen.Color,fsborder);;

TForm1.Button7Click(Sender: TObject);i,np,cx,cy:integer;kx,ky,lat,lon,course:double;pc,bc:tcolor;:array[0..100000]of tpoint;.Canvas.Brush.Color:=rgb(250,245,220);.Canvas.Rectangle(0,0,image1.Width,image1.Height);:=image1.Width/(maxlat-minlat);:=image1.Height/(maxlon-minlon);i:=1 to nwrkpt do begin(ptlon[wrkpt[i]].oid<>ptlon[wrkpt[i-1]].oid)then begingomas[ptlon[wrkpt[i-1]].oid].objkind=1 then.Canvas.Polygon(slice(points,np+1));(gomas[ptlon[wrkpt[i]].oid].objkind,gomas[ptlon[wrkpt[i]].oid].objtype,image1.Canvas);

{image1.canvas.pen.color:=pc;.canvas.brush.color:=bc;}:=0;[np].X:=round(((ptlon[wrkpt[i]].lon)-minlon)*ky);[np].Y:=image1.Height-round(((ptlon[wrkpt[i]].lat)-minlat)*kx);else:=np+1;[np].X:=round(((ptlon[wrkpt[i]].lon)-minlon)*ky);[np].Y:=image1.Height-round(((ptlon[wrkpt[i]].lat)-minlat)*kx);;.Canvas.Pen.Width:=2;i:=1 to nwrkpt do begin(ptlon[wrkpt[i]].oid<>ptlon[wrkpt[i-1]].oid)then begingomas[ptlon[wrkpt[i-1]].oid].objkind=0 then.Canvas.Polyline(slice(points,np+1));

{if gomas[ptlon[wrkpt[i-1]].oid].objkind=1 then.Canvas.Polygon(slice(points,np+1));}gomas[ptlon[wrkpt[i-1]].oid].objkind=2 then.Canvas.Brush.Color:=clred;.Canvas.Ellipse(round(((ptlon[wrkpt[i]].lon)-minlon)*ky)-5,

image1.Height-round(((ptlon[wrkpt[i]].lat)-minlat)*kx)-5,

round(((ptlon[wrkpt[i]].lon)-minlon)*ky)+5,

image1.Height-round(((ptlon[wrkpt[i]].lat)-minlat)*kx)+5);

//image1.Canvas.TextFlags:=(image1.Canvas.Handle, TRANSPARENT);.Canvas.TextOut(round(((ptlon[wrkpt[i]].lon)-minlon)*ky),image1.Height-round(((ptlon[wrkpt[i]].lat)-minlat)*kx),gomas[ptlon[wrkpt[i]].oid].objname);;(gomas[ptlon[wrkpt[i]].oid].objkind,gomas[ptlon[wrkpt[i]].oid].objtype,image1.Canvas);

{image1.canvas.pen.color:=pc;.canvas.brush.color:=bc;}:=0;[np].X:=round(((ptlon[wrkpt[i]].lon)-minlon)*ky);[np].Y:=image1.Height-round(((ptlon[wrkpt[i]].lat)-minlat)*kx);else:=np+1;[np].X:=round(((ptlon[wrkpt[i]].lon)-minlon)*ky);[np].Y:=image1.Height-round(((ptlon[wrkpt[i]].lat)-minlat)*kx);;

//:=dbgrid2.DataSource.DataSet.Recordcount;i:=1 to np do.DataSource.DataSet.Recno:=i;:=dbgrid2.Fields[0].AsFloat;:=dbgrid2.Fields[1].AsFloat;:=round((lat-minlon)*ky);:=image1.Height-round((lon-minlat)*kx);:=dbgrid2.Fields[2].AsFloat;(image1.Canvas,cx,cy,course,clgreen);

//image1.Canvas.Ellipse(cx-5,cy-5,cx+5,cy+5);

//image1.Canvas.MoveTo();;;

TForm1.Button8Click(Sender: TObject);.Text:=floattostr(minlon-((maxlon-minlon)/10));.Text:=floattostr(maxlon-((maxlon-minlon)/10));.Click;;

TForm1.Button11Click(Sender: TObject);.Text:=floattostr(minlon+((maxlon-minlon)/10));.Text:=floattostr(maxlon+((maxlon-minlon)/10));.Click;;

TForm1.Button9Click(Sender: TObject);.Text:=floattostr(minlat+((maxlat-minlat)/10));.Text:=floattostr(maxlat+((maxlat-minlat)/10));.Click;;

TForm1.Button10Click(Sender: TObject);.Text:=floattostr(minlat-((maxlat-minlat)/10));.Text:=floattostr(maxlat-((maxlat-minlat)/10));.Click;

;

TForm1.Button12Click(Sender: TObject);.Text:=floattostr(minlon+((maxlon-minlon)/10));.Text:=floattostr(maxlon-((maxlon-minlon)/10));.Text:=floattostr(minlat+((maxlat-minlat)/10));.Text:=floattostr(maxlat-((maxlat-minlat)/10));.Click;;

TForm1.Button13Click(Sender: TObject);.Text:=floattostr(minlon-((maxlon-minlon)/10));.Text:=floattostr(maxlon+((maxlon-minlon)/10));.Text:=floattostr(minlat-((maxlat-minlat)/10));.Text:=floattostr(maxlat+((maxlat-minlat)/10));.Click;;

TForm1.Button14Click(Sender: TObject);i,l:integer;.Items.Clear;.DataSource.DataSet.FindLast;:=dbgrid1.DataSource.DataSet.RecNo;

//dbgrid1.:=2;

i:=1 to l do begin.DataSource.DataSet.RecNo:=i;

//dbgrid1.Fields.AsString.Items.Append(dbgrid1.Fields[0].asstring);;;

TForm1.Button15Click(Sender: TObject);.Close;.SQL.Text:='select positionX,positionY,course from navdata where vehicleid=52252';.Open;

;

TForm1.FormCreate(Sender: TObject);.Click;;

.

Похожие работы на - Розробка розподіленої інформаційно-навігаційної системи

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!