사용자 도구

사이트 도구


products:mp_studio:user_protocol

차이

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

차이 보기로 링크

양쪽 이전 판이전 판
products:mp_studio:user_protocol [2026/11/10 19:26] – 바깥 편집 127.0.0.1products:mp_studio:user_protocol [2026/11/12 20:37] (현재) – 바깥 편집 127.0.0.1
줄 134: 줄 134:
 ^ 키 ^ 동작 ^ ^ 키 ^ 동작 ^
 | ''Ctrl+Enter'' | 확인 | | ''Ctrl+Enter'' | 확인 |
-| ''Esc'' | 창 닫기. 고친 내용이 있으면 **고친 내용을 버릴까요?**를 묻습니다. | +| ''Esc'' | 창 닫기. 고친 내용이 있으면 **변경 내용을 버릴까요?**를 묻습니다. | 
-| ''Ctrl+Z'' / ''Ctrl+Y'' | 창 안에서 고친 내용을 한 단계씩 되돌리거나 다시 합니다. 되돌릴 것이 없으면 프로그램 전체의 실행취소ㆍ다시 실행으로 넘어갑니다. |+| ''Ctrl+Z'' / ''Ctrl+Y'' | 창 안에서 고친 내용을 한 단계씩 되돌리거나 다시 합니다. 되돌릴 것이 없으면 프로그램 전체의 실행 취소ㆍ다시 실행으로 넘어갑니다. |
 | ''Ctrl+S'' | 프로젝트 저장. **확인** 전에 창에서 고친 내용은 저장되지 않습니다. | | ''Ctrl+S'' | 프로젝트 저장. **확인** 전에 창에서 고친 내용은 저장되지 않습니다. |
 | ''Ctrl+T'' / ''Ctrl+M'' | 다운로드 / 모니터링 | | ''Ctrl+T'' / ''Ctrl+M'' | 다운로드 / 모니터링 |
줄 141: 줄 141:
  
   * 글자 입력칸 안의 ''Ctrl+Z''는 그 칸의 입력을 되돌립니다. 같은 칸에 이어서 입력한 글자는 한 단계로 되돌아갑니다.   * 글자 입력칸 안의 ''Ctrl+Z''는 그 칸의 입력을 되돌립니다. 같은 칸에 이어서 입력한 글자는 한 단계로 되돌아갑니다.
-  * **확인**은 프로그램 전체의 실행취소 한 단계입니다. 확인한 뒤에는 **편집 → 실행취소**(''Ctrl+Z'')로 확인 전 정의로 되돌릴 수 있습니다.+  * **확인**은 프로그램 전체의 실행 취소 한 단계입니다. 확인한 뒤에는 **편집 → 실행 취소**(''Ctrl+Z'')로 확인 전 정의로 되돌릴 수 있습니다.
  
 ===== 프레임 ===== ===== 프레임 =====
줄 258: 줄 258:
 === 맞는 체크섬 찾기 === === 맞는 체크섬 찾기 ===
  
-장치 설명서에 체크섬 방식이 없거나 확인값이 맞지 않을 때 사용합니다. 장치가 실제로 보낸 프레임을 둘 이상 붙여 넣어주시기 바랍니다. 체크섬이 틀리면 체크섬 종류ㆍCRC-16 방식ㆍ형식ㆍ범위 시작을 바꿔 가며 모든 표본에 맞는 조합을 자동으로 찾아, **맞는 체크섬 찾기** 줄에 후보마다 **«…»(으)로 바꾸기** 단추를 표시합니다. 표본이 하나면 우연히 맞는 조합이 있을 수 있으므로 **«…»(으)로 바꾸기**는 표본이 둘 이상일 때만 켜집니다. 바꾼 내용은 **확인**을 눌러야 정의에 들어갑니다.+장치 설명서에 체크섬 방식이 없거나 확인값이 맞지 않을 때 사용합니다. 장치가 실제로 보낸 프레임을 둘 이상 붙여 넣어주시기 바랍니다. 체크섬이 틀리면 체크섬 종류ㆍCRC-16 방식ㆍ형식ㆍ범위 시작을 바꿔 가며 모든 표본에 맞는 조합을 자동으로 찾아, **맞는 체크섬 찾기** 줄에 후보마다 **“…”(으)로 바꾸기** 단추를 표시합니다. 표본이 하나면 우연히 맞는 조합이 있을 수 있으므로 **“…”(으)로 바꾸기**는 표본이 둘 이상일 때만 켜집니다. 바꾼 내용은 **확인**을 눌러야 정의에 들어갑니다.
  
 {{ :products:mp_studio:up-sumfind.png?1000 |그림 13. 표본 두 개로 «2의 보수 합 · 2번째부터»를 찾은 모습 }} {{ :products:mp_studio:up-sumfind.png?1000 |그림 13. 표본 두 개로 «2의 보수 합 · 2번째부터»를 찾은 모습 }}
