Skip to content

GB/T 32960 ゲートウェイデータ交換フォーマット

GB/T 32960ゲートウェイ(emqx_gbt32960)は、GB/T 32960準拠の電気自動車端末とEMQXをMQTT経由で接続します。本ページでは、そのデータ交換に使用されるJSONメッセージフォーマットを定義します。

プロトコルバージョン対応

ゲートウェイはgbt32960-2016およびgbt32960-2025の両プロトコルバージョンをサポートしています。プロトコルバージョンはフレームヘッダーから自動検出されます:

  • gbt32960-2016:フレームヘッダーは 0x23 0x23(ASCII ##
  • gbt32960-2025:フレームヘッダーは 0x24 0x24(ASCII $$

バージョン間でフィールドや挙動が異なる場合は、本ドキュメントで明示的に記載しています。

表記規則

  • ペイロードはJSON形式で組み立てられます。
  • JSONのキー名はUpperCamelCase(パスカルケース)を使用します。

アップストリーム

データフロー:端末 → emqx_gbt32960 → EMQX

車両ログイン

トピック:gbt32960/${vin}/upstream/vlogin

json
// gbt32960-2016
{
    "Cmd": 1,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "ICCID": "12345678901234567890",
        "Id": "C",
        "Length": 1,
        "Num": 1,
        "Seq": 1,
        "Time": {
            "Day": 29,
            "Hour": 12,
            "Minute": 19,
            "Month": 12,
            "Second": 20,
            "Year": 12
        }
    }
}
json
// gbt32960-2025
{
    "Cmd": 1,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "ICCID": "12345678901234567890",
        "Seq": 1,
        "Time": {
            "Day": 29,
            "Hour": 12,
            "Minute": 19,
            "Month": 12,
            "Second": 20,
            "Year": 12
        },
        "BmsNum": 2,
        "BatteryPackCounts": [1, 2],
        "BatteryPackEncodings": [ ["encoding-string-bms1-pack1"], ["encoding-string-bms2-pack1", "encoding-string-bms2-pack2"] ]
    }
}

トップレベルフィールド:

フィールド説明
Cmd整数コマンド識別子。1は車両ログインを意味します
Encrypt整数データ暗号化方式:1=暗号化なし、2=RSA、3=AES128、254=エラー、255=無効
Vin文字列車両識別番号(VIN)
Dataオブジェクトデータ単位、JSONオブジェクト形式

Datagbt32960-2016用フィールド:

フィールド説明
Timeオブジェクトデータ収集日時(年、月、日、時、分、秒)
Seq整数ログインシーケンス番号
ICCID文字列20文字のSIMカードICCID
Num整数充電式エネルギー貯蔵サブシステムの数;有効範囲0〜250
Length整数充電式エネルギー貯蔵システムのエンコーディング長;有効範囲0〜50
Id文字列システムエンコーディング;長さはNum×Length

Datagbt32960-2025用フィールド:

フィールド説明
Timeオブジェクトデータ収集日時(年、月、日、時、分、秒)
Seq整数ログインシーケンス番号
ICCID文字列20文字のSIMカードICCID
BmsNum整数バッテリーマネジメントシステム(BMS)の数
BatteryPackCounts配列各BMSが管理するバッテリーパックの数
BatteryPackEncodings配列<配列<文字列>>各BMSごとのバッテリーパックエンコーディングリスト。各エンコーディングは24文字の文字列

車両ログアウト

トピック:gbt32960/${vin}/upstream/vlogout

Cmd値は4です。その他のフィールドは車両ログインと同じ構造です:

json
{
    "Cmd": 4,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Seq": 1,
        "Time": {
            "Day": 1,
            "Hour": 2,
            "Minute": 59,
            "Month": 1,
            "Second": 0,
            "Year": 16
        }
    }
}

リアルタイムデータレポート

トピック:gbt32960/${vin}/upstream/info

