zju-fast-lab / fast-racing Goto Github PK
View Code? Open in Web Editor NEWAn Open-source Strong Baseline for SE(3) Planning in Autonomous Drone Racing
License: GNU General Public License v3.0
An Open-source Strong Baseline for SE(3) Planning in Autonomous Drone Racing
License: GNU General Public License v3.0
When compiling the repo, I encounter an error, such as
CMake Error at utils/uav_simulator/Utils/uav_utils/CMakeLists.txt:31 (find_package):
By not providing "FindEigen.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "Eigen", but
CMake did not find one.Could not find a package configuration file provided by "Eigen" with any of
the following names:EigenConfig.cmake eigen-config.cmake
But I type sudo gedit /usr/include/eigen3/Eigen/src/Core/util/Macros.h
in the terminal, and find the version is 3.3.4.
Meanwhile, I find the ego-planner repo also has a file uav_utils/CMakeLists.txt same to Fast-Racing, and I can successfully compile ego-planner, but Fast-Racing not.
I need help. Thanks!
Hi there! I got into some trouble when compiling the code.
I followed the instructions and everything went fine until I tried to compile the source code in step 3.
When I ran catkin build
, 20 of 21 packages succeeded but the package plan_manage
failed.
Some of the error messages are presented below:
In file included from /home/chen/ros_ws/Fast-Racing/src/thirdparty/external/rpclib/rpclib-2.2.1/include/rpc/msgpack/object_fwd.hpp:17,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/external/rpclib/rpclib-2.2.1/include/rpc/msgpack/v1/adaptor/adaptor_base_decl.hpp:14,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/external/rpclib/rpclib-2.2.1/include/rpc/msgpack/adaptor/adaptor_base_decl.hpp:13,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/external/rpclib/rpclib-2.2.1/include/rpc/msgpack/adaptor/adaptor_base.hpp:13,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/external/rpclib/rpclib-2.2.1/include/rpc/msgpack/v1/object_decl.hpp:16,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/external/rpclib/rpclib-2.2.1/include/rpc/msgpack/object_decl.hpp:14,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/external/rpclib/rpclib-2.2.1/include/rpc/msgpack/object.hpp:13,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/external/rpclib/rpclib-2.2.1/include/rpc/msgpack.hpp:23,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/external/rpclib/rpclib-2.2.1/include/rpc/detail/server_session.h:11,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/external/rpclib/rpclib-2.2.1/lib/rpc/detail/server_session.cc:1:
/home/chen/ros_ws/Fast-Racing/src/thirdparty/external/rpclib/rpclib-2.2.1/include/rpc/msgpack/v2/object_fwd.hpp:23:8: note: ‘struct clmdep_msgpack::v2::object’ declared here
23 | struct object : v1::object {
| ^~~~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/AirLib/src/common/common_utils/FileSystem.cpp: In static member function ‘static std::string common_utils::FileSystem::getExecutableFolder()’:
/home/chen/ros_ws/Fast-Racing/src/thirdparty/AirLib/src/common/common_utils/FileSystem.cpp:128:13: warning: ignoring return value of ‘ssize_t readlink(const char*, char*, size_t)’, declared with attribute warn_unused_result [-Wunused-result]
128 | readlink("/proc/self/exe", szPath, sizeof(szPath));
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/Commands.cpp:15:22: error: ‘filesystem’ is not a namespace-name
15 | using namespace std::filesystem;
| ^~~~~~~~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/Commands.cpp: In member function ‘virtual void DumpLogCommandsCommand::Execute(std::shared_ptr<mavlinkcom::MavLinkVehicle>)’:
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/Commands.cpp:462:5: error: ‘path’ was not declared in this scope
462 | path dirPath(log_folder_);
| ^~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/Commands.cpp:464:10: error: ‘directory_iterator’ was not declared in this scope
464 | for (directory_iterator next(dirPath), end; next != end; ++next) {
| ^~~~~~~~~~~~~~~~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/Commands.cpp:464:49: error: ‘next’ was not declared in this scope; did you mean ‘std::next’?
464 | for (directory_iterator next(dirPath), end; next != end; ++next) {
| ^~~~
| std::next
In file included from /usr/include/c++/9/bits/stl_algobase.h:66,
from /usr/include/c++/9/memory:62,
from /home/chen/ros_ws/Fast-Racing/src/plan_manage/../thirdparty/MavLinkCom/include/MavLinkNode.hpp:7,
from /home/chen/ros_ws/Fast-Racing/src/plan_manage/../thirdparty/MavLinkCom/include/MavLinkVehicle.hpp:7,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/Commands.h:7,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/Commands.cpp:4:
/usr/include/c++/9/bits/stl_iterator_base_funcs.h:213:5: note: ‘std::next’ declared here
213 | next(_InputIterator __x, typename
| ^~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/Commands.cpp:464:57: error: ‘end’ was not declared in this scope; did you mean ‘std::end’?
464 | for (directory_iterator next(dirPath), end; next != end; ++next) {
| ^~~
| std::end
In file included from /home/chen/ros_ws/Fast-Racing/src/plan_manage/../thirdparty/MavLinkCom/common_utils/type_utils.hpp:8,
from /home/chen/ros_ws/Fast-Racing/src/plan_manage/../thirdparty/MavLinkCom/common_utils/Utils.hpp:24,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/Commands.h:11,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/Commands.cpp:4:
/usr/include/c++/9/valarray:1244:5: note: ‘std::end’ declared here
1244 | end(const valarray<_Tp>& __va)
| ^~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:26:22: error: ‘filesystem’ is not a namespace-name
26 | using namespace std::filesystem;
| ^~~~~~~~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp: In function ‘void ConvertLogFileToJson(std::string)’:
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:163:9: error: ‘path’ was not declared in this scope
163 | path jsonPath(logFile);
| ^~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:164:9: error: ‘jsonPath’ was not declared in this scope
164 | jsonPath.replace_extension(".json");
| ^~~~~~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp: In function ‘void ConvertLogFileToCsv(std::string, int)’:
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:229:9: error: ‘path’ was not declared in this scope
229 | path jsonPath(logFile);
| ^~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:230:9: error: ‘jsonPath’ was not declared in this scope
230 | jsonPath.replace_extension(".csv");
| ^~~~~~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp: In function ‘void ConvertLogFilesToJson(std::string)’:
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:343:5: error: ‘path’ was not declared in this scope
343 | path dirPath(fullPath);
| ^~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:345:10: error: ‘directory_iterator’ was not declared in this scope
345 | for (directory_iterator next(dirPath), end; next != end; ++next) {
| ^~~~~~~~~~~~~~~~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:345:49: error: ‘next’ was not declared in this scope; did you mean ‘std::next’?
345 | for (directory_iterator next(dirPath), end; next != end; ++next) {
| ^~~~
| std::next
In file included from /usr/include/c++/9/bits/stl_algobase.h:66,
from /usr/include/c++/9/memory:62,
from /usr/include/c++/9/thread:39,
from /home/chen/ros_ws/Fast-Racing/src/plan_manage/../thirdparty/MavLinkCom/common_utils/Utils.hpp:9,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:6:
/usr/include/c++/9/bits/stl_iterator_base_funcs.h:213:5: note: ‘std::next’ declared here
213 | next(_InputIterator __x, typename
| ^~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:345:57: error: ‘end’ was not declared in this scope; did you mean ‘std::end’?
345 | for (directory_iterator next(dirPath), end; next != end; ++next) {
| ^~~
| std::end
In file included from /home/chen/ros_ws/Fast-Racing/src/plan_manage/../thirdparty/MavLinkCom/common_utils/type_utils.hpp:8,
from /home/chen/ros_ws/Fast-Racing/src/plan_manage/../thirdparty/MavLinkCom/common_utils/Utils.hpp:24,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:6:
/usr/include/c++/9/valarray:1244:5: note: ‘std::end’ declared here
1244 | end(const valarray<_Tp>& __va)
| ^~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp: In function ‘void ConvertLogFilesToCsv(std::string)’:
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:373:5: error: ‘path’ was not declared in this scope
373 | path dirPath(fullPath);
| ^~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:375:10: error: ‘directory_iterator’ was not declared in this scope
375 | for (directory_iterator next(dirPath), end; next != end; ++next) {
| ^~~~~~~~~~~~~~~~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:375:49: error: ‘next’ was not declared in this scope; did you mean ‘std::next’?
375 | for (directory_iterator next(dirPath), end; next != end; ++next) {
| ^~~~
| std::next
In file included from /usr/include/c++/9/bits/stl_algobase.h:66,
from /usr/include/c++/9/memory:62,
from /usr/include/c++/9/thread:39,
from /home/chen/ros_ws/Fast-Racing/src/plan_manage/../thirdparty/MavLinkCom/common_utils/Utils.hpp:9,
from /home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:6:
/usr/include/c++/9/bits/stl_iterator_base_funcs.h:213:5: note: ‘std::next’ declared here
213 | next(_InputIterator __x, typename
| ^~~~
/home/chen/ros_ws/Fast-Racing/src/thirdparty/MavLinkCom/MavLinkTest/main.cpp:375:57: error: ‘end’ was not declared in this scope; did you mean ‘std::end’?
375 | for (directory_iterator next(dirPath), end; next != end; ++next) {
| ^~~
| std::end
When I run ./run.sh -windowed
, even if the simulation can be turned on normally, but there are errors:
[2021.11.06-03.01.44:335][ 0]LogActor: Warning: BP_CameraDirector_C /Game/ZhangJiajieMountain/Maps/Demonstration.Demonstration:PersistentLevel.CameraDirector has natively added scene component(s), but none of them were set as the actor's RootComponent - picking one arbitrarily [2021.11.06-03.01.44:436][ 0]LogStreaming: Error: Couldn't find file for package /AirSim/Weather/WeatherFX/WeatherActor requested by async loading code. NameToLoad: /AirSim/Weather/WeatherFX/WeatherActor [2021.11.06-03.01.44:436][ 0]LogStreaming: Error: Found 0 dependent packages... [2021.11.06-03.01.44:437][ 0]LogTemp: Warning: Warning, WeatherAPI got invalid weather actor class! [2021.11.06-03.01.44:437][ 0]LogStreaming: Error: Couldn't find file for package /AirSim/Weather/UI/MenuActor requested by async loading code. NameToLoad: /AirSim/Weather/UI/MenuActor [2021.11.06-03.01.44:437][ 0]LogStreaming: Error: Found 0 dependent packages... [2021.11.06-03.01.44:437][ 0]LogTemp: Warning: Warning, WeatherAPI got invalid menu actor class!
And when I run./zhangjiajie.sh
, rviz can be opened and the planning is nice, but the simulator can't go on. And there are errors:
Exception raised by the API:
rpclib: function 'simGetGroundTruthEnvironment' (called with 1 arg(s)) threw an exception. The exception is not derived from std::exception. No further information available.
How can I deal? Thanks!
Hello, thanks for sharing your great work!
Currently, I encountered the same problem as #11, but I can not solve by his way.
Ubuntu 20, ROS Noetic.
Sorry to bother you.
How can I run this code in the default “Blocks” scene of airsim?
"[ WARN] [1646829103.736563994]: Nothing to publish, octree is empty" and "rpclib: client error C0002: Function 'simGetImages' was called with an invalid number of arguments. will appear", when I run the command roslaunch plan_manage zhangjiajie.launch
.
Do I need to modify the source code of the airsim plug-in?
rviZ will crash, after i use 3D Nav Goal.
[ INFO] [1651493818.239098900]: Begin to optimize the traj~
rviz: /usr/local/include/eigen3/Eigen/src/SVD/SVDBase.h:101: const MatrixVType& Eigen::SVDBase::matrixV() const [with Derived = Eigen::JacobiSVD<Eigen::Matrix<double, 2, 3, 0, 2, 3>, 2>; Eigen::SVDBase::MatrixVType = Eigen::Matrix<double, 3, 3>; typename Eigen::internal::traits::MatrixType::Scalar = double]: Assertion `m_isInitialized && "SVD is not initialized."' failed.
[rviz-1] process has died [pid 5130, exit code -6, cmd /home/cheng/catkin_ws/devel/lib/rviz/rviz -d /home/cheng/Fast_catkin_ws/src/Fast-Racing/src/plan_manage/launch/map_se3.rviz __name:=rviz __log:=/home/cheng/.ros/log/9fd63378-ca11-11ec-a66e-502f9bcf7948/rviz-1.log].
log file: /home/cheng/.ros/log/9fd63378-ca11-11ec-a66e-502f9bcf7948/rviz-1*.log
all processes on machine have died, roslaunch will exit
shutting down processing monitor...
... shutting down processing monitor complete
done
Although planning is still working, and simulator is working too.But I can also not see the trajectory in my Rviz, and Rviz just crashes.
I work on ubuntu18.04, melodic, unreal4.25, eigen3.3.0, gcc-8.4.0.
How can I solve this problem? Thank you!
How to adjust the PID parameter of the multirotor? I only get the drone's trajectory but can't control it smoothly. BTW, could you mind pointing me how to determine the value of the map/x_size of MAP?
Hi,
I followed your instruction and tested with the Zhangjiajie environment. It work - at least with the AirSim environment (finished all the gates successfully. However, Rviz has one issues. it is blank (no map is displayed)
and I get this warning:
[ WARN] [1630074867.684464842]: Invalid argument "/world_enu" passed to canTransform argument source_frame in tf2 frame_ids cannot start with a '/' like:
Could you please check if tf2 frames is setup correctly?
Best regards,
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.