본문 바로 가기

Doosan Robotics

Log In
Log In Form

튜토리얼

문서
EtherNet/IP를 이용한 프로그래밍 방법
필수
60 분
이 과정에서는 EtherNet/IP를 이용한 프로그래밍 방법을 소개합니다.

1. 시작하기

EtherNet/IP는 ODVA (Open DeviceNet Vendors Association)와 CI (ControlNet International)의 주도로 개발된 산업용 이더넷(Etherrnet) 프로토콜의 하나로, 제조 장비 사이에 데이터를 정확히 주고 받기 위해 사용됩니다.


두산 로봇에서는 별도의 HW장치 없이 소프트웨어만으로 EtherNet/IP Device 기능(로봇 정보 모니터링, General Purpose Register)을 제공합니다
  • 지원 대상: SW 버전 M2.3.1 또는 이후

이 과정에서는 두산로봇에서 제공하는 EtherNet/IP를 이용한 프로그래밍 방법을 알아보겠습니다.

2. 준비 사항

이 과정에서는 대표적인 EtherNet/IP 지원 장치인 미국 로크웰오토메이션 사의 PLC와 두산 로봇을 연결하는 방법을 다룹니다.

필요 사항
  • 로크웰오토메이션 PLC(예: Allen-Bradley Compact Logix 1769-L30ER등) & Studio 5000이 설치된 컴퓨터
  • 두산로보틱스 협동로봇 M1013
  • 설정 파일: DoosanRobot.eds, DoosanRobot_EIP.L5X, IO Table_eip.pdf (Robotl LAB에서 다운로드 가능)

두산 로봇을 부팅하면, 제어기 부팅 과정에서 EtherNet/IP Device 기능이 자동으로 실행됩니다. 따라서, 로봇이나 티치 펜던트에서 추가로 설정할 부분이 없습니다.
  • 로봇의 네트워크 설정은 일반 TCP/IP 통신을 위해 사용될 수 있으며, EtherNet/IP 통신과는 무관합니다.

EtherNet/IP 통신을 위해 준비된 PLC와 로봇, 컴퓨터의 연결은 아래와 같습니다.



※ 실제 Robot의 IP Address는 본 통신구성을 시작하기 전 반드시 티치 펜던트상에서 할당된 주소를 확인하시기 바랍니다.

3. 두산 로봇과 PLC 연결하기

3.1 PLC와 PLC PC (Setup PC) 통신 환경 구축
Allen Brandley의RSLinx Classic Lite를 사용하여 PLC PC(Setup용 PC)에 대한 환경설정을 합니다. 통신에 대한 환경구축 전 반드시 PLC PC의 IP설정을 완료한 후에 아래의 설정을 진행하길 바랍니다. 네트워크 대역이 다를 경우 스캔이 되지 않습니다.

3.2 Configure Drives 설정
PLC PC에서 EtherNet/IP를 사용하기 위하여 PLC PC의 Ethernet Port에 EtherNet/IP 통신이 가능하도록 설정을 아래처럼 진행합니다. 

  • RSLinx Classic Lite를 실행 후 상단 메뉴 중, Communications → Configure Drives를 클릭합니다.
 


  • Available Driver Types에서 EtherNet/IP Driver를 선택 후 Add New를 클릭합니다.
 


  • 실제로 사용하고자 하는 Ethernet Port를 선택 후 확인합니다.
 


  • 아래의 적색상자 안의 아이콘을 눌러 스캔을 진행, 실제 사용할 PLC가 검색합니다.
 


※ 단 한번도 사용되지 않는 AB PLC의 경우 간혹 PLC의 펌웨어가 자체가 탑재가 안 된 상태로 출하가 됩니다. 이 경우, Studio5000을 이용, USB Cable을 연결하여 펌웨어를 다운로드 후 사용 권장합니다.

4. PLC 프로젝트의 구성

Allen Brandley의Studio5000을 사용하여 실제 PLC에서 구동시켜야 할 프로그램 및 환경구축을 합니다.

4.1프로젝트의 개설
  • 원도우의 시작 → Rockwell Software → Studio5000을 실행 후, New Project를 클릭합니다.
 


  • New Project를 선택하면 아래와 같이 앞으로 사용할 AB PLC를 선택하는 창이 출력됩니다. 실제로 사용할 PLC를 선택 후 프로젝트 이름을 기입 후 Finish를 클릭합니다.