各レポートはInfos配列に複数の情報項目を含めることができます。Typeフィールドで情報タイプを区別します。

車両データ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "AcceleratorPedal": 90,
                "BrakePedal": 0,
                "Charging": 1,
                "Current": 15000,
                "DC": 1,
                "Gear": 5,
                "Mileage": 999999,
                "Mode": 1,
                "Resistance": 6000,
                "SOC": 50,
                "Speed": 2000,
                "Status": 1,
                "Type": "Vehicle",
                "Voltage": 5000
            }
        ],
        "Time": {
            "Day": 1,
            "Hour": 2,
            "Minute": 59,
            "Month": 1,
            "Second": 0,
            "Year": 16
        }
    }
}
フィールド説明
Type文字列情報タイプ。この構造ではVehicle
Status整数車両状態:1=走行中、2=停止、3=その他、254=エラー、255=無効
Charging整数充電状態:1=駐車充電、2=走行充電、3=非充電、4=充電完了、254=エラー、255=無効
Mode整数動作モード:1=純電動、2=ハイブリッド、3=燃料、254=エラー、255=無効
Speed整数車速;有効範囲0〜2200(0〜220.0 km/h)、単位:0.1 km/h
Mileage整数累積走行距離;有効範囲0〜9,999,999(0〜999,999.9 km)、単位:0.1 km
Voltage整数総電圧;有効範囲0〜10000(0〜1000 V)、単位:0.1 V
Current整数総電流;有効範囲0〜20000(オフセット1000、-1000 A〜+1000 A)、単位:0.1 A
SOC整数充電状態(State of Charge);有効範囲0〜100(0%〜100%)
DC整数DC/DC状態:1=動作中、2=切断、254=エラー、255=無効
Gear整数ギア位置;プロトコルの表A.1に準じたギア表の整数表現
Resistance整数絶縁抵抗;有効範囲0〜60000(0〜60000 kΩ)
AcceleratorPedal整数gbt32960-2016のみ:アクセルペダル開度;有効範囲0〜100
BrakePedal整数gbt32960-2016のみ:ブレーキペダル状態;有効範囲0〜100

駆動モーターデータ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "Motors": [
                    {
                        "CtrlTemp": 125,
                        "DCBusCurrent": 31203,
                        "InputVoltage": 30012,
                        "MotorTemp": 125,
                        "No": 1,
                        "Rotating": 30000,
                        "Status": 1,
                        "Torque": 25000
                    },
                    {
                        "CtrlTemp": 125,
                        "DCBusCurrent": 30200,
                        "InputVoltage": 32000,
                        "MotorTemp": 145,
                        "No": 2,
                        "Rotating": 30200,
                        "Status": 1,
                        "Torque": 25300
                    }
                ],
                "Number": 2,
                "Type": "DriveMotor"
            }
        ],
        "Time": {
            "Day": 1,
            "Hour": 2,
            "Minute": 59,
            "Month": 1,
            "Second": 0,
            "Year": 16
        }
    }
}
フィールド説明
Type文字列情報タイプ。この構造ではDriveMotor
Number整数駆動モーターの数;有効範囲1〜253
Motors配列駆動モーターのデータリスト

モーターエントリのフィールド:

フィールド説明
No整数モーターシーケンス番号;有効範囲1〜253
Status整数モーター状態:1=消費中、2=発電中、3=停止、4=待機、254=エラー、255=無効
CtrlTemp整数コントローラー温度;有効範囲0〜250(オフセット40℃、-40℃〜+210℃)、単位:1℃
Rotating整数ローター回転数;有効範囲0〜65531(オフセット20000、-20000〜45531 rpm)、単位:1 rpm
Torque整数gbt32960-2016:モータートルク;有効範囲0〜65531(オフセット20000、-2000〜4553.1 N·m)、単位:0.1 N·m
gbt32960-2025:モータートルク;有効範囲0〜429496729(オフセット200000、-20000〜229496.729 N·m)、単位:0.001 N·m
MotorTemp整数モーター温度;有効範囲0〜250(オフセット40℃、-40℃〜+210℃)、単位:1℃
InputVoltage整数gbt32960-2016のみ:コントローラー入力電圧;有効範囲0〜60000(0〜6000 V)、単位:0.1 V
DCBusCurrent整数gbt32960-2016のみ:DCバス電流;有効範囲0〜20000(オフセット1000 A、-1000 A〜+1000 A)、単位:0.1 A

燃料電池データ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "CellCurrent": 12000,
                "CellVoltage": 10000,
                "DCStatus": 1,
                "FuelConsumption": 45000,
                "H_ConcSensorCode": 11,
                "H_MaxConc": 35000,
                "H_MaxPress": 500,
                "H_MaxTemp": 12500,
                "H_PressSensorCode": 12,
                "H_TempProbeCode": 10,
                "ProbeNum": 2,
                "ProbeTemps": [120, 121],
                "Type": "FuelCell"
            }
        ],
        "Time": {
            "Day": 1,
            "Hour": 2,
            "Minute": 59,
            "Month": 1,
            "Second": 0,
            "Year": 16
        }
    }
}
フィールド説明
Type文字列情報タイプ。この構造ではFuelCell
CellVoltage整数gbt32960-2016のみ:燃料電池電圧;有効範囲0〜20000(0〜2000 V)、単位:0.1 V
CellCurrent整数gbt32960-2016のみ:燃料電池電流;有効範囲0〜20000(0〜2000 A)、単位:0.1 A
FuelConsumption整数gbt32960-2016のみ:燃料消費率;有効範囲0〜60000(0〜600 kg/100km)、単位:0.01 kg/100km
ProbeNum整数gbt32960-2016のみ:燃料電池プローブの総数;有効範囲0〜65531
ProbeTemps配列gbt32960-2016のみ:各燃料電池プローブの温度値
H_MaxTemp整数最大水素系統温度;有効範囲0〜2400(オフセット40℃、-40℃〜+200℃)、単位:0.1℃
H_TempProbeCode整数最大水素温度のプローブコード;有効範囲1〜252
H_MaxConc整数最大水素濃度;有効範囲0〜60000(0〜50000 mg/kg)、単位:1 mg/kg
H_ConcSensorCode整数最大水素濃度のセンサーコード;有効範囲1〜252
H_MaxPress整数最大水素圧力;有効範囲0〜1000(0〜100 MPa)、単位:0.1 MPa
H_PressSensorCode整数最大水素圧力のセンサーコード;有効範囲1〜252
DCStatus整数高電圧DC/DC状態:1=動作中、2=切断
RemainingH2整数gbt32960-2025のみ:水素系統の残量;単位:1 kg
DCDCTemp整数gbt32960-2025のみ:高電圧DCDC温度;オフセット40℃、-40℃〜+210℃

エンジンデータ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "CrankshaftSpeed": 2000,
                "FuelConsumption": 200,
                "Status": 1,
                "Type": "Engine"
            }
        ],
        "Time": {
            "Day": 1,
            "Hour": 22,
            "Minute": 59,
            "Month": 10,
            "Second": 0,
            "Year": 16
        }
    }
}
フィールド説明
Type文字列情報タイプ。この構造ではEngine
Status整数gbt32960-2016のみ:エンジン状態:1=稼働中、2=停止
CrankshaftSpeed整数クランクシャフト回転数;有効範囲0〜60000(0〜60000 rpm)、単位:1 rpm
FuelConsumption整数gbt32960-2016のみ:燃料消費率;有効範囲0〜60000(0〜600 L/100km)、単位:0.01 L/100km