줄 324: 줄 324:
 ===== 래더에서 시작하기(UPTRIG) ===== ===== 래더에서 시작하기(UPTRIG) =====
  
-트랜잭션의 **시작**을 **래더 UPTRIG 번호**로 정하면, 래더의 ''UPTRIG'' 펑션이 그 트랜잭션을 실행합니다. 버튼을 눌렀을 때만 설정 명령을 보내거나, 필요할 때만 값을 읽을 때 사용합니다.+트랜잭션의 **시작**을 **래더 UPTRIG 번호**로 정하면, 래더의 ''UPTRIG'' 펑션이 그 트랜잭션을 실행합니다. 누름 단추를 눌렀을 때만 설정 명령을 보내거나, 필요할 때만 값을 읽을 때 사용합니다.
  
   - 트랜잭션의 **시작**을 **래더 UPTRIG 번호**로 고르고 **번호**(1~255)를 적어주시기 바랍니다. 필요하면 **완료 비트**와 **상태 워드**도 적어주시기 바랍니다.   - 트랜잭션의 **시작**을 **래더 UPTRIG 번호**로 고르고 **번호**(1~255)를 적어주시기 바랍니다. 필요하면 **완료 비트**와 **상태 워드**도 적어주시기 바랍니다.
   - **확인**을 눌러주시기 바랍니다.   - **확인**을 눌러주시기 바랍니다.
-  - 래더에 ''UPTRIG'' 펑션을 넣고 같은 번호를 적어주시기 바랍니다. 펑션 판 **Serialport** 분류의 **UPTRIG: Start User Protocol Trigger**를 고르거나, 펑션 삽입 창(''Ctrl+E'')에 ''UPTRIG 3''처럼 입력해 넣을 수 있습니다.+  - 래더에 ''UPTRIG'' 펑션을 넣고 같은 번호를 적어주시기 바랍니다. 펑션 패널 **시리얼 포트** 분류의 **UPTRIG: 사용자 프로토콜 트리거 시작**을 고르거나, 펑션 삽입 창(''Ctrl+E'')에 ''UPTRIG 3''처럼 입력해 넣을 수 있습니다.
  
 {{ :products:mp_studio:up-uptrig-rung.png?900 |그림 17. M3이 켜질 때 트리거 3의 트랜잭션(영점 명령)을 보내는 렁 }} {{ :products:mp_studio:up-uptrig-rung.png?900 |그림 17. M3이 켜질 때 트리거 3의 트랜잭션(영점 명령)을 보내는 렁 }}
줄 361: 줄 361:
 | 송수신 버퍼가 프레임보다 작음 | 오류. **설정 → 데이터 메모리**의 **SERIAL** 칸에서 버퍼를 늘리거나 프레임을 줄여야 합니다. | | 송수신 버퍼가 프레임보다 작음 | 오류. **설정 → 데이터 메모리**의 **SERIAL** 칸에서 버퍼를 늘리거나 프레임을 줄여야 합니다. |
  
