사용자 도구

사이트 도구


products:mpino_16a8r

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판이전 판
다음 판
이전 판
products:mpino_16a8r [2026/09/07 18:23] – 바깥 편집 127.0.0.1products:mpino_16a8r [2026/11/01 21:38] (현재) – 바깥 편집 127.0.0.1
줄 4: 줄 4:
  
 Arduino IDE(Arduino C/C++) 또는 MPINO STUDIO 2(Arduino C/C++ & 래더로직)로 프로그램할 수 있습니다. Arduino IDE(Arduino C/C++) 또는 MPINO STUDIO 2(Arduino C/C++ & 래더로직)로 프로그램할 수 있습니다.
 +
 +[[:products:mpino_series#mpino_series_사양표|MPINO Series 사양표]]에서 MPINO-16A8R의 보드 이름, 연결 방법과 첫 입출력 번호를 확인할 수 있습니다.
 +
 +
 +
  
 {{ :products:mpino-16a8r-connectors.svg?nolink |MPINO-16A8R 커넥터 안내 }} {{ :products:mpino-16a8r-connectors.svg?nolink |MPINO-16A8R 커넥터 안내 }}
줄 10: 줄 15:
  
 ^  구분  ^  개수  ^  접점명  ^  사양  ^ ^  구분  ^  개수  ^  접점명  ^  사양  ^
-|  전원  |  -  |  전원전압  | DC 9~12V (DC 12V 사용 시 1A 이상)  |+|  전원  |  -  |  전원전압  | DC 9~12V (DC 12V 사용 시 1A 이상) \\ +5V 단자 출력 최대 100mA  |
 |  디지털 입력  |  16점 \\ (무접점·절연)  |  I(22)~I(37)  | 동작 입력 전압: DC 0~40V \\ HIGH 인식 전압: DC 5V 이상 \\ 입력저항: 2.2kΩ \\ 8점/1COM × 2그룹  | |  디지털 입력  |  16점 \\ (무접점·절연)  |  I(22)~I(37)  | 동작 입력 전압: DC 0~40V \\ HIGH 인식 전압: DC 5V 이상 \\ 입력저항: 2.2kΩ \\ 8점/1COM × 2그룹  |
 |  릴레이 출력  |  8점 \\ (유접점·절연)  |  R(39)~R(46)  | 동작 연결 전압: DC 0~30V 또는 AC 0~250V \\ 최대 출력 허용 전류: 5A/1점, 15A/1COM \\ 4점/1COM × 2그룹  | |  릴레이 출력  |  8점 \\ (유접점·절연)  |  R(39)~R(46)  | 동작 연결 전압: DC 0~30V 또는 AC 0~250V \\ 최대 출력 허용 전류: 5A/1점, 15A/1COM \\ 4점/1COM × 2그룹  |
 |  아날로그 입력  |  4점 \\ (비절연)  |  A(0)~A(3)  | 기본 입력: DC 0~5V, 10bit (0~1023) \\ 선택 사양: DC 0~10V, 0(4)~20mA, NTC 10kΩ(25℃) \\ 입력저항: 100MΩ(0~5V), 200MΩ(0~10V), 250Ω(0(4)~20mA)  | |  아날로그 입력  |  4점 \\ (비절연)  |  A(0)~A(3)  | 기본 입력: DC 0~5V, 10bit (0~1023) \\ 선택 사양: DC 0~10V, 0(4)~20mA, NTC 10kΩ(25℃) \\ 입력저항: 100MΩ(0~5V), 200MΩ(0~10V), 250Ω(0(4)~20mA)  |
-|  인터럽트 \\ 엔코더  |  1채널 \\ (비절연)  |  SDA(20) \\ SCL(21)  | 입력 전압: DC 0~5V \\ 4.7kΩ 풀업 저항 내장 \\ 엔코더 사용 시 I²C 동시 사용 불가  |+|  인터럽트 \\ 엔코더  |  1채널 \\ (비절연)  |  SDA(20) \\ SCL(21)  | 입력 전압: DC 0~5V \\ 입력 주파수: 최소 50kHz 이상 \\ 4.7kΩ 풀업 저항 내장 \\ 엔코더 사용 시 I²C 동시 사용 불가  |
 |  통신 채널  |  1채널 \\ (비절연)  |  I²C  | I²C 마스터·슬레이브 지원 \\ SDA(20), SCL(21) 사용  | |  통신 채널  |  1채널 \\ (비절연)  |  I²C  | I²C 마스터·슬레이브 지원 \\ SDA(20), SCL(21) 사용  |
 | ::: | ::: |  RS-232  | ''Serial1'' 사용 \\ Modbus RTU Master & Slave 내장 명령어 지원 \\ LS산전 Cnet 내장 명령어 지원  | | ::: | ::: |  RS-232  | ''Serial1'' 사용 \\ Modbus RTU Master & Slave 내장 명령어 지원 \\ LS산전 Cnet 내장 명령어 지원  |
줄 22: 줄 27:
 | ::: | ::: |  SRAM  | 4KB  | | ::: | ::: |  SRAM  | 4KB  |
 | ::: | ::: |  EEPROM  | 4KB  | | ::: | ::: |  EEPROM  | 4KB  |
 +
 +**Markdown 자료:** [[https://www.ilogics.net/docs/downloads:mpino:ko:mpino_16a8r?do=export_raw|MPINO-16A8R.md 다운로드]]
  
  
 ===== 디지털 입력 ===== ===== 디지털 입력 =====
  
 +[[:guide:wiring#디지털_입력_한_채널_확인|처음 결선할 때는 디지털 입력 한 채널 확인 절차를 참고해주시기 바랍니다. →]]
 ^ 그룹 ^ 단자 ^ Arduino 핀 ^ 입력 구성 ^ 단자대 및 결선 예시 ^ ^ 그룹 ^ 단자 ^ Arduino 핀 ^ 입력 구성 ^ 단자대 및 결선 예시 ^
 | COM0 | I(22)~I(29) | D22~D29 | 디지털 입력 8점, COM0 공유 |  {{:products:mpino-16a8r-digital-input.svg?727|MPINO-16A8R 디지털 입력 단자대와 NPN·PNP 결선}}  | | COM0 | I(22)~I(29) | D22~D29 | 디지털 입력 8점, COM0 공유 |  {{:products:mpino-16a8r-digital-input.svg?727|MPINO-16A8R 디지털 입력 단자대와 NPN·PNP 결선}}  |
줄 148: 줄 156:
 </code> </code>
  
 +
 +===== STATUS LED =====
 +
 +MPINO-16A8R의 STATUS LED는 보드에 실장된 상태 표시등입니다. 사용자 프로그램에서 보드의 동작 상태를 표시할 때 사용할 수 있습니다.
 +
 +STATUS LED는 디지털 핀 D13에 연결되어 있습니다. 스케치에서는 D13 대신 ''LED_BUILTIN''을 사용할 수 있습니다. ''pinMode(LED_BUILTIN, OUTPUT)''으로 출력 모드를 설정해야 합니다. ''digitalWrite(LED_BUILTIN, HIGH)''이면 LED가 켜지고, ''digitalWrite(LED_BUILTIN, LOW)''이면 꺼집니다.
 +
 +**주의사항:** STATUS LED는 보드 내장 표시등이며 외부 출력 단자와 다릅니다.
 +
 +==== 예제 · STATUS LED 점멸 ====
 +
 +다음 예제는 STATUS LED를 0.5초 간격으로 켜고 끕니다.
 +
 +<code cpp>
 +void setup() {
 +  pinMode(LED_BUILTIN, OUTPUT);
 +}
 +
 +void loop() {
 +  digitalWrite(LED_BUILTIN, HIGH);  // LED 켜기
 +  delay(500);
 +  digitalWrite(LED_BUILTIN, LOW);   // LED 끄기
 +  delay(500);
 +}
 +</code>
  
 ===== 릴레이 출력 ===== ===== 릴레이 출력 =====
  
 +[[:guide:wiring#릴레이_출력_한_채널_확인|처음 결선할 때는 릴레이 출력 한 채널 확인 절차를 참고해주시기 바랍니다. →]]
 ^ 그룹 ^ 단자 ^ Arduino 핀 ^ 접점 정격 ^ 단자대 및 결선 예시 ^ ^ 그룹 ^ 단자 ^ Arduino 핀 ^ 접점 정격 ^ 단자대 및 결선 예시 ^
 | COM2 | R(39)~R(42) | D39~D42 | AC 250V 또는 DC 30V, 최대 5A/1점·15A/COM |  {{:products:mpino-16a8r-relay-output.svg?850|MPINO-16A8R 릴레이 출력 단자대와 부하 결선}}  | | COM2 | R(39)~R(42) | D39~D42 | AC 250V 또는 DC 30V, 최대 5A/1점·15A/COM |  {{:products:mpino-16a8r-relay-output.svg?850|MPINO-16A8R 릴레이 출력 단자대와 부하 결선}}  |
줄 179: 줄 213:
 | A(0)~A(3) | DC 0~5V | DC 0~10V \\ 0(4)~20mA \\ NTC 10kΩ(25℃) | 10bit (0~1023) |  {{:products:mpino-16a8r-analog-input.svg?439|MPINO-16A8R 아날로그 입력 커넥터 핀 배열}}  | | A(0)~A(3) | DC 0~5V | DC 0~10V \\ 0(4)~20mA \\ NTC 10kΩ(25℃) | 10bit (0~1023) |  {{:products:mpino-16a8r-analog-input.svg?439|MPINO-16A8R 아날로그 입력 커넥터 핀 배열}}  |
  
-아날로그 입력 범위는 제품의 저항 구성을 변경하여 선택합니다.+아날로그 입력 범위는 구매 시 채널별 옵션(DC 0~10V, 0(4)~20mA, NTC 10kΩ)으로 선택합니다.
  
 ==== 예제 프로그램 · 아날로그 입력 ==== ==== 예제 프로그램 · 아날로그 입력 ====
줄 392: 줄 426:
 ==== 예제 프로그램 · 엔코더 입력 ==== ==== 예제 프로그램 · 엔코더 입력 ====
  
-A상은 SDA(D20), B상은 SCL(D21)에 연결합니다. 4.7kΩ 풀업 (SDA/SCL)이며 FALLING 에지에서 B상이 LOW이면 증가하는 1배 계수 예제입니다. 실제 회전 방향은 A·B상 결선에 따라 달라집니다. SDA·SCL을 사용하므로 I²C 통신과 동시에 실행하지 않습니다.+A상은 SDA(D20), B상은 SCL(D21)에 연결해주시기 바랍니다. 4.7kΩ 풀업 (SDA/SCL)이며 FALLING 에지에서 B상이 LOW이면 증가하는 1배 계수 예제입니다. 실제 회전 방향은 A·B상 결선에 따라 달라집니다. SDA·SCL을 사용하므로 I²C 통신과 동시에 실행하지 않습니다.
  
 <code cpp> <code cpp>
줄 432: 줄 466:
  
 ^ 기능 ^ Arduino 핀 ^ 사용 객체 ^ 상대 기기 결선 ^ ^ 기능 ^ Arduino 핀 ^ 사용 객체 ^ 상대 기기 결선 ^
-| USB 다운로드·모니터링 | D0(RX0), D1(TX0) | ''Serial'' |  {{:products:mpino-16a8r-communication.svg?780|MPINO-16A8R 통신 커넥터와 상대 기기 결선}}  |+| USB 다운로드·모니터링 \\ USB-B · CP2102 내장, USB A to B 케이블 | D0(RX0), D1(TX0) | ''Serial'' |  {{:products:mpino-16a8r-communication.svg?780|MPINO-16A8R 통신 커넥터와 상대 기기 결선}}  |
 | RS-232 | D19(RX1), D18(TX1) | ''Serial1'' | ::: | | RS-232 | D19(RX1), D18(TX1) | ''Serial1'' | ::: |
 | RS-485 | D17(RX2), D16(TX2) | ''Serial2'' | ::: | | RS-485 | D17(RX2), D16(TX2) | ''Serial2'' | ::: |
줄 445: 줄 479:
  
 <code cpp> <code cpp>
-// MP 다운로드 케이블의 Serial 모니터 ↔ RS-232 Serial1+// USB 케이블의 Serial 모니터 ↔ RS-232 Serial1
 void setup() { void setup() {
   Serial.begin(115200);   Serial.begin(115200);
줄 463: 줄 497:
  
 ==== 예제 프로그램 · I²C 통신 ==== ==== 예제 프로그램 · I²C 통신 ====
 +
 +I²C 단자에 I²C 변환 모듈이 장착된 1602 · 2004 캐릭터 LCD를 연결할 수 있습니다. +5V · GND는 POWER 단자에서 연결하며, +5V 출력은 최대 100mA입니다.
  
 Wire로 주소 0x08~0x77을 검색하고 응답한 주소를 3초마다 표시합니다. SDA·SCL을 사용하는 엔코더/인터럽트 예제와 동시에 실행하지 않습니다. Wire로 주소 0x08~0x77을 검색하고 응답한 주소를 3초마다 표시합니다. SDA·SCL을 사용하는 엔코더/인터럽트 예제와 동시에 실행하지 않습니다.
줄 511: 줄 547:
 D22 상태를 M[0], A0 원시값(0~1023)을 D[0]에 넣어 상대 기기에서 읽습니다. RS-232(Serial1), 국번 1, 9600bps, 8N1로 설정하고, M[0]은 FC01·시작 주소 0·1비트, D[0]은 FC03·시작 주소 0·1워드로 읽습니다. 주소는 실제 전송 주소(0부터) 기준입니다. 통신 함수는 loop()마다 호출하며 출력은 제어하지 않습니다. D22 상태를 M[0], A0 원시값(0~1023)을 D[0]에 넣어 상대 기기에서 읽습니다. RS-232(Serial1), 국번 1, 9600bps, 8N1로 설정하고, M[0]은 FC01·시작 주소 0·1비트, D[0]은 FC03·시작 주소 0·1워드로 읽습니다. 주소는 실제 전송 주소(0부터) 기준입니다. 통신 함수는 loop()마다 호출하며 출력은 제어하지 않습니다.
  
-M과 D는 코어가 제공하는 공유 전역 메모리입니다. 이 스케치는 단독 실행하며, 다른 프로토콜과 함께 사용할 때는 메모리를 중복 할당하지 않습니다. RS-485 단자에 연결할 때는 Serial1을 Serial2로 바꾸며, UART 단자는 Serial3를 사용합니다.+M과 D는 코어가 제공하는 공유 전역 메모리입니다. 이 스케치는 단독 실행하며, 다른 프로토콜과 함께 사용할 때는 메모리를 중복 할당하지 않아야 합니다. RS-485 단자에 연결할 때는 Serial1을 Serial2로 바꿔야 합니다. UART 단자는 Serial3를 사용합니다.
  
 <code cpp> <code cpp>
줄 551: 줄 587:
 </code> </code>
  
-RS-232(Serial1)로 상대 슬레이브의 홀딩 레지스터 1개를 1초마다 읽습니다. 상대 기기는 국번 1, 9600bps, 8N1, FC03·실제 시작 주소 0으로 준비합니다. 응답은 received[0]에 저장하며 성공한 경우에만 표시합니다. 오류 코드는 16진수로 표시합니다. 위 슬레이브 예제와는 별도 스케치이며, M/D 메모리 대신 수신 배열을 사용합니다. RS-485 단자에 연결할 때는 Serial1을 Serial2로 바꾸며, UART 단자는 Serial3를 사용합니다.+RS-232(Serial1)로 상대 슬레이브의 홀딩 레지스터 1개를 1초마다 읽습니다. 상대 기기는 국번 1, 9600bps, 8N1, FC03·실제 시작 주소 0으로 준비합니다. 응답은 received[0]에 저장하며 성공한 경우에만 표시합니다. 오류 코드는 16진수로 표시합니다. 위 슬레이브 예제와는 별도 스케치이며, M/D 메모리 대신 수신 배열을 사용합니다. RS-485 단자에 연결할 때는 Serial1을 Serial2로 바꿔야 합니다. UART 단자는 Serial3를 사용합니다.
  
 <code cpp> <code cpp>
줄 582: 줄 618:
 **관련 내장 명령어** **관련 내장 명령어**
  
-=== 함수 예제 · LS산전 Cnet SLave: ICnetMem(), ICnetAdr(), ICnetInit(), ICnet() ===+=== 함수 예제 · LS산전 Cnet Slave: ICnetMem(), ICnetAdr(), ICnetInit(), ICnet() ===
  
 **함수 원형** **함수 원형**
줄 593: 줄 629:
 </code> </code>
  
-D22 상태를 M[0], A0 원시값(0~1023)을 D[0]에 넣어 HMI에서 읽습니다. 상대 기기는 LS산전 Cnet, RS-232, 국번 1, 9600bps, 8N1로 설정합니다. 비트는 %MX00000(M[0]), 워드는 %DW0(D[0])을 읽습니다. 통신 함수는 loop()마다 호출하며 출력은 제어하지 않습니다.+D22 상태를 M[0], A0 원시값(0~1023)을 D[0]에 넣어 HMI에서 읽습니다. 상대 기기는 LS산전 Cnet, RS-232, 국번 1, 9600bps, 8N1로 설정해주시기 바랍니다. 비트는 %MX00000(M[0]), 워드는 %DW0(D[0])을 읽습니다. 통신 함수는 loop()마다 호출하며 출력은 제어하지 않습니다.
  
-M·D·R은 코어가 제공하는 공유 전역 메모리이며, 이 예제는 R을 사용하지 않습니다. Modbus 예제와는 단독 실행하며, 다른 프로토콜과 함께 사용할 때는 메모리를 중복 할당하지 않습니다. RS-485 단자에 연결할 때는 Serial1을 Serial2로 바꾸며, UART 단자는 Serial3를 사용합니다.+M·D·R은 코어가 제공하는 공유 전역 메모리이며, 이 예제는 R을 사용하지 않습니다. Modbus 예제와는 단독 실행하며, 다른 프로토콜과 함께 사용할 때는 메모리를 중복 할당하지 않아야 합니다. RS-485 단자에 연결할 때는 Serial1을 Serial2로 바꿔야 합니다. UART 단자는 Serial3를 사용합니다.
  
 <code cpp> <code cpp>
줄 626: 줄 662:
 </code> </code>
  
-[[products:mpino_series|← MPINO Series 비교표로 돌아가기]]+[[https://www.ilogics.net/ko-kr/products/mpino-16a8r|MPINO-16A8R 가격 및 구매하기]]
  
 +[[products:mpino_series|← MPINO Series 비교표로 돌아가기]]
  
products/mpino_16a8r.1788773001.txt.gz · 마지막으로 수정됨: 저자 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki