



Prodcuts Category
◆ Real Time Products
◆ Software PLC
◆ EtherCAT Products
◆ Network Technology
◆ Motion Control
◆ Field bus Solutions
◆ Software RAS
|
파일 이름
|
크기
|
내용
|
|
PROC_TIM_SMPL.zwt
|
1,089KB
|
샘플 프로젝트 (※ 1) Basic / Pro + 용
|

|
PROC_TIM.fwpack
|
4KB
|
펌웨어 라이브러리 팩 (INplc Ver.1.X 용) (※ 2)
|

|
PROC_TIM.fwpack
|
4KB
|
펌웨어 라이브러리 팩 (INplc Ver.2.X 용)
|

|
PROC_TIM.zip
|
1.47KB
|
Pro + 펌웨어 라이브러리 (※ 3)
|

|
※ 1이 샘플 프로젝트는 MULTIPROG의 압축 형식 (~ .zwt)에서 저장된 프로젝트입니다. IEC 61131-3 표준 LD 언어 (Ladder Diagram)에서 작성하고 있습니다. ※ 2 펌웨어 라이브러리는 Ethernet 펌웨어 라이브러리와 함께
사용하지 마십시오. ※ 3 MULTIPROG Pro +를 사용하시는 분들은 이 파일의 압축을 해서 PROC_TIM_SMPL.zwt 라이브러리로 참조하십시오.
「PROC_TIM_SMPL.zwt」는 처리 시간의 측정 방법의 샘플입니다. 이 샘플은 접점과 코일의 기본 명령어 20,000회 처리 시간을 1000회 측정합니다. 기본 명령
5,000개를 정의한 펑크션 블록을 4회 부릅니다. 또한 이 펑크션 블록 처리가 많기 때문에, IL언어로 작성하고 있습니다.
주의 :
1) 처리 시간은 이용하는 하드웨어 (컨트롤러 본체)의 성능에 따라 달라집니다.
2) INplc-Controller에 탑재되는 CPU가 Speed Step Technology를 지원하는 경우 다음 사항(문의) 에 주의하십시오.
샘플 프로젝트를 열기 전에 속도 측정 펑크션 「PROC_TIM「을 적용해야합니다.
○ PROC_TIM의 적용은 다음과 같습니다.
주의 :
1) |
「PROC_TIM.fwpack」를 다운로드하여 개발 환경의 임의의 위치에 저장합니다.
|
2) |
INplc Configuration Panel을 시작하고 PROC_TIM을 적용하는 INplc-Controller에 연결합니다. |
3) |
INplc Configuration Panel이 나타나면 「펌웨어 라이브러리 설치」를 더블 클릭합니다.
|
|
 |
4) |
「파일 열기」화면이 표시되므로, 1)레서 저장된 「PROC_TIM.fwpack」을 선택하고 「열기」버튼을 누릅니다.
|
5) |
잠시 후 「설치가 완료되었습니다. 다시 시작합니다」라는 메시지가 표시되면 「OK」버튼을 누릅니다.
|
6) |
INplc 재부팅이 시작되므로, 잠시 기다립니다. |
7) |
다시 PROC_TIM을 적용한 INplc-Controller에 연결합니다. |
8) |
INplc Configuration Panel이 나타나면 「펌웨어 라이브러리 정보」를 더블 클릭합니다.
|
|
 |
