SIシリーズのDIPスイッチによる通信速度の設定にはどんな意味がありますか?
RS-485通信に対応したSIシリーズには、通信速度に合わせて設定するDIPスイッチがあります。ただし、実際は通信速度を基準にしてRS-485半二重通信の制御に必要な「内部タイマー」の長さを決めています。LAN⇔RS-485変換のSI-65など(XPort内蔵)では、DIPスイッチの設定とは別に、XPortの通信速度を設定する必要があります。
内部タイマーは約13〜16ビット時間となっており、DIPスイッチで設定した通信速度によって実際の時間が決まります。
内部タイマーは以下2つの機能で使われます。
1. 回線監視機能
RS-485半二重通信では、他の機器がデータ送信している時にSIシリーズからデータ送信を行なうとデータがぶつかってしまうので、送信タイミングを調整する必要があります。
回線監視機能は、基本的に次の表のように動作します。
RS-485回線の状態 | 意図する動作 |
---|---|
RS-485回線上で内部タイマーの時間以内に 他の機器からの送信データがある場合 (スペースビットが検出される場合) |
SIシリーズからRS-485回線への データ送信を禁止 |
RS-485回線上に内部タイマーの時間以上連続して 他の機器からの送信データがない場合 (スペースビットが検出されない場合) |
SIシリーズからRS-485回線への データ送信を許可 |
SIシリーズの各機種は以下のようにしてこの機能を実現しています。
- RS-232C⇔RS-485変換(SI-30/SI-35/SI-30FA)
RS-232CのCS信号またはRS信号のマーク/スペースを切り替えて、RS-232C側に送信禁止(マーク)/送信許可(スペース)を通知します。 - USB⇔RS-485変換(SI-35USB)
仮想COMのCS信号の非アクティブ/アクティブを切り替えて、仮想COM側に送信禁止(非アクティブ)/送信許可(アクティブ)を通知します。パソコンソフトでCTS/RTSフロー制御を有効にすると、自動的に送信タイミングが制御されます。 - LAN⇔RS-485変換(SI-65/SI-65A/SI-65FA/SI-65FA-L)
RS-485回線へデータ送信可能なタイミングをXPortに通知します。XPortのフロー制御をCTS/RTS(Hardware)に設定すると、自動的に送信タイミングが制御されます。
2. RS-485ドライバ自動制御
SIシリーズのRS-485ドライバ自動制御を有効にすると、SIシリーズからRS-485回線上にデータが送信される時には、最初のスタートビット(スペース)を検出してドライバが自動的にアクティブになります。そしてデータ列の最後のスペースビットから内部タイマーで設定された時間の間はアクティブ状態が維持され、その後自動的に非アクティブになります。
データ 31h (00110001b)(パリティなし)を送信した場合のRS-485ドライバ自動制御の動作
※: SI-35USBは内部タイマーを使用せずにRS-485ドライバ自動制御を行ないます。USB側からのパケット受信が完了してからRS-485回線へのデータ送信を行なうため、RS-485回線へのデータ送信終了後、直ちにドライバを非アクティブにします。