車両位置データ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "Latitude": 100,
                "Longitude": 10,
                "Status": 0,
                "Type": "Location"
            }
        ],
        "Time": {
            "Day": 1,
            "Hour": 22,
            "Minute": 59,
            "Month": 10,
            "Second": 0,
            "Year": 16
        }
    }
}
フィールド説明
Type文字列情報タイプ。この構造ではLocation
Status整数位置状態;全状態ビットの整数値(プロトコル表15参照)
CoordinateSystem整数gbt32960-2025のみ:座標系:1=WGS-84、2=GCJ-02
Longitude整数経度(度×10^6);小数点以下6桁の精度
Latitude整数緯度(度×10^6);小数点以下6桁の精度

極値データ

gbt32960-2016のみ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "MaxBatteryVoltage": 7500,
                "MaxTemp": 120,
                "MaxTempProbeNo": 12,
                "MaxTempSubsysNo": 14,
                "MaxVoltageBatteryCode": 10,
                "MaxVoltageBatterySubsysNo": 12,
                "MinBatteryVoltage": 2000,
                "MinTemp": 40,
                "MinTempProbeNo": 13,
                "MinTempSubsysNo": 15,
                "MinVoltageBatteryCode": 11,
                "MinVoltageBatterySubsysNo": 13,
                "Type": "Extreme"
            }
        ],
        "Time": {
            "Day": 30,
            "Hour": 12,
            "Minute": 22,
            "Month": 5,
            "Second": 59,
            "Year": 17
        }
    }
}
フィールド説明
Type文字列情報タイプ。この構造ではExtreme
MaxVoltageBatterySubsysNo整数最高電圧のバッテリーサブシステム番号;有効範囲1〜250
MaxVoltageBatteryCode整数最高電圧のバッテリーセルコード;有効範囲1〜250
MaxBatteryVoltage整数最高個別セル電圧;有効範囲0〜15000(0〜15 V)、単位:0.001 V
MinVoltageBatterySubsysNo整数最低電圧のバッテリーサブシステム番号;有効範囲1〜250
MinVoltageBatteryCode整数最低電圧のバッテリーセルコード;有効範囲1〜250
MinBatteryVoltage整数最低個別セル電圧;有効範囲0〜15000(0〜15 V)、単位:0.001 V
MaxTempSubsysNo整数最高温度のサブシステム番号;有効範囲1〜250
MaxTempProbeNo整数最高温度のプローブ番号;有効範囲1〜250
MaxTemp整数最高温度;有効範囲0〜250(オフセット40、-40℃〜+210℃)
MinTempSubsysNo整数最低温度のサブシステム番号;有効範囲1〜250
MinTempProbeNo整数最低温度のプローブ番号;有効範囲1〜250
MinTemp整数最低温度;有効範囲0〜250(オフセット40、-40℃〜+210℃)

アラームデータ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "FaultChargeableDeviceNum": 1,
                "FaultChargeableDeviceList": ["00C8"],
                "FaultDriveMotorNum": 0,
                "FaultDriveMotorList": [],
                "FaultEngineNum": 1,
                "FaultEngineList": ["006F"],
                "FaultOthersNum": 0,
                "FaultOthersList": [],
                "GeneralAlarmFlag": 3,
                "MaxAlarmLevel": 1,
                "Type": "Alarm"
            }
        ],
        "Time": {
            "Day": 20,
            "Hour": 22,
            "Minute": 23,
            "Month": 12,
            "Second": 59,
            "Year": 17
        }
    }
}
フィールド説明
Type文字列情報タイプ。この構造ではAlarm
MaxAlarmLevel整数最高アラームレベル。gbt32960-2016:有効範囲0〜3("0"=異常なし、"1"=レベル1異常)
gbt32960-2025:有効範囲0〜4、新値"4"=熱イベント異常
GeneralAlarmFlag整数一般アラームフラグビット(プロトコル表18参照)
FaultChargeableDeviceNum整数充電式エネルギー貯蔵装置の故障総数;有効範囲0〜252
FaultChargeableDeviceList配列充電式エネルギー貯蔵装置の故障コードリスト
FaultDriveMotorNum整数駆動モーター故障総数;有効範囲0〜252
FaultDriveMotorList配列駆動モーター故障コードリスト
FaultEngineNum整数エンジン故障総数;有効範囲0〜252
FaultEngineList配列エンジン故障コードリスト
FaultOthersNum整数その他故障総数
FaultOthersList配列その他故障コードリスト
FaultGeneralNum整数gbt32960-2025のみ:一般故障総数
FaultGeneralList配列gbt32960-2025のみ:一般故障リスト。各エントリはJSONオブジェクト{"No":整数, "Level":整数}