9) |
펌웨어 라이브러리의 버전 정보 화면이 표시되므로 목록에 「Processing Time Measurement Firmware Library」가 표시되어 있으면 PROC_TIM의 적용이 완료됩니다.
|
★Ver.2.0 이후 버전을 사용하는 고객은 아래의 설정도 해야합니다.
10) |
INplc Configuration Panel의 IO · FWL 시작 설정을 클릭하십시오.
|
11) |
INplc Boot Configuration 화면에서 DriveName [PROC_TIM]의 Use를 체크하고 Save 버튼에서 보관 Tool을 종료하십시오.
|
○ 샘플 프로젝트의 주요 처리 흐름은 다음과 같습니다.
1) |
콜드 스타트시에 빈 펑크션 블록을 4개 늘어 측정 대상 이외의 처리 시간을 측정합니다. |
2) |
기본 명령어 20,000회 처리 시간을 측정 1000개의 문서를 배열에 저장합니다. 처리 속도를 유지하는 배열 (LREAL 형) 데이터 형식 워크 시트에 정의합니다.
|
3) |
정지시 오차로 1) 시간을 측정 결과에서 제외 후 평균 / 최대 / 최소를 산출합니다. 측정 결과의 평균 / 최대 / 최소 전역 변수로 표시됩니다.
|
파일 이름 |
크기 |
내용 |
|
FILE_SMPL.zwt |
593 KB |
샘플 프로젝트 (※ 1) Basic / Pro + 용 |
 |
※ 1 이 샘플 프로젝트는 MULTIPROG의 압축 형식 (~ .zwt)에서 저장된 프로젝트입니다. IEC 61131-3 표준 LD 언어 (Ladder Diagram)에서 작성하고 있습니다.
「FILE_SMPL.zwt「펌웨어 라이브러리 「ProConOS.fwl」에수록되어있는 파일 조작 함수 블록을 사용하여 데이터 파일 만들기 예제입니다. 바이너리 및 텍스트 (CSV 파일) 파일을 만들 수 있습니다. 샘플에서는 바이너리 형식 파일의 읽고 쓰기 및 텍스트 파일 쓰기를합니다.
텍스트 파일을 처리 할 때 직접 STRING 형 (문자열)를 지정 할 수 없기 때문에 일단 BYTE 형 배열 등의 버퍼에 배포해야합니다. 버퍼는 데이터 형 워크 시트에 정의합니다.
본 예제에서는 숫자 데이터를 텍스트 형식으로 작성하는 사용자 정의 함수 「BINtoTXT '에서 숫자를 문자열 (STRING)로 변환 한 다음 버퍼 (BYTE 형 배열)로 변환합니다. 또한 버퍼로 변환 할 때 데이터 끝에 줄 바꿈 코드를 추가합니다.
공유 메모리 액세스 구성 요소 「INpMac」을 통합하여 INplc의 「공유 메모리 I/O 펑크션」이 생성 한 공유 메모리 영역을 통해 PLC 프로그램과 데이터를 전달 할 수 있습니다.
파일 이름 |
크기 |
내용 |
|
HMI_SMPL.zwe |
26 KB |
INplc-SDK (Express) v3.05에서 만든 샘플 프로젝트입니다. |
 |
IO_CHK.zip |
44 KB |
VC # 2008에서 만든 Windows 응용 프로그램의 샘플 프로젝트입니다. (INpMac v2.22에서 테스트되었습니다) |
 |
