티스토리 뷰

안녕하세요. 구스입니다.


오늘은 RIO 제품군에서 사용할 수 있는 NI SoftMotion에 대한 간략한 설명을 적을까 합니다.


NI SoftMotion은 LabVIEW 프로젝트 상에서 모션 어플리케이션 개발 및 솔리드웍스(SolidWorks)에서 만든 시뮬레이션 조정을 할 수 있게 도와주는 LabVIEW 모듈입니다. 


LabVIEW 프로젝트에서 모션 제어를 손쉽게 도와주는 툴이라고 보시면 됩니다. 


오늘 알아볼 내용은 바로 NI SoftMotion function에서 Stop Mode에 대한 부분입니다.

모션을 제어하면서 갑자기 멈춰야 하는 경우가 있을때 Emergency Stop을 사용하거나 소프트웨어적으로 Stop 함수를 전달할 수가 있는데요.


Stop 함수를 전달할 때 어떤식으로 처리가 되는지를 나타내는 것이 바로 NI SoftMotion의 Stop Mode입니다.

Stop 모드는 크게 Decelerate, Immediate, Disable 드라이브 모드 3가지로 구분을 할 수가 있습니다.




각 모드의 설명은 아래와 같습니다. 


  • Decelerate : Decelerate 모드에서는 Stop 함수가 호출이 되었을 때, Deceleration, Deceleration Jerk를 이용하여 Axis의 속도를 줄이면서 Stop을 하게 됩니다. 감속의 값에 따라 모션의 마지막 위치가 결정이 됩니다. 

  • Immediate : Axis를 바로 정지시키는 모드입니다. Immediate 모드는 Axis의 상태에 따라 3가지로 구분하여 처리될 수 있습니다.

    • Axis가 구동되지 않고, Axis가 Energize된 상태가 아니라면, Energize 된 상태로 변경이 됩니다.
    • Axis가 구동되지 않고, Energize 된 상태면 아무런 변동이 없습니다.
    • Axis가 구동된 상태라면 Servo Motor의 경우 모터를 멈추기 위해서 기존의 방향의 반대방향에 대한 Full Torque가 주어지게 되고, Step Motor의 경우에는 기존의 펄스를 가능한 빨리 줄여서 멈추게 됩니다. Step 모터의 경우 Position에 대한 오류가 발생할 수도 있습니다.

  • Disable : 명령어를 받자마자 Drive 상태를 OFF로 변경합니다. 


각 모드에 대한 추가적인 자료는 아래의 링크를 통해서 확인할 수 있습니다.

http://zone.ni.com/reference/en-XX/help/371093P-01/nimclvfb/stopmove.mode_00b1005f/



그럼 LabVIEW 코드 상에서 Stop 모드를 변경하는 방법에 대해서 알아보도록 합시다.


SoftMotion 함수상에서 Stop 모드를 변경하기 위해서는 함수위에서 오른쪽 마우스 버튼을 눌러 Select Method에 가시면 3개의 모드를 변경할 수 있습니다.


아래의 그림과 같이 Stop Move에 대한 Mode 변경이 가능합니다. 



또한 Limit에 대한 Stop Mode도 변경을 할 수가 있습니다.


이는 LabVIEW 프로젝트의 Axis Configuration에서 가능합니다. Axis Configuration은 LabVIEW 프로젝트에 생성된 Axis에서 오른쪽 마우스 버튼을 눌러 창을 띄울 수 있습니다. 


아래의 그림과 같이 Axis Configuration에서 Limits & Home 버튼을 누르면 Limit와 Home Switch에 대한 Stop Mode를 설정할 수 있습니다. 





이 글에서는 NI SoftMotion에서 Stop 모드 설정하는 방법에 대해서 알아보았습니다.

그럼 이만 줄이겠습니다.


이 글이 도움이 되셨으면 아래의 하트를 눌러주세요.


댓글