|
|
|
|
@ -1,7 +1,7 @@
@@ -1,7 +1,7 @@
|
|
|
|
|
using System; |
|
|
|
|
|
|
|
|
|
/// <summary> |
|
|
|
|
/// Ноавя версия ПИВ 1.22 |
|
|
|
|
/// Ноавя версия ПИВ 1.23 |
|
|
|
|
/// </summary> |
|
|
|
|
|
|
|
|
|
namespace PIV |
|
|
|
|
@ -821,6 +821,10 @@ namespace PIV
@@ -821,6 +821,10 @@ namespace PIV
|
|
|
|
|
} |
|
|
|
|
public static class OES2BVM |
|
|
|
|
{ |
|
|
|
|
private const UInt16 _len_pack = 32; |
|
|
|
|
private static UInt16 _len_data = _len_pack - 8; |
|
|
|
|
private static UInt16 _len_crc = _len_pack - 2; |
|
|
|
|
|
|
|
|
|
private static Byte _num_pack = 1; |
|
|
|
|
private static Byte _dir_pack = 2; |
|
|
|
|
private static Byte _addr_pack = 2; |
|
|
|
|
@ -938,12 +942,8 @@ namespace PIV
@@ -938,12 +942,8 @@ namespace PIV
|
|
|
|
|
public static float usAZ; |
|
|
|
|
public static float usUM; |
|
|
|
|
public static UInt16 CRC16; |
|
|
|
|
public static UInt16 CalcCRC() |
|
|
|
|
{ |
|
|
|
|
return CONST.CRC16(ref Data, 30); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public static Byte[] Data = new Byte[32]; |
|
|
|
|
public static Byte[] Data = new Byte[_len_pack]; |
|
|
|
|
public static void MakeData() |
|
|
|
|
{ |
|
|
|
|
Array.Copy(BitConverter.GetBytes(Start), 0, Data, 0, 1); |
|
|
|
|
@ -958,8 +958,8 @@ namespace PIV
@@ -958,8 +958,8 @@ namespace PIV
|
|
|
|
|
Array.Copy(BitConverter.GetBytes(usAZ), 0, Data, 22, 4); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(usUM), 0, Data, 26, 4); |
|
|
|
|
|
|
|
|
|
UInt16 _crc16 = CONST.CRC16(ref Data, 30); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(_crc16), 0, Data, 30, 2); |
|
|
|
|
UInt16 _crc16 = CONST.CRC16(ref Data, _len_crc); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(_crc16), 0, Data, _len_crc, 2); |
|
|
|
|
} |
|
|
|
|
public static void GetData() |
|
|
|
|
{ |
|
|
|
|
@ -984,7 +984,7 @@ namespace PIV
@@ -984,7 +984,7 @@ namespace PIV
|
|
|
|
|
} |
|
|
|
|
public static class BVM2OES |
|
|
|
|
{ |
|
|
|
|
private const UInt16 _len_pack = 42; |
|
|
|
|
private const UInt16 _len_pack = 60; |
|
|
|
|
private static UInt16 _len_data = _len_pack - 8; |
|
|
|
|
private static UInt16 _len_crc = _len_pack - 2; |
|
|
|
|
|
|
|
|
|
@ -1094,21 +1094,27 @@ namespace PIV
@@ -1094,21 +1094,27 @@ namespace PIV
|
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
public static float ustAZ; |
|
|
|
|
public static float ustUM; |
|
|
|
|
public static UInt16 X; |
|
|
|
|
public static UInt16 Y; |
|
|
|
|
public static Byte lx; |
|
|
|
|
public static Byte ly; |
|
|
|
|
public static float AZ; |
|
|
|
|
public static float UM; |
|
|
|
|
public static Int16 Xrks; |
|
|
|
|
public static Int16 Yrks; |
|
|
|
|
public static float ustAZ; // Установочные поправки по АЗ |
|
|
|
|
public static float ustUM; // Установочные поправки по УМ |
|
|
|
|
public static UInt16 X; // Координата центра цели по горизонтали в растре |
|
|
|
|
public static UInt16 Y; // Координата центра цели по вертикали в растре |
|
|
|
|
public static Byte lx; // Размер цели по горизонтали в растре эталонного изображения |
|
|
|
|
public static Byte ly; // Размер цели по вертикали в растре эталонного изображения |
|
|
|
|
public static float AZ; // Сигнал управления центром визирования ОЭС |
|
|
|
|
public static float UM; // Сигнал управления центром визирования ОЭС |
|
|
|
|
public static Int16 Xrks; // Скорректированная координата центра цели по горизонтали |
|
|
|
|
public static Int16 Yrks; // Скорректированная координата центра цели по вертикали |
|
|
|
|
/// <summary> |
|
|
|
|
/// новый ПИВ 1.23 |
|
|
|
|
/// </summary> |
|
|
|
|
public static Int32 Shirota; // Широта БЛА |
|
|
|
|
public static Int32 Dolgota; // Долгота БЛА |
|
|
|
|
public static Int32 Vysota; // Высота БЛА |
|
|
|
|
public static Int16 Kren; // Крен БЛА |
|
|
|
|
public static Int16 Tangaj; // Тангаж БЛА |
|
|
|
|
public static Int16 Kurs; // Курс БЛА |
|
|
|
|
|
|
|
|
|
public static UInt16 CRC16; |
|
|
|
|
public static UInt16 CalcCRC() |
|
|
|
|
{ |
|
|
|
|
return CONST.CRC16(ref Data, _len_crc); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
public static Byte[] Data = new Byte[_len_pack]; |
|
|
|
|
public static void MakeData() |
|
|
|
|
@ -1130,8 +1136,18 @@ namespace PIV
@@ -1130,8 +1136,18 @@ namespace PIV
|
|
|
|
|
Array.Copy(BitConverter.GetBytes(UM), 0, Data, 32, 4); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(Xrks), 0, Data, 36, 2); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(Yrks), 0, Data, 38, 2); |
|
|
|
|
UInt16 _crc16 = CONST.CRC16(ref Data, 40); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(_crc16), 0, Data, 40, 2); |
|
|
|
|
/// <summary> |
|
|
|
|
/// новый ПИВ 1.23 |
|
|
|
|
/// </summary> |
|
|
|
|
Array.Copy(BitConverter.GetBytes(Shirota), 0, Data, 40, 4); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(Dolgota), 0, Data, 44, 4); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(Vysota), 0, Data, 48, 4); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(Kren), 0, Data, 52, 2); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(Tangaj), 0, Data, 54, 2); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(Kurs), 0, Data, 56, 2); |
|
|
|
|
|
|
|
|
|
UInt16 _crc16 = CONST.CRC16(ref Data, _len_crc); |
|
|
|
|
Array.Copy(BitConverter.GetBytes(_crc16), 0, Data, _len_crc, 2); |
|
|
|
|
} |
|
|
|
|
public static void GetData() |
|
|
|
|
{ |
|
|
|
|
@ -1152,7 +1168,17 @@ namespace PIV
@@ -1152,7 +1168,17 @@ namespace PIV
|
|
|
|
|
UM = BitConverter.ToSingle(Data, 32); |
|
|
|
|
Xrks = BitConverter.ToInt16(Data, 36); |
|
|
|
|
Yrks = BitConverter.ToInt16(Data, 38); |
|
|
|
|
CRC16 = BitConverter.ToUInt16(Data, 40); |
|
|
|
|
/// <summary> |
|
|
|
|
/// новый ПИВ 1.23 |
|
|
|
|
/// </summary> |
|
|
|
|
Shirota = BitConverter.ToInt32(Data, 40); |
|
|
|
|
Dolgota = BitConverter.ToInt32(Data, 44); |
|
|
|
|
Vysota = BitConverter.ToInt32(Data, 48); |
|
|
|
|
Kren = BitConverter.ToInt16(Data, 52); |
|
|
|
|
Tangaj = BitConverter.ToInt16(Data, 54); |
|
|
|
|
Kurs = BitConverter.ToInt16(Data, 56); |
|
|
|
|
|
|
|
|
|
CRC16 = BitConverter.ToUInt16(Data, 58); |
|
|
|
|
} |
|
|
|
|
public static void ClearData() |
|
|
|
|
{ |
|
|
|
|
|