// 신호 검출 구동 - AxmMoveSignalSearch // detect(검출신호) // - PosEndLimit(0) - (+)Elm(End limit) +방향 리미트 센서 신호 // - NegEndLimit(1) - (-)Elm(End limit) -방향 리미트 센서 신호 // - PosSloLimit(2) - (+)Slm(Slow Down limit) 신호 - 사용하지 않음 // - NegSloLimit(3) - (-)Slm(Slow Down limit) 신호 - 사용하지 않음 // - HomeSensor(4) - IN0(ORG) 원점 센서 신호 // - EncodZPhase(5) - IN1(Z상) Encoder Z상 신호 // - UniInput02(6) - IN2(범용) 범용 입력 2번 신호 // - UniInput03(7) - IN3(범용) 범용 입력 3번 신호 // edge(검출Edge) : SIGNAL_DOWN_EDGE(0)-다운에지, SIGNAL_UP_EDGE(1)-업에지 // mode(정지방법) : EMERGENCY_STOP(0)-급정지, SLOWDOWN_STOP(1)-감속정지 public void SignalSeek(AXT_MOTION_HOME_DETECT detect, AXT_MOTION_EDGE edge, AXT_MOTION_STOPMODE mode) { lock (execLock) { Validate(CAXM.AxmMoveSignalSearch(Index, LowVelocity, LowAcceleration, (int)detect, (int)edge, (int)mode)); } }
// Soft Limit 신호 설정 - AxmSignalSetSoftLimit // use(사용유무) : DISABLE(0), ENABLE(1) // stopMode(정지방법) : EMERGENCY_STOP(0)-급정지, SLOWDOWN_STOP(1)-감속정지 // selection(비교위치) : COMMAND(0)-목표위치(Command Position), ACTUAL(1)-실제위치(Actual Position) // posLimitPos(+Limit위치) // negLimitPos(-Limit위치) public void SetSoftSignalLimit(AXT_USE use, AXT_MOTION_STOPMODE stopMode, AXT_MOTION_SELECTION selection, double posLimitPos, double negLimitPos) { Validate(CAXM.AxmSignalSetSoftLimit(Index, (UInt32)use, (UInt32)stopMode, (UInt32)selection, posLimitPos, negLimitPos)); }
// 비상정지 신호 설정 - AxmSignalSetStop // stopMode(정지방법) : EMERGENCY_STOP(0)-급정지, SLOWDOWN_STOP(1)-감속정지(PCI-N404/804 지원안함) // level(+Limit) : LOW(0)-B접점, HIGH(1)-A접점, UNUSED(2)-사용안함, USED(3)-현상태유지 public void SetEStopLevel(AXT_MOTION_STOPMODE mode, AXT_MOTION_LEVEL_MODE level) { Validate(CAXM.AxmSignalSetStop(Index, (UInt32)mode, (UInt32)level)); }
// Limit 신호 설정 - AxmSignalSetLimit // stopMode(정지방법): EMERGENCY_STOP(0)-급정지, SLOWDOWN_STOP(1)-감속정지 // posLevel(+Limit) : LOW(0)-B접점, HIGH(1)-A접점, UNUSED(2)-사용안함, USED(3)-현상태유지 // negLevel(-Limit) : LOW(0)-B접점, HIGH(1)-A접점, UNUSED(2)-사용안함, USED(3)-현상태유지 public void SetSignalLimit( AXT_MOTION_STOPMODE stopMode, AXT_MOTION_LEVEL_MODE posLevel, AXT_MOTION_LEVEL_MODE negLevel) { Validate(CAXM.AxmSignalSetLimit(Index, (UInt32)stopMode, (UInt32)posLevel, (UInt32)negLevel)); }