PR
スポンサーリンク

【入門】RS232Cとは?ピンアサインやケーブルなど仕様についてやさしく解説!

サムネ:【入門】RS232Cとは?ピンアサインやケーブルなど仕様についてやさしく解説!

皆さんこんにちは!メカ旦那です。

通信ケーブルでよく聞く「RS232C」。
昔はPCでよく使われていましたが、最近はUSBやRS485に置き換わり、見かける場面も減っています。しかし現在でもFA装置などの産業機械で使われています。

RS232Cは様々な規定があるため、イラストを用いてわかりやすく解説します!

通信仕様

第1層(物理層)

通信には多数の規格(ルール)があり、組み合わせる事で1つの送受信が成立しています。電気に関する事、データ伝送に関する事、ユーザーが使うアプリに関する事など、その「機能」に着目して規格を分類する手法をOSI参照モデルと言います。

第1層(物理層):気に関する事、データ伝送に関する事、ユーザーが使うアプリに関する事など、その「機能」に着目して規格を分類する手法をOSI参照モデルと言います。RS232Cは第1層(物理層)の規格になります。電気的な事を規定しています。

それぞれの層は完全に独立しているわけではなく、例えば下位層の規格利用を前提に、上位層の仕様が設計されていたりする事も多いです。

RS232Cは第1層(物理層)の規格になります。電気的な事を規定しています。

特徴

物理層を含む規格は多数ありますが、特徴で分類するとこんな感じです。

特徴:RS232Cはデジタル、シリアル、非同期、全二重、シングルエンド、主従関係なし、ユニキャストです。

RS232Cは

  • デジタル
  • シリアル
  • 非同期
  • 全二重
  • シングルエンド
  • 主従関係なし
  • ユニキャスト

の通信です。
よくわかりませんね、、、一つずつ解説します!

アナログ / デジタル

アナログとデジタルの違い:アナログは連続的な値を取りますが、デジタルは0と1の2値を用います。RS485はデジタル。

アナログは連続的な値を取りますが、デジタルは0と1の2値を用います。例えば電話やラジオはアナログですが、PC、マイコンだとデジタル通信が主流になります。RS232Cはデジタルです。

パラレル / シリアル

パラレルとシリアルの違い:パラレルは複数の信号線でまとめて通信します。対して、シリアルは1本の信号線を用いて通信します。RS485はシリアル。

デジタルは0と1を多数のbitで送受信します。パラレルは複数の信号線でまとめて通信するのに対し、シリアルは1本の信号線を用いて通信します。例としてパラレルはプリンター、シリアルはマウスやキーボードで利用されています。

一見、パラレル通信の方が一度に多くのデータを送信でき効率的に思えますが、配線が長くなると、各信号の時間ズレが発生し、上手く送受信できないことがあります。シリアルはその時間ズレが無い上に配線数が少なく済むため、最近の高速通信ではシリアルが主流になっています。RS232Cもシリアル通信です。

クロック同期 / 非同期

クロック同期と非同期の違い:クロックが共有されている状態はクロック同期と呼ばれています。対して共有はされていませんが、各々独自のクロックを持って通信することを非同期(調歩同期)と言います。RS485は非同期。

デバイス間で送受信する際、いつ送るのか、いつ受け取るのか、といったタイミング(クロック)を両者で認識する必要があります。クロックが共有されている状態はクロック同期と呼ばれています。対して共有はされていませんが、各々独自のクロックを持って通信することを非同期(調歩同期)と言います。イメージは、クロック同期が同じ壁掛け時計を見ながら通信、非同期はそれぞれの腕時計を見ながら通信、ですかね。

同期通信はクロックが共有されているため、送受信にズレが生じないです。一方、非同期はクロック専用の信号線が不要なため配線数を少なくできるのが特長です。RS232Cは非同期通信になります。

シングルエンド / 差動

