[쉽고 간단한 안내서] TwinCAT 3로 모터 시운전하기

TwinCATThe Windows Control and Automation Technology의 약자로, Beckhoff에서 제공하는 PC 기반의 자동화 제어 솔루션입니다. 이름에서 알 수 있듯, Windows 운영체제에서 동작합니다. TwinCAT에서는 IEC61131-3 표준에 기초하는 LD (Ladder)ST (Structed Text) 같은 언어로 PLC를 작성할 수 있으며, I/O의 제어를 할 수도 있습니다. 물론 드라이브와 모터도 제어할 수 있습니다.


TwinCAT 3에서는 TF5xxx라는 제품명에서 Motion Control 관련 내용을 살펴볼 수 있습니다. TwinCATNC라고 하는 수치 제어 (Numerical Control)를 기반으로 Point-to-Point 제어를 할 수 있는 NC PTP (TF50x0), 보간 (Interpolation) 제어를 할 수 있는 NC I (TF5100), CNC (TF52xx) 등을 제공합니다.


TwinCAT에서는 Motion 프로젝트를 구성할 수 있습니다. 이를 통해 서보 드라이브나 스텝 드라이브와 같은 다양한 종류의 축들을 NC를 이용하여 가상의 객체로 제어할 수 있습니다. 소프트웨어로 구현되며, 기구물의 물리적인 동작에 대해 시뮬레이션과 시운전 또한 진행할 수 있습니다. 이번 안내서에서는 NC PTP에서의 TwinCAT의 시운전 (Commissioning)에 대해 다루고자 합니다.



시운전 준비하기

TwinCAT에서는 드라이브와 모터를 I/O Scan이라는 기능을 통해 인식할 수 있습니다. 이 후 Motion 프로젝트를 생성하여 드라이브와 모터에 대한 설정, 각종 파라미터에 대한 일련의 설정들을 진행할 수 있습니다. Motion 프로젝트를 생성하면 현재 연결된 드라이브의 축의 개수에 따라 Axis가 생성되는 것을 확인할 수 있습니다.

참고로 Beckhoff 드라이브 제품을 사용할 경우에는 TwinCAT 내에서 드라이브에 대한 설정을 하는 'Drive Manager'라는 기능을 지원하고 있습니다. 또한, 만약에 실제 드라이브나 모터 같은 하드웨어가 없더라도 시뮬레이션 축을 구성할 수도 있습니다.

 

위에서 살펴보았듯, TwinCATPLC를 통해 코드를 작성하지 않더라도 간단하게 시운전을 할 수 있습니다. 시운전을 하기 위해 드라이브와 모터에 대한 설정을 마무리합니다. Activate Configuration을 통해 설정을 적용하고 TwinCATRun 모드로 전환합니다.

생성된 축 별로 시운전을 할 수 있으므로, 시운전할 축을 선택한 후 Online 탭을 확인합니다.

Online 탭에서는 PLC 코드 없이 수동으로 모터를 구동할 수 있습니다. 그림에서 확인할 수 있듯 모터와 드라이브의 동작 상태와 현재 위치, 속도 등을 확인할 수 있습니다.

시운전을 위해서는 서보 ON (Servo On)을 하여 드라이브가 구동할 수 있게 해야 합니다. 이러한 설정은 Enabling 부분에서 지정할 수 있습니다. EnablingController, Feed Fw, Feed Bw를 활성화하여 서보 ON을 한 뒤 하단에 있는 버튼을 통해서 간단하게 수동 (Manual) 제어를 할 수 있습니다.

하단에 있는 버튼을 살펴보면 아래와 같습니다.

-         F1/F4: 축을 빠르게 역/정방향으로 움직이는 조그 운전을 진행합니다.

-         F2/F3: 축을 느리게 역/정방향으로 움직이는 조그 운전을 진행합니다.

-         F5: 축을 지정한 포지션(Target Position)과 속도(Target Velocity)만큼 움직입니다.

-         F6: 축의 움직임을 멈춥니다.

-         F8: 에러에 대한 리셋을 진행합니다.

-         F9: Homing 동작을 진행합니다.


조그 버튼을 눌렀을 때 속도나 움직이는 양을 파라미터를 통해 지정할 수 있습니다. 상황에 따라 Parameter 탭의 Manual Motion and Homing을 통해 조그 버튼에 대한 설정 값을 지정합니다.


