
CRC(Cyclic Redundancy Check)
CRC(巡回冗長検査)
CRC(巡回冗長検査)とは、通信データに誤りがないかを確認するために使用されるエラー検出方式の一つです。
送信側はデータから特定の計算(多項式演算)を行い、CRC値(チェックコード)を生成してデータに付加します。
受信側は同じ計算を行い、受信したCRC値と比較することでデータに誤りが発生していないかを検出します。
この仕組みにより、通信中に発生するビット誤りやノイズによるデータ破損を高い確率で検出することができます。
■CRCの基本仕組み
通信データは次のような構造になります。
データ本体 + CRCコード
通信の流れ
1️⃣ 送信側がデータからCRC値を計算
2️⃣ データとCRCを送信
3️⃣ 受信側が同じ計算を実行
4️⃣ CRC値を比較
5️⃣ 一致すれば正常、異なればエラー
■CRCの特徴
特徴 | 内容 |
高い検出能力 | ビット誤りを高確率で検出 |
計算が高速 | ハードウェア実装可能 |
通信負荷が小さい | 小さなチェックコード |
産業通信で標準 | 多くのプロトコルで採用 |
CRCは通信エラー検出方式として非常に信頼性が高いため、幅広い通信システムで利用されています。
■CRCの種類
CRCにはいくつかの規格があります。
CRC方式 | 特徴 |
CRC-8 | 小型機器通信 |
CRC-16 | シリアル通信 |
CRC-32 | Ethernet通信 |
FA通信では、CRC-16がよく使用されます。
■FA・産業ネットワークでのCRC
工場の自動化設備では、CRCは次の通信で利用されています。
通信方式 | 用途 |
Modbus RTU | シリアル通信 |
CAN通信 | 車載・FA通信 |
Ethernet通信 | LAN通信 |
フィールドバス | 制御ネットワーク |
例えば、Modbus RTU通信では
アドレス | コマンド | データ | CRC
というフレーム構造になっています。
受信側はCRCを確認し、エラーがあれば再送を要求します。
■CRCとチェックサムの違い
CRCと似たエラー検出方式としてチェックサムがあります。
項目 | CRC | チェックサム |
検出能力 | 高い | 中程度 |
計算方法 | 多項式演算 | 単純加算 |
用途 | 通信プロトコル | 簡易通信 |
産業ネットワークでは、CRCの方が多く採用されています。
■CRCのメリット
メリット | 内容 |
通信信頼性向上 | データ誤り検出 |
高速処理 | リアルタイム通信対応 |
標準技術 | 多くの通信で採用 |
FAネットワークでは、通信品質を確保する重要な技術です。
■まとめ
CRC(巡回冗長検査)とは、通信データの誤りを検出するためのエラー検出方式です。
送信側と受信側が同じ計算を行いCRC値を比較することで通信エラーを検出し、ModbusやEthernetなど多くの産業通信プロトコルで利用されています。
お見積り・ご相談は今すぐ!
24時間365日受付




