This page contains information about the architecture of the driver and different techniques used for its development.
TBA
TBA
TBA
TBA
$ cd /path/to/bebop_ws
$ catkin clean --cmake-cache
$ catkin build bebop_driver --cmake-args -DRUN_HARDWARE_TESTS=ON
Warning
Bebop in the loop tests perform live unit tests with a real robot. Please proceed with caution and execute the tests in an area with at least 5 meters of clearance radius (empty space) around the Bebop.
$ cd /path/to/bebop_ws/build/bebop_driver
$ make tests
$ rostest --text bebop_driver bebop_itl_test.test
Warning
Since version 0.6, Parrot ARSDK, the main underlying dependency of bebop_autonomy is not build inline anymore. Instead, the slightly patched and catkinized version of it, called parrot_arsdk, is fetched as a dependency. The following documentation needs to be updated.
- Update the
GIT_TAG
ofARDroneSDK3
inbebop_driver/CMakeLists.txt::add_custom_target::./repo init ... -b GIT_TAG
to your desired commit hash, branch or tag (release). The official upstream repository is hosted here. - Checkout (or browse) the upstream repository at the same hash used in step (1) and open
release.xml
file. From this file, extract the commit hash ofarsdk-xml
from therevision
property of this XML tag:<project name="arsdk-xml" ... revision="" />
. - Open
bebop_driver/scripts/meta/generate.py
and updateLIBARCOMMANDS_GIT_HASH
variable to the hash obtained in step (2). - Change the working diretory to
bebop_driver/scripts/meta
, then executegenerate.py
from the command line. This will regenerate all automatically generated message definitions, header files and documentations. - Copy the generated files to their target locations by calling
./install.sh
. - In
bebop_driver/include/bebop_driver/autogenerated/ardrone3_setting_callbacks.h
change the following varialbles:
ARCONTROLLER_DICTIONARY_KEY_ARDRONE3_PILOTINGSETTINGSSTATE_MAXDISTANCECHANGED_VALUE
toARCONTROLLER_DICTIONARY_KEY_ARDRONE3_PILOTINGSETTINGSSTATE_MAXDISTANCECHANGED_CURRENT
.ARCONTROLLER_DICTIONARY_KEY_ARDRONE3_PILOTINGSETTINGSSTATE_BANKEDTURNCHANGED_VALUE
toARCONTROLLER_DICTIONARY_KEY_ARDRONE3_PILOTINGSETTINGSSTATE_BANKEDTURNCHANGED_STATE
ARCONTROLLER_DICTIONARY_KEY_ARDRONE3_PILOTINGSETTINGSSTATE_CIRCLINGRADIUSCHANGED_VALUE
toARCONTROLLER_DICTIONARY_KEY_ARDRONE3_PILOTINGSETTINGSSTATE_CIRCLINGRADIUSCHANGED_CURRENT
ARCONTROLLER_DICTIONARY_KEY_ARDRONE3_PILOTINGSETTINGSSTATE_CIRCLINGALTITUDECHANGED_VALUE
toARCONTROLLER_DICTIONARY_KEY_ARDRONE3_PILOTINGSETTINGSSTATE_CIRCLINGALTITUDECHANGED_CURRENT
These changes are required becasue the upstream XML file is inconsistent for a couple of variable names.
- Remove
build
anddevel
space of yourcatkin
workspace, then re-build it.