※ 실제 사용할 PLC의 세부모델명을 모를 시에는 이전 단계에서 스캔 시에 해당 PLC의 세부 모델명이 검색이 되어 출력되오니 참조 바랍니다.


4.2 EDS File의 추가
EtherNet/IP의 Adapter(Slave)의 세부정보가 저장된 파일을 PLC 프로젝트에 넣기 위하여 추가작업을 실시합니다. 사전에 두산로보틱스 홈페이지에서 최신 EDS File을 준비하시기 바랍니다.

  • TOOLS → EDS Hardware Installation Tool을 클릭합니다.
 


  • Register an EDS files클릭 → Register a single file을 선택 후 Browse를 선택 후, 최신 eds파일을 추가합니다.
 


  • Next를 클릭합니다.
 


  • Change Icon선택 후, EDS File (zip file로 배포)내 Doosan Robot logo의 이미지가 있는 파일을 선택 후 변경합니다.
 


  • Finish를 클릭, 설치를 마칩니다.
 


4.3 EtherNet/IP Device의 추가(Robot의 추가)
해당 Project에서 사용될 EtherNet/IP의 Slave의 장치(Doosan Robot)를 추가 합니다. 메인 화면 좌측에 Controller Organizer의 I/O Configuration을 확대하면 Ethernet항목이 있습니다. 마우스의 우 클릭을 하여 Add Module을 선택합니다.
 


  • Select Module Type의 창이 나오게 되면 Doosan 을 검색, Create를 선택하여 Robot의 세부 설정으로 이동합니다.
 


  • General 항목에서 앞으로 사용할 로봇의 이름을 Name란에 기재하고 해당 로봇의 IP Address를 입력을 합니다. 세부 기입이 완료되었으면 OK선택 후 Close 클릭합니다.

 

※ 실제로 사용할 IP Address의 경우 T/P를 통하여 실제로 할당된 IP Address를 확인 후 기입합니다.

4.4 UDT File의 추가
Doosan Robot은 Ethernet/IP의 Slave로써 동작되며 상위기기인 수치제어반(PLC)에 다양한 정보를 제공합니다. Robot에서 제공하는 다양한 정보에 대해서 일일이 정의할 필요 없이 사전에 UDT FILE을 제공함으로써 번거로운 수작업을 덜 수 있습니다. 최신 UDT File은 두산로봇 홈페이지를 참조하시기 바랍니다.
  • 메인 페이지의 좌측에 Controller Organizer의 Assets을 확대하시면 Data Types항목이 있습니다. 이 중 User-Defined를 선택 후, 우 클릭을 하여 Add Module을 선택합니다.
  • Import Data Type창에서 최신의 UDT File(확장자명은 L5X)을 선택합니다.
 


  • 정상적으로 UDT File이 선택 시 아래와 같은 화면이 출력되며 OK를 클릭합니다.
 


4.5 데이터 모니터링을 위한 Tag의 추가
Robot에서 보내주는 데이터를 실제로 활용하기 위해서 사전에 추가한 User Defined한 데이터 영역에 데이터를 저장해야 합니다. AB PLC의 경우 EtherNet/IP를 통하여 수신되는 데이터는 기본적으로 SINT(1Byte)의 형태로만 수신이 됩니다. 이러한 데이터를 PLC상에서 사용하기 위해서는 I/O Message Format에 맞게 데이터를 포맷해주어야 사용이 가능합니다.

  • 현 단계에서는 실제로 저장해야 할 데이터의 공간을 설정합니다.
  • 메인 페이지의 좌측에 Controller Organizer의 Controller를 확대하시면 Controller Tags항목이 있습니다. 이를 더블클릭 후 오른쪽과 같은 화면이 출력되며 우 클릭을 하여 New Tag를 클릭하여 새로운 저장공간 (Tags)를 생성을 합니다.
 


  • Name에 앞으로 사용할 Tag명을 입력합니다.
  • Data Type으로는 이전에 추가한 User Defined한 DoosanRobot_EIP_UDT를 선택 후 Create합니다.

 

