Class: Artoo::Adaptors::Crazyflie
- Inherits:
-
Adaptor
- Object
- Adaptor
- Artoo::Adaptors::Crazyflie
- Defined in:
- lib/artoo/adaptors/crazyflie.rb
Overview
Connect to a crazyflie quadcopter
Instance Attribute Summary collapse
-
#commander ⇒ Object
readonly
Returns the value of attribute commander.
-
#crazyflie ⇒ Object
readonly
Returns the value of attribute crazyflie.
Instance Method Summary collapse
-
#connect ⇒ Boolean
Creates a connection with crazyflie.
-
#disconnect ⇒ Boolean
Closes connection with device.
-
#firmware_name ⇒ Object
device info interface.
-
#method_missing(method_name, *arguments, &block) ⇒ Object
Uses method missing to call device actions.
- #version ⇒ Object
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(method_name, *arguments, &block) ⇒ Object
Uses method missing to call device actions
47 48 49 |
# File 'lib/artoo/adaptors/crazyflie.rb', line 47 def method_missing(method_name, *arguments, &block) @crazyflie.send(method_name, *arguments, &block) end |
Instance Attribute Details
#commander ⇒ Object (readonly)
Returns the value of attribute commander.
8 9 10 |
# File 'lib/artoo/adaptors/crazyflie.rb', line 8 def commander @commander end |
#crazyflie ⇒ Object (readonly)
Returns the value of attribute crazyflie.
8 9 10 |
# File 'lib/artoo/adaptors/crazyflie.rb', line 8 def crazyflie @crazyflie end |
Instance Method Details
#connect ⇒ Boolean
Creates a connection with crazyflie
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/artoo/adaptors/crazyflie.rb', line 12 def connect require 'crubyflie' unless defined?(::Crubyflie) @crazyflie = ::Crubyflie::Crazyflie.new('/tmp/test') source = additional_params[:source] || "" if source.empty? flies = @crazyflie.scan_interface if flies.empty? raise "No crazyflies!" end source = flies.first end @crazyflie.open_link(source) @commander = ::Crubyflie::Commander.new(@crazyflie) super end |
#disconnect ⇒ Boolean
Closes connection with device
30 31 32 33 34 |
# File 'lib/artoo/adaptors/crazyflie.rb', line 30 def disconnect @crazyflie.close_link super end |
#firmware_name ⇒ Object
device info interface
37 38 39 |
# File 'lib/artoo/adaptors/crazyflie.rb', line 37 def firmware_name "Crazyflie" end |
#version ⇒ Object
41 42 43 |
# File 'lib/artoo/adaptors/crazyflie.rb', line 41 def version Crubyflie::VERSION end |