====== MPAINO アナログ出力 Yモジュール ====== YオプションモジュールはMCUのPWMを平滑し、直流電圧または電流信号を出力します。1モジュールは3チャネルで、選択した構成で組み込まれて出荷されます。出力範囲はチャネルごとのDIPスイッチと使用端子で決まります。プログラムのチャネル番号を変えるだけでは電圧・電流範囲は切り替わりません。 {{ :ja-jp_products:mpaino-y-signal.svg?1000 |YモジュールのPWM平滑、DIP設定、V+とI+の出力端子 }} ===== 製品仕様 ===== {{:ja-jp_products:mpaino-option-y-front.png?220|Yアナログ出力モジュールの前面}} ^ 項目 ^ 内容 ^ | オプションコード | Y、Y2、Y3、Y4 | | モジュールあたりの出力 | CH0~CH2の3チャネル | | 出力方式 | PWM平滑による直流電圧・電流 | | 電圧範囲 | 各チャネルのDIPでDC 0~5Vまたは0~10V | | 電流範囲 | DC 0~10mAまたは0~20mA。ソフトウェアで2~10mAまたは4~20mAのスケールも使用可能 | | 分解能 | 16 bit | | 精度 | DC 12V、Half Rangeで±0.5%以下 | | 最大構成 | Yを4モジュール、計12チャネル。YとKの出力合計は12チャネルまで | | 製品主電源 | DC 12~24Vが必要。ダウンロードケーブルの電源だけでは正常に出力できません | ===== 構成とプログラム番号 ===== ^ オプション ^ Yモジュール数 ^ アナログ出力数 ^ ''analogWrite(ch, value)''のYチャネル ^ | Y | 1 | 3 | 0~2 | | Y2 | 2 | 6 | 0~5 | | Y3 | 3 | 9 | 0~8 | | Y4 | 4 | 12 | 0~11 | 各モジュールの端子はCH0~CH2と表示されますが、プログラム番号は最初が0~2、2番目が3~5と続きます。Kパルス出力は別の番号範囲を使用します。Kを1モジュール選ぶ場合はY2まで併用でき、K2を選ぶ場合はYを併用できません。Yは製品のデジタル入出力点数にかかわらず選択できます。 ===== DIP設定と出力端子 ===== ^ 対象チャネルのDIP ^ 電圧''V+'' ^ 電流''I+'' ^ 共通端子 ^ | ON | DC 0~5V | DC 0~10mA、またはソフトウェアで2~10mA | ''−'' | | OFF | DC 0~10V | DC 0~20mA、またはソフトウェアで4~20mA | ''−'' | 電圧は''V+''と''−''、電流は''I+''と''−''を使用します。両信号が同時に存在するため、受信機器は必要な信号の端子だけに接続してください。''−''は製品内部のGNDに接続されています。 - 両方の機器の電源を切り、配線するチャネルのDIP位置を確認します。 - 受信機器の入力形式、範囲、極性に合わせて接続します。 - DC 12~24Vの主電源を供給し、まず小さな出力値を測定してから負荷を接続します。 - 設置環境でノイズ対策が必要な場合はシールド線を使用します。 ===== 例:電圧またはゼロ基点の電流 ===== Arduino IDEの**Analog Output Module**を出荷構成に合わせます。次のスケッチはCH0に選択したDIP範囲の約半分を出力します。同じYモジュールの3チャネルはTimer設定を共有し、1チャネルのTOPや周波数変更が他にも影響します。 const uint8_t outputChannel = 0; void setup() { analogWriteInit(outputChannel, 65535, 1); // Y CH0のPWM TOPと分周比を設定 } void loop() { const uint16_t fullScale = analogWriteMax(outputChannel); // 現在の最大値を確認 analogWrite(outputChannel, fullScale / 2); // DIPで選んだ範囲の約50%を出力 delay(500); } DIP ONで''V+''を使う場合の理想値は約2.5V、OFFなら約5Vです。これは比率の目安であり、実測精度の保証値ではありません。 ===== 例:4~20mA ===== CH0のDIPをOFFにし、受信機器を''I+''と''−''に接続します。''analogWrite2()''は0を4mA、65535を20mAに換算します。 const uint8_t outputChannel = 0; void setup() { // Y CH0のDIPをOFF(ハードウェア範囲0~20mA)にします。 } void loop() { analogWrite2(outputChannel, 32768); // 4~20mAの中間値、約12mA delay(500); } ''IanalogWrite(ch, min, max, value)''と''IanalogWrite2(ch, min, max, value)''は工学値を出力範囲に換算できます。''analogWrite2()''はDIPを切り替えないため、''V+''に接続した機器には4~20mAが流れません。 ===== 値が正しくない場合 ===== ^ 症状 ^ 確認事項 ^ | 出力しない | Yの搭載、DC 12~24V主電源、Analog Output Module設定、チャネル番号を確認します。 | | 想定値の約半分・2倍 | チャネルのDIP ON/OFFと''V+''・''I+''の選択を確認します。 | | 4mAの下限にならない | DIP OFF、''I+''の配線、''analogWrite2()''など4~20mA関数を確認します。 | | 他のチャネルも変わる | 同じ3チャネルのTimerグループでTOPや周波数を変更していないか確認します。 | ===== 関連文書 ===== * [[ja-jp_commands:reference:analogwriteinit|analogWriteInit()]] · [[ja-jp_commands:reference:analogwritemax|analogWriteMax()]] · [[ja-jp_commands:reference:analogwrite2|analogWrite2()]] * [[ja-jp_products:mpaino_x|Xアナログ入力]] · [[ja-jp_products:mpaino_f|F PT100入力]] · [[ja-jp_products:mpaino_k|Kパルス出力]] * [[ja-jp_products:mpaino|← MPAINO Seriesのオプション構成]]