public void Write(IoPoint ioPoint, bool value) { var device = _devices[ioPoint.BoardNo]; var ret = DASK.DO_WriteLine((ushort)device, 0, (ushort)ioPoint.PortNo, (ushort)(value ? 1 : 0)); if (ret != DASK.NoError) { switch (ret) { case DASK.ErrorInvalidCardNumber: throw new DaskException(string.Format("The CardNumber argument {0} is out of range (larger than 31).", device)); case DASK.ErrorCardNotRegistered: throw new DaskException(string.Format("No card registered as {0} CardNumber.", device)); case DASK.ErrorFuncNotSupport: throw new DaskException(string.Format("The {0} function called is not supported by this type of card.", "DO_WriteLine")); case DASK.ErrorInvalidIoChannel: throw new DaskException(string.Format("The specified Channel or Port argument {0} is out of range.", ioPoint.PortNo)); default: throw new DaskException("Unknown error."); } } }
public LayerLight(IoPoint greenIo, IoPoint yellowIo, IoPoint redIo, IoPoint speakerIo) { GreenLamp = greenIo; YellowLamp = yellowIo; RedLamp = redIo; Speeker = speakerIo; }
/// <summary> /// 构造函数 /// </summary> /// <param name="InSensor">感应器信号</param> /// <param name="OutVacuo">吸真空输出</param> public VacuoCylinder(IoPoint InSensor, IoPoint OutVacuo) { _InSensor = InSensor; _OutVacuo = OutVacuo; _watchInhale[0].Restart(); _watchInhale[1].Restart(); }
public Vacuo(IoPoint suckIo, IoPoint brokenIo, IoPoint keepIo) { _suckIo = suckIo; _brokenIo = brokenIo; _keepIo = keepIo; State = VacuoStates.None; }
/// <summary> /// 构造函数 /// </summary> /// <param name="InOrigin">原点信号</param> /// <param name="InMove">动点信号</param> /// <param name="OutMove">动点输出</param> public SingleCylinder(IoPoint InOrigin, IoPoint InMove, IoPoint OutMove) { _InOrigin = InOrigin; _InMove = InMove; _OutMove = OutMove; _watchOrigin.Restart(); _watchMove.Restart(); }
/// <summary> /// 构造函数 /// </summary> /// <param name="InSensor">感应器信号</param> /// <param name="OutVacuo">吸真空输出</param> /// <param name="OutBroken">破真空输出</param> public VacuoBrokenCylinder(IoPoint InSensor, IoPoint OutVacuo, IoPoint OutBroken) { _InSensor = InSensor; _OutVacuo = OutVacuo; _OutBroken = OutBroken; _watchInhale.Restart(); _watchBroken.Restart(); }
public void Write(IoPoint ioPoint, bool value) { var ret = APS168.APS_write_d_channel_output(ioPoint.BoardNo, 0, ioPoint.PortNo, value ? 1 : 0); if (ret < 0) { ThrowIfResultError(ret, string.Format("APS_write_d_channel[{0},{1}]", ioPoint.BoardNo, ioPoint.PortNo)); } }
public SingleCylinder2(IoPoint InOrigin1, IoPoint InOrigin2, IoPoint InMove1, IoPoint InMove2, IoPoint OutMove) { _InOrigin1 = InOrigin1; _InOrigin2 = InOrigin2; _InMove1 = InMove1; _InMove2 = InMove2; _OutMove = OutMove; _watchOrigin.Restart(); _watchMove.Restart(); }
public bool Read(IoPoint ioPoint) { var value = 0; if ((ioPoint.IoMode & IoModes.Responser) != 0) { var ret = APS168.APS_read_d_output(ioPoint.BoardNo, 0, ref value); } else if ((ioPoint.IoMode & IoModes.Senser) != 0) { var ret = APS168.APS_read_d_input(ioPoint.BoardNo, 0, ref value); } return((value & (1 << ioPoint.PortNo)) > 0); }
public override bool Read(IoPoint ioPoint) { byte value = 0; uint ret = 0; if ((ioPoint.IoMode & IoModes.Responser) != 0) { ret = Motion.mAcm_AxDoGetBit(m_Axises[ioPoint.BoardNo], (ushort)ioPoint.PortNo, ref value); } else if ((ioPoint.IoMode & IoModes.Senser) != 0) { ret = Motion.mAcm_AxDiGetBit(m_Axises[ioPoint.BoardNo], (ushort)ioPoint.PortNo, ref value); } return(ret != (uint)ErrorCode.SUCCESS ? false : value > 0 ? true : false); }
public bool Read(IoPoint ioPoint) { var device = _devices[ioPoint.BoardNo]; ushort value = 0; var ret = 0; if ((ioPoint.IoMode & IoModes.Responser) == 0) { ret = DASK.DI_ReadLine((ushort)device, 0, (ushort)ioPoint.PortNo, out value); } else { ret = DASK.DO_ReadLine((ushort)device, 0, (ushort)ioPoint.PortNo, out value); } if (ret != DASK.NoError) { switch (ret) { case DASK.ErrorInvalidCardNumber: throw new DaskException(string.Format("The CardNumber argument {0} is out of range (larger than 31).", device)); case DASK.ErrorCardNotRegistered: throw new DaskException(string.Format("No card registered as {0} CardNumber.", device)); case DASK.ErrorFuncNotSupport: throw new DaskException(string.Format("The {0} function called is not supported by this type of card.", "DO_WriteLine")); case DASK.ErrorInvalidIoChannel: throw new DaskException(string.Format("The specified Channel or Port argument {0} is out of range.", ioPoint.PortNo)); default: throw new DaskException("Unknown error."); } } return(value > 0); }
public EventButton(IoPoint pressedIo) { PressedIO = pressedIo; }
public AnalogSignal(IoPoint ioPoint) { _ioPoint = ioPoint; }
public bool Read(IoPoint ioPoint) { return(ApsController.Read(ioPoint)); }
public void Write(IoPoint ioPoint, bool value) { ApsController.Write(ioPoint, value); }
/// <summary> /// 读取DIO的信号 /// </summary> /// <param name="ioPoint"></param> /// <returns></returns> public override bool Read(IoPoint ioPoint) { return(false); }
/// <summary> /// 输出DO的信号 /// </summary> /// <param name="ioPoint"></param> /// <param name="value"></param> public override void Write(IoPoint ioPoint, bool value) { }
public LightButton(IoPoint pressedIo, IoPoint lightIo) : base(pressedIo) { _lightIo = lightIo; }
public Wheel(IoPoint directIoPoint, IoPoint reverseIoPoint) { _directIoPoint = directIoPoint; _reverseIoPoint = reverseIoPoint; }
public Wheel(IoPoint directIoPoint) { _directIoPoint = directIoPoint; }
public override void Write(IoPoint ioPoint, bool value) { Motion.mAcm_AxDoSetBit(m_Axises[ioPoint.BoardNo], (ushort)ioPoint.PortNo, (byte)(value ? 1 : 0)); }
public Signal(IoPoint signalPoint) { _signalPoint = signalPoint; }
public override bool Read(IoPoint ioPoint) { return(0 > 0); }
public Sensor(IoPoint ioPoint) { _ioPoint = ioPoint; }
/// <summary> /// 写 /// </summary> /// <param name="ioPoint"></param> /// <param name="value"></param> public abstract void Write(IoPoint ioPoint, bool value);
public Vacuo(IoPoint suckIo) : this(suckIo, null) { }
/// <summary> /// 读 /// </summary> /// <param name="ioPoint"></param> /// <returns></returns> public abstract bool Read(IoPoint ioPoint);
public SwitchSignal(IoPoint ioPoint) { _ioPoint = ioPoint; }