シングルエンドと差動の違い:信号電圧がある基準電圧より低い状態を0、高い状態を1とする方式をシングルエンド(不平衡) と呼びます。対して、信号が2つあり、電圧の差分から0,1を判別する方式を差動(平衡)と言います。RS485は差動。

デジタル通信なので、何を0とするのか、1とするのかの基準があります。信号電圧がある基準電圧より低い状態を0、高い状態を1とする方式をシングルエンド(不平衡) と言います。対して、信号が2つあり、電圧の差分から0,1を判別する方式を差動(平衡、ディファレンシャル)と言います。

シングルエンドは信号線が1本で済むメリットがありますが、ノイズが入った時に0を1(もしくはその逆)と誤認識してしまう恐れがあります。対して差動信号は信号線は2本いるものの、電圧差を見ている関係上、ノイズによる影響が少ないメリットがあります。RS232Cはシングルエンドになります。 

全二重 / 半二重

全二重と半二重の違い:データを送受信する際、2本の伝送路で別々に行う方式を全二重通信(フルデュプレックス)と呼びます。対して、1本でまとめて行う方式を半二重通信(ハーフデュプレックス)と言います。RS485は半二重。

データを送受信する際、2本の伝送路で別々に行う方式を全二重通信(フルデュプレックス)と呼びます。対して、1本でまとめて行う方式を半二重通信(ハーフデュプレックス)と言います。全二重は送受信を同時に行うことができるのに対し、半二重は同時に行えません。ただし信号線が1本で済むのがメリットです。

RS232Cは全二重になります。

主従関係

主従関係:優先権を持つデバイス(主)をマスター、それに応じるデバイス(従)をスレーブと呼ぶ。CANは主従関係なし。

シリアル通信は半二重のように1本の伝送路を複数の機器で共有することがあり、「どこがいつ何のデータを送るのか」を決めないとデータ衝突(同時送信)が発生します。このルールは主従関係と呼ばれており、優先権を持つデバイス(主)をマスター、それに応じるデバイス(従)をスレーブと呼びます。具体的には、

  • マスターが通信の開始・クロック・アドレス指定を実施
  • スレーブは命令を受けて応答

します。

RS232Cは主従関係がありませんので、マスター/スレーブはありません。
各デバイスはノードと呼ばれており、関係性は平等です。

リレーション

リレーション:ユニキャスト(1対1)、マルチキャスト(1対多、複数)、ブロードキャスト(1対多、全数)、マルチマスター(マルチドロップ、多対多)がある。CANはマルチマスター。

通信方式によって送受信できるデバイス数をリレーションと言います。

  • ユニキャスト:1対1
  • マルチキャスト:1対多(複数)
  • ブロードキャスト:1対多(全数)
  • マルチマスター(マルチドロップ):多対多

RS232Cは規定はされていないものの、後述のピン機能より事実上ユニキャストになります。

配線

ポイント

メカ坊や
メカ坊や

なるほど、伝送方式の特徴はなんとなくわかったよ。で、使うにはどうやって配線すればいいの?

メカ旦那
メカ旦那

そうですね、実際の配線イメージと注意点について解説します。 

配線図: ポイントは
・ノード:DTE、DCEの2種類がある
・ケーブル:ストレート、クロスの2種類ある。
・コネクタ:DSUB9ピンが標準。ピン番号も規定で決まっている。
・信号端子:RXD, TXD, GNDがメイン。RTS, CTSはハードウェアフロー制御で使う。その他はほぼ使わない。
・信号電圧: 0=+12V、1=-12Vが一般的。
・GNDを合わせる
です。

配線図はこちらです。 ポイントは

  • ノード:DTE、DCEの2種類がある
  • ケーブル:ストレート、クロスの2種類ある。
  • コネクタ:DSUB9ピンが標準。ピン番号も規定で決まっている。
  • 信号端子:RXD, TXD, GNDがメイン。RTS, CTSはハードウェアフロー制御で使う。その他はほぼ使わない。
  • 信号電圧: 0=+12V、1=-12Vが一般的。
  • GNDを合わせる

