ユーザ用ツール

サイト用ツール


ja-jp_products:mpino_8a4r_s

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
ja-jp_products:mpino_8a4r_s [2026/10/07 23:18] – 外部編集 127.0.0.1ja-jp_products:mpino_8a4r_s [2026/10/30 12:06] (現在) – 外部編集 127.0.0.1
行 1: 行 1:
 ====== MPINO-8A4R-S ====== ====== MPINO-8A4R-S ======
  
-MPINO-8A4R-Sは、デジタル入力8Pointと独立COM付きリレー出力4Pointを備えた一体型の産業用Arduinoです。 1枚のPCBに、電圧・電流アナログ入力、NTC温度センサ入力、PWM、高速入力、RS-232通信を搭載しています。+MPINO-8A4R-Sは、デジタル入力8点と独立COM付きリレー出力4点を備えた一体型の産業用Arduinoです。1枚のPCBに、電圧・電流アナログ入力、NTC温度センサ入力、PWM、高速入力、RS-232通信を搭載しています。
  
 Arduino IDE(Arduino C/C++)、またはMPINO STUDIO 2(Arduino C/C++ & ラダーロジック)でプログラムできます。 Arduino IDE(Arduino C/C++)、またはMPINO STUDIO 2(Arduino C/C++ & ラダーロジック)でプログラムできます。
行 17: 行 17:
 ^  区分  ^  点数  ^  端子名・項目  ^  仕様  ^ ^  区分  ^  点数  ^  端子名・項目  ^  仕様  ^
 |  電源  |  -  |  電源電圧  | DC 12~24V(DC 24V使用時は0.5A以上)  | |  電源  |  -  |  電源電圧  | DC 12~24V(DC 24V使用時は0.5A以上)  |
