AD/DA変換について
AD/DA変換については、応用命令を使用します。
Professional版で使用できます。
ADCOコマンド
AD変換は、0-3.3Vの電圧を測定することができます
分解能は12ビット(0-4095)です。
Wifiを使用する機器では、IO32-IO35(4pin)が使用できます。
連枝では、この4ピンを対象としてAD変換が可能です。
33番ピンに接続された信号をAD変換する場合は、以下のようなプログラムを作成します。
DIO33で入力として使用するため、X33を指定します。変換した結果は2番目のデバイスD0に格納します。
事前にWifiの設定をEEPROMに書き込んでいただければ、以下のラダーのように
Wifi対応としてください。測定結果をWebページで確認することができます。
特殊設定について
初期設定において以下のビットおよびワードデバイス値を設定することで、
測定結果に対して、上限下限、スケーリングを行うことができます。
データを直接DAへ出力したり、加工プログラムを省略することができます。
特殊設定を使用する場合は、必ず、初期設定回路を用意しその中で、AD変換のピンごとに
MappingリレーをONにします。
ビットデバイス | 説明 | ワードデバイス | 説明 |
---|---|---|---|
M8050 | AD32Mapping | D8050 | AD32の入力値の下限値(初期値0) |
M8051 | AD32_入力LOWER_LIMITチェック | D8051 | AD32の入力値の上限値(初期値4095) |
M8052 | AD32_入力UPPER_LIMITチェック | D8052 | AD32の出力値の下限値(初期値0) |
D8053 | AD32の出力値の上限値(初期値32767) | ||
M8055 | AD33Mapping | D8055 | AD33の入力値の下限値(初期値0) |
M8056 | AD33_入力LOWER_LIMITチェック | D8056 | AD32の入力値の上限値(初期値4095) |
M8057 | AD33_入力UPPER_LIMITチェック | D8057 | AD33の出力値の下限値(初期値0) |
D8058 | AD33の出力値の上限値(初期値32767) | ||
M8060 | AD34Mapping | D8060 | AD34の入力値の下限値(初期値0) |
M8061 | AD34_入力LOWER_LIMITチェック | D8061 | AD34の入力値の上限値(初期値4095) |
M8062 | AD34_入力UPPER_LIMITチェック | D8062 | AD34の出力値の下限値(初期値0) |
D8063 | AD34の出力値の上限値(初期値32767) | ||
M8065 | AD35Mapping | D8065 | AD35の入力値の下限値(初期値0) |
M8066 | AD35_入力LOWER_LIMITチェック | D8066 | AD35の入力値の上限値(初期値4095) |
M8067 | AD35_入力UPPER_LIMITチェック | D8067 | AD35の出力値の下限値(初期値0) |
D8068 | AD35の出力値の上限値(初期値32767) |
使用例1.
AD変換の結果をスケーリング(マッピング)します。
変換値0を0、変換値4095を32767としてデバイスに格納します。
使用例2.
AD変換の結果をスケーリング(マッピング)します。
変換値0を1000、変換値4095を30000としてデバイスに格納します。
使用例3.
AD変換の結果をスケーリング(マッピング)します。
変換値100を1000、変換値3000を30000としてデバイスに格納します。
ただし、変換値が100以下の場合は100、3000以上の場合は3000の値にします。
DACOコマンド
DA変換は、0-3.3Vの電圧を出力することができます。
分解能は8ビット(0-255)です。
電圧出力に使用できるピンは、IO25とIO26です。
以下のプログラムは、D0に格納された値をIO25に出力するプログラムです。
DA変換についても、スケーリング(マッピング)が行えます。
出力指示値が範囲外の場合、挙動が安定しません。また、AD変換した値を
そのまま、DA変換値として使用する場合演算が必要となります。
これを変換せずに使用することができるのがスケーリング(マッピング)です。
ビットデバイス | 説明 | ワードデバイス | 説明 | |
---|---|---|---|---|
M8020 | DA25Mapping | D8020 | ||
M8021 | DA25_入力LOWER_LIMITチェック | D8021 | DIO25デバイスの入力値の下限値(初期値0) | |
M8022 | DA25_入力UPPER_LIMITチェック | D8022 | DIO25デバイスの入力値の上限値(初期値255) | |
D8023 | DIO25デバイスの出力値の下限値(初期値0) | |||
D8024 | DIO25デバイスの出力値の上限値(初期値255) | |||
M8025 | DA26Mapping | D8025 | ||
M8026 | DA26_入力LOWER_LIMITチェック | D8026 | DIO26デバイスの入力値の下限値(初期値0) | |
M8027 | DA26_入力UPPER_LIMITチェック | D8027 | DIO26デバイスの入力値の上限値(初期値255) | |
D8028 | DIO26デバイスの出力値の下限値(初期値0) | |||
D8029 | DIO26デバイスの出力値の上限値(初期値255) |
使用例1.
X21のスイッチを押すたびに出力となるデータレジスタの値を10増やします。
X23のスイッチを押すたびに出力となるデータレジスタの値を10減らします。
電圧の出力はDACOがONとなっている間出力されます。
使用例2.
X21のスイッチを押すたびに出力となるデータレジスタの値を10増やします。
X23のスイッチを押すたびに出力となるデータレジスタの値を10減らします。
M8020を置くことでスケーリングを有効にします。
M8021およびM8022を置き、D8021入力下限値とD8022上限の設定を行い、
下限値以下の値なら下限値とし、上限値以上なら上限値に制限をかけます。
電圧の出力はDACOがONとなっている間出力されます。
使用例3.
ADコンバータで取り込んだ値をDAコンバータの出力値に設定します。
ADコンバータでは0-4095の値が取り込まれますが、スケーリングの設定を行うことで
DAコンバータで使用される値0-255の範囲に変換することができます。
演算機能を使用せずに、比例して出力を変化させることができます。
また、出力の最低値を設定することで、出力電圧の最低値を0Vから変更することができます。
M8020を置くことでスケーリングを有効にします。
M8021およびM8022を置き、D8021入力下限値とD8022上限の設定を行い、
D8023出力下限値とD8024出力上限値の設定を行います。
下限値以下の値なら下限値とし、上限値以上なら上限値に制限をかけます。
電圧の出力はDACOがONとなっている間出力されます。