です。  

ノード・ケーブル

元々RS232Cは、昔の電話回線を用いたインターネットにおいてPC⇔アナログモデムを繋ぐ規格として誕生しました。RS232C特有の用語ですが、PCなどのデータ生成・処理を行う端末をDTE(データ端末装置)DTEの信号を変換し電話回線に乗せる機器をDCE(データ回線終端装置)と言います。

DTEとDCE:元々RS232Cは、昔の電話回線を用いたインターネットにおいてPC⇔アナログモデムを繋ぐ規格として誕生しました。RS232C特有の用語ですが、PCなどのデータ生成・処理を行う端末をDTE(データ端末装置)、DTEの信号を変換し電話回線に乗せる機器をDCE(データ回線終端装置)と言います。

現在のインターネットは光回線が主流で、RS232Cが使われる事はなくなりました。代わりにPC⇔マイコン等のDTE⇔DTE間通信が主で、後はPC⇔産業用機器設定用ポートなどのDTE⇔DCE通信で使われています。

DTE⇔DTE、DTE⇔DCE通信の違い:

■DTE⇔DTE通信
現在のRS232Cの主流の通信方式
用途:PC⇔PC、マイコン
クロスケーブル(ヌルモデム)を使う

■DTE⇔DCE通信
昔の電話回線を用いたインターネットにおいて、PC(DTE)⇔アナログモデム(DCE)を繋ぐ規格として誕生。現在この使い方はしなくなったが、他の用途で使われている。

現在の用途
産業用機器の設定用ポート
(インバータ、PLC、計測器、電源装置、無線機、業務用音響機器)

業務用ネットワーク機器のコンソールポート
(ルータ、スイッチ、ファイアウォールなど)

ストレートケーブルを使う
RS232Cのノード
  • DTE⇔DTE通信
    • 現在のRS232Cの主流の通信方式
    • 用途:PC⇔PC、マイコン
    • クロスケーブル(ヌルモデム)を使う
  • DTE⇔DCE通信
    • 昔の電話回線を用いたインターネットにおいて、PC(DTE)⇔アナログモデム(DCE)を繋ぐ規格として誕生。現在この使い方はしなくなったが、他の用途で使われている。
    • 現在の用途
      • 産業用機器の設定用ポート
        (インバータ、PLC、計測器、電源装置、無線機、業務用音響機器)
      • 業務用ネットワーク機器のコンソールポート
        (ルータ、スイッチ、ファイアウォールなど)
    • ストレートケーブルを使う

DTE⇔DTE間はクロス、DTE⇔DCE間はストレートと使うケーブルが異なるため、RS232Cを使う際にはまず接続機器がDTE,DCEどちらに該当するのか明確にすることが重要です。

コネクタ・信号端子

コネクタ・信号端子:コネクタはDSUB9ピン(DE-9、DB9)が使われる事が一般的です。各ピンに割り当てられる信号は規定で決まっています。ただし現在では全てを使う事はなく、RXD, TXD, GNDをメインで、ハードウェアフロー制御であればRTS, CTSを使います。その他は昔の電話回線インターネットでは使用していましたが、現在はほぼ使いません。

コネクタはDSUB9ピン(DE-9、DB9)が使われる事が一般的です。
各ピンに割り当てられる信号は規定で決まっています。ただし現在では全てを使う事はなく、RXD, TXD, GNDをメインでハードウェアフロー制御であればRTS, CTSを使います。その他は昔の電話回線インターネットでは使用していましたが、現在はほぼ使いません。

ピン番号信号名意味_日本語使用場面
1DCDキャリア検出現在はほぼ消滅
2RXDデータ受信メイン信号
3TXDデータ送信メイン信号
4DTR端末準備可現在はほぼ消滅
5GND信号用グランドグランド
6DSRデータセットレディ現在はほぼ消滅
7RTS送信要求ハードウェアフロー制御
8CTS送信可能ハードウェアフロー制御
9RI着信検出現在はほぼ消滅
メカ旦那
メカ旦那

