本文へスキップ
MPINO-16A8R 産業用Arduinoコントローラ — 前面画像

MPINO Series

MPINO-16A8R

MPINO-16A8R 産業用Arduinoコントローラ

I/O一覧
16 DI / 8 Relay / 4 AI / RS-232 / RS-485 / UART / I²C

MPINO-16A8RはATmega2560ベースの産業用Arduino互換PLCコントローラで、絶縁デジタル入力16点とリレー出力8点を備えます。RS-232, RS-485, UART, I²C通信およびModbus RTUに対応し、Arduino IDEでプログラミングできます。DINレール取付対応で、自動化・試験・HMI連携・組込制御に適しています。

$88.00 在庫あり
オプション選択
トップケース
追加構成品
必要な関連商品を一緒にどうぞ(任意)
ダウンロードケーブル — 片側は USB-A プラグ、反対側は角型の USB-B プラグ
Download Cable
ダウンロードケーブル (USB A to B, 1.2M)
$2.20
スーパーキャパシタ DDL 5.5V 1F — +5V 端子に接続するリード2本の円筒形キャパシタ
Super Capacitor DDL 5.5V 1F
スーパーキャパシタ DDL 5.5V 1F (停電保持用)
$4.40
商品合計$88.00

配送

海外配送 (EMS) — ご購入時に配送先・重量に応じて算出

配送計算重量 300 g(製品1個あたり)

発送

翌営業日に発送(ご注文時間を問わず)

大量注文の場合、発送が1日長くかかることがあります

返品・交換

発送前の注文キャンセル · 受取後の返品/交換のご依頼が可能

主な特長

/ FEATURES
  • ATmega2560 コア、Arduino IDE および MPINO STUDIO2 でプログラミング
  • フォトカプラ絶縁デジタル入力 16点(NPN/PNP、最大40V対応)
  • AC/DC無電圧接点スイッチング用リレー出力 8点
  • アナログ入力 4点(0–5V / 4–20mA / 0–10V レンジ)
  • 産業用通信: RS-485, RS-232, UART, I²C · Modbus RTU
  • DINレール35mm取付、産業現場向け絶縁I/O

仕様

/ SPEC
MCUATmega2560
電源入力DC 9V ~ 12V
デジタル入力16
リレー出力8
アナログ入力4
RS-2321ch
RS-4851ch
UART1ch
I²C1ch
Modbus RTUはい
LS Cnetはい
Mitsubishi MCはい
Arduino IDE 対応はい

ソフトウェア

Arduino IDE / MPINO Studio 2

Arduino IDEでMPINO用スケッチを編集し、シリアルモニタで動作を確認している画面MPINO Studio 2でコードとラダーロジックを1画面で編集している画面 — エクスプローラー・コードエディタ・ラダー図

Arduino IDE 対応

既存のArduino開発環境とそのまま互換

MPINO STUDIO2 提供

Arduinoコーディングとラダーロジックを一つに

Arduino + ラダーロジック

使い慣れたラダーで制御ロジックを素早く構築

開発環境の準備

ARDUINO SDK をインストールすると、Arduino IDE に本製品のボード定義が追加され、産業用途で役立つ関数を内蔵命令として使用できます。ライブラリを別途追加する必要はなく、ARDUINO IDE の自動補完とともにご使用いただけます。

SDK のインストールで使える内蔵命令

  • PLC タイマ・コールバックタイマIton · Itof · Itpl · Itmr · ItimerSet
  • カウンタIctu · Ictd · Ictud · IgetCount
  • スケール・PID 制御Iscale · Iscalef · IpidSet · IpidRun
  • 先入れ先出し・後入れ先出しバッファFIFO · FILO
  • 入力デバウンス・エッジ検出Ibounce · IdigitalRead · Iup · Idown · Ialt
  • デバッグ・ウォッチドッグdebug · debugln · WDT_ENABLE · WDT
  • Modbus RTU・LS Cnet・Mitsubishi MCImodbusRTU · ICnet · IMcProtocol
  • アナログ入力・4~20mA 補正analogRead2 · IanalogRead · IanalogFilter · ntcRead

