Class: Artoo::Adaptors::ArdroneNavigation

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

Overview

Connect to a ARDrone 2.0 navigation data stream

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

Calls ardrone actions using method missing



28
29
30
# File 'lib/artoo/adaptors/ardrone_navigation.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_navigation.rb', line 8

def ardrone
  @ardrone
end

Instance Method Details

#connectBoolean

Creates connection with Argus NavStreamer and starts ardrone device

Returns:

  • (Boolean)


12
13
14
15
16
17
# File 'lib/artoo/adaptors/ardrone_navigation.rb', line 12

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

#disconnectBoolean

Closes connection with ardrone device

Returns:

  • (Boolean)


21
22
23
24
# File 'lib/artoo/adaptors/ardrone_navigation.rb', line 21

def disconnect
  ardrone.close
  super
end