実はRS232Cはマイコンで一般的なUARTと共通点が多く、よく使う信号端子も同じです。ハードウェアフロー制御についてはUARTの記事でも解説しています。

信号電圧

信号電圧:信号電圧は規格で決まっています。多くのシリアル通信では、0:GND、1:正電圧ですが、RS232Cは異なり0:正電圧、1:負電圧になります。具体的な電圧値は各メーカーで自由に決めれるよう幅がありますが、±12Vが代表例です。

信号電圧は規格で決まっています。多くのシリアル通信では、0:GND、1:正電圧ですが、RS232Cは異なり0:正電圧、1:負電圧になります。具体的な電圧値は各メーカーで自由に決めれるよう幅がありますが、±12Vが代表例です。

論理値呼び名出力 [V]入力 [V]代表例 [V]
0SPACE+5 ~ +15+3 以上+12
1MARK-15 ~ -5-3 以下-12

GNDを合わせる

どのシリアル通信もそうですが、信号電圧によって0、1が決まります。ここで各ノードでGND電位が合ってないと、例えば送信側から出力した電圧が、受信側では意図せず高くなってしまい認識できないという現象が発生します。その為配線図の通りGND間は繋げるようにしてください。

トランシーバ

内部回路

もっとRS232Cを詳しく理解したい方向けに、入出力の仕組みについて解説します。

RS232C機能を持つPC/マイコンには、基板上にトランシーバ(インターフェイスIC)が実装されています(無い場合は類似する回路が組み込まれています)。

以後、この「MAX232EN」を例に、一般的な仕様について解説します。

通信の流れは、

  • CPUからUARTで出力した信号を、トランシーバでRS232Cに変換し、外部へ出力する 
  • 外部からの入力はその逆

です。 
UARTって何?という方はぜひこちらもご覧ください!

配線のイメージはこちらです。

RS232Cの回路図:通信の流れは、

■CPUからUARTで出力した信号を、トランシーバでRS232Cに変換し、外部へ出力する 

■外部からの入力はその逆

です。

ピンの役割はこちらです。

トランシーバ ピン
  • Vcc, GND:電源
  • TIN
    • CPUのUART TXを接続。TINに入力されたUARTをドライバーでRS232Cへ変換します。
  • C1+, C1-
    • トランシーバ内には信号電圧用の負電圧と正電圧を作り出すチャージポンプ回路が内臓されています。負電圧を作り出すコンデンサをこの端子に接続します。
  • C2+, C2-
    • チャージポンプ回路で正電圧を作り出すコンデンサを接続します。
  • V+
    • チャージポンプ回路で作り出した正電圧を平滑するために、コンデンサを本端子とVccに接続します。
  • V-
    • チャージポンプ回路で作り出した負電圧を平滑するために、コンデンサを本端子とGNDに接続します。
  • TOUT
    • TINに入力されたUARTはドライバーでRS232Cへ変換され、この端子から出力されます。
  • RIN
    • 外部のRS232Cを接続。RINに入力されたRS232CをレシーバーでUARTへ変換します。
  • ROUT
    • CPUのUART RXを接続。RINに入力されたRS232Cは、レシーバーでUARTに変換され、この端子から出力される。

変換器

メカ坊や
メカ坊や

最近のPCやマイコンってRS232Cポート見ないですよね~

メカ旦那
メカ旦那

そうなんですよね~
最近は他の通信方式から変換できる変換器が容易に入手できる事もあり、元からポートが付いていないPCがほとんどです。特にUSB変換ケーブルはAmazonで簡単に購入できます。

片方にRS232Cを、もう片方にUSBを繋ぐことで変換と通信が両方できます。ちなみに、ケーブル内部では USB ⇔ UART ⇔ RS485 というUARTを介した変換になっています

RS232Cを利用する上位規格