ARDUINO IDE を使用する場合は ARDUINO SDK(アイロジックス必須インストールファイル)を必ずインストールしてください。MPINO STUDIO2 を使用する場合はインストールせずにご使用いただけます。

本製品は ARDUINO SDK なしでも、ARDUINO IDE で MEGA2560 ボードを選択して使用できます。ただし当社提供の内蔵命令は使用できません。

デジタル入力Digital Input

16チャンネル デジタル入力 / フォトカプラ絶縁

16点のデジタル入力チャンネルを備え、外部スイッチやセンサーの信号を安定して検出します。

  • D22~D37 入力

    合計16点のデジタル入力に対応

  • COM0 / COM1 コモン

    独立した2つの入力グループ構成

  • フォトカプラ絶縁

    外部ノイズから制御回路を保護

  • NPN / PNP 対応

    さまざまなセンサー配線方式に対応

入力チャンネル構成

D22D23D24D25D26D27D28D29+COM0D22~D29 / COM08P · 1COMD30D31D32D33D34D35D36D37+COM1D30~D37 / COM18P · 1COM

※ 外部スイッチまたはセンサーの接続例(NPN/PNP 共通)

フォトカプラ絶縁

DxCOMx

デジタル入力は双方向フォトカプラ絶縁構造(逆並列LED)を採用し、NPN・PNP いずれの信号も安定して検出します。COM0 / COM1 を基準に16チャンネルの入力を確実に取り込みます。

サンプルコード — 入力の読み取り
void setup() {
  // Input pins work as inputs with no pinMode() call (the pull-up / pull-down is on the board).
  Serial.begin(9600);
}

void loop() {
  if (digitalRead(22) == HIGH) {
    Serial.println("I(22) ON");
  }
  delay(100);
}

リレー出力Relay Output

8チャンネル リレー出力 / 1a1c リレー

8チャンネルのリレー出力を備え、AC・DCで動作する外部負荷を安定して制御できます。

  • D39~D46 出力

    8点のリレー接点出力

  • 1a1c リレー 8

    各出力はリレー接点で独立制御

  • 4出力 1COM 構成

    各COM端子が4点の出力を共有

  • 電気的絶縁

    制御部と出力部をリレーで分離して保護

出力チャンネル構成

D39D40D41D42+COM2D43D44D45D46+COM3D39~D468P · 4P/1COM

※ 外部負荷の接続例(リレー接点出力方式)

リレー出力構造

制御部 (MCU)出力部

各リレー出力は1a1cリレーで構成され、制御部と出力部を機械的に分離します。4点の出力が1つのCOM端子を共有する4出力1COM構成です。無電圧接点のためAC・DC いずれの負荷もスイッチングできます。

サンプルコード — リレー出力の制御
void setup() {
  pinMode(39, OUTPUT);
}

void loop() {
  digitalWrite(39, HIGH);
  delay(1000);
  digitalWrite(39, LOW);
  delay(1000);
}

アナログ入力Analog Input

4チャンネル アナログ入力 / 出荷時は DC 0~5V

A(0)~A(3) は下端の端子列の一部で、AGND と並び、電源端子台のすぐ左に配置されています。全チャンネル10ビットで、出荷時は DC 0~5V の電圧入力です。入力回路は 0~10V・0(4)~20mA・NTC 10kΩ サーミスタにも対応します。

  • A(0)~A(3) · 4チャンネル

    10ビット分解能(0~1023)アナログ入力4点

  • 出荷時 DC 05V

    このレンジでの入力抵抗は 100MΩ

  • 電圧・電流・NTC

    0~10V、0(4)~20mA、NTC 10kΩ にも対応

  • 外部基準電圧

    AVCC 5V を AREF へ配線

アナログ入力端子の構成

A(0)~A(3) / AGND4CH · 10BITA(0)A(1)A(2)A(3)AGND基板内部入力回路 → ADCGND
アナログ入力 A(0)~A(3)AGND

※ シルク ANALOG IN の下端端子列の一部で、A(0) · A(1) · A(2) · A(3) · AGND の順に並びます。このボードにはレンジ選択のキャップやジャンパはなく、入力レンジは入力回路の抵抗構成で決まります。出荷時は DC 0~5V です。

