private int Move(GT.Interfaces.PWMOutput pwm, int position, int minPosition, int maxPosition, int pwmMin, int pwmMax) { position = position > maxPosition ? maxPosition : position; position = position < minPosition ? minPosition : position; Servo(pwm, GetPwmPulseValue(pwmMax, pwmMin, position)); return(position); }
public RoboticArmController(Extender extender, GT.Socket.Pin clawPin, GT.Socket.Pin armPin, uint pwmPulsePeriod) { if (extender == null) { throw new ApplicationException("robotic arm pwm extender not set up correctly"); } _pwmPulsePeriod = pwmPulsePeriod; _clawPwm = extender.SetupPWMOutput(clawPin); _armPwm = extender.SetupPWMOutput(armPin); Reset(); }
public RoboticArmController(Extender extender, GT.Socket.Pin clawPin, GT.Socket.Pin armPin, uint pwmPulsePeriod) { if (extender == null) { throw new ApplicationException("robotic arm pwm extender not set up correctly"); } _pwmPulsePeriod = pwmPulsePeriod; _clawPwm = extender.SetupPWMOutput(clawPin); _armPwm = extender.SetupPWMOutput(armPin); Reset(); }
private void Servo(GT.Interfaces.PWMOutput pwm, int pwmPulseHighTime) { pwm.SetPulse(_pwmPulsePeriod, (uint)pwmPulseHighTime); }