充電式エネルギー貯蔵電圧データ

gbt32960-2016のみ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "Number": 2,
                "SubSystems": [
                    {
                        "CellsTotal": 2,
                        "CellsVoltage": [5000],
                        "ChargeableCurrent": 10000,
                        "ChargeableSubsysNo": 1,
                        "ChargeableVoltage": 5000,
                        "FrameCellsCount": 1,
                        "FrameCellsIndex": 0
                    },
                    {
                        "CellsTotal": 2,
                        "CellsVoltage": [5001],
                        "ChargeableCurrent": 10001,
                        "ChargeableSubsysNo": 2,
                        "ChargeableVoltage": 5001,
                        "FrameCellsCount": 1,
                        "FrameCellsIndex": 1
                    }
                ],
                "Type": "ChargeableVoltage"
            }
        ],
        "Time": {
            "Day": 1,
            "Hour": 22,
            "Minute": 59,
            "Month": 10,
            "Second": 0,
            "Year": 16
        }
    }
}
フィールド説明
Type文字列情報タイプ。この構造ではChargeableVoltage
Number整数充電式エネルギー貯蔵サブシステム数;有効範囲1〜250
SubSystems配列サブシステム電圧データのリスト

サブシステム電圧フィールド:

フィールド説明
ChargeableSubsysNo整数サブシステム番号;有効範囲1〜250
ChargeableVoltage整数サブシステム電圧;有効範囲0〜10000(0〜1000 V)、単位:0.1 V
ChargeableCurrent整数サブシステム電流;有効範囲0〜20000(オフセット1000 A、-1000 A〜+1000 A)、単位:0.1 A
CellsTotal整数バッテリーセル総数;有効範囲1〜65531
FrameCellsIndex整数本フレームで報告されるセルの開始インデックス(1始まり);有効範囲1〜65531。セル数が200を超える場合はフレーム分割される。
FrameCellsCount整数本フレーム内のセル数;有効範囲1〜200
CellsVoltage配列個別セル電圧;有効範囲0〜60000(0〜60.000 V)、単位:0.001 V

充電式エネルギー貯蔵温度データ

gbt32960-2016のみ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "Number": 2,
                "SubSystems": [
                    {
                        "ChargeableSubsysNo": 1,
                        "ProbeNum": 10,
                        "ProbesTemp": [0, 0, 0, 0, 0, 0, 0, 0, 19, 136]
                    },
                    {
                        "ChargeableSubsysNo": 2,
                        "ProbeNum": 1,
                        "ProbesTemp": [100]
                    }
                ],
                "Type": "ChargeableTemp"
            }
        ],
        "Time": {
            "Day": 1,
            "Hour": 22,
            "Minute": 59,
            "Month": 10,
            "Second": 0,
            "Year": 16
        }
    }
}
フィールド説明
Type文字列情報タイプ。この構造ではChargeableTemp
Number整数温度情報リスト内のサブシステム数
SubSystems配列サブシステム温度データのリスト

サブシステム温度フィールド:

フィールド説明
ChargeableSubsysNo整数サブシステム番号;有効範囲1〜250
ProbeNum整数本サブシステム内の温度プローブ数
ProbesTemp配列各プローブの温度読み値