-|  デジタル入力  |  8Point \\ (無接点・絶縁)  |  P0~P7  | 動作入力電圧: DC 0~40V \\ HIGH認識電圧: DC 5V以上 \\ 端子グループごとに4Point / 1COM(COM0とCOM1は同じ共通回路) \\ NPN・PNP入力対応  | +|  デジタル入力  |  8点 \\ (無接点・絶縁)  |  P0~P7  | 動作入力電圧: DC 0~40V \\ HIGH認識電圧: DC 5V以上 \\ 端子グループごとに4点 / 1COM(COM0とCOM1は内部で接続されていません) \\ NPN・PNP入力対応  | 
-|  リレー出力  |  4Point \\ (有接点・絶縁)  |  P32~P35  | 最大AC250VまたはDC30V、5Aのリレー出力4Point \\ 各接点は1Point/1COMで独立、5Aは各接点の上限  | +|  リレー出力  |  4点 \\ (有接点・絶縁)  |  P32~P35  | 最大AC250VまたはDC30V、5Aのリレー出力4点 \\ 各接点は1点/1COMで独立、5Aは各接点の上限  | 
-|  アナログ入力  |  2Point \\ (非絶縁)  |  A0, A1  | 電圧入力: DC 0~5V \\ 分解能: 10bit (0~1023) \\ 入力抵抗: 100MΩ (±1%)  | +|  アナログ入力  |  2点 \\ (非絶縁)  |  A0, A1  | 電圧入力: DC 0~5V \\ 分解能: 10bit (0~1023) \\ 入力抵抗: 100MΩ (±1%)  | 
-|  アナログ入力  |  2Point \\ (非絶縁)  |  A2, A3  | 電流入力: 0~20mA(4~20mA) \\ 分解能: 10bit (0~1023) \\ 入力抵抗: 250Ω (±1%)  | +|  アナログ入力  |  2点 \\ (非絶縁)  |  A2, A3  | 電流入力: 0~20mA(4~20mA) \\ 分解能: 10bit (0~1023) \\ 入力抵抗: 250Ω (±1%)  | 
-|  アナログ入力  |  2Point \\ (非絶縁)  |  A4, A5  | 電圧入力: DC 0~10V \\ 分解能: 10bit (0~1023) \\ 入力抵抗: 200kΩ (±1%)  | +|  アナログ入力  |  2点 \\ (非絶縁)  |  A4, A5  | 電圧入力: DC 0~10V \\ 分解能: 10bit (0~1023) \\ 入力抵抗: 200kΩ (±1%)  | 
-|  温度センサ入力  |  2Point \\ (非絶縁)  |  NTEMP \\ A6, A7  | 入力温度: -40~120℃ \\ センサ: NTC 3950K、10kΩ(25℃) \\ 分解能: 0.1℃(0~40℃基準)  | +|  温度センサ入力  |  2点 \\ (非絶縁)  |  NTEMP \\ A6, A7  | 入力温度: -40~120℃ \\ センサ: NTC 3950K、10kΩ(25℃) \\ 分解能: 0.1℃(0~40℃基準)  | 
-|  外部割り込み \\ カウンタ・エンコーダ  |  4Point \\ (非絶縁)  |  D24(CLK), D25(DIO) \\ D18(SCL), D19(SDA)  | ATmega128のINT6・INT7・INT0・INT1 \\ 入力電圧: DC 0~5V、HIGH認識: DC 3V以上 \\ D24・D25: 10kΩプルアップ、D18・D19: 4.7kΩプルアップ \\ 処理可能な速度はISRとプログラム構成によって異なります。  | +|  外部割り込み \\ カウンタ・エンコーダ  |  4点 \\ (非絶縁)  |  D24(CLK), D25(DIO) \\ D18(SCL), D19(SDA)  | ATmega128のINT6・INT7・INT0・INT1 \\ 入力電圧: DC 0~5V、HIGH認識: DC 3V以上 \\ D24・D25: 10kΩプルアップ、D18・D19: 4.7kΩプルアップ \\ 処理可能な速度はISRとプログラム構成によって異なります。  | 
-|  PWM出力  |  3Point \\ (非絶縁)  |  PWM0(D21), PWM1(D22), PWM2(D23)  | DC 0~5VレベルのPWMパルス: LOW 0V、HIGH 5V \\ 最大出力電流: 30mA  | +|  PWM出力  |  3点 \\ (非絶縁)  |  PWM0(D21), PWM1(D22), PWM2(D23)  | DC 0~5VレベルのPWMパルス: LOW 0V、HIGH 5V \\ 最大出力電流: 30mA  | 
-|  STATUS LED  |  1Point  |  D20  | プログラムの状態を表示(変数: ''LED_BUILTIN'')  | +|  STATUS LED  |  1点  |  D20  | プログラムの状態を表示(変数: ''LED_BUILTIN'')  | 
-|  通信チャネル  |  1チャネル \\ (非絶縁)  |  I²C (D18・D19)  | センサ・表示器の接続 \\ 同じ2つのピンを外部割り込み入力2Point(INT0・INT1)として使用可能。ただし同時使用不可 \\ 4.7kΩプルアップ  |+|  通信チャネル  |  1チャネル \\ (非絶縁)  |  I²C (D18・D19)  | センサ・表示器の接続 \\ 同じ2つのピンを外部割り込み入力2点(INT0・INT1)として使用可能。ただし同時使用不可 \\ 4.7kΩプルアップ  |
 | ::: | ::: |  RS-232  | Serial1を使用 \\ Modbus RTU Master & Slave内蔵コマンド対応 \\ LS産電Cnet内蔵コマンド対応  | | ::: | ::: |  RS-232  | Serial1を使用 \\ Modbus RTU Master & Slave内蔵コマンド対応 \\ LS産電Cnet内蔵コマンド対応  |
 |  メモリ  |  -  |  Flash  | 128KB  | |  メモリ  |  -  |  Flash  | 128KB  |
行 37: 行 37:
 ===== デジタル入力 ===== ===== デジタル入力 =====
  
