ページの作成:「== 概要 == MODBUS (Modbus Protocol) は、産業用シリアル通信プロトコルであり、PLCや計測機器、センサ等の制御機器間でデータを送受信するために広く使用されている。<br> 1979年にModicon社 (現在のSchneider Electric社) により開発されたオープンな通信プロトコルであり、産業用ネットワークにおけるデファクトスタンダードとして世界中で採用されている。<br>…」
 
 
(同じ利用者による、間の11版が非表示)
155行目: 155行目:
MSP430G2553でMODBUSを使用する場合、物理層としてRS-485を使用することが一般的である。<br>
MSP430G2553でMODBUSを使用する場合、物理層としてRS-485を使用することが一般的である。<br>
RS-485は、差動信号方式を採用しており、<u>長距離通信 (最大1200[m])</u> と <u>ノイズ耐性</u> に優れている。<br>
RS-485は、差動信号方式を採用しており、<u>長距離通信 (最大1200[m])</u> と <u>ノイズ耐性</u> に優れている。<br>
<br>
[[ファイル:MSP430G2553 MAX3485 1.png|中央|725x260px]]
<center><big>図. MAX3485 (3.3[V]) を使用する場合</big></center>
<br>
[[ファイル:MSP430G2553 MAX485 1.png|中央|725x398px]]
<center><big>図. MAX485 (5[V]) を使用する場合</big></center>
<br>
<br>
==== 必要なハードウェア ====
==== 必要なハードウェア ====
171行目: 177行目:
| RS-485トランシーバ || ADM485、SN75176 || MAX485互換の代替品
| RS-485トランシーバ || ADM485、SN75176 || MAX485互換の代替品
|-
|-
| 終端抵抗 || 120[Ω] × 2 || バスの両端に配置
| 終端抵抗 || 120[Ω] || バスの両端に配置
|-
|-
| バイアス抵抗 || 560[Ω] × 2 || フェイルセーフバイアス用
| バイアス抵抗 || 560[Ω]〜20[kΩ] × 2 || フェイルセーフバイアス用
|-
|-
| 保護素子 || TVSダイオード || サージ保護用 (オプション)
| 保護素子 || TVSダイオード || サージ保護用 (オプション)
179行目: 185行目:
</center>
</center>
<br>
<br>
==== RS-485トランシーバとの接続 ====
==== RS-485トランシーバとの接続 ====
下表に、MSP430G2553とMAX485を使用したピン接続例を示す。<br>
下表に、MSP430G2553とMAX3485を使用したピン接続例を示す。<br>
<br>
<br>
<center>
<center>
186行目: 193行目:
|+ MSP430G2553 と MAX485 の接続
|+ MSP430G2553 と MAX485 の接続
|-
|-
! MSP430G2553 !! 機能 !! MAX485 !! ピン番号
! MSP430G2553 !! 機能 !! MAX3485 !! ピン番号
|-
|-
| P1.1 || UART TXD (送信) || DI (Driver Input) || Pin 4
| P1.1 || UART TXD (送信) || DI (Driver Input) || Pin 4
198行目: 205行目:
| GND || グラウンド || GND || Pin 5
| GND || グラウンド || GND || Pin 5
|-
|-
| VCC (3.3V) || 電源 || VCC || Pin 8
| - || 電源 || VCC 5[V] || Pin 8
|-
|-
| - || - || A (非反転出力) || RS-485バス
| - || - || A (非反転出力) || RS-485バス
212行目: 219行目:
バスの両端には、120[Ω]の終端抵抗を配置して、信号の反射を防止する必要がある。<br>
バスの両端には、120[Ω]の終端抵抗を配置して、信号の反射を防止する必要がある。<br>
<br>
<br>
==== バイアス抵抗とフェイルセーフ ====
==== バイアス抵抗とフェイルセーフ ====
RS-485バスには、通信していない時の不定状態を防ぐために、バイアス抵抗を追加することが推奨される。<br>
RS-485バスには、通信していない時の不定状態を防ぐために、バイアス抵抗を追加することが推奨される。<br>
227行目: 235行目:
|-
|-
| 560[Ω] || B端子 → GND (プルダウン) || アイドル時にB端子を低電位に保持
| 560[Ω] || B端子 → GND (プルダウン) || アイドル時にB端子を低電位に保持
|}
</center>
<br>
==== 保護ダイオード ====
保護ダイオード (上図のD1〜D3) においては、過酷な環境や信頼性を重視する場合は実装することを推奨する。<br>
<br>
* 保護ダイオードを実装すべき場合
** 屋外や工場等、ノイズや静電気が多い環境
** 長距離配線 (ケーブル長が長い)
** サージや雷サージのリスクがある場所
<br>
下表に、保護ダイオードの選定基準を示す。<br>
<center>
{| class="wikitable"
|+ 保護ダイオードの仕様
|-
! 項目 !! 仕様値
|-
| Working Voltage (VWM) || 5[V]
|-
| Breakdown Voltage (VBR) || 6.4〜7.0[V]程度
|-
| Clamping Voltage (VC) || 9.2〜9.9[V]程度
|-
| Peak Pulse Power || 400[W]以上
|-
| パッケージ || SMA (DO-214AC)
|}
</center>
<br>
<center>
{| class="wikitable"
|+ 保護ダイオード  メーカー別比較表
|-
! メーカー !! 型番 !! 備考
|-
| Vishay || SMAJ5.0A-E3/61<br>SMAJ5.0A-E3/5A || 最も入手しやすい代替品の一つ<br>電気的特性がほぼ同等
|-
| Bourns || SMAJ5.0A || Littelfuseとピンコンパチブル
|-
| Diodes Incorporated || SMAJ5.0A-13-F || コストパフォーマンスが良い
|-
| Taiwan Semiconductor || SMAJ5.0A || 低コストオプション
|-
| ON Semiconductor (onsemi) || SMBJ5.0A || SMBパッケージ(SMAより少し大きい)<br>600Wと高容量が必要な場合に有効
|-
| Lite-On(台湾) || LSMBJ5.0A || SMBパッケージ(SMAより少し大きい)<br>チップワンストップ、RSコンポーネンツで常時在庫あり
|-
| Micro Commercial Components (MCC) || SMBJ5.0A-TP || Digi-Key、Mouserで安定供給
|-
| Comchip(台湾) || CDSOD323-T05C<br>SMBJ5.0CA || SOD-323小型パッケージ<br>SMBパッケージ
|-
| Rohm(ローム) || RB168MM-20TRシリーズ<br>RB521S-30シリーズ || 国内の主要代理店(チップワンストップ、マルツなど)で入手可能<br>高品質で信頼性が高い
|-
| Toshiba(東芝デバイス&ストレージ) || 1.5KE5.0Aシリーズ || DO-201パッケージ<br>SMDタイプも各種ラインナップあり<br>国内流通が豊富
|-
| Panasonic || - || ESD保護デバイスのラインナップあり<br>産業機器向けに実績多数
|}
|}
</center>
</center>
287行目: 352行目:
下表に、MODBUSで使用される一般的なボーレートと、1[MHz] SMCLK時の設定値を示す。<br>
下表に、MODBUSで使用される一般的なボーレートと、1[MHz] SMCLK時の設定値を示す。<br>
<br>
<br>
ボーレート設定の計算式は、<math>\mbox{N} = \dfrac{\mbox{SMCLK}{\mbox{Baudrate}}</math> である。<br>
ボーレート設定の計算式は、<math>\mbox{N} = \dfrac{\mbox{SMCLK}}{\mbox{Baudrate}}</math> である。<br>
UCAxBR0とUCAxBR1は、Nの整数部を格納して、UCAxMCTLは、小数部の補正を行う。<br>
UCAxBR0とUCAxBR1は、Nの整数部を格納して、UCAxMCTLは、小数部の補正を行う。<br>
<br>
<br>