Online 탭 외에도 Functions 탭에서는 축의 동작을 테스트할 수 있는 다양한 기능을 제공합니다. 추가적으로 Coupling 탭에서는 마스터와 슬레이브 축을 지정하여 동기제어의 시운전도 확인할 수 있습니다.


TwinCAT으로 시운전하기

본격적으로 시운전에 대해 살펴보겠습니다. 우선, 위와 같은 구조물이 있다고 가정하겠습니다.

시운전에 대한 준비 단계에서 드라이브와 모터에 대한 설정을 진행합니다. 이 때, limit과 같은 센서에 대한 설정이 완료되어 있어야 합니다. 추가적으로 비상정지 (E-STOP)회로를 갖추어서 위험한 상황이 발생했을 때 대처할 수 있으면 더욱 좋습니다.


Online 탭에서 Enabling을 통해 서보 ON을 인가합니다. 이 후 속도를 낮춘 상태로 천천히 조그 운전을 진행합니다. 조그 운전을 하기 위해 F2 혹은 F3버튼을 클릭하며,

부하가 구조물에 방해를 받는지 확인합니다. 이 때 구조물에 방해를 받거나 이상이 있으면 바로 누르고 있던 조그 버튼을 떼어, 동작을 멈추어야 합니다.

조그를 이용하여 무사히 구동 범위 (Working distance)까지 동작했다면, Functions 탭에 있는 Reversing Sequence 동작을 활용하여 구동 범위의 양 끝단을 반복하여 움직여 봅니다. Start 모드를 Reversing Sequence로 설정한 다음, Target Position 12에 구동 범위를 지정하고 Target Velcity에 속도를 지정한 후 Start 버튼을 클릭하여 동작일 진행할 수 있습니다. 동작을 멈추기 위해서는 Stop버튼을 클릭합니다.

Reversing Sequence 동작을 다시 진행하되, 이번에는 속도를 올려서 움직여봅니다. 이 동작까지 완료되었다면 실제 구조물을 동작할 속도로 Reversing Sequence를 진행합니다.


모터에 대한 움직임을 진행하여 정상적으로 동작이 완료되었는지 확인합니다. 이 때 TwinCAT에서 제공하는 기능을 활용하여 시운전을 했습니다. 간단하게 살펴보면, 아래 순서도와 같습니다.


Functions 테스트하기

TwinCAT에서 제공하는 Functions의 모드를 통해 각 축 별로 기능 테스트를 할 수 있습니다. 이는 드라이브가 구동 가능 상태인 서보 ON된 상태에서 진행할 수 있습니다. 위에서 잠깐 Reversing Sequence를 사용하기 위해 확인했지만, Functions 탭을 살펴보면 현재 포지션 (Actual Position)을 확인할 수 있고 Extended Start 부분의 Start Mode를 선택하여 다양한 모드를 테스트할 수 있습니다.

 

이러한 모드들은 당연히 NC의 축에 설정된 파라미터에 따라 움직임이 달라질 수 있습니다. 또한 실제 하드웨어가 없는 시뮬레이션 모드에서도 사용할 수 있습니다. 실제 Functions에서 지원하는 기능들을 이용해 모터를 구동한 영상도 이번 안내서에서 확인할 수 있습니다.

-       Absolute: 절대 좌표로 움직이는 동작을 진행합니다. 1000이라는 Target Position이 있을 때 Start를 클릭하면 1000이라는 위치만큼 움직입니다.

-       Relative: 상대 좌표로 움직이는 동작을 진행합니다. 1000이라는 Target Position이 있을 때 Start를 클릭하면 1000에서 2000, 2000에서 3000과 같이 상대적인 위치로 동작합니다.

-       Endless+/-: Stop 버튼을 클릭하기 전까지 계속 정방향/역방향으로 움직입니다.

-       Modulo: Parameter에 설정된 Modulo 값으로 동작합니다. 360도라는 값을 지정했을 때, Start 버튼을 클릭하면 360만큼 움직이는 것을 확인할 수 있습니다.

-       Modulo shortest way: Parameter에 설정된 Modulo 값보다 작은 위치 값을 입력하고, 그 위치 값에 도달하는 가장 짧은 길로 움직입니다. 예를 들어, 360도라는 파라미터 값을 지정한 후 Target Position350을 입력했을 때, -10이라는 위치로 움직이게 됩니다.