パワーバッテリーパック電圧データ

gbt32960-2025のみ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "Type": "MinVoltageOfPowerBattery",
                "Number": 2,
                "SubSystems": [
                    {
                        "BatteryPackNo": 1,
                        "BatteryPackVoltage": 3000,
                        "BatteryPackCurrent": 1000,
                        "MinParallelUnitTotal": 2,
                        "MinParallelUnitVoltage": [1200, 1201]
                    },
                    {
                        "BatteryPackNo": 2,
                        "BatteryPackVoltage": 3100,
                        "BatteryPackCurrent": 1100,
                        "MinParallelUnitTotal": 2,
                        "MinParallelUnitVoltage": [1300, 1301]
                    }
                ]
            }
        ],
        "Time": {
            "Day": 13,
            "Hour": 15,
            "Minute": 30,
            "Month": 11,
            "Second": 0,
            "Year": 25
        }
    }
}
フィールド説明
Type文字列MinVoltageOfPowerBattery
Number整数パワーバッテリーパックの数
SubSystems配列バッテリーパックのリスト
BatteryPackNo整数バッテリーパックシーケンス番号
BatteryPackVoltage整数バッテリーパック電圧;単位:0.1 V
BatteryPackCurrent整数バッテリーパック電流;オフセット1000 A、単位:0.1 A
MinParallelUnitTotal整数最小並列ユニットの総数
MinParallelUnitVoltage配列最小並列ユニットの電圧リスト;オフセット4 V、単位:1 mV

パワーバッテリーパック温度データ

gbt32960-2025のみ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "Type": "TempOfPowerBattery",
                "Number": 2,
                "SubSystems": [
                    {
                        "BatteryPackNo": 1,
                        "ProbeNum": 5,
                        "ProbesTemp": [120, 121, 122, 123, 124]
                    },
                    {
                        "BatteryPackNo": 2,
                        "ProbeNum": 3,
                        "ProbesTemp": [130, 131, 132]
                    }
                ]
            }
        ],
        "Time": {
            "Day": 13,
            "Hour": 15,
            "Minute": 30,
            "Month": 11,
            "Second": 0,
            "Year": 25
        }
    }
}
フィールド説明
Type文字列TempOfPowerBattery
Number整数パワーバッテリーパックの数
SubSystems配列バッテリーパックのリスト
BatteryPackNo整数バッテリーパックシーケンス番号
ProbeNum整数温度プローブの数
ProbesTemp配列プローブ温度リスト;オフセット40℃、単位:1℃

燃料電池スタックデータ

gbt32960-2025のみ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "Type": "FuelCellStack",
                "Number": 1,
                "Stacks": [
                    {
                        "FuelCellStackNo": 1,
                        "Voltage": 2000,
                        "Current": 300,
                        "H2InletPressure": 1200,
                        "AirInletPressure": 1100,
                        "AirInletTemp": 50,
                        "StackProbeNum": 3,
                        "StackProbeTemp": [100, 101, 102]
                    }
                ]
            }
        ],
        "Time": {
            "Day": 13,
            "Hour": 15,
            "Minute": 30,
            "Month": 11,
            "Second": 0,
            "Year": 25
        }
    }
}
フィールド説明
Type文字列FuelCellStack
Number整数燃料電池スタックの数
Stacks配列燃料電池スタックのリスト
FuelCellStackNo整数燃料電池スタックシーケンス番号
Voltage整数燃料電池スタック電圧;単位:0.1 V
Current整数燃料電池スタック電流;単位:0.1 A
H2InletPressure整数水素入口圧力;単位:0.1 bar
AirInletPressure整数空気入口圧力;単位:0.1 bar
AirInletTemp整数空気入口温度;オフセット40℃、単位:1℃
StackProbeNum整数スタック温度プローブの数
StackProbeTemp配列スタック温度プローブの読み値

スーパーキャパシタデータ

gbt32960-2025のみ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "Type": "SuperCapacitor",
                "ManagerSysNo": 1,
                "TotalVoltage": 1000,
                "TotalCurrent": 2000,
                "CellsTotal": 3,
                "CellsVoltage": [1200, 1201, 1202],
                "ProbeNum": 2,
                "ProbeTemp": [100, 101]
            }
        ],
        "Time": {
            "Day": 13,
            "Hour": 15,
            "Minute": 30,
            "Month": 11,
            "Second": 0,
            "Year": 25
        }
    }
}
フィールド説明
Type文字列SuperCapacitor
ManagerSysNo整数管理システム番号
TotalVoltage整数総電圧;単位:0.1 V
TotalCurrent整数総電流;オフセット1000 A、単位:0.1 A
CellsTotal整数セル総数
CellsVoltage配列セル電圧リスト;単位:1 mV
ProbeNum整数温度プローブ数
ProbeTemp配列プローブ温度リスト;オフセット40℃、単位:1℃

スーパーキャパシタ極値データ

gbt32960-2025のみ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "Type": "SuperCapacitorExtreme",
                "MaxVoltageManagerSysNo": 1,
                "MaxVoltageCellCode": 10,
                "MaxVoltageCellValue": 7500,
                "MinVoltageManagerSysNo": 2,
                "MinVoltageCellCode": 11,
                "MinVoltageCellValue": 2000,
                "MaxTempManagerSysNo": 3,
                "MaxTempProbeCode": 12,
                "MaxTempValue": 120,
                "MinTempManagerSysNo": 4,
                "MinTempProbeCode": 13,
                "MinTempValue": 40
            }
        ],
        "Time": {
            "Day": 13,
            "Hour": 15,
            "Minute": 30,
            "Month": 11,
            "Second": 0,
            "Year": 25
        }
    }
}
フィールド説明
Type文字列SuperCapacitorExtreme
MaxVoltageManagerSysNo整数最大電圧の管理システム番号
MaxVoltageCellCode整数最大電圧のセルコード
MaxVoltageCellValue整数最大電圧値;単位:1 mV
MinVoltageManagerSysNo整数最小電圧の管理システム番号
MinVoltageCellCode整数最小電圧のセルコード
MinVoltageCellValue整数最小電圧値;単位:1 mV
MaxTempManagerSysNo整数最大温度の管理システム番号
MaxTempProbeCode整数最大温度のプローブコード
MaxTempValue整数最大温度値
MinTempManagerSysNo整数最小温度の管理システム番号
MinTempProbeCode整数最小温度のプローブコード
MinTempValue整数最小温度値

デジタル署名

gbt32960-2025のみ

json
{
    "Cmd": 2,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Infos": [
            {
                "Type": "Signature",
                "SignatureType": 1,
                "RLength": 32,
                "RValue": "5256414C5256414C5256414C5256414C5256414C5256414C5256414C5256414C",
                "SLength": 32,
                "SValue": "5356414C5356414C5356414C5356414C5356414C5356414C5356414C5356414C"
            }
        ],
        "Time": {
            "Day": 13,
            "Hour": 15,
            "Minute": 30,
            "Month": 11,
            "Second": 0,
            "Year": 25
        }
    }
}
フィールド説明
Type文字列Signature
SignatureType整数署名タイプ
RLength整数R値の長さ
RValue文字列R値(16進エンコード文字列)
SLength整数S値の長さ
SValue文字列S値(16進エンコード文字列)

過去データ再送信

トピック:gbt32960/${vin}/upstream/reinfo

データ形式:リアルタイムデータレポートと同じ。

アクティベーション

gbt32960-2025のみ

トピック:gbt32960/${vin}/upstream/activation

