Class: Artoo::Adaptors::Ardrone

Inherits:
Adaptor
  • Object
show all
Defined in:
lib/artoo/adaptors/ardrone.rb

Overview

Connect to a ARDrone 2.0 (ardrone2.parrot.com/)

Instance Attribute Summary collapse

Attributes inherited from Adaptor

#parent, #port

Instance Method Summary collapse

Methods inherited from Adaptor

#connect_to, #connect_to_serial, #connect_to_tcp, #connect_to_udp, #connected?, #initialize, #reconnect

Constructor Details

This class inherits a constructor from Artoo::Adaptors::Adaptor

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(method_name, *arguments, &block) ⇒ Object



28
29
30
# File 'lib/artoo/adaptors/ardrone.rb', line 28

def method_missing(method_name, *arguments, &block)
  ardrone.send(method_name, *arguments, &block)
end

Instance Attribute Details

#ardroneObject (readonly)

Returns the value of attribute ardrone.



8
9
10
# File 'lib/artoo/adaptors/ardrone.rb', line 8

def ardrone
  @ardrone
end

Instance Method Details

#connectObject



17
18
19
20
21
# File 'lib/artoo/adaptors/ardrone.rb', line 17

def connect
  require 'argus' unless defined?(::Argus)
  @ardrone = Argus::Drone.new(connect_to_udp, port.host, port.port)
  super
end

#disconnectObject



23
24
25
26
# File 'lib/artoo/adaptors/ardrone.rb', line 23

def disconnect
  ardrone.stop
  super
end

#finalizeObject



10
11
12
13
14
15
# File 'lib/artoo/adaptors/ardrone.rb', line 10

def finalize
  if connected?
    ardrone.land
    ardrone.stop
  end
end