入力レンジ

入力レンジ状態入力抵抗
DC 0~5V出荷時100 MΩ
DC 0~10V抵抗構成200 MΩ
0(4)~20mA抵抗構成250 Ω(1%)
NTC 10kΩ @25°C抵抗構成10kΩ プルアップ(1%)

4チャンネルすべて10ビット分解能(0~1023)です。本ボードは AVCC 5V が AREF へ配線されています。出荷時は DC 0~5V で、その他のレンジはチャンネルの入力抵抗構成によります。

サンプルコード — アナログ入力の読み取り
unsigned int ADC0;

void setup() {
  Serial.begin(9600);
}

void loop() {
  ADC0 = analogRead(A0);   // 0-5V -> 0-1023
  Serial.println(ADC0);
  delay(500);
}

外部割り込みInterrupt · Encoder

割り込み入力で高速パルスのカウントとエンコーダ入力を実現

SDA・SCL がこのボードの外部割り込み入力2点で、SDA が INT1、SCL が INT0 です。4.7kΩ のプルアップが内蔵されています。ISRを登録すればポーリングなしでエッジを数えられ、2相エンコーダを両方に配線すれば位相関係から回転方向が読み取れます。

  • 割り込み入力2

    SDA(D20)· SCL(D21)

  • 高速パルスカウント

    ISRでエッジをカウント、ポーリング不要

  • ロータリーエンコーダ

    A相 = SDA、B相 = SCL

  • 4.7kΩ プルアップ

    2点とも内蔵

割り込みピンの割り当て

ピンINT共有機能
D20INT1I²C SDA · エンコーダA相
D21INT0I²C SCL · エンコーダB相

動作電圧は DC 0~5V で、エンコーダ入力は 50kHz 以上に対応します。2点とも 4.7kΩ プルアップ内蔵です。本ボードで外部に引き出されている外部割り込みピンはこの2点のみです。実際に処理できる周波数はISRの長さとプログラム全体の負荷に左右されるため、固定値としては保証されません。

割り込み入力の用途

高速パルスカウント+5VGNDSDAGND4.7kΩ → VCCエッジごとにISRでカウントロータリーエンコーダSDASCLSDAのエッジでSCLを読み方向を判定

※ 左はパルス発生器の出力を SDA 端子に、GNDを電源端子台のGND極に接続し、ISRでエッジごとにカウントします。右のエンコーダは2相が90°ずれているため、SDA のエッジ時点の SCL のレベルがそのまま回転方向になります。

割り込み端子

I2CSDASCL

※ 基板右端のシルク I2C の2極端子です。SDA = D20(INT1)、SCL = D21(INT0)で、いずれも 4.7kΩ プルアップが内蔵されています。この端子は信号2極のみのため、センサのGNDは電源端子台から取ってください。I²Cバスと同じピンのため、割り込みとして使用すると I²C 通信を併用できません。

ご使用前の確認

  • 割り込み入力は DC 0~5V 専用です。5Vを超えるとMCUが破損します。24V信号は絶縁されたデジタル入力へ接続してください。
  • SDA・SCL は I²C バスです。割り込みやエンコーダとして使用すると I²C 通信を併用できません。
  • ISR内ではカウントの加算のみを行い、Serial・delay()・浮動小数点演算は使用しないでください。
  • 本製品のカウントは attachInterrupt() のISR方式です。タイマ外部クロックによるハードウェアカウンタはありません。
サンプルコード — 外部割り込み
void setup() {
  Serial.begin(9600);
  // a rising edge on SCL (D21) calls onRising()
  attachInterrupt(digitalPinToInterrupt(SCL), onRising, RISING);
}

void loop() {
}

void onRising() {
  Serial.println("ok");
}
サンプルコード — ロータリーエンコーダ
volatile long encoderValue = 0;

void setup() {
  Serial.begin(115200);
  // SDA(20) = phase A, SCL(21) = phase B
  attachInterrupt(digitalPinToInterrupt(SDA), updateEncoder, FALLING);
}

void loop() {
  Serial.print("Encoder Value: ");
  Serial.println(encoderValue);
  delay(500);
}

