シリアル通信プロトコル:パートセブン - 1-Wire

Mark Harris
|  投稿日 2021/05/24 月曜日  |  更新日 2024/10/24 木曜日
7. シリアル通信プロトコル - 1-Wire

さまざまなシリアル通信プロトコルが電子デバイス間でデータを転送するために利用可能です。これには、マイクロコントローラがセンサーからデータを読み取る場合や、ストレージデバイスにデータを送信する場合などが含まれます。これは、一般的に使用されているより人気のあるプロトコルのいくつかをカバーする一連の記事のうちの1つです。シリーズの最後には、それぞれの利点と欠点の比較で締めくくります。

このシリーズが、シリアル通信バスを実装しようとしている次回に役立つ参考資料となることを目指しています。そうすることで、特定のアプリケーションに最適なオプションを選択できます。

この記事では、人気のある1-Wireプロトコルについて見ていきます。

1-Wireプロトコル

1-Wireは、Dallas Semiconductor Corp.(現在のMaxim Integrated)によって開発された低速通信バスで、グラウンドを除く1本の信号データラインを使用します。これは、マスターまたはホストデバイスが単一のデータラインを介して1つ以上のスレーブデバイスに接続されるマスター-スレーブ通信システムです。各1-Wireスレーブデバイスには、そのデバイスのアドレスであるユニークな工場プログラム済みの64ビット識別番号(ID)があります。

1-Wireデバイスは通常、Maxim Integratedによってのみ製造され、典型的なトランジスタTO-92のようなさまざまなパッケージタイプで利用可能です。また、異なる統合回路もあります。非常に人気のある1-Wire通信デバイスはiButton(ダラスキーとしても知られています)。iButtonは、データロガー、温度および湿度センサー、LED、メモリデバイス、アダプターなどのアプリケーションに使用される小型のモジュラーデバイスです。iButtonは歴史的に1-Wireの非常に人気のある実装でしたが、今日ではMaxim Integratedから1-Wireプロトコルを実装する多くのセンサーが利用可能です。

原則として、iButtonはスマートカードに使用されるものと非常に似たマイクロチップです。違いは、マイクロチップが丸いステンレス鋼のボタンに収められ、厳しい環境での使用に設計されていることです。彼らは1-Wireバスとの接続に物理的な接触に依存しています。

Easy, Powerful, Modern

The world’s most trusted PCB design system.

デバイスが動作する典型的な1-Wire電圧範囲には:

  • 1.71 V(最小)から1.89 V(最大)
  • 1.71 V(最小)から3.63 V(最大)
  • 2.97 V(最小)から6.63 V(最大)
  • 2.8 V(最小)から5.25 V(最大)

1-Wireバスの最も興味深い特徴の一つは、外部電源を必要とせずに通信ライン上で電力を供給できることです。これにより、温度センサーなどの外部センサーをデータ線とグラウンド線のみで接続でき、センサーはデータバスからの寄生電力を通じて電源を供給されます。これは、このシリーズで調査した他のシリーズ通信プロトコルと比較して、かなりの複雑さと配線を節約できます。

典型的な1-Wireバスデバイス接続は、次の回路図で見ることができます:

.

上記の例では、1つのマスターデバイスが複数のスレーブデバイスを制御しています。

ほとんどの1-Wireデバイスは非常に低い電力を必要とし、電源供給ピンを必要としません。これらのデバイスは、寄生電源として知られる1-Wireデータラインから動作に必要なエネルギーを抽出します。

1-Wire internal hardware example
1-Wire内部ハードウェアの例

典型的な1-Wireデバイスの寄生電力構成は、以下の回路図で見ることができます:

1-Wire devices connected in a parasitic power configuration
寄生電力構成で接続された1-Wireデバイス

様々な1-Wireデバイスがあり、温度センシング、識別、時間記録、EEPROMまたはEPROM(ワンタイムプログラマブル)、セキュア認証などのアプリケーションに使用でき、識別、消耗品の認証、PCBおよびコンピュータアクセサリー、IP保護、ガードツアーシステムへのアクセス制御、電子マネー、出勤時間、食品の温度監視、または医薬品の安全性など、アプリケーションが異なるデバイスの作成を可能にします。

1-Wire接続に必要なプルアップ抵抗の値は、デバイスに十分な電流を供給できるほど低くなければならず、また、スレーブデバイスがデータラインを論理レベル0に正常に引き下げることができないほど低すぎてはなりません。

1-Wire接続の典型的なプルアップ抵抗値は、1 kΩから4.7 kΩの間です。これにより、5 Vの電源からの電流が5 mAから1.06 mAの間に設定されます。例として、DS2480Bデバイスは、通常3 mAで動作するために、1.5 mAから5 mAの間の電流値を必要とします。

1-Wireバスでは、常に全体を統括するマスターが1台存在し、これはパーソナルコンピュータまたはマイクロコントローラーである可能性があります。マスターは常にバス上での活動を開始し、送信の衝突を避けます。マスターデバイスは、複数のスレーブデバイスによる同時送信からの衝突を検出し、管理する責任があります。

デバイスは、データを表すために短いパルスと長いローパルスを使用して送信します。1~15 µsのローパルスは論理レベル1に相当し、60 µsのローパルスは論理レベル0に相当します。パルスの下降(負)エッジは、スレーブデバイスがパルス幅を聞くために使用されます。彼らは非常に基本的な単安定マルチバイブレータを使用してその持続時間を測定します。マスターはリセットパルスを送信した後に8ビットのコマンドを送信し、その後データは8ビットのグループで送受信されます。エラー検出は、単純な8ビットの巡回冗長検査(CRC)を使用して実装されます。

要約

この記事では、人気のある1-Wireプロトコルのいくつかの特徴と、その利点および実装の詳細について説明しました。このシリーズの他の記事では、利用可能な他のシリアル通信プロトコルについて見ていきます。

次のPCB設計でAltium Designer®がどのように役立つかもっと知りたいですか?Altiumの専門家に相談してください。

筆者について

筆者について

Mark Harrisは「技術者のための技術者」とでも言うべき存在です。エレクトロニクス業界で12年以上にわたる豊富な経験を積んでおり、その範囲も、航空宇宙や国防契約の分野から、小規模製品のスタートアップ企業や趣味にまで及んでいます。イギリスに移り住む前、カナダ最大級の研究機関に勤務していたMarkは、電子工学、機械工学、ソフトウェアを巻き込むさまざまなプロジェクトや課題に毎日取り組んでいました。彼は、きわめて広範囲にまたがるAltium Designer用コンポーネントのオープンソース データベース ライブラリ (Celestial Database Library) も公開しています。オープンソースのハードウェアとソフトウェアに親しんでおり、オープンソース プロジェクトで起こりがちな日々の課題への取り組みに求められる、固定観念にとらわれない問題解決能力を持っています。エレクトロニクスは情熱です。製品がアイデアから現実のものになり、世界と交流し始めるのを見るのは、尽きることのない楽しみの源です。

Markと直接やり取りする場合の連絡先: mark@originalcircuit.com

関連リソース

ホームに戻る
Thank you, you are now subscribed to updates.
Altium Need Help?