-사용자 프로토콜이 쓰는 주소는 찾기ㆍ모두 바꾸기ㆍ인스펙터의 쓰인 자리ㆍ**사용한 데이터**에도 표시됩니다. 모두 바꾸기로 주소를 바꾸면 사용자 프로토콜의 주소도 함께 바뀝니다.+사용자 프로토콜이 쓰는 주소는 찾기ㆍ모두 바꾸기ㆍ인스펙터의 사용 위치ㆍ**사용한 데이터**에도 표시됩니다. 모두 바꾸기로 주소를 바꾸면 사용자 프로토콜의 주소도 함께 바뀝니다.
  
 ===== 시뮬레이션 ===== ===== 시뮬레이션 =====
줄 389: 줄 389:
 | **장비 프로그램이 다름** | 장비의 프로그램이 지금 프로젝트와 다를 수 있습니다. 다운로드하면 읽습니다. | | **장비 프로그램이 다름** | 장비의 프로그램이 지금 프로젝트와 다를 수 있습니다. 다운로드하면 읽습니다. |
 | **다운로드 전 설정** | 모니터링을 시작할 때의 정의에 없는 트랜잭션입니다. 확인하고 다운로드한 뒤 모니터링을 다시 시작하면 읽습니다. | | **다운로드 전 설정** | 모니터링을 시작할 때의 정의에 없는 트랜잭션입니다. 확인하고 다운로드한 뒤 모니터링을 다시 시작하면 읽습니다. |
-| **PLC 응답 없음 · 값 모름** · **새 값이 안 옴 · 값 모름** | 모니터 통신에서 새 값이 오지 않습니다. |+| **PLC 응답 없음 · 값 알 수 없음** · **새 값 없음 · 값 알 수 없음** | 모니터 통신에서 새 값이 오지 않습니다. |
 | **제한 모니터 · 못 읽음** | 프로그램 검사 오류가 있는 동안에는 사용자 메모리의 상태 워드를 읽지 않습니다. | | **제한 모니터 · 못 읽음** | 프로그램 검사 오류가 있는 동안에는 사용자 메모리의 상태 워드를 읽지 않습니다. |
 | **런타임이 쓰지 않는 값** | 사용자 프로토콜이 쓰지 않는 값입니다. 장비 프로그램이 다르거나 래더가 이 주소에 씁니다. | | **런타임이 쓰지 않는 값** | 사용자 프로토콜이 쓰지 않는 값입니다. 장비 프로그램이 다르거나 래더가 이 주소에 씁니다. |
  
-시뮬레이션 중에는 카드에 **가상**이 함께 표시되며, 확인하지 않은 트랜잭션은 **확인 전 설정**, 멈춘 시뮬레이션은 **시뮬레이션 멈춤 · …**으로 표시됩니다.+시뮬레이션 중에는 카드에 **가상**이 함께 표시되며, 확인하지 않은 트랜잭션은 **확인 전 설정**, 정지한 시뮬레이션은 **시뮬레이션 정지 · …**으로 표시됩니다.
  
 ==== 통신 기록 ==== ==== 통신 기록 ====
줄 421: 줄 421:
   * **③ 트랜잭션 한 번 — 요청·응답, 송신만:** 왼쪽에서 트랜잭션을 고르고 보낼 값(예시 값)을 적은 뒤 **한 번 보내기**를 누르면, 응답 대기ㆍ다시 시도까지 장비와 같은 방식으로 한 번 주고받고 결과를 표시합니다.   * **③ 트랜잭션 한 번 — 요청·응답, 송신만:** 왼쪽에서 트랜잭션을 고르고 보낼 값(예시 값)을 적은 뒤 **한 번 보내기**를 누르면, 응답 대기ㆍ다시 시도까지 장비와 같은 방식으로 한 번 주고받고 결과를 표시합니다.
   * **④ 수신 — 수신만, 수신 후 응답:** **수신 시작**을 누르면 장치가 보내는 바이트를 받아 해석합니다. 바코드 리더가 실제로 무엇을 보내는지 확인할 때 사용합니다. 수신 후 응답 트랜잭션은 ③에 적은 예시 값으로 PC가 응답합니다.   * **④ 수신 — 수신만, 수신 후 응답:** **수신 시작**을 누르면 장치가 보내는 바이트를 받아 해석합니다. 바코드 리더가 실제로 무엇을 보내는지 확인할 때 사용합니다. 수신 후 응답 트랜잭션은 ③에 적은 예시 값으로 PC가 응답합니다.