-       Modulo plus direct: Parameter에 설정된 Modulo 값으로 동작하되, 정방향으로만 움직입니다.

-       Modulo minus direct: Parameter에 설정된 Modulo 값으로 동작하되, 역방향으로만 움직입니다.

-       Jog +/-: Start 버튼을 클릭하면 정방향/역방향으로 Jog 동작을 진행합니다. 이 때 Jog 동작 시 움직이는 값은 Parameter에서 지정할 수 있습니다.

-       +1 ~ -1: 해당 숫자만큼 모터를 움직일 수 있습니다.

-       Reversing Sequence: Target Position1Target Position2를 지정한 후 동작을 진행하면, Target Position12 사이에서 움직이는 것을 확인할 수 있습니다.

-       Start/Stop Sequence: Idle Time에 맞춰서 모터의 동작이 멈췄다가 다시 진행되는 것을 확인할 수 있습니다. 예를 들어, Target Position2000으로, Idle Time2초로 지정하면 2000씩 움직이되 2초 간격을 두고 움직이는 것을 확인할 수 있습니다.

-       Velo Step Sequence: Target Velocity를 지정하면 해당 속도 대로 동작을 진행합니다. Driving Time은 시퀀스를 동작하는 횟수를 의미합니다.

 

동영상으로 확인하기

위에서 소개한 Online 탭과 Functions 탭에서 모터를 구동한 모습을 촬영했습니다.

테스트 환경

-       CX5140 + EL7211 (Servo Drive) + AM8111 (Motor)

-       TwinCAT 3 4024.12 버전

 

Online 탭에서 동작 확인하기

Online 탭에서 동작상태를 확인하는 영상입니다


Functions 탭에서 동작 확인하기

Functions 탭에서 각 Function에 따라 동작상태를 확인할 수 있습니다.




 

마치며

위에서 언급하였듯 실제 하드웨어가 없는 상태에서 시뮬레이션이 가능하기 때문에 TwinCAT 3가 설치된 PC에서 Online 탭이나 Functions 탭에 대해 테스트를 할 수도 있습니다. 참고로 NC PTP를 이용할 때에는 라이선스가 필요로 하지만, 테스트 용도로 사용할 때는 7일마다 갱신 가능한 체험판 라이선스 (7 Days Trial License)를 이용하면 됩니다.


이번에는 TwinCAT에서 제공하는 기능을 활용한 시운전 방법에 대해 살펴보았습니다. 구조물이 정상적으로 구동 가능한지 TwinCAT을 통하여 시운전을 진행할 수 있으며, 그 외에도 Functions 탭을 활용하여 필요한 동작들을 테스트할 수도 있습니다. 동작을 확인하였다면 TwinCAT PLC에서 Motion에 대한 코드를 구현할 수 있습니다. 이 때 Tc2_Mc2와 같은 라이브러리를 활용하여 PLC 코드를 작성하고, 이를 통해서 드라이브나 모터에 대한 시퀀스를 구현할 수 있습니다.

 

 

내용에 대해 심화 내용이 필요하신 경우, 해당 내용을 댓글로 적어 주시면 다음 연재 시 반영하도록 하겠습니다.

 

문의사항은 아래 연락처로 연락 부탁드립니다.

전화 : 02-2107-3242 (대표전화, 내선번호 1: 영업 및 마케팅, 내선번호 2: 기술)

홈페이지 : https://www.beckhoff.com/kr/

제품문의 : Info-KR@beckhoff.com

기술문의 : support-kr@beckhoff.com

 

참고자료

TwinCAT 3 NC PTP [링크]

 

 

본 문서의 무단전재 및 재배포를 금지합니다

본 문서는 공식 매뉴얼이 아닌, 교육용 참고자료임을 명시합니다


2021 1217

Beckhoff Korea / Lisa Kim

댓글

이 블로그의 인기 게시물

[IPC 메뉴얼] BECKHOFF PC 기본 설정 방법

트라이텍, EtherCAT과 DeviceNet [월간CONTROL 2013/11]

[쉽고 간단한 안내서] TwinCAT PLC HMI와 TwinCAT HMI