前述の通りRS232Cは第1層(物理層)の規格になりますが、様々な上位プロトコルがRS232Cを利用しています。代表例について解説します。

RS232Cを利用する上位規格:Modbus RTU、シリアルコンソール、ATコマンド
  • Modbus RTU
    • OSIの第1、2、7層で構成。
    • 第1層はRS485が主流ですが、RS232Cも使われています。第2層はUART、第7層はModbus RTUです。
    • Modbus RTUはFA業界(工場自動化設備)で広く利用されており、PLC、インバータでは標準の規格となっています。
  • シリアルコンソール
    • OSIの第1、2層で構成。
    • 第1層はRS232C、第2層はUARTが使われています。無手順通信(特別なパケットを持たず、文字をそのまま送る方式)の為、その他の層に規格はありません。
    • シリアルコンソールは規格というより、サーバー、ルーター等のネットワーク機器の管理・保守機能になります。ネットワークが故障した際に接続する最終手段になります。
  • ATコマンド
    • OSIの第1、2、7層で構成。
    • 第1層はRS232C、第2層はUART、第7層はATコマンドです。
    • ATコマンドはLTE、5G、Bluetooth、LoRaなどの通信モジュールをマイコンから制御する際に使う規格です。

RS232C、422、485の違い

メカ坊や
メカ坊や

なんか色々調べてたらRS422とか485とかも出てきました。違いがよくわからないです。。。

メカ旦那
メカ旦那

紛らわしいですよね… 違いを表にまとめてみました!

RS232C 配線図

RS232Cの簡略回路図

RS422 配線図

RS422の簡略回路図

RS485 配線図

RS485の簡略回路図
項目RS232CRS422RS485
全二重/半二重全二重全二重2線式:半二重
4線式:全二重
シングルエンド/差動シングルエンド差動差動
信号端子TXD、RXD
RTS、CTS
DTR、DSR
RI、DCD
TxD+ (T+, Y)、
TxD- (T-, Z)、
RxD+ (R+, A)、
RxD- (R-, B)、
A、B
終端抵抗不要必要
終端(受信側)1か所
必要
2線式:両端2か所
4線式:両端4か所
接続ユニキャスト
1対1
マルチドロップ
1対N(N=1~10)
マルチドロップ
N対M (N,M=1~32)
最大通信距離15 m1200 m 1200 m
通信速度~ 115 kbps~ 10 Mbps~ 10 Mbps
ノイズ耐性弱い強い強い
用途FA機器、
ネットワーク機器の
コンソールポートなど
FA機器
ビル管理 など
FA機器
ビル管理
パワコン など

歴史的には RS232C → RS422 → RS485と進化してきた経緯もあり、現在はRS485が最も高性能な規格になっています。

まとめ

RS232Cの特徴をまとめるとこちらです。

  • OSI:RS232Cは第1層。様々な上位プロトコル(Modbus RTU、シリアルコンソール、ATコマンド)がRS232Cを利用。
  • データの伝送方式:デジタル、シリアル、非同期、全二重、シングルエンド、主従関係なし、ユニキャスト
  • 配線:ノードはDTE・DCEの2種類、ケーブルはストレート・クロスの2種類、
    コネクタはDSUB9ピンが標準、信号端子はRXD・TXD・GNDがメイン、
    信号電圧は±12Vが一般的。
  • トランシーバ:CPUのUARTを変換。
  • RS422・485との関係:RS232Cから進化した規格。

RS232Cは最近のPC/マイコンでは見かけなくなりましたが、昔から使われている規格の為、未だに多くの業界で利用されています。今回の解説が参考になれば幸いです!

また他のシリアル通信についても解説しているのでぜひご覧ください!

メカ旦那

旧帝大工学部を卒業後、生産設備や産業用ロボットを対象とした電気制御設計職をしています。電験三種も保持しています。電気・電子・制御・通信について初心者向けにやさしく解説します!

メカ旦那をフォローする
通信
スポンサーリンク

コメント