-  * **⑤ 통신 기록:** 주고받은 바이트가 통신 기록 보기와 같은 꼴로 표시됩니다. 체크섬이 틀린 응답이 오면 **맞는 체크섬 찾기** 줄에 맞는 체크섬 후보가 표시되고, 응답이 둘 이상 모이면 **«…»(으)로 바꾸기**를 누를 수 있습니다.+  * **⑤ 통신 기록:** 주고받은 바이트가 통신 기록 보기와 같은 꼴로 표시됩니다. 체크섬이 틀린 응답이 오면 **맞는 체크섬 찾기** 줄에 맞는 체크섬 후보가 표시되고, 응답이 둘 이상 모이면 **“…”(으)로 바꾸기**를 누를 수 있습니다.
  
   * 모니터링ㆍ다운로드가 쓰는 COM은 «— 모니터·다운로드가 쓰는 중»으로 표시되며 열 수 없습니다. 모니터링ㆍ다운로드를 끝낸 뒤 열어주시기 바랍니다.   * 모니터링ㆍ다운로드가 쓰는 COM은 «— 모니터·다운로드가 쓰는 중»으로 표시되며 열 수 없습니다. 모니터링ㆍ다운로드를 끝낸 뒤 열어주시기 바랍니다.
줄 433: 줄 433:
 ==== 예제 1. CO2 센서 값을 1초마다 읽기 ==== ==== 예제 1. CO2 센서 값을 1초마다 읽기 ====
  
-통신포트1(9600 · 8-N-1)에 CO2 센서를 연결해 1초마다 농도를 읽고, 버튼 입력으로 영점 명령을 보내는 예제입니다.+통신포트1(9600 · 8-N-1)에 CO2 센서를 연결해 1초마다 농도를 읽고, 누름 단추 입력으로 영점 명령을 보내는 예제입니다.
  
   - **설정 → 통신 포트**의 **시리얼 1**을 보레이트 9600, 데이터 비트 8, 패리티 없음, 정지 비트 1로 정해주시기 바랍니다.   - **설정 → 통신 포트**의 **시리얼 1**을 보레이트 9600, 데이터 비트 8, 패리티 없음, 정지 비트 1로 정해주시기 바랍니다.
줄 450: 줄 450:
 센서가 ''FF 86 01 9A 00 00 00 00 DF''를 보내면 ''D100''은 410(ppm)이 되고, 상태 워드 ''D101''은 ''0001''(10진 1), 완료 비트 ''M100''은 한 스캔 켜집니다. 센서가 ''FF 86 01 9A 00 00 00 00 DF''를 보내면 ''D100''은 410(ppm)이 되고, 상태 워드 ''D101''은 ''0001''(10진 1), 완료 비트 ''M100''은 한 스캔 켜집니다.
  
-{{ :products:mp_studio:up-ex1-monitor.png?1000 |그림 24. 예제 1을 모니터링하는 모습(감시 판의 D100 농도ㆍD101 상태ㆍM100 완료 비트) }}+{{ :products:mp_studio:up-ex1-monitor.png?1000 |그림 24. 예제 1을 모니터링하는 모습(감시 패널의 D100 농도ㆍD101 상태ㆍM100 완료 비트) }}
  
 ==== 예제 2. 바코드 리더의 글자 받기 ==== ==== 예제 2. 바코드 리더의 글자 받기 ====
products/mp_studio/user_protocol.txt · 마지막으로 수정됨: 저자 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki