Drivers

Artoo has a extensible system for connecting to hardware devices.

Roomba


Allows user to control a Roomba iRobot Create using Artoo.

How To Connect

require 'artoo'
connection :roomba, :adaptor => :roomba, :port => '/dev/ttyUSB0'
device :roomba, :driver => :roomba, :connection => :roomba

How To Use

Example controlling a Roomba.

require 'artoo'

connection :roomba, :adaptor => :roomba, :port => '/dev/ttyUSB0'
device :roomba, :driver => :roomba, :connection => :roomba

work do
  roomba.safe_mode
  roomba.nudge_left
  roomba.nudge_right
  roomba.nudge_right
  roomba.nudge_left
end

Commands

start

Puts roomba in start mode.

Returns

nil

safe_mode

Puts roomba in safe mode.

Returns

nil

full_mode

Puts roomba in full mode.

Returns

nil

forward(seconds, speed=slow)

Moves roomba forward for seconds amount of time at speed (speed(int) between 0 and 500).

Params
  • seconds - params
  • speed=slow - params
Returns

nil

fast_forward(seconds)

Moves roomba forward for seconds amount of time at max speed.

Params
  • seconds - params
Returns

nil

stop

Stops the roomba.

Returns

nil

backwards(seconds)

Moves roomba backwards for seconds amount of time at default speed.

Params
  • seconds - params
Returns

nil

nudge_left

Turns roomba a little bit to the left.

Returns

nil

nudge_right

Turns roomba a little bit to the right.

Returns

nil

turn_left(seconds=1) → nil

Turns roomba to the left the specefied amount of seconds.

Params
  • seconds - params
Returns

nil

turn_right(seconds=1) → nil

Turns roomba to the right the specefied amount of seconds.

Params
  • seconds - params
Returns

nil

turn_around

Turns roomba 180 degrees.

Returns

nil

drive(speed, direction, seconds = 0) → nil

Drives the roomba at speed (from 0 to 500) and direction (straight=32768, clockwise=65535, counterclockwise=1) for the specefied amount of time (seconds).

Params
  • speed - params
  • direction - params
  • seconds - params
Returns

nil

play(song_number)

Plays the song specified by song_numer.

Params
  • song_number - params
Returns

nil

song(notes[Collection], song_number[Integer])

Stores a song in the roomba.

Params
  • notes[Collection] - params
  • song_number[Integer] - params
Returns

nil

beep

Makes roomba beep.

Returns

nil

Compatibility