-[[:ja-jp_guide:wiring#デジタル入力を1点確認する|初めて配線するときは、デジタル入力1Pointの確認手順も参照してください。 →]]+[[:ja-jp_guide:wiring#デジタル入力を1点確認する|初めて配線するときは、デジタル入力1点の確認手順も参照してください。 →]]
 ^ 端子 ^ Arduinoピン ^ 入力構成 ^ 端子台と配線例 ^ ^ 端子 ^ Arduinoピン ^ 入力構成 ^ 端子台と配線例 ^
-| P0~P3 | D0~D3 | デジタル入力4Point / 1COM(COM0端子) |  {{:ja-jp_products:mpino-8a4r-s-digital-input.svg?740|MPINO-8A4R-S デジタル入力端子台とNPN・PNP配線}}  | +| P0~P3 | D0~D3 | デジタル入力4点 / 1COM(COM0端子) |  {{:ja-jp_products:mpino-8a4r-s-digital-input.svg?740|MPINO-8A4R-S デジタル入力端子台とNPN・PNP配線}}  | 
-| P4~P7 | D4~D7 | デジタル入力4Point / 1COM(COM1端子) | ::: |+| P4~P7 | D4~D7 | デジタル入力4点 / 1COM(COM1端子) | ::: |
  
-デジタル入力はフォトカプラで絶縁されています。仕様表のDC 0~40Vは入力回路の動作入力電圧を示し、以下の配線はDC 5~24Vのセンサ電源を使う例です。入力端子とCOMの間の電圧がDC 5V以上になるとHIGHとして認識します。NPN・PNPの入力方式はCOMの配線で選択します。図のPNPとNPNは択一の配線例です。COM0とCOM1は電気的に同じ共通回路であるため、実際の配線では両端子を同じ極性に接続する必要があります。両端子に反対の極性を同時に接続しないでください。+デジタル入力はフォトカプラで絶縁されています。仕様表のDC 0~40Vは入力回路の動作入力電圧を示し、以下の配線はDC 5~24Vのセンサ電源を使う例です。入力端子とCOMの間の電圧がDC 5V以上になるとHIGHとして認識します。COM0とCOM1は内部で接続されていません。各グループのNPN・PNP入力方式は、それぞれのCOMの配線で選択します。図はCOM0グループをPNP、COM1グループをNPNで接続した例です。
  
 ==== プログラム例・デジタル入力 ==== ==== プログラム例・デジタル入力 ====
  
-digitalRead()でD0~D7の入力状態を200msごとに表示します。 HIGHは1、LOWは0です。+digitalRead()でD0~D7の入力状態を200msごとに表示します。HIGHは1、LOWは0です。
  
 <code cpp> <code cpp>
行 188: 行 188:
 ===== リレー出力 ===== ===== リレー出力 =====
  
-[[:ja-jp_guide:wiring#リレー出力を1点確認する|初めて配線するときは、リレー出力1Pointの確認手順も参照してください。 →]]+[[:ja-jp_guide:wiring#リレー出力を1点確認する|初めて配線するときは、リレー出力1点の確認手順も参照してください。 →]]
 ^ 端子 ^ Arduinoピン ^ 接点定格 ^ COM構成 ^ 端子台と配線例 ^ ^ 端子 ^ Arduinoピン ^ 接点定格 ^ COM構成 ^ 端子台と配線例 ^
 | P32 | D32 | AC 250VまたはDC 30V, 最大5A | COM2独立 |  {{:ja-jp_products:mpino-8a4r-s-relay-output.svg?488|MPINO-8A4R-S リレー出力端子台と負荷配線}}  | | P32 | D32 | AC 250VまたはDC 30V, 最大5A | COM2独立 |  {{:ja-jp_products:mpino-8a4r-s-relay-output.svg?488|MPINO-8A4R-S リレー出力端子台と負荷配線}}  |
行 195: 行 195:
 | P35 | D35 | AC 250VまたはDC 30V, 最大5A | COM5独立 | ::: | | P35 | D35 | AC 250VまたはDC 30V, 最大5A | COM5独立 | ::: |
  
-各リレーは1Pointごとに独立したCOM端子を使用します。 リレー接点は電源を出力しない無電圧接点のため、負荷電源を別途接続する必要があります。+各リレーは1点ごとに独立したCOM端子を使用します。リレー接点は電源を出力しない無電圧接点のため、負荷電源を別途接続する必要があります。
  
 ==== プログラム例・リレー出力 ==== ==== プログラム例・リレー出力 ====
  
-入力D0~D3を出力D32~D35に順番に対応させます。 入力がHIGHの場合、対応する出力がONになります。+入力D0~D3を出力D32~D35に順番に対応させます。入力がHIGHの場合、対応する出力がONになります。
  
 <code cpp> <code cpp>
行 224: 行 224:
 ==== プログラム例・アナログ入力 ==== ==== プログラム例・アナログ入力 ====
  
-analogRead()でA0~A5のADC生値(0~1023)を表示します。 各チャンネルの電圧・電流モードは、実際の製品設定に従います。+analogRead()でA0~A5のADC生値(0~1023)を表示します。各チャンネルの電圧・電流モードは、実際の製品設定に従います。
  
 <code cpp> <code cpp>
行 344: 行 344:
 ==== プログラム例・温度センサ入力 ==== ==== プログラム例・温度センサ入力 ====
  
-analogRead()でA6、A7の温度センサADC生値(0~1023)を表示します。 摂氏への換算は、以下の内蔵関数で説明します。+analogRead()でA6、A7の温度センサADC生値(0~1023)を表示します。摂氏への換算は、以下の内蔵関数で説明します。
  
 <code cpp> <code cpp>
行 371: 行 371:
 </code> </code>
  
-NTC入力A6に接続したNTC 10kΩ(25℃)、B=3950Kセンサの温度を読み取ります。 ntcRead()は摂氏温度の10倍の整数(25.3℃ → 253)、ntcReadf()は摂氏温度の浮動小数点数(25.3)を返します。 分解能はどちらも0.1℃です。 変換範囲外の値は-40℃または120℃に制限されるため、断線・短絡の判定値として使用しないでください。+NTC入力A6に接続したNTC 10kΩ(25℃)、B=3950Kセンサの温度を読み取ります。ntcRead()は摂氏温度の10倍の整数(25.3℃ → 253)、ntcReadf()は摂氏温度の浮動小数点数(25.3)を返します。分解能はどちらも0.1℃です。変換範囲外の値は-40℃または120℃に制限されるため、断線・短絡の判定値として使用しないでください。
  
 <code cpp> <code cpp>
行 394: 行 394:
  
 ^ 機能 ^ Arduinoピン ^ 点数 ^ コネクタのピン配列 ^ ^ 機能 ^ Arduinoピン ^ 点数 ^ コネクタのピン配列 ^
-| PWM出力 | PWM0(D21), PWM1(D22), PWM2(D23) | 3Point |  {{:ja-jp_products:mpino-8a4r-s-pwm-output.svg?334|MPINO-8A4R-S PWM出力コネクタのピン配置}}  | +| PWM出力 | PWM0(D21), PWM1(D22), PWM2(D23) | 3点 |  {{:ja-jp_products:mpino-8a4r-s-pwm-output.svg?334|MPINO-8A4R-S PWM出力コネクタのピン配置}}  | 
-| 外部割り込み入力 | D18, D19, D24, D25 | 4Point | ::: | +| 外部割り込み入力 | D18, D19, D24, D25 | 4点 | ::: | 
-| エンコーダ入力 | D24, D25 | 2Point | ::: |+| エンコーダ入力 | D24, D25 | 2点 | ::: |
  
 PWM0・PWM1・PWM2は、DC 0V(LOW)とDC 5V(HIGH)を切り替えるパルス信号を出力します。プログラムでデューティ比を調整してON時間を制御します。平滑化されたアナログ電圧出力ではありません。 PWM0・PWM1・PWM2は、DC 0V(LOW)とDC 5V(HIGH)を切り替えるパルス信号を出力します。プログラムでデューティ比を調整してON時間を制御します。平滑化されたアナログ電圧出力ではありません。
行 427: 行 427:
 </code> </code>
  
-PWM(pin, val, onDutybit16)はデューティ値を指定します。 8ビットの範囲は0~255、第3引数をtrueにした16ビットの範囲は0~65535です。 D21に16ビットの中間値32768を出力します。 D21~D23はTimer3を共有するため、同じタイマでは同じ分解能を使用します。 PWM_RESET()を呼び出した後に開始します。+PWM(pin, val, onDutybit16)はデューティ値を指定します。8ビットの範囲は0~255、第3引数をtrueにした16ビットの範囲は0~65535です。D21に16ビットの中間値32768を出力します。D21~D23はTimer3を共有するため、同じタイマでは同じ分解能を使用します。PWM_RESET()を呼び出した後に開始します。
  
 <code cpp> <code cpp>
行 447: 行 447:
 </code> </code>
  
-FDPWM(pin, intHz, Duty)は周波数(Hz)とデューティ比(%)を指定します。 D21に1kHz、50%のデューティ比で出力します。 D21~D23はTimer3を共有するため、同じタイマの出力には同じ周波数を指定します。 独立したFPWM()関数はありません。50%出力はFDPWM(pin, hz, 50.0f)で設定します。+FDPWM(pin, intHz, Duty)は周波数(Hz)とデューティ比(%)を指定します。D21に1kHz、50%のデューティ比で出力します。D21~D23はTimer3を共有するため、同じタイマの出力には同じ周波数を指定します。独立したFPWM()関数はありません。50%出力はFDPWM(pin, hz, 50.0f)で設定します。
  
 <code cpp> <code cpp>
行 468: 行 468:
 </code> </code>
  
-NPWM_BEGIN()でD21に1kHz・50%のパルス100個を準備し、loop()ごとにNPWM()を実行して出力と完了処理を行います。 delay()は入れないでください。 D21~D23はTimer3を共有します。同じタイマの他の出力と併用しないでください。+NPWM_BEGIN()でD21に1kHz・50%のパルス100個を準備し、loop()ごとにNPWM()を実行して出力と完了処理を行います。delay()は入れないでください。D21~D23はTimer3を共有します。同じタイマの他の出力と併用しないでください。
  
 <code cpp> <code cpp>
行 489: 行 489:
 </code> </code>
  
-PWMOFF(pin, true)はチャンネル停止フラグを設定し、falseは解除します。 設定直後にFDPWM()を呼び出し、出力接続に反映します。 D21を2秒間ON、2秒間OFFにし、停止後はdigitalWrite()でLOWを維持します。 この停止フラグはNPWM()には適用されません。+PWMOFF(pin, true)はチャンネル停止フラグを設定し、falseは解除します。設定直後にFDPWM()を呼び出し、出力接続に反映します。D21を2秒間ON、2秒間OFFにし、停止後はdigitalWrite()でLOWを維持します。この停止フラグはNPWM()には適用されません。
  
 <code cpp> <code cpp>
行 516: 行 516:
 </code> </code>
  
-PWM_RESET()はTimer1・Timer3の制御レジスタとカウンタを初期化します。 D21に1kHzを2秒間出力した後、全タイマを停止します。 同じタイマのPWM・カウンタにも影響します。 PWMOFF()の停止フラグまでは解除しません。+PWM_RESET()はTimer1・Timer3の制御レジスタとカウンタを初期化します。D21に1kHzを2秒間出力した後、全タイマを停止します。同じタイマのPWM・カウンタにも影響します。PWMOFF()の停止フラグまでは解除しません。
  
 <code cpp> <code cpp>
行 534: 行 534:
 ==== プログラム例・パルスカウント ==== ==== プログラム例・パルスカウント ====
  
-CLK(D24)のFALLINGエッジをカウントします。 入力には10kΩのプルアップがあります。 32ビット値をATOMIC_BLOCKで読み取り、500msごとに表示するソフトウェア割り込みの例です。 最大入力周波数でカウントの取りこぼしがないことを保証するものではありません。+CLK(D24)のFALLINGエッジをカウントします。入力には10kΩのプルアップがあります。32ビット値をATOMIC_BLOCKで読み取り、500msごとに表示するソフトウェア割り込みの例です。最大入力周波数でカウントの取りこぼしがないことを保証するものではありません。
  
 <code cpp> <code cpp>
行 567: 行 567:
 ==== プログラム例・エンコーダ入力 ==== ==== プログラム例・エンコーダ入力 ====
  
-A相はCLK(D24)、B相はDIO(D25)に接続します。 10kΩのプルアップを使用し、FALLINGエッジでB相がLOWなら増加する1逓倍カウントの例です。 実際の回転方向はA・B相の配線によって変わります。+A相はCLK(D24)、B相はDIO(D25)に接続します。10kΩのプルアップを使用し、FALLINGエッジでB相がLOWなら増加する1逓倍カウントの例です。実際の回転方向はA・B相の配線によって変わります。
  
 <code cpp> <code cpp>
行 613: 行 613:
 ==== プログラム例・基本通信 ==== ==== プログラム例・基本通信 ====
  
-Serial(115200bps)とRS-232 Serial1(9600bps, 8-N-1)の間で文字を転送します。 availableForWrite()で送信バッファの空き容量を確認します。+Serial(115200bps)とRS-232 Serial1(9600bps, 8-N-1)の間で文字を転送します。availableForWrite()で送信バッファの空き容量を確認します。
  
 <code cpp> <code cpp>
行 635: 行 635:
 ==== プログラム例・I²C通信 ==== ==== プログラム例・I²C通信 ====
  
-Wireでアドレス0x08~0x77を検索し、応答したアドレスを3秒ごとに表示します。 SDA・SCLを使用するエンコーダ・割り込みの例と同時に実行しないでください。+Wireでアドレス0x08~0x77を検索し、応答したアドレスを3秒ごとに表示します。SDA・SCLを使用するエンコーダ・割り込みの例と同時に実行しないでください。
  
 <code cpp> <code cpp>
行 753: 行 753:
 **関連する内蔵関数** **関連する内蔵関数**
  
-=== 関数例・LS産電Cnet SLave:ICnetMem()、ICnetAdr()、ICnetInit()、ICnet() ===+=== 関数例・LS産電Cnet Slave:ICnetMem()、ICnetAdr()、ICnetInit()、ICnet() ===
  
 **関数プロトタイプ** **関数プロトタイプ**
ja-jp_products/mpino_8a4r_s.1791382731.txt.gz · 最終更新: by 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki