
MPINO Series
MPINO-8A8R-S
MPINO-8A8R-S 산업용 아두이노 컨트롤러
MPINO-8A8R-S는 ATmega128-AU 기반 산업용 아두이노 호환 컨트롤러입니다. 절연 디지털 입력 8점, 릴레이 출력 8점, 아날로그 입력 4점, NTC 온도 입력 2점과 PWM 출력 6점을 제공합니다. RS-485·I²C 통신과 Modbus RTU를 지원하며 Arduino IDE와 MPINO STUDIO2에서 프로그램을 작성할 수 있습니다. 35mm DIN 레일에 장착할 수 있습니다.
택배 ₩3,000 · ₩50,000 이상 무료배송 (CJ대한통운)
본사 방문수령 가능
배송 계산 무게 250 g (제품 1개 기준)
오후 2시 이전 주문 시 당일 발송
대량 주문은 발송이 1일 더 소요될 수 있습니다
배송 전 주문 취소 · 수령 후 반품/교환 요청 가능
사양
/ SPEC| MCU | ATmega128-AU |
|---|---|
| 전원 입력 | DC 12V ~ 24V |
| 디지털 입력 | 8 |
| 릴레이 출력 | 8 |
| 아날로그 입력 | 4 |
| 온도센서 입력 | 2 |
| 고속펄스 입력 | 4 |
| 고속펄스 출력 | 6 |
| RS-485 | 1ch |
| I²C | 1ch |
| Modbus RTU | YES |
| LS산전 Cnet | YES |
| Mitsubishi MC | YES |
| Arduino IDE 호환 | YES |
주요 특징
/ FEATURES- ATmega128-AU 기반 · Arduino IDE와 MPINO STUDIO2로 프로그래밍
- DC 12~24V 전원 입력
- 포토커플러 절연 디지털 입력 8점 · NPN/PNP 대응, 입력 신호 DC 0~40V(HIGH DC 5V 이상)
- 릴레이 출력 8점 · 최대 5A/점
- 아날로그 입력 4점 · DC 0(1)~5V / 0(4)~20mA / DC 0~10V (주문 옵션)
- NTC 온도센서 입력 2점 · 10kΩ(25℃)·3950K 센서 사용, 입력 온도 범위 −40~120℃
- 고속펄스(PWM) 출력 6점·DC 5V
- 인터럽트 입력 4점·DC 5V
- 시리얼통신 : RS-485 , I²C
- 35mm DIN 레일 장착
INDUSTRIAL ARDUINO
디지털 입력 8점.릴레이 출력 8점.

01디지털 입력 8점
자세히 디지털 입력 8점 · 새 탭에서 열립니다NPN / PNP · 포토커플러 절연, I(0)~I(7) · 8점 / COM0
02STATUS LED
자세히 STATUS LED · 새 탭에서 열립니다프로그램으로 상태 표시, LED_BUILTIN (D20)
03I²C 통신 1채널
자세히 I²C 통신 1채널 · 새 탭에서 열립니다SCL D18 / SDA D19 · 4.7kΩ 풀업, SCL · SDA · +5V · GND
04엔코더 · 인터럽트 입력
자세히 엔코더 · 인터럽트 입력 · 새 탭에서 열립니다CLK D24 / DIO D25, DC 0~5V · 7세그먼트 겸용
05아날로그 입력 4점
자세히 아날로그 입력 4점 · 새 탭에서 열립니다A0~A3 · 출하 시 0(4)~20mA, 점퍼 제거 시 DC 0(1)~5V
06NTC 온도 입력 2점
자세히 NTC 온도 입력 2점 · 새 탭에서 열립니다A4 · A5 별도 커넥터, NTC 10kΩ / 3950K · −40~120℃
07프로그램 업로드 단자
자세히 프로그램 업로드 단자 · 새 탭에서 열립니다MP 다운로드 케이블 전용 · mini 5P, Serial · 업로드 / 디버깅
08RS-485 통신 1채널
자세히 RS-485 통신 1채널 · 새 탭에서 열립니다Serial1 · 485+ / 485- / GND, Modbus RTU · 1:N 연결
09PWM 출력 6점
자세히 PWM 출력 6점 · 새 탭에서 열립니다D21~D23 · D26~D28, 0V / 5V 펄스 · 최대 30mA/점
10릴레이 출력 8점
자세히 릴레이 출력 8점 · 새 탭에서 열립니다2점 / COM · COM1~COM4, AC 250V / DC 30V · 최대 5A/점
11DC 12~24V 전원
자세히 DC 12~24V 전원 · 새 탭에서 열립니다P24V / N24V 전원 입력, DC 24V · 0.5A 이상 권장
01디지털 입력 8점
자세히 디지털 입력 8점 · 새 탭에서 열립니다NPN / PNP · 포토커플러 절연, I(0)~I(7) · 8점 / COM0
02STATUS LED
자세히 STATUS LED · 새 탭에서 열립니다프로그램으로 상태 표시, LED_BUILTIN (D20)
03I²C 통신 1채널
자세히 I²C 통신 1채널 · 새 탭에서 열립니다SCL D18 / SDA D19 · 4.7kΩ 풀업, SCL · SDA · +5V · GND
04엔코더 · 인터럽트 입력
자세히 엔코더 · 인터럽트 입력 · 새 탭에서 열립니다CLK D24 / DIO D25, DC 0~5V · 7세그먼트 겸용
10릴레이 출력 8점
자세히 릴레이 출력 8점 · 새 탭에서 열립니다2점 / COM · COM1~COM4, AC 250V / DC 30V · 최대 5A/점
05아날로그 입력 4점
자세히 아날로그 입력 4점 · 새 탭에서 열립니다A0~A3 · 출하 시 0(4)~20mA, 점퍼 제거 시 DC 0(1)~5V
06NTC 온도 입력 2점
자세히 NTC 온도 입력 2점 · 새 탭에서 열립니다A4 · A5 별도 커넥터, NTC 10kΩ / 3950K · −40~120℃
07프로그램 업로드 단자
자세히 프로그램 업로드 단자 · 새 탭에서 열립니다MP 다운로드 케이블 전용 · mini 5P, Serial · 업로드 / 디버깅
08RS-485 통신 1채널
자세히 RS-485 통신 1채널 · 새 탭에서 열립니다Serial1 · 485+ / 485- / GND, Modbus RTU · 1:N 연결
09PWM 출력 6점
자세히 PWM 출력 6점 · 새 탭에서 열립니다D21~D23 · D26~D28, 0V / 5V 펄스 · 최대 30mA/점
11DC 12~24V 전원
자세히 DC 12~24V 전원 · 새 탭에서 열립니다P24V / N24V 전원 입력, DC 24V · 0.5A 이상 권장
- MCU
- ATmega128-AU
- 16MHz · Flash 128KB · SRAM 4KB · EEPROM 4KB
- 전원
- DC 12~24V
- 24V 0.5A 이상 권장
- 외형 / 장착
- PCB 95.8 × 100 mm
- 35 mm DIN 레일 장착
- 개발 환경
- Arduino IDE · MPINO STUDIO2
- Arduino IDE 보드: ILOGICS → MPINO-8A8R(T)-S
릴레이 출력 결선R(32)~R(39)는 무전압 릴레이 접점입니다. R(32)·R(33)은 COM1, R(34)·R(35)은 COM2, R(36)·R(37)은 COM3, R(38)·R(39)은 COM4를 공유합니다. 접점 정격은 DC 0~30V 또는 AC 0~250V, 최대 5A/점·15A/COM입니다.
아날로그 입력 방식A0~A3은 출하 시 헤더캡이 장착되어 0(4)~20mA 입력으로 설정됩니다. 해당 채널의 캡을 제거하면 DC 0(1)~5V 입력으로 사용할 수 있습니다. DC 0~10V 입력에는 저항 변경과 캡 제거가 필요하므로 주문 전에 사양을 확인해 주시기 바랍니다.
공유하는 단자I²C 사용 중에는 SCL(D18) · SDA(D19)를 별도 인터럽트 입력으로 동시에 사용할 수 없습니다. ENC/FND 커넥터의 CLK(D24) · DIO(D25)를 엔코더 입력으로 사용하면 같은 단자의 7세그먼트를 사용할 수 없습니다.
SOFTWARE / DEVELOPMENT ENVIRONMENT
소프트웨어: ARDUINO IDE
MPINO STUDIO2
MPINO STUDIO2는 ARDUINO CODE와 LADDER LOGIC을 사용할 수 있습니다.



ARDUINO IDE 호환
기존 Arduino 개발 환경과 완벽 호환
MPINO STUDIO2 제공
아두이노 코딩 + 래더 로직을 하나로
ARDUINO + LADDER LOGIC
손쉬운 제어 로직 구현으로 개발 효율 향상
개발 환경 준비
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
- 디버그 · Watchdogdebug · debugln · WDT_ENABLE · WDT
- Modbus RTU · LS Cnet · Mitsubishi MCImodbusRTU · ICnet · IMcProtocol
- 아날로그 입력 · 4~20mA 보정analogRead2 · IanalogRead · IanalogFilter · ntcRead
- PWM · 펄스 · 고속카운터PWM · FDPWM · NPWM · TCNTSETUP · TCNTOUT
Arduino IDE를 사용할 경우 ARDUINO SDK(아이로직스 필수설치파일)를 반드시 설치해야 합니다. MPINO STUDIO2만 사용할 경우에는 ARDUINO SDK를 설치하지 않아도 됩니다.
PROGRAM TO PRODUCT
MP 다운로드 케이블로 프로그램 업로드
MPINO-8A8R-S에 MP 다운로드 케이블을 연결해 주시기 바랍니다.
01 COMPUTER
프로그램을 작성하는 PC
USB-A 포트
02 MP DOWNLOAD CABLE

MP 다운로드 케이블
USB-A → mini 5P · USB-TTL 컨버터 내장
03 MPINO-8A8R-S

제품의 프로그램 업로드 단자
mini 5P
연결
MP 다운로드 케이블로 PC와 제품의 프로그램 업로드 단자를 연결해 주시기 바랍니다. 장치 관리자에 USB Serial Port(COMx)가 보이지 않으면 FTDI 드라이버를 설치해 주시기 바랍니다.
Arduino IDE 설정
Arduino IDE 사용 시, ARDUINO SDK를 설치한 뒤 보드 ILOGICS → MPINO-8A8R(T)-S, 포트 COMx, 프로그래머 AVR ISP를 선택해 주시기 바랍니다.
업로드
작성한 프로그램을 제품에 업로드해 주시기 바랍니다.
Arduino IDE를 사용하는 경우, 보드 설정과 프로그램 업로드 방법을 확인해 주시기 바랍니다.
Arduino IDE 업로드 방법보드 설정 · 프로그램 업로드 새 탭에서 열립니다MPINO STUDIO2를 사용하는 경우, STUDIO2의 프로그램 업로드 방법을 확인해 주시기 바랍니다.
MPINO STUDIO2 업로드 방법포트 선택 · 프로그램 업로드 새 탭에서 열립니다일반 mini 5P USB 케이블로는 업로드할 수 없습니다. MP 다운로드 케이블에는 USB To TTL Converter가 내장되어 있습니다.
FTDI USB 드라이버CDM2123620_Setup.exe 새 탭에서 열립니다CONNECT YOUR DISPLAY
디스플레이 연결
HMI, 캐릭터 LCD, 7세그먼트로 제어 상태를 확인할 수 있습니다.
01 / HMI
HMI
RS-485(Serial1)로 RS-485를 지원하는 HMI를 연결할 수 있습니다.
지원 프로토콜
- Modbus RTU
연결할 HMI의 RS-485 통신과 Modbus RTU 설정을 확인해 주시기 바랍니다.
HMI온라인 사용설명서 새 탭에서 열립니다PRODUCT
RS-485 · Serial1
DEVICE
HMI RS-485
- 485+485+
- 485-485-
02 / CHARACTER LCD
CHARACTER LCD
I²C 커넥터에 I²C 변환 모듈이 장착된 1602 · 2004 캐릭터 LCD를 연결할 수 있습니다.
PRODUCT
I2C
DEVICE
I²C 모듈
- SCLSCL
- SDASDA
- +5VVCC
- GNDGND
SCL · SDA에는 4.7kΩ 풀업이 내장되어 있습니다. 주소와 행 · 열 크기는 사용하는 모듈에 맞게 설정해 주시기 바랍니다.
CHARACTER LCD온라인 사용설명서 새 탭에서 열립니다03 / 7-SEGMENT LED
7세그먼트
ENC/FND의 CLK · DIO로 TM1637 기반 7세그먼트 표시기를 연결할 수 있습니다.
PRODUCT
ENC/FND
DEVICE
7세그먼트 모듈
- CLKCLK
- DIODIO
- +5VVCC
- GNDGND
ENC/FND의 CLK · DIO를 엔코더나 인터럽트 입력으로 사용하면 7세그먼트를 동시에 사용할 수 없습니다.
단자 이름으로 표시한 기능 연결도이며 커넥터의 물리적 핀 순서가 아닙니다. 표시장치는 별도로 준비해 주시기 바랍니다.
ENGINEERING DETAILS
기능별 상세내용
핀 번호, 결선도, 사용 전 확인 사항과 예제 코드를 기능별로 확인해 주시기 바랍니다.
디지털 입력접기
디지털 입력Digital Input
절연 디지털 입력 8점 · COM0 공통
I(0)~I(7) 디지털 입력 8점이 COM0을 공유합니다. NPN·PNP 방식의 스위치와 센서 신호를 포토커플러를 통해 입력받습니다.
D0~D7 입력
총 8포인트 디지털 입력 지원
COM0 공통
8포인트 단일 COM 공통 배선
포토커플러 절연
외부 노이즈로부터 제어 회로 보호
NPN / PNP 지원
다양한 센서 배선 방식 호환
입력 채널 구성
* 외부 스위치 또는 센서 연결 예시 (NPN/PNP 공통 사용)
포토커플러 절연
디지털 입력은 포토커플러로 제어 회로와 분리됩니다. I(0)~I(7)은 한 개의 COM0 단자를 공통으로 사용합니다.
예제 스케치 — 입력 읽기
// Mirror I(0)~I(7) onto R(32)~R(39)
void setup() {
for (int k = 32; k <= 39; k++) pinMode(k, OUTPUT);
}
void loop() {
for (int k = 0; k <= 7; k++) {
if (digitalRead(k) == HIGH) digitalWrite(32 + k, HIGH);
else digitalWrite(32 + k, LOW);
}
}릴레이 출력접기
릴레이 출력Relay Output
무전압 릴레이 출력 8점 · 2점/COM
R(32)~R(39)의 릴레이 접점 8점을 제공합니다. 두 출력이 하나의 COM을 공유하며 실제 단자 표기는 COM1~COM4입니다.
R(32)~R(39)
릴레이 접점 출력 8점
2점 / COM
R(32)·R(33)→COM1부터 R(38)·R(39)→COM4까지
접점 정격
AC 0~250V 또는 DC 0~30V · 최대 5A/점·15A/COM
전기적 절연
릴레이 접점과 제어 회로 분리
출력 채널 구성
* 외부 부하 연결 예시 (릴레이 접점 출력 방식)
릴레이 출력 구조
각 릴레이의 접점은 제어 회로와 전기적으로 분리됩니다. 출력 두 점이 하나의 COM을 공유하므로 부하와 공통 단자를 해당 그룹에 맞게 결선해 주시기 바랍니다.
예제 스케치 — 릴레이 출력 제어
void setup() {
pinMode(32, OUTPUT); // R(32)
}
void loop() {
digitalWrite(32, HIGH);
delay(1000);
digitalWrite(32, LOW);
delay(1000);
}아날로그 입력접기
아날로그 입력Analog Input
4채널 아날로그 입력 / 채널별 전류·전압 입력 선택
A0~A3은 상단 녹색 단자대의 아날로그 입력 4점입니다. 출하 시 각 채널의 헤더캡이 장착된 0(4)~20mA 모드이며, 해당 캡을 제거하면 DC 0(1)~5V 모드로 전환됩니다. DC 0~10V는 저항 변경이 필요한 주문 사양입니다.
A0~A3 · 4채널
10비트 분해능(0~1023) 아날로그 입력 4포인트
기본 0(4)~20mA
출하 시 헤더캡 장착 · 입력 저항 250Ω
헤더캡 제거 시 0(1)~5V
채널마다 독립적으로 전환 · 200kΩ
외부 기준전압
AREF에 연결된 REF3025 기준전압 IC · 2.5V ±0.2%
아날로그 입력 단자 구성
* 상단 녹색 단자대의 A(0) · A(1) · A(2) · A(3) · AGND 순서입니다. 각 채널에는 범위 선택용 헤더캡이 장착되어 있습니다. 입력 모드를 바꿀 때 해당 채널의 캡 상태를 확인해 주시기 바랍니다.
입력 범위 선택
| 입력 범위 | 설정 방법 | 입력 저항 |
|---|---|---|
| 0(4)~20mA | 헤더캡 장착 (출하 시 기본) | 250 Ω |
| DC 0(1)~5V | 헤더캡 제거 | 200 kΩ |
| DC 0~10V | 저항 변경 + 헤더캡 제거 (주문 시 요청) | 400 kΩ |
각 입력은 10비트(0~1023)입니다. REF3025 기준전압 IC의 2.5V ±0.2% 출력이 AREF에 연결됩니다. 이 수치는 기준전압 IC의 사양입니다.
예제 스케치 — 아날로그 입력 읽기
unsigned int ADC0;
void setup() {
Serial.begin(9600);
}
void loop() {
ADC0 = analogRead(A0); // 0~1023
ADC0 = ((unsigned long)ADC0 * (3000 - 0)) / 1023 + 0; // rescale to 0~3000
Serial.print("A0 = "); Serial.println(ADC0);
delay(500);
}온도센서 입력접기
온도센서 입력NTC Temperature
전용 커넥터의 NTC 온도 2채널
A4와 A5는 아날로그 입력 A0~A3과 분리된 NTC 온도 입력입니다. 오른쪽의 2핀 커넥터 두 개에 10kΩ·3950K NTC 센서를 각각 연결할 수 있습니다.
NTEMP1 · NTEMP2
A4(D52) / A5(D53) 온도 2채널
NTC 3950 10kΩ
25℃ 기준 10kΩ · B상수 3950K
−40~120℃
0.1℃ 분해능 (0~40℃ 기준)
전용 JST XH 커넥터
2.54mm 2핀 × 2 · 극성 없음
NTC 온도 입력 커넥터
* 흰색 JST XH 2핀 커넥터(2.54mm 피치) 2개 — 1채널당 2핀, 2채널 합계 4핀. NTC 입력은 극성이 없어 두 선을 바꿔 꽂아도 됩니다.
온도센서 사양
| 센서 | NTC 3950K · 10kΩ (25℃ 기준) |
|---|---|
| 채널 | NTEMP1 = A4 (D52) · NTEMP2 = A5 (D53) |
| 측정 범위 | −40 ~ 120 ℃ |
| 분해능 | 0.1 ℃ (0~40℃ 기준) |
| 커넥터 | 흰색 JST XH 2핀 (2.54mm) × 2 · 극성 없음 |
| 반환값 | ntcRead()는 섭씨×10 정수(253 → 25.3℃), ntcReadf()는 섭씨 실수(25.3℃) |
온도 범위는 −40~120℃입니다. 0.1℃ 분해능은 0~40℃ 구간 기준입니다.
예제 스케치 — NTC 온도 읽기
void setup() {
Serial.begin(9600);
}
void loop() {
const float tempC = ntcReadf(A4); // NTEMP1: A4, NTEMP2: A5
Serial.print("Temp = ");
Serial.print(tempC, 1);
Serial.println(" C");
delay(500);
}고속 펄스 출력접기
고속 펄스 출력PWM Output
PWM 출력 6점 · 4핀 커넥터 2개
D21~D23과 D26~D28의 PWM 출력 6점이 보드 중앙의 4핀 커넥터 두 개로 인출됩니다. 각 커넥터에는 PWM 출력 3점과 GND 1점이 있습니다. 출력 전압은 LOW 0V/HIGH 5V이며 전류는 각 점에서 최대 30mA입니다.
PWM 출력 6점
4핀 헤더 2개 · 헤더마다 출력 3점 + GND
타이머 2계통
D21~D23 = Timer3 · D26~D28 = Timer1
Duty 8비트 → 16비트
기본 0~255, 레지스터 변경 시 0~65535
DC 5V · 30mA
LOW 0V / HIGH 5V · 1점당 최대 30mA
핀별 타이머 배정
| 핀 | 타이머 채널 | 비고 |
|---|---|---|
| D21 | Timer3 A | 카운터 모드와 Timer3 공유 |
| D22 | Timer3 B | 카운터 모드와 Timer3 공유 |
| D23 | Timer3 C | 카운터 모드와 Timer3 공유 |
| D26 | Timer1 A | — |
| D27 | Timer1 B | — |
| D28 | Timer1 C | — |
출력은 LOW DC 0V / HIGH DC 5V이며 최대 출력 전류는 30mA입니다. Duty는 analogWrite(핀, 값)으로 0~255 범위이며, 16비트로 확장하려면 setup()에서 TCCR3A=0xAA; TCCR3B=0x1A; ICR3=65535;(D21~D23)를 설정합니다.
펄스 출력 헤더와 Duty
* 보드 중앙의 4핀 헤더 2개이며, 두 헤더를 함께 덮는 하나의 PWM 실크 아래에 있습니다. 왼쪽 헤더는 21 · 22 · 23 · GND, 오른쪽 헤더는 26 · 27 · 28 · GND 순서이고 헤더마다 GND 핀이 하나씩 포함되어 있습니다. 보드에 인쇄된 번호가 프로그램에서 쓰는 핀 번호입니다. 두 헤더는 서로 다른 타이머로 구동됩니다.
사용 전 확인
- D21 · D22 · D23은 Timer3으로 동작하며, 하드웨어 고속 카운터와 같은 자원을 사용합니다. 카운터 모드가 동작하는 동안에는 이 3점으로 PWM을 출력할 수 없으므로 D26 · D27 · D28을 사용해 주시기 바랍니다.
- analogWrite()는 이 6점에서만 동작하며, 다른 핀에서는 효과가 없습니다.
- Timer1 · Timer3 레지스터를 직접 변경하면 해당 타이머가 담당하는 PWM 핀 전체에 영향을 줍니다.
- 1점당 공급 전류는 최대 30mA입니다. 이를 넘는 부하는 트랜지스터 출력 · 릴레이 출력이나 외부 드라이버를 통해 구동해 주시기 바랍니다.
예제 스케치 — PWM 출력
void setup() {
// PWM is available on D21~D23 and D26~D28 only
}
void loop() {
if (digitalRead(0) == HIGH) analogWrite(21, 127); // 50% duty
else analogWrite(21, 0);
}인터럽트접기
인터럽트Interrupt
외부 인터럽트 입력 4점 · 펄스 및 엔코더 신호
CLK(D24) · DIO(D25) · SCL(D18) · SDA(D19) 4점이 인터럽트 입력이며, SCL · SDA에는 4.7kΩ, CLK · DIO에는 10kΩ 풀업이 내장되어 있습니다. attachInterrupt()로 엣지를 검출하므로 고속 펄스의 개수를 세거나 로터리 엔코더의 회전량과 방향을 읽을 수 있고, 입력 가능 주파수는 최소 50kHz입니다. 고속 카운터는 Timer3을 카운터 모드로 동작시키는 하드웨어 방식도 제공합니다.
인터럽트 입력 4점
CLK(D24) · DIO(D25) · SCL(D18) · SDA(D19)
고속 펄스 카운트
ISR 방식 또는 Timer3 카운터 모드 · 최소 50kHz
엔코더 입력
오픈 컬렉터는 SCL · SDA, 토템폴은 CLK · DIO
풀업 저항 내장
SCL · SDA 4.7kΩ, CLK · DIO 10kΩ · DC 0~5V · HIGH 3V 이상
인터럽트 핀 배정
| 핀 | INT | 내장 저항 · 공유 기능 |
|---|---|---|
| D18 | INT0 | 4.7kΩ 풀업 · I²C SCL |
| D19 | INT1 | 4.7kΩ 풀업 · I²C SDA |
| D24 | INT6 | 10kΩ 풀업 · CLK · FND / 엔코더 |
| D25 | INT7 | 10kΩ 풀업 · DIO · FND / 엔코더 |
입력은 DC 0~5V이며 HIGH는 3V 이상에서 인식하며 입력 가능 주파수는 최소 50kHz입니다. 인터럽트를 사용하면 해당 핀을 공유하는 기능(I²C · FND)을 함께 사용할 수 없습니다. 고속 카운트는 두 가지 방식이 있는데, attachInterrupt()로 ISR에서 변수를 더하는 방식과 Timer3을 카운터 모드로 두고 CLK 입력을 하드웨어로 세는 방식입니다. 후자는 펄스 출력 D21~D23과 같은 자원을 쓰므로 함께 사용할 수 없습니다. ISR에서 실제로 처리 가능한 주파수는 루틴의 길이와 프로그램 전체 부하에 따라 달라지므로 고정값으로 보장되지 않습니다.
인터럽트로 할 수 있는 일
* 왼쪽은 펄스 소스의 출력을 CLK 단자에, GND를 GND 단자에 연결하고 상승엣지마다 인터럽트 서비스 루틴에서 1씩 더하는 구성입니다. 오른쪽은 엔코더의 두 상이 90° 어긋나 있어, CLK 상승엣지 시점의 DIO 레벨이 곧 회전 방향이 됩니다.
인터럽트 커넥터
* 보드 좌측의 4핀 커넥터 2개이며, 실크 인쇄 순서 그대로 그렸습니다. CLK는 D24(INT6), DIO는 D25(INT7), SCL은 D18(INT0), SDA는 D19(INT1)입니다. FND(7세그먼트) 액세서리와 I²C가 같은 핀을 쓰므로, 해당 핀을 인터럽트로 사용하면 함께 사용할 수 없습니다.
사용 전 확인
- 인터럽트 입력에는 DC 0~5V만 인가할 수 있습니다. 24V 신호를 직접 연결하면 MCU가 손상됩니다.
- 인터럽트 입력은 이 4점뿐입니다. D30 · D31은 RS-485 포트 전용이므로 인터럽트나 범용 입출력으로 사용해서는 안 됩니다.
- 엔코더는 출력 방식에 따라 연결 단자가 다릅니다. 오픈 컬렉터는 SCL(D18) · SDA(D19)에, 토템폴 · 푸시풀은 CLK(D24) · DIO(D25)에 연결합니다.
- D24 · D25를 인터럽트로 사용하면 같은 커넥터의 FND(7세그먼트) 액세서리는 함께 사용할 수 없습니다.
- D18 · D19를 인터럽트로 사용하면 I²C를 함께 사용할 수 없습니다.
- Timer3 카운터 모드 카운트는 펄스 출력 D21~D23과 자원을 공유하므로 함께 사용할 수 없습니다. PWM은 D26~D28로 옮겨주시기 바랍니다.
- ISR 안에서는 카운트 증가만 하고 Serial · delay() · 부동소수점 연산은 호출해서는 안 됩니다.
- CLK · DIO의 내장 저항 구성을 바꾸려면 SMD 납땜 작업이 필요합니다. 직접 개조해서는 안 됩니다. 변경이 필요하면 아이로직스에 문의해 주시기 바랍니다.
예제 스케치 — 펄스 카운트 (인터럽트)
unsigned int count = 0;
void setup() {
Serial.begin(9600);
attachInterrupt(digitalPinToInterrupt(CLK), countFunc, RISING);
}
void loop() {
Serial.println(count);
}
void countFunc() { count++; }예제 스케치 — 로터리 엔코더
volatile long encoderValue = 0;
void setup() {
Serial.begin(115200);
attachInterrupt(digitalPinToInterrupt(CLK), updateEncoder, RISING);
}
void loop() {
Serial.print("Encoder: ");
Serial.println(encoderValue);
delay(500);
}
void updateEncoder() {
if (digitalRead(DIO)) { encoderValue++; }
else { encoderValue--; }
}예제 스케치 — Timer3 카운터 모드 카운트
unsigned int HCNT3;
void setup() {
TIMSK = 0x00;
TCCR3A = 0x00;
TCCR3B = 0x07;
TCNT3 = 0x00;
}
void loop() {
HCNT3 = TCNT3;
}
void hcntReset() {
TCNT3 = 0;
}통신 포트 (RS-485 · I²C · 프로그램 업로드)접기
통신RS-485 · I²C
RS-485(Serial1) · I²C · 프로그램 업로드
RS-485는 Serial1으로 연결되며, 485+·485− 단자를 통한 1:N 통신과 Modbus RTU 마스터·슬레이브를 지원합니다. I²C는 SCL·SDA에 4.7kΩ 풀업을 내장하고 있습니다. 프로그램 업로드와 디버깅에는 전용 MP 다운로드 케이블을 사용합니다.
RS-485 · 1채널
Serial1 · 485+ / 485− 단자로 1:N 멀티드롭
Modbus RTU
마스터 · 슬레이브 모두 사용 가능
I²C · 1채널
4.7kΩ 풀업 내장 · 1:N · RTC · 캐릭터 LCD
USB 시리얼
USB 포트로 업로드와 디버깅
I²C · USB 커넥터
* I²C 커넥터는 실크 I2C이며 1번 핀 쪽부터 SCL · SDA · +5V · GND 순서입니다. 인터럽트 · 엔코더 입력도 겸합니다. 프로그램 업로드 포트는 보드 우측의 mini USB-B 커넥터입니다.
RS-485 연결
* 보드 오른쪽 RS-485 4극 단자대는 위에서부터 485+ · 485− · GND · +5V 순서입니다. 상대 기기의 단자 이름과 통신 설정을 확인해 주시기 바랍니다. RS-232나 UART를 연결할 때는 별도 변환 모듈이 필요합니다.
통신 포트
| 포트 | 핀 | 용도 |
|---|---|---|
| Serial | D16 · D17 | USB 포트를 통한 프로그램 업로드 · 디버깅 |
| Serial1 | D30(RX1) · D31(TX1) | 485+ / 485− 단자의 RS-485 · 1:N |
| Wire (I²C) | SCL = D18 · SDA = D19 | 4핀 커넥터 · 4.7kΩ 풀업 내장 |
RS-485는 Serial1으로 사용하며, ±15kV HBM ESD 보호를 갖춘 MAX485 트랜시버로 1:N 멀티드롭 통신을 지원합니다. Modbus RTU는 마스터 · 슬레이브 모두 사용할 수 있습니다. I²C도 1:N 접속을 지원하며 DS3231 RTC, 1602 · 2004 캐릭터 LCD 같은 액세서리를 연결할 수 있습니다. 이 제품에는 Serial2 · Serial3이 없습니다.
사용 전 확인
- D30 · D31은 Serial1(RS-485) 전용입니다. 인터럽트나 범용 입출력으로 전용하지 마십시오.
- RS-485 단자대의 +5V 극은 1A 이하의 전원 출력이며, 보드에 5V를 공급하는 입력으로도 사용할 수 있습니다. 여기에 슈퍼 캐패시터를 연결하면 정전 시에도 내부 5V가 유지됩니다(자세한 방법은 아래 「전원 · 정전유지」 참조).
- D18 · D19를 외부 인터럽트로 사용하면 I²C 통신을 동시에 사용할 수 없습니다.
- 업로드에는 USB-TTL 컨버터가 내장된 MP 다운로드 케이블이 필요합니다. 시중의 mini 5P 케이블로는 업로드되지 않습니다.
- RS-232나 UART로 변환하려면 현장에서 트랜시버를 교체하지 마시고 별도 판매하는 컨버터 모듈을 사용해 주시기 바랍니다.
- 이 제품에는 Serial2 · Serial3이 없습니다. Serial과 Serial1만 사용할 수 있습니다.
예제 스케치 — 시리얼 송수신
void setup() {
Serial.begin(9600);
Serial1.begin(9600); // RS-485 - Modbus RTU starts the same way
}
void loop() {
if (Serial1.available()) {
int b = Serial1.read();
Serial.write(b); // RS-485 -> download port
}
if (Serial.available()) {
int b = Serial.read();
Serial1.write(b);
}
}확장 커넥터접기
확장 커넥터EXPANSION CONNECTORS
I²C · PWM · ENC/FND용 4핀 확장 커넥터 4개
MPINO-8A8R-S에는 I²C 1개, PWM 2개, ENC/FND 1개 등 4핀 확장 커넥터가 네 개 있습니다. 연결 케이블은 구성에 포함되지 않으므로 필요한 케이블을 추가 옵션에서 선택해 주시기 바랍니다.
4핀 — 5267-04
I²C · PWM · 펄스(엔코더) 입력 · 7세그먼트(FND)
보드에 4개
PWM 2개 · I²C 1개 · ENC/FND 1개 — 모두 같은 4핀 커넥터입니다
짝 커넥터 5264-04
케이블 쪽은 5264-04 하우징을 씁니다
케이블은 별도
보드에는 케이블이 포함되어 있지 않습니다
커넥터 연결도
기능별 커넥터
| 기능 | 보드 쪽 커넥터 |
|---|---|
| I²C 통신 | Molex 5267-04 (4핀) |
| PWM 출력 | Molex 5267-04 (4핀) |
| 펄스(엔코더) 입력 | Molex 5267-04 (4핀) |
| 7세그먼트(FND) 연결 | Molex 5267-04 (4핀) |
전원 · 정전유지접기
전원 · 정전유지Power · Backup
DC 12~24V 입력 · 내부 5V 전원 · 정전유지
DC 12~24V를 입력받아 내부 회로에 필요한 5V로 변환합니다. DC 24V·0.5A 이상의 전원 공급을 권장합니다.
DC 12V ~ 24V
전원 용량은 24V 0.5A 이상
내부 5V 변환
LM2576 + TPS5430 DC-DC 변환
+5V 출력 1A
RS-485 단자대의 +5V 단자에서 공급
슈퍼 캐패시터 정전유지
+5V 단자에 연결 시 약 10초 유지
전원 배선 전 확인
- EEPROM은 같은 섹션 기준 약 100,000회 쓰기 수명이 있습니다. 빠르게 변하는 값은 RAM에 두고, 정전이 감지될 때만 저장해 주시기 바랍니다(아래 두 가지 방법 참조).
- USB 전원은 개발·시험용입니다. 현장 설치 시에는 외부 전원을 공급해 주시기 바랍니다.
전원이 흐르는 경로
* 두 전원 중 어느 쪽으로도 동작합니다. 외부 전원은 레귤레이터를 거치고, 다운로드 포트의 5V는 곧바로 들어옵니다. 슈퍼 캐패시터는 같은 5V 노드에 붙어, 두 전원이 모두 없어졌을 때 그 노드를 유지합니다.
전원 · 정전유지 사양
| 입력 전압 | DC 12V ~ 24V |
|---|---|
| 권장 전원 용량 | 24V 0.5A 이상 |
| 내부 변환 | LM2576 + TPS5430 DC-DC로 5V |
| +5V 출력 | RS-485 단자대의 +5V 단자에서 최대 1A |
| USB 전원 동작 | 다운로드 포트로 컴퓨터의 5V를 받아 동작 |
| 비휘발 메모리 | EEPROM 4 KB · 쓰기 약 100,000회 |
| 정전 시 유지 시간 | +5V 단자의 슈퍼 캐패시터로 약 10초 |
| 유지 가능한 정전 횟수 | 정전 시에만 기록하므로 100,000회 이상 |
DC 24V·0.5A 이상을 권장합니다. +5V 단자로 외부 기기에 전원을 공급한다면 그 부하 전류도 고려해 전원 용량을 선정해 주시기 바랍니다.
정전 시 데이터를 유지하는 두 가지 방법
값이 얼마나 자주 바뀌는지에 따라 방법이 달라집니다. 두 가지는 함께 씁니다.
EEPROM — 가끔 바뀌는 값
내장 EEPROM은 전원이 꺼져도 4 KB의 데이터를 유지하며 바이트 단위로 쓰고 지울 수 있습니다. 다만 같은 영역 기준 쓰기 수명이 약 100,000회이므로, 설정값·캘리브레이션 데이터·설비 파라미터처럼 가끔 바뀌는 값에 적합하고 루프마다 갱신되는 값에는 적합하지 않습니다.
슈퍼 캐패시터 — 상시 변하는 값
+5V 단자에 슈퍼 캐패시터를 연결하면 메인 전원이 차단된 뒤에도 내부 5V가 약 10초간 유지됩니다. 메인 전원을 디지털 입력에 연결해 두고, digitalRead()로 그 입력이 OFF되는 순간 값을 EEPROM에 기록한 뒤 정전해지시 setup()에서 EEPROM에 저장한 값을 다시 읽어서 메모리에 기록하면 됩니다. EEPROM에 기록이 정전 순간에만 일어나므로, 100,000회 이상의 정전을 견딜 수 있습니다.
MPINO STUDIO2 — 옵션으로 간단히
MPINO STUDIO2에서는 슈퍼 캐패시터를 이용한 정전유지를 옵션으로 제공하므로, 위 절차를 직접 코딩하지 않고 설정만으로 구현할 수 있습니다.
FIT YOUR PANEL
치수
단위: mm
설치 치수 요약
| PCB 외형 | 95.8 × 100.0 mm (높이는 치수 합산) |
|---|---|
| PCB 장착홀 | Ø3.5 mm |
| 가로 홀 중심 간격 | 79.0 mm |
| 좌우 가장자리에서 홀 중심 | 각 8.4 mm |
| 상단 클립 폭 | 10.0 mm |
| 상단 클립 홀 | Ø4.0 mm |
| 하단 클립 홀 | Ø4.0 mm |
| 상단 클립 돌출 | 7.0 mm · 윗끝~홀 중심 5.0 · 홀 중심~PCB 윗변 2.0 mm |
| 하단 클립 돌출 (열림) | 12.4 mm · PCB 아랫변~홀 중심 7.4 · 홀 중심~끝 5.0 mm |
| 하단 클립 돌출 (닫힘) | 7.2 mm · PCB 아랫변~홀 중심 2.2 · 홀 중심~끝 5.0 mm |
| 클립 홀 세로 중심 간격 (열림) | 109.4 mm |
| 클립 홀 세로 중심 간격 (닫힘) | 104.2 mm |
| 전체 높이 (클립 열림) | 119.4 mm |
| 전체 높이 (클립 닫힘) | 114.2 mm |
| DIN 레일 폭 | 35 mm |
설치 전 확인
- 실내 전용입니다. 비 · 황사 · 서리 · 결로가 있는 환경에는 설치해서는 안 됩니다.
- 인화성 · 폭발성 가스가 있는 환경에는 설치해서는 안 됩니다.
- 인명이나 재산에 영향이 큰 설비(원자력 · 의료 · 선박 · 차량 · 항공 등)에 사용할 때는 반드시 2중 안전장치를 부착해야 합니다.
READY TO START
개발 자료 안내
세부 결선과 사용 방법은 MPINO-8A8R-S 온라인 사용설명서에서 확인해 주시기 바랍니다.
자주 묻는 질문
MPINO-8A8R-S의 입출력 구성은 어떻게 되나요?▾
MPINO-8A8R-S는 절연 디지털 입력 8점, 릴레이 출력 8점, 아날로그 입력 4점, NTC 온도 입력 2점과 PWM 출력 6점을 제공합니다. RS-485와 I²C 통신을 사용할 수 있습니다.
MPINO-8A8R-S는 Modbus RTU를 지원하나요?▾
네. MPINO-8A8R-S는 Serial1의 RS-485 통신으로 Modbus RTU 마스터와 슬레이브를 지원합니다.