4.6 User Defined Tag에 Ethernet/IP Slave의 데이터의 복사
  • User Define한 Tag에 적절한 데이터를 복사하기 위해서 COP 혹은 CPS명령을 이용하여 기본적으로 수신 받은Ethernet/IP 데이터를 Tag에 복사를 합니다.
  • 메인 페이지의 좌측에 Controller Organizer의 Tasks를 확대 후 MainRoutine을 선택합니다.
 


  • PLC명령중 File Misc를 선택 후 CPS명령을 클릭합니다.
 


  • CPS명령 블록 중 source의 ‘?’ 를 선택하면 아래와 같은 창이 출력됩니다. 이는 데이터의 source를 선택하는 창이며 입력한 로봇의 이름 뒤에 ‘: I’ 라는 Tag가 존재합니다. 해당 데이터 Tag를 확대하여 가장 첫 번째 항목을 선택합니다.
 


  • Dest항목의 경우 User Defined으로 추가한 Tag의 명을 선택 후 끝까지 확대를 할 경우 ControlBox_Digital_Input 항목이 가장 먼저 선택됩니다. 이를 선택 합니다.
  • Length의 경우 I/O Message Format상에서 PLC가 수신을 받아야 할 데이터 (T(Robot) → O(PLC))의 경우 총 크기가 476 byte이므로 476을 입력합니다.



5. PLC 프로젝트의 다운로드 및 실행

앞서 Studio5000을 사용하여 구축한 PLC구성설정 및 프로그램을 PLC에 Download후 구동을 실시합니다. PLC와 PLC PC의 통신 환경구축이 설정이 완료가 되어야 정상적으로 Download 및 Run을 진행할 수 있습니다. 본 과정을 수행하기 앞서 PLC의 모드를 반드시 Remote Mode로 변경해야 합니다. PLC본체에 열쇠 타입 혹은 3단 스위치 타입으로 조작할 수 있는 스위치가 존재합니다.

5.1 프로젝트의 다운로드
  • Studio5000상에서 메뉴 중 아래와 같은 아이콘을 클릭합니다. Who Active창이 출력이 되며 AB_ETHIP-x, Ethernet창을 확대하여 Download할 PLC를 선택합니다.
 


  • Go Online은 선택을 하여 정상적으로 접속이 되었다면 아래와 같은 창이 출력됩니다. 현재 PLC PC에서 구축한 프로그램과 현재 PLC에 저장된 프로그램이 다를 경우 자동으로 다운로드를 할 수 있도록 창이 출력됩니다. 이 때 Download를 클릭하여 현재까지 작성한 PLC 프로젝트를 PLC에 다운로드 합니다.
 


  • 아래의 사진에서 적색상자 클릭하여 Run Mode를 클릭하여 PLC내에 프로그램을 실행시킵니다. Controller Tags를 클릭하여 User Defined한 Tags를 선택하여 Robot에서 올려주는 각종 정보를 확인 할 수 있습니다.



6. 로봇에서 GPR 사용하기

태스크 프로그래밍 환경 (태스크 빌더, 태스크 라이터)에서 아래의 DRL 명령을 사용하여 설정된 레지스터의 값을 읽어오거나 수정할 수 있습니다.
  • set_output_register_int(address, val) 
  • set_output_register_float(address, val) 
  • get_output_register_bit(address) 
  • get_output_register_int(address) 
  • get_output_register_float(address) 
  • get_input_register_bit(address) 
  • get_input_register_int(address) 
  • get_input_register_float(address)

해당 명령어들은 IF 조건문이나, Custom Code 명령 등에서 사용이 가능합니다.

7. 정리

이번 과정에서는 두산 로봇에서 제공하는 EtherNet/IP를 사용하기 위해 필요한 설정을 알아봤습니다. 보다 상세한 사용 방법은 프로그래밍 매뉴얼 및 로크웰오토메이션 홈페이지에서 제공하는 Studio 5000 매뉴얼을 참고하시기 바랍니다.

참고 자료

※ 본 자료의 모든 내용과 도안에 대한 저작권 및 지적재산권은 두산로보틱스에 있습니다. 따라서 두산로보틱스의 서면 허가 없이 사용, 복사, 유포하는 어떠한 행위도 금지됩니다. 또한 특허권을 오용하거나 변용하는데 따르는 책임은 전적으로 사용자에게 있습니다.
추천 교육
여러분에게 도움이 될 수 있는 추천 교육 과정들을 확인하세요.
문서
힘 제어를 이용한 프로그래밍 방법
문서
무선 공유기 사용방법
문서
DART-Studio 사용 방법 – 태스크 관리