11.1.25. cmcPmCfgSetSeqMode¶
SYNOPSYS¶
VT_I4 cmcPmCfgSetSeqMode ([in] VT_I4 BoardID, [in] VT_I4 NodeId, [in] VT_I4 SeqMode )
DESCRIPTION¶
cmcPmCfgSetSeqMode() 함수는 현재 이송이 진행되고 있는 축에 새로운 이송 명령이 하달되었을 때, 처리를 어떻게 할 것인지에 대한 모드를 설정합니다. ceSDK에서는 현재 이송 명령이 진행되고 있으므로 에러로 처리하는 모드와 이전 이송 명령이 완료될 때까지 내부적으로 루프를 돌면서 기다리다가 이전 명령이 완료되면 새로운 명령을 실행하는 모드를 지원합니다.
시퀀스(Sequence) 모드 설정은 모든 축에 공통적으로 적용됩니다.
이 함수의 사용과 호출에 있어, 제공된 ㈜커미조아의 함수 헤더 Visual Basic 에서는 함수의 첨두어 cmc 가 붙지 않습니다.
PARAMETER¶
▶ BoardID : 사용자가 설정한 디바이스(보드) ID.
▶ NodeId : 노드 번호. 노드 번호는 3부터 시작합니다.
▶ SeqMode : 현재 이송이 진행되고 있는 축에 새로운 이송 명령이 하달되었을 때 이의 처리를 어떻게 할 것인지에 대한 시퀀스(Sequence) 모드를 설정 혹은 반환합니다. 이 값의 의미는 다음과 같습니다.
Value |
Meaning |
---|---|
0 (ccmcSEQM_SKIP_RUN)[Default]
|
|
1 (ccmcSEQM_WAIT_RUN)
|
|
RETURN VALUE¶
Value |
Meaning |
---|---|
음수 |
수행 실패 |
0(ERR_NONE) |
수행 성공 |
REFERENCE¶
Warning
시퀀스(Sequence) 모드가 ccmcSEQM_SKIP_RUN[Default]으로 설정된 경우에 이전 이송 명령이 아직 끝나지 않은 상태에서 새로운 이송 명령이 하달되면 에러 처리되고 해당 이송 명령은 실행되지 않습니다. 따라서 이 모드에서 이송 명령을 내릴 때 사용자는 이전의 이송 명령이 완료되었음을 확인하는 것이 바람직합니다.
EXAMPLE¶
1 2 3 4 5 6 7 8 9 | C/C++
#include “ComiMLink3_SDK.h”
#include “ComiMLink3_SDK_Def.h”
long BoardID = 0;
long nSeqMode = 0;
//시퀀스 모드를 SKIP RUN 모드로 설정합니다.
cmcPmCfgSetSeqMode(BoardID, 3, ccmcSEQM_SKIP_RUN );
//현재 설정된 Sequence 모드를 반환합니다.
cmcPmCfgGetSeqMode(BoardID, 3, &nSeqMode );
|