毎日主に次の 3 つのプロトコルがあります。CAN、UART/485、Modbus。
1.CANプロトコル
テストツール:キャンテスト
- ボーレート:250K
- フレームタイプ:標準フレームと拡張フレーム。一般に、拡張フレームが使用され、標準フレームはいくつかのカスタマイズされた BMS に使用されます。
- 通信フォーマット:データIDは0x90から0x98まで顧客がアクセスできるようになります。他の ID は通常、顧客がアクセスしたり変更したりすることはできません。
- PC ソフトウェアから BMS: 優先度 + データ ID + BMS アドレス + PC ソフトウェア アドレス (例: 0x18100140)。
- PC ソフトウェアへの BMS 応答: 優先度 + データ ID + PC ソフトウェア アドレス + BMS アドレス (例: 0x18104001)。
- PC ソフトウェア アドレスと BMS アドレスの位置に注意してください。コマンドを受信したアドレスが最初になります。
- コミュニケーションコンテンツ情報:たとえば、総電圧低下の二次警告を伴うバッテリ障害ステータスでは、Byte0 は 80 と表示されます。バイナリに変換すると、これは 10000000 になります。0 は正常、1 はアラームを意味します。 DALY の左上、右下の定義によれば、これはビット 7: 総電圧低下の二次警告に対応します。
- コントロール ID:充電用MOS:DA、放電用MOS:D9。 00 はオン、01 はオフを意味します。
2.UART/485プロトコル
テストツール:COMシリアルツール
- ボーレート:9600bps
- 通信フォーマット:チェックサムの計算方法:チェックサムは、以前のすべてのデータの合計です (下位バイトのみが取得されます)。
- PC ソフトウェアから BMS: フレーム ヘッダー + 通信モジュール アドレス (UPPER-Add) + データ ID + データ長 + データ内容 + チェックサム。
- PC ソフトウェアに対する BMS 応答: フレーム ヘッダー + 通信モジュール アドレス (BMS-Add) + データ ID + データ長 + データ内容 + チェックサム。
- コミュニケーションコンテンツ情報:CANと同じ。
3. Modbusプロトコル
テストツール:COMシリアルツール
- 通信フォーマット:
- メッセージプロトコルの形式:レジスタの読み取り、フレームのリクエスト
- バイト: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7
- 説明: 0xD2 | 0x03 |開始アドレス |レジスタ数 (N) | CRC-16 チェックサム
- 例: D203000C000157AA。 D2 はスレーブ アドレス、03 は読み取りコマンド、000C は開始アドレス、0001 は読み取るレジスタの数が 1 であることを意味し、57AA は CRC チェックサムです。
- 標準応答フレーム:
- バイト: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
- 説明: 0xD2 | 0x03 |データ長 |最初のレジスタの値 | N 番目のレジスタの値 | CRC-16 チェックサム
- L = 2 * N
- 例: N はレジスタの数、D203020001FC56 です。 D2 はスレーブアドレス、03 はリードコマンド、02 はリードデータの長さ、0001 はホストコマンドからの放電ステータスである 1 番目のレジスタリードの値を意味し、FC56 は CRC チェックサムを示します。
- メッセージプロトコルの形式:レジスタの読み取り、フレームのリクエスト
- 書き込みレジスタ:バイト 1 は 0x06 で、06 は単一の保持レジスタに書き込むコマンドで、バイト 4 ~ 5 はホスト コマンドを表します。
- 標準応答フレーム:単一の保持レジスタに書き込むための標準応答フレームは、要求フレームと同じ形式に従います。
- 複数のデータレジスタを書き込む:Byte1 は 0x10 で、10 は複数のデータ レジスタに書き込むコマンド、byte2 ~ 3 はレジスタの開始アドレス、byte4 ~ 5 はレジスタの長さ、byte6 ~ 7 はデータの内容を表します。
- 標準応答フレーム:Byte2-3 はレジスタの開始アドレス、byte4-5 はレジスタの長さを表します。
投稿日時: 2024 年 7 月 23 日