直流電圧のオン/オフを用いて信号のやり取りを行うことをデジタル入出力といいます。
デジタル出力は、ONかOFFのいずれかの状態を出力することをいいます。
ON/OFFは出力する電圧状態を指します。ON/OFFと電圧の関係を表すのに正論理と負論理があります。
正論理は、High(電圧が高い)をON、Low(電圧が低い)状態をOFFとした扱い方。
負論理は、High(電圧が高い)をOFF、Low(電圧が低い)状態をONとした扱い方。
そしてどちらかの出力を電圧で出力する方式をプッシュプル方式と呼びます。
これに対してオープンドレイン(オープンコレクタ)方式という出力方式があります。
※オープンドレインとオープンコレクタは、出力ドライバがFETかトランジスタかの違いはありますが、同じものと考えてください。
プッシュプル方式はHigh/Low何れかの出力を行いますが、
オープンドレイン方式はHi-Z(ハイインピーダンス)とLow(電圧が低い)状態を出力する方式です。
※Hi-Zは、電圧を出さない状態です。(非常に抵抗が高いの意)
デジタル回路はLowレベルは0V(グランド)ですが、Highレベルはマイコンにより5V,3.3V,1.8Vなど様々です。
例えば3.3Vのマイコンでプッシュプル出力はHighが3.3V、Lowが0Vとなるわけですが
5Vマイコンのプッシュプル出力を3.3Vマイコンで入力させるには分圧して3.3Vに落とすかトレラント入力(*1)端子を用いるかなどしなければなりません。
これに対しオープンドレイン出力とした場合は負論理扱いとなりますが、ON時はLow出力(0V)となり、OFF時はHi-Z状態となるので信号線を受ける側のマイコン電圧でプルアップ(*2)することで入力側マイコンの電圧に合わせることができるのです。
PLC(プログラマブルコントローラ)とマイコンの接続はオープンドレイン方式で接続するのが一般的です。
*1:トレラントとは、マイコン電圧より高い信号電圧の印加を許容する機能をいいます。例えばトレラント端子を使えば3.3Vマイコンで5V信号を直接入力できます。
*2:プルアップは信号線を抵抗を介してプラス電圧側(例 3.3Vマイコンの場合は3.3V)に接続してHi-Z状態のときに信号線をHighにすることをいいます。逆にHi-Z時にLowに落とすことをプルダウンと呼びます。