Очень нужна помощь!
Пытаюсь разобраться с кодировкой сообщения AIS (автоматическая идентификационная система, обеспечивающая безопасное передвижение кораблей и самолетов).
На сайте
http://catb.org/gpsd/AIVDM.html есть полное описание, но не могу понять...
Нужно из сообщения выдрать параметр COG - курс относительно земли.
К примеру, сообщение (COG=150):
!AIVDM,1,1,,A,166?maw000007qawwB55o4e@050l,0содержит следующую информацию (декодировано на сайте
http://www.aggsoft.com/ais-decoder.htm):
Спойлер
Packet Type AIVDM
CHANNEL A
Message Type 1 Scheduled Position Report
Repeat Indicator 0 Default
User ID 409204135
Navigation Status 15 Not defined (default)
Rate of Turn (ROT) 0 Turning right at up to 708 degrees per minute or higher
Speed Over Ground (SOG) 0
Position Accuracy 0 An unaugmented GNSS fix with accuracy > 10 m
Longitude 0.02696666666667 East
Latitude -0.01959166666667 West
Course Over Ground (COG) 150
True Heading (HDG) 150
Time Stamp 40
Reserved for regional 0 Not available (default)
RAIM flag 0 RAIM not in use (default)
Communication State 20532 Sync state: UTC Direct; Slot Timeout: 1 frames respectively are left until slot change; UTC hour: 20, UTC minute: 1
Communication Sync State 0 Sync state: UTC Direct
Communication Slot Timeout 1 Slot Timeout: 1 frames respectively are left until slot change
Communication Sub Message 4148
Communication Utc Hour 8
Communication Utc Minute 13
Communication Time Stamp 30-12-99
Communication Slot Number No value
Communication Received Stations No value
Communication Slot Offset No valueЭто:
!AIVDM,1,1,,A,166?maw000007qawwB5>4;@6050l,0все тоже самое, только COG=360, и время, присутствующее в каждом сообщении для синхронизации, уже другое.
Вся информация содержится в блоке data payload (Field 6):
166?maw000007qawwB5>4;@6050lЧто за 6 битная кодировка ASCII, и как указывается знак и десятичная точка?
пс примеры сообщений сгенерированы программой NemaStudio, доступна в триале на офсайте.