json
{
    "Cmd": 9,
    "Encrypt": 1,
    "Vin": "VIN12345678901234",
    "Data": {
        "Time": {
            "Day": 1,
            "Hour": 12,
            "Minute": 0,
            "Month": 1,
            "Second": 0,
            "Year": 25
        },
        "ChipID": "CHIP123456789012",
        "PubKeyLen": 15,
        "PubKey": "5055424C49434B4559313233343536",
        "VIN": "VIN12345678901234",
        "Signature": {
            "SignatureType": 1,
            "RLength": 32,
            "RValue": "5252525252525252525252525252525252525252525252525252525252525252",
            "SLength": 32,
            "SValue": "5353535353535353535353535353535353535353535353535353535353535353"
        }
    }
}
フィールド説明
Cmd整数コマンド識別子。9はアクティベーションを意味
ChipID文字列16バイトのチップ識別子
PubKeyLen整数公開鍵の長さ
PubKey文字列公開鍵(16進エンコード)
VIN文字列車両識別番号
Signatureオブジェクトデジタル署名(Signature情報タイプと同じ構造)

ダウンストリーム

リクエストフロー:EMQX → emqx_gbt32960 → 端末

レスポンスフロー:端末 → emqx_gbt32960 → EMQX

ダウンストリームトピック:gbt32960/${vin}/dnstream

アップストリームレスポンストピック:gbt32960/${vin}/upstream/response

パラメータ照会

リクエスト:

json
{
    "Action": "Query",
    "Total": 2,
    "Ids": ["0x01", "0x02"]
}
フィールド説明
Action文字列コマンド種別。この操作ではQuery
Total整数照会するパラメータの総数
Ids配列パラメータIDリスト。IDの意味はプロトコル表B.10参照

レスポンス:

json
{
    "Cmd": 128,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Total": 2,
        "Params": [
            {"0x01": 6000},
            {"0x02": 10}
        ],
        "Time": {
            "Day": 2,
            "Hour": 11,
            "Minute": 12,
            "Month": 2,
            "Second": 12,
            "Year": 17
        }
    }
}

パラメータ設定

リクエスト:

json
{
    "Action": "Setting",
    "Total": 2,
    "Params": [{"0x01": 5000},
               {"0x02": 200}]
}
フィールド説明
Action文字列コマンド種別。この操作ではSetting
Total整数設定するパラメータの総数
Params配列設定するパラメータIDと値のリスト

レスポンス:

json
{
    "Cmd": 129,
    "Encrypt": 1,
    "Vin": "1G1BL52P7TR115520",
    "Data": {
        "Total": 2,
        "Params": [
            {"0x01": 5000},
            {"0x02": 200}
        ],
        "Time": {
            "Day": 2,
            "Hour": 11,
            "Minute": 12,
            "Month": 2,
            "Second": 12,
            "Year": 17
        }
    }
}

端末制御

コマンドによってパラメータが異なります。パラメータが不要なコマンドはParamフィールドを省略します。

リモートアップグレードリクエスト:

json
{
    "Action": "Control",
    "Command": "0x01",
    "Param": {
        "DialingName": "hz203",
        "Username": "user001",
        "Password": "password01",
        "Ip": "192.168.199.1",
        "Port": 8080,
        "ManufacturerId": "BMWA",
        "HardwareVer": "1.0.0",
        "SoftwareVer": "1.0.0",
        "UpgradeUrl": "ftp://emqtt.io/ftp/server",
        "Timeout": 10
    }
}
フィールド説明
Action文字列コマンド種別。この操作ではControl
Command文字列コマンドID(プロトコル表B.15参照)
Paramオブジェクトコマンドパラメータ(コマンドにより異なる。空の場合は省略)

車両端末シャットダウン0x02、パラメータなし):

json
{
    "Action": "Control",
    "Command": "0x02"
}

車両端末アラーム0x06):

json
{
    "Action": "Control",
    "Command": "0x06",
    "Param": {"Level": 0, "Message": "alarm message"}
}