Sha256: 318c8cb51f10acade8506140326465406ed1c17b927451b9f83abf9cc7b318c8

Contents?: true

Size: 1.12 KB

Versions: 27

Compression:

Stored size: 1.12 KB

Contents

require 'artoo'
require 'artoo/drivers/roomba'

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
  play_jingle_bells
end

def play_jingle_bells
  roomba.song(JingleBells.song0, 0)
  roomba.song(JingleBells.song1, 1)
  roomba.song(JingleBells.song0, 2)
  roomba.song(JingleBells.song2, 3)

  roomba.play(0)
  sleep(7)
  roomba.play(1)
  sleep(7)
  roomba.play(2)
  sleep(7)
  roomba.play(3)
end

class JingleBells
  extend Artoo::Drivers::Roomba::Note

  class << self
    def song0
      [n(B), n(B), n(B, HALF),
       n(B), n(B), n(B, HALF),
       n(B), n(D), n(G), n(A),
       n(B, WHOLE)]
    end

    def song1
      [n(C), n(C), n(C), n(C),
       n(C), n(B), n(B, HALF),
       n(B), n(A), n(A), n(B),
       n(A, HALF), n(D, HALF)]
    end

    def song2
      [n(C), n(C), n(C), n(C),
       n(C), n(B), n(B), n(B),
       n(D), n(D), n(C), n(A),
       n(G, WHOLE)]
    end

    def n(note, duration=QUARTER)
      [note, duration]
    end
  end
end

Version data entries

27 entries across 27 versions & 1 rubygems

Version Path
artoo-1.8.2 examples/christmas_roomba.rb
artoo-1.8.1 examples/christmas_roomba.rb
artoo-1.8.0 examples/christmas_roomba.rb
artoo-1.6.7 examples/christmas_roomba.rb
artoo-1.6.6 examples/christmas_roomba.rb
artoo-1.6.5 examples/christmas_roomba.rb
artoo-1.6.4 examples/christmas_roomba.rb
artoo-1.6.3 examples/christmas_roomba.rb
artoo-1.6.2 examples/christmas_roomba.rb
artoo-1.6.1 examples/christmas_roomba.rb
artoo-1.6.0 examples/christmas_roomba.rb
artoo-1.5.0 examples/christmas_roomba.rb
artoo-1.4.1 examples/christmas_roomba.rb
artoo-1.4.0 examples/christmas_roomba.rb
artoo-1.3.0 examples/christmas_roomba.rb
artoo-1.2.2 examples/christmas_roomba.rb
artoo-1.2.1 examples/christmas_roomba.rb
artoo-1.2.0 examples/christmas_roomba.rb
artoo-1.1.1 examples/christmas_roomba.rb
artoo-1.1.0 examples/christmas_roomba.rb