- 다운로드 한 파일을 이용하여, 만일 장애 등이 발생해도 책임을지지 않습니다. 반드시 자신의 책임에 대해 이용하십시오.
- 다운로드 한 파일을 허가없이 재 전재 및 재배포하는 것은 금지되어 있습니다.
「HMI_SMPL」는 공유 메모리 I/O 기능을 통해 INplc과 외부 프로그램의 데이터 교환을 실시하는 샘플입니다. 이 샘플은 Visual Studio 2008 C#에서 만든 Windows 프로그램의 INplc를 통한 에코 동작 테스트를 실시합니다.
주의 ;
1) |
샘플 프로젝트를 사용하기 전에 INplc의 「공유 메모리 기능」을 활성화해야합니다. 자세한 내용은 여기 를 참조하십시오.
|
2) |
Windows 프로그램을 사용하기 전에 INplc-SDK CD-ROM에수록되어있는 공유 메모리 I/F 펑크션 「INpMac」을 설치해야 합니다. INpMac 내용은 여기 를 참조하십시오.
|
○ 샘플의 주요 처리 흐름은 다음과 같습니다.
1) |
Windows 프로그램은 「Windows -> INplc」버튼을 눌렀을 때 I영역에 데이터를 설정합니다.
|
2) |
INplc (PLC 프로그램)은 1ms 주기로 I영역에서 얻은 데이터를 Q영역에 씁니다. |
3) |
Windows 프로그램은 100ms 주기로 Q영역의 데이터를 화면에 표시합니다.
|
※ Windows 프로그램을 시작할 때 및 작업 중에 INplc가 시작되지 않거나 「공유 메모리 I / O 기능」'이 활성화되어 있지 않은 등 데이터 교환에 실패하면 다음과 같은 오류 메시지가 나타납니다 있습니다.
개요
INtime 어플리케이션에서 INplc 공유 메모리에 액세스
※이 연계 방법을 사용하려면 INplc의 「공유 메모리 I/O 기능」을 활성화 해야 합니다. 자세한 내용은 여기 를 참조하십시오.
INplc에서 INtime 공유 메모리에 액세스
INplc의 「INtime 펑크션「을 사용하여 PLC 프로그램에서 INtime 어플리케이션이 생성 한 공유 메모리에 데이터를 읽고 쓸 수 있습니다.
※이 연계 방법을 사용하려면 INplc의 「INtime 기능」을 활성화해야합니다. 자세한 내용은 여기 를 참조하십시오.
개요
OPC 통신
「INplc-OPC Server」를 사용하여 PLC 프로그램의 데이터를 OPC 통신에 사용할 수 있습니다.
※이 연계 방법을 사용하려면 별매의 「INplc-OPC Server」가 필요합니다. 자세한 내용은 여기 를 참조하십시오.
Ethernet 통신
INplc의 「Ethernet 통신 펑크션」을 사용하여 외부 기기와 Ethernet 통신을 할 수 있습니다. (※ 1) 또한 「원격 공유 메모리 I/O 펑크션」에서도 Ethernet 통신에 의한 공유 메모리를 통해 I/O 데이터 교환이 가능합니다. (※ 2)
※ 1이 연계 방법을 사용하려면 INplc의 「Ethernet 기능」을 활성화해야합니다. 자세한 내용은 여기 를 참조하십시오. ※ 2이 연계 방법을 사용하려면 INplc의 「원격 공유 메모리 I/O 기능」을 활성화 해야 합니다. 자세한 내용은 여기 를 참조하십시오.
시리얼 통신
INplc의 「직렬 통신 기능」을 사용하여 외부 기기와 RS-232C / 422 / 485 통신을 할 수 있습니다.
※이 연계 방법을 사용하려면 INplc의 「직렬 통신 기능」을 활성화해야 합니다. 자세한 내용은 여기 를 참조하십시오.
FL-net 통신
INplc의 「FL-net 통신 기능」을 사용하여 외부 기기와의 FL-net 통신에 의한 I/O 데이터의 전달을 할 수 있습니다.
※이 연계 방법을 사용하려면 INplc의「FL-net 통신 펑크션」을 활성화해야합니다. 자세한 내용은 여기 를 참조하십시오.
라이브러리 설치
INtime 어플리케이션에서 이벤트 작업에 이벤트를 발행하기 위해 필요한 다음의 라이브러리를 INtime 개발 환경에 설치하십시오.
다음 설치 프로그램을 실행하고 설치를 해야합니다. [INplc SDK CD-ROM] \ Util \ INplc_IF_Library \ INplcIFSetup.EXE
※이 라이브러리는 INplc2.0 이후 버전에서 제공합니다.
이벤트 발행 용 API
INpPostEvent ()를 사용하여 이벤트를 게시합니다.
※ 사용 방법의 자세한 내용은 [INplc SDK CD-ROM] \ Util \ INplc_IF_Library \ INplcIF_Manual.pdf를 참조하십시오.
500μs주기 이벤트 발행 INtime 어플리케이션 작성 예
INtime의 개발 환경에서 Microsoft Visua Studio 시작 프로젝트 만들기를 실시 INtime의 Application Wizard를 사용하십시오.
생성하는 응용 프로그램의 종류를 「마법사 INtime 어플리케이션을 구축」을 선택합니다.
추가 요소로 「일정한 주기로 처리하는 스레드」를 선택합니다.
웨이트 방식을 「낮은 수준 슬립 모드」를 선택합니다. 대기 시간 μ초 「500」을 지정합니다.
마법사를 종료 INtime 어플리케이션을 생성합니다.
INplc 정보를 얻을 [INpEnum () API] 다음 마법사에서 생성 된 폴링 스레드 내에서 이벤트 발행 [INpPostEvent ()하십시오.
※ Visua Studio와 INtime의 버전에 따라 표현이 다를 경우도 있지만 양해 바랍니다.
LabVIEW (OPC 클라이언트)와 INplc OPC server의 연결은 아래의 그림과 같이 설정을 해주십시오.
LabVIEW 설정 서식
OPC : / OPC.OUT.PCOS.21 / [OPC Server 리소스 이름]. [프로그램 인스턴스 이름] [변수 이름]? updaterate = 업데이트 속도]
설정 예
OPC Server에서 설정하고있는 자원 [TestResource를 사용하여 PLC 프로그램의 프로그램 인스턴스 이름 [main] 지역 변수 [C000]에 대해 입출력을 할 경우.
LabVIEW 측의 설정은 아래의 내용입니다.
[OPC : /OPC.OUT.PCOS.21/TestResource.main.C000? updaterate = 100]
많이 사용되고있는 하드웨어 PLC로부터 INplc로 이식 할 때 편리한 펑크션을 FWL로 제공하고 있습니다. 다음 표를 참조하십시오. 여기를 이용하여 부드러운 이식이 가능합니다.
(※ INplc Ver3.x에서 구현됩니다.)
1. 컨트롤 배열
No.
|
FB 명
|
개요
|
1
|
TON_Array
|
배열 형 타이머
|
2
|
CTU_Array
|
배열 형 카운터
|
2. 형 변환
No.
|
FB 명
|
개요
|
1
|
BIN16_TO_BIN32
|
INT 형 L, H를 전달하여 DINT 타입으로 반환
|
2
|
BIN16_TO_UBIN32
|
INT 형 L, H를 전달하여 UDINT 타입으로 반환
|
3
|
BIN32_TO_BIN16
|
DINT 타입을 전달하여 INT 형 L, H를 돌려 준다
|
4
|
UBIN32_TO_BIN16
|
UDINT 타입을 전달하여 INT 형 L, H를 돌려 준다
|
5
|
BIN16_TEST
|
INT 형식 지정 BIT가 ON / OFF를 확인하고 BOOL 형을 반환
|
6
|
UBIN32_MOVE
|
UINT 형 L, H를 전달하여 UDINT 타입으로 반환
|
3. Bit 장치
No.
|
FB 명
|
개요
|
1
|
BLOCK_RSET
|
Bit 데이터의 지정 주소에서 지정 점수 분 재설정 (0 설정)
|
2
|
IO_BOOL_WRITE
|
Bit 장치에 쓰기
|
3
|
IO_BOOL_READ
|
Bit 장치에 대한 읽기
|
4
|
BIT_WRITE
|
Bit 디바이스에 쓰기 (배열 화)
|
5
|
BIT_READ
|
Bit 장치에 대한 읽기 (배열 화)
|
6
|
BIT_TO_INT
|
Bit 디바이스의 선두 지정할 INT 데이터 추출
|
7
|
GET_16BitData
|
INT 데이터에서 Bit의 INT 데이터 추출
|
4. 메모리 관련
No.
|
FB 명
|
개요
|
1
|
MEMSET_INT
|
INT 배열에서 MEMSET
|
2
|
MEMSET_UINT
|
UINT 배열에서 MEMSET
|
3
|
MEMCPY_16
|
INT 배열에서 MEMCPY
|
5. 블록 처리
No.
|
FB 명
|
개요
|
1
|
BIN16_BLOCK_ADD
|
INT 형 블록 추가
|
2
|
BIN16_BLOCK_SUB
|
INT 형 블록 빼기
|
6. 증가 · 감소
No.
|
FB 명
|
개요
|
1
|
BIN16_INC
|
INT로 증가
|
2
|
BIN16_DINC
|
INT로 감소
|
3
|
BIN32_INC
|
UINT 형으로서 INC 처리를 실시
|
4
|
BIN32_DEC
|
UINT 형으로 DEC 처리를 실시
|
5
|
UBIN32_INC
|
UDINT 타입으로 INC 처리를 실시
|
6
|
UBIN32_DEC
|
UDINT 타입으로 DEC 처리를 실시
|
7. 시간
No.
|
FB 명
|
개요
|
1
|
DATE_RD
|
현재 년 월 일 ·시 · 분 · 초를 취득
|
2
|
mDATE_RD
|
현재 년 월 일 ·시 · 분 · 초 · 석사를 취득
|
3
|
SEC_TO_TIME
|
초부터 시분 초 산출 (INT 타입)
|
4
|
SEC_TO_TIMEU
|
초부터 시분 초 산출 (UINT 형)
|
5
|
TIME_TO_SEC32
|
시분 초에서 초 계산 (DINT 형)
|
6
|
TIME_TO_SEC32U
|
시분 초에서 초 계산 (UDINT 타입)
|
8. 깜박임
No.
|
FB 명
|
개요
|
1
|
CLOCK10ms
|
0.01 초 플리커
|
2
|
CLOCK100ms
|
0.1 초 깜박임
|
3
|
CLOCK200ms
|
0.2 초 깜박임
|
4
|
CLOCK1s
|
1 초 플리커
|
5
|
CLOCK2s
|
2 초 플리커
|
INplc에서 취득한 EtherCAT I/O 데이터를 INpMac을 사용하여 Windows 응용 프로그램에서 참조하는 방법을 설명합니다.
INplc에 내장 된 I/O 드라이버 및 FWL의 기본적인 동작을 확인하기 위한 샘플 프로그램을 게재하고 있습니다. (※ 게재 내용은 수시로 업데이트 예정)
EthComFWL를 사용하여 1024 바이트의 데이터를 자신에게 보내 자신의 수신 샘플입니다.
EthCom의 FWL의 적응 · 설정을 실시 샘플을 실행합니다. ① 개발 환경에서 INplc Configuration Tool을 시작 ②IO · FWL 설정 화면을 열 ③INplc 컨트롤러에 EthCom의 FWL을 설치 ④EthComFWL의 Use 체크 ⑤EthComFWL 설정 파일 EthCom.ini를
아래의 내용에 변경
EthCom.ini 설정 [SOCKET. 1] 포트 번호 9911에서 기다리는 TCP 서버 설정 [SOCKET.2] 자신의 포트 번호 9911에 연결하는 TCP 클라이언트 설정
[SOCKET]
NUM = 2
[SOCKET.1]
TYPE = 0
IP = 127.0.0.1
PORT = 9911
LOCALPORT = 0
[SOCKET.2]
TYPE = 1
IP = 127.0.0.1
PORT = 9911
LOCALPORT = 0
⑥ 설정을 보존하고 INplc 컨트롤러를 메시지에 따라 재기동 ⑦ 샘플 프로그램을 MULTIPROG에서 열기 ⑧ 컴파일 컨트롤러에 다운로드 ⑨ 콜드 실행 ⑩ 온라인 디버그 모드로 변경 ⑪ Recv_Main POU의 「테스트 시작」변수를 TRUE로 하면 1024바이트 전송하고 자신에 1024바이트를 수신합니다.
파일 이름
|
크기
|
내용
|
|
EthComLib_Sample.zwe
|
34 KB
|
INplc-SDK (Express) v3.08에서 만든 샘플 프로젝트입니다.
|

|
- 다운로드 한 파일을 이용하여, 만일 장애 등이 발생해도 책임을지지 않습니다. 반드시 자신의 책임에 대해 이용하십시오.
- 다운로드 한 파일을 허가없이 재 전재 및 재배포하는 것은 금지되어 있습니다.
※ EtherCAT®는 Beckhoff Automation GmbH, Germany의 등록 상표입니다.
|