シリアル通信(Serial Communication)とは、データを1ビットずつ順番に、少ない信号線で送る通信方式のことです。複数の線で同時に送る「パラレル通信」と対になる考え方で、現在の機器間の通信はほとんどがこの方式です。
現実世界に例えると、シリアル通信は1車線の道路を車が一列で走るようなものです。多車線のパラレル通信のほうが速そうに見えますが、車線ごとに到着時刻がずれると隊列が乱れてしまいます。速度を上げるほど一列で走らせたほうが確実、というのが現在の考え方です。
パラレル通信との違い
| 項目 | シリアル通信 | パラレル通信 |
|---|---|---|
| 信号線の本数 | 少ない(1〜数本) | 多い(8本以上) |
| 配線・コネクタ | 細く、取り回しやすい | 太く、かさばる |
| 高速化 | しやすい | 線ごとのズレが問題になる |
| 主な例 | USB、LAN、RS-232C | かつてのプリンタ接続 |
かつては「同時に送れるパラレルのほうが速い」とされていました。しかし高速化すると、線ごとの到達時間のわずかなズレが無視できなくなります。そのため現在では、USBやLANをはじめ高速な通信のほとんどがシリアル方式です。
データの区切りを伝える仕組み
受け取る側は、どこからどこまでが1文字分のデータかを知る必要があります。RS-232Cなどの基本的な方式では、データの前後にスタートビットとストップビットという印を付けて区切りを示します。これを調歩同期(非同期)方式と呼び、送受信の双方で通信速度の設定を一致させておくことが前提になります。
主な設定項目
| 項目 | 内容 | 設定例 |
|---|---|---|
| ボーレート | 1秒あたりに送る信号の数 | 9600、115200 |
| データビット | 1回に送るデータの長さ | 8ビット |
| パリティ | 誤りを検出するための情報 | なし、偶数、奇数 |
| ストップビット | 終わりを示す印の長さ | 1ビット |
この設定が送受信で食い違うと、接続はできても文字化けした内容しか受け取れません。機器のマニュアルに指定された値へ正確に合わせる必要があります。
全二重と半二重
送受信の進め方には2つの形があります。全二重は送る線と受け取る線が分かれており、電話のように双方が同時に話せます。半二重は1つの経路を交互に使うため、トランシーバーのように一方が話し終えてからでないと応答できません。どちらの方式かによって配線も制御の仕方も変わります。
現在の利用場面
USBやLAN、SATAといった身近な規格は、いずれもシリアル通信です。加えて、産業機器や計測器、ネットワーク機器の保守用コンソールなど、確実さと手順の簡単さが求められる場面ではRS-232Cのような古くからの規格が今も使われています。組み込み機器の開発では、動作状況を確認するための出力先としても欠かせません。
接続に使う道具
最近のパソコンにはシリアルポートが付いていないことが多いため、USB-シリアル変換ケーブルを使って接続します。パソコン側では、TeraTermのような通信ソフトを使って機器とやり取りします。接続前に、どのポート番号として認識されているかを確認しておくと迷いません。

コメント