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