DataMavlinkPacket
open class DataMavlinkPacket : IntdashData, IntdashDataProtocol
Mavlink 2 Packet(Micro Air Vehicle/ドローン用の通信プロトコル)のデータを格納するクラス。
-
パケット開始を表すフラグ。 フィールドの詳細については、 詳説 iSCP 1.0 を参照してください。
Declaration
Swift
public var packetStartSign: UInt8
-
ペイロード長。 フィールドの詳細については、 詳説 iSCP 1.0 を参照してください。
Declaration
Swift
public var payloadLength: UInt8
-
コンポーネントごとにインクリメントされるカウンタ。 フィールドの詳細については、 詳説 iSCP 1.0 を参照してください。
Declaration
Swift
public var packetSequence: UInt8
-
システムID。 フィールドの詳細については、 詳説 iSCP 1.0 を参照してください。
Declaration
Swift
public var systemId: UInt8
-
コンポーネントID。 フィールドの詳細については、 詳説 iSCP 1.0 を参照してください。
Declaration
Swift
public var componentId: UInt8
-
メッセージID。 フィールドの詳細については、 詳説 iSCP 1.0 を参照してください。
Declaration
Swift
public var messageId: UInt8
-
メッセージのペイロード。 フィールドの詳細については、 詳説 iSCP 1.0 を参照してください。
Declaration
Swift
public var data: [UInt8]
-
packetStartSign
を除いた部分のチェックサム(CRC-16-CCITT)。 フィールドの詳細については、 詳説 iSCP 1.0 を参照してください。Declaration
Swift
public var checkSum: UInt16
-
DataMavlinkPacketを生成します。
Declaration
Swift
public init(packetStartSign: UInt8, payloadLength: UInt8, packetSequence: UInt8, systemId: UInt8, componentId: UInt8, messageId: UInt8, data: [UInt8], checkSum: UInt16)
Parameters
packetStartSign
パケット開始を表すフラグ
payloadLength
ペイロード長
packetSequence
コンポーネントごとにインクリメントされるカウンタ
systemId
システムID
componentId
コンポーネントID
messageId
メッセージID
data
メッセージのペイロード
checkSum
packetStartSign
を除いた部分のチェックサム(CRC-16-CCITT) -
JSON形式の文字列からDataMavlinkPacketを生成します。
Declaration
Swift
public init?(json: [String : Any])
Parameters
json
JSON形式の文字列
形式は{"stx": <packetStartSign>, "seq": <packetSequence>, "sys": <systemId>, "comp": <componentId>, "msg": <messageId>, "chk": "<base64化したcheckSum>"", "data": <base64化したdata>}
です。dataの形式は、data
を参照してください。