class Artoo::Drivers::AnalogSensor
AnalogSensors driver behaviors
Constants
- COMMANDS
Attributes
lower[R]
previous_read[R]
upper[R]
Public Instance Methods
analog_read(pin)
click to toggle source
# File lib/artoo/drivers/analog_sensor.rb, line 11 def analog_read(pin) connection.analog_read(pin) end
start_driver()
click to toggle source
Calls superclass method
# File lib/artoo/drivers/analog_sensor.rb, line 15 def start_driver @previous_read = 0 @upper = additional_params[:upper].nil? ? 1023 : additional_params[:upper] @lower = additional_params[:lower].nil? ? 0 : additional_params[:lower] every(interval) do new_value = connection.analog_read(pin) update(new_value) unless new_value.nil? end if !interval.nil? and interval > 0 super end
Private Instance Methods
update(new_val)
click to toggle source
Publishes events according to the button feedback
# File lib/artoo/drivers/analog_sensor.rb, line 30 def update(new_val) @previous_read = new_val if new_val >= @upper publish(event_topic_name("update"), "upper", new_val) publish(event_topic_name("upper"), new_val) elsif new_val <= @lower publish(event_topic_name("update"), "lower", new_val) publish(event_topic_name("lower"), new_val) end end