트리거 기능 문의
- 백영진
- 2019-07-15
- 8,489
안녕하세요? QMC 백영진 입니다.
하기 코드에서,. 긴급 문의가 있습니다.
메일로 문의 드린 내용을 같이 공유 합니다.
//Start Pos 비교기 Setting
if(bMode == CMDMODE)
AxmSetCommandData32Qi(lAxis, QiCNTC1Write, (DWORD)(dStartPos/dUnitPulse));
else if(bMode == ACTMODE)
AxmSetCommandData32Qi(lAxis, QiCNTC2Write,(DWORD)(dStartPos/dUnitPulse));
- AxmSetCommandData32Qi(lAxis, QiCNTC2Write,(DWORD)(dStartPos/dUnitPulse));
-. dStartPos : Trigger 시작 위치
-. dEndPos : Trigger 종료 위치
위 함수를 이용해서 아래 그림처럼 모션구동중에 특정 시작 포지션에서 Gate를 ON하고 특정 끝 포지션에서 Gate신호를 OFF합니다.
- 헌데, 간헐적으로(100line당 2line정도) Off 시점이 1~3mm 더 빨리 Off 되는 경우가 있습니다. (속도, 300mm/s, 가감속 3,000mm/s^2)
- Actual pos을 보장하는 것이 맞는지? 정확한 사유에 대해 문의를 드립니다.
추가 질문으로
하기 loop를 실행하면서 체크하는 부분은 샘플과 다른 부분입니다.
해당 부분이 꼭 필요하여서 구현한 것으로 보이는데, 어떤 행위를 하는 것인지? 설명을 요청 드립니다.
while ( _TRIGGER_DATA::IsRunning( lAxis ) && ( pData->_lPosCount > lPosIndex ) )
{
nRet = AxmGetCommandData32Qi( lAxis, QiSCRSTAT2Read, &dwData );
이하 생략… à 어떤 행위를 하는 것인지요?
감사합니다.
안녕하십니까 아진엑스텍입니다.
안녕하십니까 아진엑스텍입니다.
문의하신 Q&A는 적어주신 메일로 회신드렸습니다.
확인 부탁드립니다. 감사합니다.