void updateEncoder() {
  if (digitalRead(SCL) == LOW) { encoderValue++; }
  else { encoderValue--; }
}

通信RS-232 · RS-485 · UART · I²C

RS-232・RS-485・TTL UART・I²C の4通信チャンネル

RS-232 は Serial1、RS-485 は Serial2、TTL UART は Serial3 として、それぞれ専用の端子に引き出されています。I²C は Wire ライブラリで、プルアップ抵抗は内蔵済みです。すべての外部ポートで Modbus RTU のマスター・スレーブが使用できます。RS-485 は MAX13487 トランシーバが送受信を自動で切り替えるため、DE/RE 制御ピンは不要です。

  • RS-485 · 1チャンネル

    Serial2 · 1:Nマルチドロップ · MAX13487 自動方向制御

  • RS-232 · 1チャンネル

    Serial1 · TX / RX / GND 端子で1:1接続

  • UART(TTL)· 1チャンネル

    Serial3 · TXD · RXD · GND 端子 · レベル変換なし

  • I²C · 1チャンネル

    Wire · 4.7kΩプルアップ内蔵 · 1:N

  • Modbus RTU

    すべての外部ポートでマスター・スレーブ対応

RS-232 · UART · I²C · USB コネクタ

RS-232TXRXGNDUARTTXDRXDGNDI²CSDASCLUSBUPLOAD

※ 各コネクタはシルク表記どおりに描いています。I²Cコネクタは信号2ピンのみのため、I²C機器の電源は電源端子台の +5V・GND から取ってください。書き込みポートのシルクは UPLOAD です。

RS-485 の接続

MAX13487 · Serial2485+485-RS-485 の接続ノード 1ノード 2ノード 3

※ RS-485はマルチドロップバスのため、485+ は各ノードの 485+ に、485− は各ノードの 485− に接続します。送受信の切り替えはトランシーバ側で行われ、スケッチから DE/RE 制御ピンを操作する必要はありません。

通信ポート

ポートピン用途
SerialD1(TX0)· D0(RX0)UPLOAD USBポートでの書き込みとデバッグ
Serial1D18(TX1)· D19(RX1)TX / RX / GND 端子の RS-232 · 1:1
Serial2D16(TX2)· D17(RX2)485+ / 485− 端子の RS-485 · 1:N
Serial3D14(TX3)· D15(RX3)TXD · RXD · GND 端子の TTL UART
Wire(I²C)SDA = D20 · SCL = D212ピンコネクタ · 4.7kΩプルアップ内蔵

4つの外部ポートすべてで Modbus RTU のマスター・スレーブが使用できます。UARTチャンネルはTTLレベルでラインドライバを持たないため、長距離配線ではなく近接モジュールとの接続に使用します。

ご使用前の確認

  • I²Cコネクタは信号ピンのみです。機器の +5V・GND は電源端子台(最大100mAの電源出力)から取ってください。
  • SDA・SCL を外部割り込みやエンコーダ入力として使用すると、I²C通信は併用できません。
  • UARTチャンネルはTTLレベルで絶縁されていません。RS-232やRS-485の回線に直接接続しないでください。
  • USB-UART ブリッジが基板に実装されているため、市販のUSBケーブルで書き込めます。初回書き込み前に CP210x ドライバをインストールしてください。
サンプルコード — シリアル送受信
void setup() {
  Serial.begin(9600);    // USB, for monitoring
  Serial2.begin(9600);   // RS-485
}

void loop() {
  Serial2.println("Hello RS485");

  while (Serial2.available()) {
    char c = Serial2.read();
    Serial.write(c);
  }
  delay(1000);
}

7セグメント(FND)の接続FND · TM1637

4桁の7セグメント表示器を信号2線で — 最大 2 台

表示器モジュールには TM1637 が内蔵されているため、4桁の表示にクロック線とデータ線の2本しか必要ありません。本製品には表示器専用コネクタがなく、2本の信号は通常のねじ端子に接続します(推奨は CLK = A(2) · DIO = A(3))。+5V と GND はPOWER 端子台から取るので、配線は全部で4線です。

  • CLK・DIO の2

    TM1637内蔵の4桁モジュールはこれだけで動作

  • 最大 2

    1台につき1組の端子を使用

  • 基板から給電

    POWER 端子台の +5V・GND · 最大 100mA

  • 内蔵命令

    IsegDecimal・IsegHex で10進数と16進数を表示

表示器と接続端子

表示器接続端子ピン
1台目CLK = A(0) · DIO = A(1)A0 · A1
2台目CLK = A(2) · DIO = A(3)A2 · A3
電源+5V · GND基板出力 · 最大 100mA

信号側の端子はアナログ入力と兼用です。表示器に使用している間、その端子は本来の用途には使えません。+5V 端子は本製品では出力として使用できるため、表示器に別電源は不要です。表示器モジュール本体は別売アクセサリです。

推奨する接続

4桁7セグメント(FND)モジュールCLKDIO+5VGNDA(2)A2A(3)A3+5VGND

※ 端子のシルクは A(2) · A(3) · +5V · GND です。基板上に CLK・DIO の表記はないため、各配線の役割を接続先に併記しています。A(2) = A2、A(3) = A3 です。表示器には小数点を表示できるタイプと時刻を表示できるタイプがあり、いずれも別売です。

複数台を接続する

1A(0)CLKA0A(1)DIOA12A(2)CLKA2A(3)DIOA3

※ 表示器1台につき CLK・DIO を1組使用し、+5V と GND は全台で共用します。下の端子名は基板の並び順(左から右)で、そのためクロック線が常に左側とは限りません。

ご使用前の確認

  • 表示器に使用した端子をアナログ入力として同時に使うことはできません。
  • 下のサンプルで使用している Iseg 系コマンドは ARDUINO SDK に内蔵されています。SDK をインストールすればそのまま使用でき、ライブラリの追加も #include も不要です。
  • 本製品の +5V 端子を出力として使う場合の上限は 100mA です。同じ端子から他の負荷も取る場合は合計値をご確認ください。
  • 7セグメントモジュールは別売アクセサリで、製品には含まれません。
サンプルコード — 7セグメント表示
// 4-digit 7-segment (TM1637) on the A(2) and A(3) terminals - CLK, DIO, +5V, GND
// Iseg* are ARDUINO SDK built-in commands: nothing to install, no #include to add.

void setup()
{
  IsegBegin(A2, A3);
  IsegBrightness(7);   // 0-7 - required, nothing lights without it
  IsegClear();
}

void loop()
{
  IsegDecimal((millis() / 1000UL) % 10000UL, true);
  delay(200);
}

電源 · 停電保持Power · Backup

DC 9V ~ 12V 入力・5V 変換 — 停電してもデータを保持

本体は DC 9V ~ 12V を入力とし、内部でLM1117 レギュレータにより 5V に変換して使用します。電源容量は 12V 1A 以上を目安にしてください。

  • DC 9V ~ 12V

    電源容量は 12V 1A 以上

  • 内部 5V

    LM1117 DC-DC 変換

  • +5V 出力 100mA

    電源端子台の +5V 端子から

  • スーパーキャパシタ保持

    +5V 端子に接続して約10秒

電源配線の前に

  • EEPROMの書き込み寿命は約100,000回です。速く変化する値はRAMに置き、停電したときだけ保存してください(下の2つの方法を参照)。
  • USB電源のみで動作させるとUSBの5Vがアナログ基準電圧になり、測定値が揺らぐことがあります。精密測定には外部電源をお使いください。

電源の流れ

DC 9V ~ 12V12V 1A 以上LM1117DC-DC 5V変換内部 5V制御回路へ供給+5V 端子最大 100mA 出力USB 5Vダウンロードポートスーパーキャパシタ約10秒 保持
電源入力5V ライン停電保持

* どちらの電源でも動作します。外部電源はレギュレータ経由、ダウンロードポートの5Vは直接です。スーパーキャパシタは同じ5Vノードにつながり、両方が失われたときに5Vを保ちます。

電源と停電保持

入力電圧DC 9V ~ 12V
推奨電源容量12V 1A 以上
内部変換LM1117 DC-DC で 5V
+5V 出力電源端子台の +5V 端子から最大 100mA
USB電源動作ダウンロードポート経由でパソコンの5Vにより動作
不揮発メモリEEPROM 4 KB・書き込み約 100,000 回
停電時の保持+5V 端子のスーパーキャパシタで約10秒
保持できる停電回数停電時のみ書き込むため 100,000 回以上

電源容量は 12V 1A 以上に、+5V 端子から供給する分(最大 100mA)を加えて選定してください。

停電時にデータを保持する2つの方法

値がどのくらいの頻度で変わるかで選びます。2つは組み合わせて使います。

EEPROM — たまに変わる値

内蔵EEPROMは電源が切れても 4 KB のデータを保持し、バイト単位で書き換えられます。ただし同じ領域あたりの書き込み寿命は約 100,000 回です。設定値・校正データ・機械設定のように「たまに変わる値」に適し、ループごとに更新される値には適しません。

スーパーキャパシタ — 常時変わる値

+5V 端子にスーパーキャパシタを接続すると、主電源が切れた後も内部5Vが約10秒間保たれます。主電源をデジタル入力に接続しておき、digitalRead() でその入力がOFFになった瞬間に値をEEPROMへ書き込みます。復電時は setup() でEEPROMに保存した値を読み出し、メモリへ書き戻します。EEPROMへの書き込みは停電の瞬間だけなので、100,000回以上の停電に耐えられます。

MPINO STUDIO2 — オプションで簡単に

MPINO STUDIO2 ではスーパーキャパシタを使った停電保持をオプションとして提供しており、上記の手順を自分でコーディングせずに設定で実現できます。

取り付け · DINレールDIN Rail

35mm DINレールにクリップで固定、またはPCBの取付穴で直接固定

制御盤内では 35mm DINレールにクリップで固定し、機械に組み込む場合はPCBの取付穴でねじ止めします。レールクリップを使用しない場合の外形は 116.80 × 100.00 mm、レールにクリップを締結した後の高さは 109.42~119.42 mm です。

  • 35mm DINレール

    制御盤のレールにクリップで固定

  • PCB直接取り付け

    取付穴でねじ止め

  • 116.80 × 100.00 mm

    レールクリップなしのPCB外形

  • 締結後 109.42~119.42 mm

    クリップ開放時 114.68~124.68 mm、締結後 109.42~119.42 mm

取り付けと外形寸法

取り付け方式35mm DINレール、またはPCB直接
DINレール規格35 mm
PCB単体(クリップなし)116.80 × 100.00 mm
取付穴ピッチ 100.00 × 90.00 mm
クリップ開放(締結前)約 114.68~124.68 mm
クリップ締結後約 109.42~119.42 mm

DINレールを使用しない場合はPCBの取付穴でねじ止めし、レールに取り付ける場合は35mmのレールにクリップを締結して全体の高さは 109.42~119.42 mm になります。

35mm DINレールへの取り付け

35 mm
DINレールクリップ35mm DINレール基板

※ 35mm DINレールにクリップを掛けて固定します。全体の高さはクリップ開放時 114.68~124.68 mm、締結後は 109.42~119.42 mm です。図はクリップ自体の形状ではなく取り付け方法を示したものです。

外形と取付穴

116.80100.00100.00取付穴

※ レールクリップを使用しない場合の外形と取付穴です。単位はmmです。

設置時の注意

  • 屋内専用です。雨・粉じん・霜・直射日光・結露のある環境には設置できません。
  • 引火性・爆発性ガスのある環境には設置しないでください。
  • 振動や衝撃の多い場所には設置しないでください。
  • 人命や財産に影響の大きい設備(原子力・医療・船舶・車両・航空など)に使用する場合は、必ず二重の安全装置を設けてください。

FAQ

MPINO-16A8RのI/O点数はどれくらいですか?

MPINO-16A8Rは絶縁デジタル入力16点とリレー出力8点を備え、RS-485, RS-232, UART, I²C通信を搭載しています。詳細は仕様表をご覧ください。

MPINO-16A8RはModbus RTUに対応していますか?

はい。MPINO-16A8RはシリアルインターフェースでModbus RTUに対応し、マスター・スレーブのいずれでも使用できます。

関連コントローラ

/ RELATED

関連ガイド

/ DOCS