class ServoCalibrateContinuous

Public Instance Methods

delay_servo(t) click to toggle source
# File lib/examples/servo_calibrate_continuous.rb, line 85
def delay_servo(t)
  t.times do
    delay 1
    servo_refresh
  end
end
loop() click to toggle source
# File lib/examples/servo_calibrate_continuous.rb, line 50
def loop
  if @test_state == 2

    40.times { blink led, 50 }    # 40 x 50 ms is a 2 second blinking light
                                  #  ** Warning! **  "... danger Will Robinson!"
    toggle led                    # turn it on keep it on -- keep hands away
    servo1.speed -90
    servo2.speed -90
    servo3.speed -90
    servo4.speed -90
    delay_servo 2000              # two full seconds max clockwise
    servo1.speed 90
    servo2.speed 90
    servo3.speed 90
    servo4.speed 90
    delay_servo 2000              # two full seconds max counter clockwise
    
    @test_state = 1               # setup for zero speed test/adjust
    @cycle_time = millis + 20000
    servo1.speed 0
    servo2.speed 0
    servo3.speed 0
    servo4.speed 0
    toggle led                    # lights off, OK  you have 20 seconds to adjust
  end

  if @cycle_time - millis <= 0
      @test_state = 2
  else
      servo_refresh
  end
      
end