Git Product home page Git Product logo

microsoft / airsim Goto Github PK

View Code? Open in Web Editor NEW
15.9K 588.0 4.4K 367.63 MB

Open source simulator for autonomous vehicles built on Unreal Engine / Unity, from Microsoft AI & Research

Home Page: https://microsoft.github.io/AirSim/

License: Other

C++ 73.62% Batchfile 0.34% C# 15.59% C 4.17% Shell 0.36% Python 5.11% ShaderLab 0.14% CMake 0.60% Makefile 0.01% PowerShell 0.03% Dockerfile 0.02%
drones ai self-driving-car autonomous-vehicles autonomous-quadcoptor research computer-vision artificial-intelligence deeplearning deep-reinforcement-learning

airsim's People

Contributors

8w9ag avatar aburgm avatar ahmed-elsaharti avatar alonfaraj avatar ashkapoor avatar billyfrcs avatar bkueng avatar bmalhigh avatar clovett avatar euboon1601 avatar forresttrepte avatar gimpelzhang avatar jloveu avatar jonymarino avatar kemen209 avatar kissslorinc avatar laurelkeys avatar lovettchris avatar madratman avatar msb336 avatar patrickelectric avatar ppueyor avatar rajat2004 avatar saihv avatar songxiaocheng avatar sytelus avatar thias15 avatar tzimasak avatar ykeuter avatar zimmy87 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

airsim's Issues

Datalog: what kind of data do we get access to?

Hi,

I am interested in using this simulation framework with my research. However, I would like to know more about what kind of data that we can acquire: is is only simulated sensor data or do we also have access to "truth" data?

Thanks!

ArduCopter compatibility?

Hi!,
Just a question, there will be an AirSim version compatible with ArduCopter?. I tested it and it does not work.

Thanks

Arming Denied. Preflight checks have failed

I had followed the instruction and was able to load environments with the drone from the AirSim. But when I hit the play button in unreal, the meesage "Arming Denied. Preflight checks have failed" in green shows up and I cannot control the drone at all with rc or droneshell. Also, the three images (depth, segmentation and rgb images) show only white images.

Can someone help me to figure the problem out?

Mismatching delete

\MavLinkCom\src\impl\windows\MavLinkFindSerialPorts.cpp
line 121 + 129

should be: delete [] propertyBuffer;
delete [] keyArray;

Connection to Drone failed, please check your setting .json

I have setup all the environment for the AirSim, However, when i run the Unreal Engine, some error showed at the left of the scene view, like this:

Connection to drone failed, please check your settings.json
Could not open the serial port COM3, error = -1
Connection to LogViewer failed, please check your settings.json
Connection to QGroundControl failed, please check your settings.json

I have modify the Local Host Ip/LogViewerHostIp\QgcHostIp to my local ip:the whole settings is 👍

{
"AirControlCompID": 1,
"AirControlSysID": 134,
"ExtRendererCompID": 1,
"ExtRendererSysID": 167,
"ExternalSimPort": 14588,
"LocalHostIp": "10.1.9.10",
"LogViewerHostIp": "10.1.9.10",
"LogViewerPort": 14388,
"Pixhawk": {
"SerialBaudRate": 115200,
"SerialPort": "*",
"UdpIp": "127.0.0.1",
"UdpPort": 14560,
"UseSerial": true
},
"QgcHostIp": "10.1.9.10",
"QgcPort": 14550,
"SimCompID": 42,
"SimSysID": 142
}
Unfortunaly, it does not work either.......

nuget : boost 1.63.0 & Eigen 3.2.9

Hello,
I use VS2015 to compile the solution.
Can we import boost 1.63.0 & Eigen 3.2.9 from nuget.org?
I have included this two packages into the various projects and remove Target Conditions without success during link of DroneServer project.
Regards.
Fred

Problem connecting to Pixhawk (SITL PX4 simulation)

Hi,

I'm currently trying to get my setup running without having a Pixhawk connected, so I'm following the SITL instructions. So far, I've set up the entire Linux environment required, built the posix SITL PX4 version and started it on my machine. This is what it looks like, running on my machine:

bash

As per the instructions, I have edited the settings.json file (located in Documents/AirSim, where I cloned the AirSim project). My file is currently showing this (shown is the entire settings.json content):

settings

Comparing this to the settings.json used in this instructional video, I notice quite a difference here. Are these settings required for correct functionality of AirSim, and why would these be missing with me?

reference

In any case, I have set up an Unreal project as described in this video. Now, when I launch the Unreal in SimGameMode, my machine renders about one second of video and then Unreal completely freezes. In the top left corner, it's saying to check my json settings, and that it can't connect to my PX4 simulation for some reason. When I look at the output of my bash, no messages are appearing, so no connection is being set up.

unreal

So, two questions:

  1. Is there any way to get a more detailed output of exactly what's going wrong? Am I missing something here? Why can't my Unreal environment connect to the Pixhawk simulation?

  2. Why does my Unreal editor freeze after about 1s of rendering? I only get this when using the SimGameMode, the other modes are just fine and it can't be my machine (Intel i7 6900K, Nvidia GTX980 TI, 16Gb RAM, SSD, ...). Is this because no connection can be set up to the PX4?

All help is greatly appreciated!

How to add AirSim plugin to Unreal project

Hi:
I succeeded (or at least I think I did) building the AirSim plugin and it created a folder Airsim in "Plugins" with 2 sub-folders: "Content" and "Source" and a "AirSim.uplugin" file. There are no DLL files in these directories - is that correct?

After I copy the "Plugins" folder to a freshly created project with no "starter" content and adding the AirSim entries to the uproject file I try to run "generate visual studio project files" and I get an error:

"This project does not have any source code. You need to add C++ source files to the project from the Editor before you can generate project files."

No I am stuck - I can't even open the uproject file in the Unreal editor since I get an error:

"The following modules are missing or built with different engine version:
UE4Editor-Myproject2.dll
UE4Editor-Airsim.dll"
Would you like to rebuild them now?"

If I say "Yes" the I get the message:

"MyProject2 could not be compiled. Try rebuilding from source manually."

But there is no sln file in source - only in AirLib and that one does not build when I click on it.

What am I doing wrong here?
Thanks
Chris

This is how my uproject file looks like:
{
"FileVersion": 3,
"EngineAssociation": "4.14",
"Category": "",
"Description": "",
"Modules": [
{
"Name": "MyProject2",
"Type": "Runtime",
"LoadingPhase": "Default",
"AdditionalDependencies": [
"AirSim"
]
}
],
"Plugins": [
{
"Name": "Substance",
"Enabled": true,
"MarketplaceURL": "com.epicgames.launcher://ue/marketplace/content/2f6439c2f9584f49809d9b13b16c2ba4"
},
{
"Name": "AirSim",
"Enabled": true
}
]
}

no ‘object' file generated

Hello, everyone. When I build the AirSim project, it displayed some errors while compiling. As follow,

d:\code\eigen3\eigen\src/Core/arch/CUDA/Half.h : error C2220: warning treated as error - no 'object' file generated
[D:\GitHub\repo\AirSim\AirLib\AirLib.vcxproj]
d:\code\eigen3\eigen\src/Core/arch/CUDA/Half.h : error C2220: warning treated as error - no 'object' file generated
... etc...

Should I change the option "Treat warning as error" from "Yes(/WX)" to "No(/WX-)" in the property page of project?
Thank you very much.

.uproject file Generate Visual Studio Project files compile error

After I had followed the instructions , everything went successfully . But when I re-generated the .sln e Visual Studio Project files then compile in the VS . It show me some problems in the "PIPCamera.h" file .
Invalid BlueprintType enum base - currently only uint8 supported demo
UnrealHeaderTool failed for target 'demoEditor' (platform: Win64, module info: C:\Users\RizHuang\Documents\Unreal Projects\demo\Intermediate\Build\Win64\demoEditor\Development\demoEditor.uhtmanifest, exit code: OtherCompilationError (5)).

My VS is 2015 and update 3. and all the software mentions in the instruction doc are successfully installed .

Any suggestions are thankful !

Integration with OpenAI gym

Hi,
Does AirSim have an integration with OpenAI gym? If not, can we expect it to be arriving soon?
Thank you,
Anirban

Undefined symbol at runtime when starting simulation in Unreal (Linux)

Hi,

I've been working on installing AirSim on a Linux system. I managed to compile and install the plugin on an empty Unreal project, trying to set up a SITL simulation.
Problems arise when I switch to Game Mode = SimGameMode and press Play. Unreal instantly crashes, returning on terminal the following error:

_symbol lookup error: /media/isarlab/e1a54258-46b5-46ed-81f7-5cf01e504c48/UnrealProjects/AirSimProject/Plugins/AirSim/Binaries/Linux/libUE4Editor-AirSim.so: undefined symbol: _ZN3msr6airlib8Settings12loadJSonFileENSt3__112basic_stringIwNS2_11char_traitsIwEENS2_9allocatorIwEEEE_

I compiled AirSim through this script https://github.com/Microsoft/AirSim/blob/master/build.sh, although I had to comment lines 83-88, as it was not able to find lib*.a files in the given directories, and manually locate and move compiled libraries on the required target directories. Furthermore, my Unreal project starts regularly when selecting default GameModes.

Has anybody had success on using AirSim on Linux yet? Any help is appreciated!

what are the system requirements ?

I read an answer from your teammember on another issue that this simulator requires discrete gpu with 4gb or more ram. does this mean I can't run this on pc with integrated graphics (hd 530) on low settings ? likewise, what are the other hardware requirements that might be critical for simulator's performance ?

thanks.

unreachable code

MavLinkCom\MavLinkTest\Commands.cpp line 40

if (subscription == 0) {
if (subscription != 0) {
this->vehicle->getConnection()->unsubscribe(subscription);
}

Problems to run AirSim with PX4 Firmware (w/o external hardware)

Hi!

I'd like to run AirSim as a pure simulation without hardware. I've followed your readme and got the AirSim plugin to work in Unreal in the blank C++ project, which shows the "Could not detect Pixhawk on any serial ports" - as expected as there is none. I've then followed the "alternative to RC" section and installed and started the PX4 Firmware on the same PC. However, the simulation does not connect. I've used the default settings.json linked in the readme.

That settings file gives me the following error:
"
Exception thrown: read access violation
this was nullptr
"

Stracktrace in Visual Studio:
"
UE4Editor-AirSim.dll!mavlinkcom::MavLinkConnection::join(std::shared_ptrmavlinkcom::MavLinkConnection remote, bool) Line 109 C++
UE4Editor-AirSim.dll!msr::airlib::MavLinkHelper::impl::createProxy(std::basic_string<char,std::char_traits,std::allocator > name, std::basic_string<char,std::char_traits,std::allocator > ip, int port) Line 223 C++
UE4Editor-AirSim.dll!msr::airlib::MavLinkHelper::impl::connectToLogViewer() Line 176 C++
UE4Editor-AirSim.dll!MavMultiRotor::openConnection() Line 99 C++
UE4Editor-AirSim.dll!ASimModeWorldBase::createWorld() Line 40 C++
UE4Editor-AirSim.dll!ASimModeWorldMultiRotor::BeginPlay() Line 12 C++
"

My guess was that the LogViewer has problems, so I removed the IP from the settings-file (I saw in the code that this disables this section). Then the QGC-link gives me the same problem. With an empty IP for that I finally get that error:

"
Unhandled exception at 0x00007FF819F17788 in UE4Editor.exe: Microsoft C++ exception: std::domain_error at memory location 0x00000091F36CA440.
"

Stacktrace in Visual Studio:
"
UE4Editor-AirSim.dll!msr::airlib::MavLinkHelper::impl::createOrGetDroneControl() Line 204 C++
UE4Editor-AirSim.dll!ASimModeWorldMultiRotor::BeginPlay() Line 17 C++
"

My guess is that the simulation can't connect to the PX4. The PX4-firmware is running on the same PC in a bash giving me the following output the whole time:
"
commands file: ./posix-configs/SITL/init/lpe/iris [logo]
px4 starting.
INFO [dataman] Unkown restart, data manager file 'rootfs/fs/microsd/dataman' size is 11797680 bytes
INFO [platforms__posix__drivers__ledsim] LED::init
INFO [platforms__posix__drivers__ledsim] LED::init
INFO [simulator] Waiting for initial data on UDP port 14560. Please start the flight simulator to proceed..
"

I've checked that the ports match and even disabled the firewall.

Thanks for any help!

twin include

MavLinkCom/MavLinkTest/UnitTests.cpp line 14

thread included twice

Problems loading AirSim plugin into Unreal Project in Linux

I have managed to build Unreal Editor and Airsim for Linux, and I have the Unreal/Plugins folder in my AirSim directory. I tried to create an empty C++ project, copy the Plugins directory and change the .uproject file as described in the instructions: but I am not sure what to do next. I tried running Unreal Editor directly, but it complains

LogInit:Warning: Incompatible or missing module: libUE4Editor-AirSimProject.so LogInit:Warning: Incompatible or missing module: libUE4Editor-AirSim.so
It then tries to build them and fails. I tried running ./GenerateProjectFiles.sh with the project directory as an argument, but then it fails with the message

ERROR: Unable to instantiate instance of 'AirSim' object type from compiled assembly 'AirSimProjectModuleRules, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'. Unreal Build Tool creates an instance of your module's 'Rules' object in order to find out about your module's requirements. The CLR exception details may provide more information: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Exception: EIGEN_ROOT is not defined, or points to a non-existant directory, please set this environment variable. See readme: https://github.com/Microsoft/AirSim/blob/master/docs/install_boost.md
This is strange because both EIGEN_ROOT and BOOST_ROOT are set, and the AirSim build wouldn't have succeeded without those anyway. Has anyone succeeded in importing the Airsim plugin in Linux?

Cannot get it running with PX4 SITL and AirSim Libraries

So here is what I have so far
1.) PX4 SITL Firmware running under Windows 10 BASH on Virtual Machine, seems to be running fine with the following output:
..........................................................................................................
commands file: ./posix-configs/SITL/init/lpe/iris


| ___ \ \ \ / / / |
| |/ / \ V / / /| |
| __/ / \ / /
| |
| | / /^\ \ ___ |
_| / / |_/

px4 starting.

INFO [dataman] Unkown restart, data manager file 'rootfs/fs/microsd/dataman' size is 11797680 bytes
INFO [platforms__posix__drivers__ledsim] LED::init
INFO [platforms__posix__drivers__ledsim] LED::init
INFO [simulator] Waiting for initial data on UDP port 14560. Please start the flight simulator to proceed..
..........................................................................................................

2.) Eigen and Boost Libraries built and AirSim Libraries built which generates an Unreal directory under the AirSim master root. (no compile errors)

3.) Unreal 4.15 (installed from the Unreal Launcher), tested this install and it (UE4) works fine.

4.) Unreal 4.15.x master branch, built this version and tested...works fine (UE4).

5.) An Unreal project (AirSimNow) that I:
created as a clean C++ unreal project
populated with simple terrain that runs fine when not setting the game to SimGameMode.
copied Plugins folder from Air Sim Master folder to the root of my newly created AirSimNow project
right clicked the uproject of the AirSimNow and re-generated the project files
compiled successfully using both the public release version (4.15) and master branch version (4.15.x)

The problem I run into under both versions of Unreal:

Unreal Master Branch 4.15.x locally built Binaries:
This gives me the error that the AirSimNow libraries were built with a different version of Unreal and exits out when I try to run it (i.e. F5 from within VS 2015).

Unreal Public Release 4.15 Binaries:
This actually loads the map with the AirSimNow libraries just fine, but when I go to actually "play" within the UE4-AirSimNow Editor instance, it will do one of two things:

1.) If I make sure there is no settings.json file within the \Documents\AirSim folder, then when I hit play it just draws the 3 boxes and REC button, but then just hangs... and does nothing. No generating of a settings.json file (which I thought was automatic?) or anything. So, this I have tried in all sorts of combinations and for sure -doesn't work-.

2.) If I manually create a settings.json file based on the example provided in the docs, and adjust the IP addresses to match the virtual machine running the PX4 Firmware, then it actually seems to get a bit further... and then crashes promptly at this location:
void MavLinkConnection::join(std::shared_ptr remote, bool subscribeToLeft, bool subscribeToRight)
{
pImpl->join(remote); <---- pImpl is NULL and it crashes here
}

I even tried to change the above function to look like this:
void MavLinkConnection::join(std::shared_ptr remote, bool subscribeToLeft, bool subscribeToRight)
{
if (pImpl != nullptr)
{
pImpl->join(remote);
}
}
Once changed, I completely cleaned and rebuilt the AirSim library (i.e. clean.cmd and then build.cmd), deleted the AirSimNow project's Plugins directory, copied the newly generated Plugins directory back to the AirSimNow project root folder, re-opened the AirSimNow project under visual studio, and completely rebuilt. Upon build complete, loaded the editor, hit play, and it crashes in the same spot as if I never rebuilt the AirSim libraries... as in the files it is loading don't seem to synch with the files I believe I am completely recompiling because the crash pointer under visual studio debugger points to the bracket with the access violation (i.e. null ptr) error:
void MavLinkConnection::join(std::shared_ptr remote, bool subscribeToLeft, bool subscribeToRight)
{ <---- this is where the debugger points to
if (pImpl != nullptr)
{
pImpl->join(remote);
}
}

So, I noticed all of your screen shots are with Unreal 4.14.3... has anyone got this working under 4.15 GA Release or 4.15.x tree?

My questions:

1.) Why does it not generate the settings.json file?
2.) Has PX4 Firmware SITL on Windows BASH been tested with the PX4 Firmware running on a separate system over the network?

Any ideas on how why this is not working?

As a side note, I noticed that you had a link to precompiled binaries but I also noticed that one of the issues you were having was the size of UE4 and maps (i.e. GB of data). Have you guys thought about just compiling everything else BUT UE4 and making just the unique binaries to this project available? (I know the PX4 Firmware can't be included, but still Eigen, Boost, and Airlib could all be provided)

This could help people troubleshoot any issues...they could be tested with the generally available UE4 4.15 binaries to help narrow down the issues.

It seems odd that when you build UE4 (4.15.x) if you take a project that actually loads to the editor phase using the GA 4.15 binaries and switch the UE4 version to your locally built version, rebuilt the same project, and then try and run it... it just never lets you...because it thinks it is a different version.

The most glaring issue that popped out to me was that the instructions for compiling the PX4 Firmware seem to imply that the settings.json file should be created upon the plugin loading (what I took away from them at least) but it seems to never get a chance to even create the settings.json file (when running under the GA 4.15 version) because it seems to be waiting for something. However, if you copy and paste from the settings example it promptly crashes at a place that seems (based on the pImpl definition in the header) should already exist within the class instance...

This the settings file I modified form the example:
{
"AirControlCompID": 1,
"AirControlSysID": 134,
"ExtRendererCompID": 1,
"ExtRendererSysID": 167,
"ExternalSimPort": 14588,
"LocalHostIp": "192.192.1.10",
"LogViewerHostIp": "192.192.1.10",
"LogViewerPort": 14388,
"Pixhawk": {
"SerialBaudRate": 115200,
"SerialPort": "*",
"UdpIp": "192.192.1.12",
"UdpPort": 14560,
"UseSerial": false
},
"QgcHostIp": "192.192.1.10",
"QgcPort": 14550,
"SimCompID": 42,
"SimSysID": 142
}
(I replaced the real IP values with dummy ones)
System Running Simulation and UE4: 192.192.1.10
System Running PX4 Firmware under W10 BASH: 192.192.12

Disabled firewall rules completely for both systems during testing.

I am out of ideas on my end, so I am throwing this out there to see if there could be some other thing I am missing in the process...

Cheers,

-N

SITL: connection setup is incorrect

AirSim cannot not connect to SITL after adjusting the settings accordingly. It throws an error that the port is already in use. To make it work, I had to change https://github.com/Microsoft/AirSim/blob/master/MavLinkCom/src/impl/MavLinkConnectionImpl.cpp#L58 from the local to the remote port (basically using connectRemoteUdp instead). This is then correct because the PX4 simulator specifies its local port on startup.

I'm on Linux, but it seems to be the same problem on Windows: #40

Build instructions lead to #include error on Eigen/Dense

Following build instructions from here gives me an error inside of VS2015 "cannot open source file "Eigen/Dense" AirLib c:\boost_1_63_0\AirSim\AirSim\AirLib\include\common\VectorMath.hpp 12

I have set EIGEN_HOME env variable, and manually added that to the project's "Include Directories" under the property panel, but no joy.

compiler error not found rpc.lib?

Everything seems to be compile properly except this error
LINK : fatal error LNK1181: cannot open input file 'rpc.lib'
I have search all of the folder and didn't see any rpc.lib at all

Mismatching delete

MavLinkCom\MavLinkTest\UnitTests.cpp line 166

should be delete [] image

Enable ROS and Gazebo integration

Testing control algorithms with SITL plugin + Gazebo + ROS is now the common way, while Gazebo only provides poor visual simulations which is not realistic enough for Deep Learning/Reinforcement Learning research. Is there any plan for AirSim of such kind of integration with ROS? In specific this would allow us to retrieve state information and camera view etc from AirSim, and we can use tools like mavros to send control command to the vehicle.
Thanks for this incredible work!

Access violation when specifiying json settings

Hi,
Since I don't have the physical RC, I am trying to use the firmware in Ubuntu guest, on host windows 10.

In Ubuntu I get:
INFO [simulator] Waiting for initial data on UDP port 14560. Please start the flight simulator to proceed..

Therefore I try running the simulation in W10. Assign the game mode to SimGameMode, then Play button and then I get an access violation in

UE4Editor-AirSim.dll!mavlinkcom::MavLinkConnection::join(std::shared_ptrmavlinkcom::MavLinkConnection remote, bool) Line 109 C++

settings.jason: (as specified in the readmes:
{ "AirControlCompID": 1, "AirControlSysID": 134, "ExtRendererCompID": 1, "ExtRendererSysID": 167, "ExternalSimPort": 14588, "LocalHostIp": "127.0.0.1", "LogViewerHostIp": "127.0.0.1", "LogViewerPort": 14388, "Pixhawk": { "SerialBaudRate": 115200, "SerialPort": "*", "UdpIp": "127.0.0.1", "UdpPort": 14560, "UseSerial": true }, "QgcHostIp": "127.0.0.1", "QgcPort": 14550, "SimCompID": 42, "SimSysID": 142 }

In UdpIp, instead of 127.0.0.1, i am using the real ip address of my Ubuntu VM.

When I don't specify json file, it goes ok, but it wont connect to PX4 on Ubuntu. If I specify json settings, it seems so far no matter what, it will crash.

Any ideas?

Thanks and regards.

Unable to connect to SITL

I have successfully built and run PX4 SITL in Windows 10 Bash and get:
INFO [simulator] Waiting for initial data on UDP port 14560. Please start the flight simulator to proceed..
TCPView confirms that PX4 is connected to localhost and port 14560

I have then done the following:

  • Downloaded/installed UE4
  • Downloaded/built the dependencies
  • Downloaded/built Airsim in VS2015
  • Created a new project, added an environment, copied the Airsim plugin files to the project, enabled the plugin
  • Modified settings.json to not use serial
  • Ran the UE4 project in VS2015 and changed to SimGameMode
  • Pressed play

The simulator doesn't connect to the SITL and UE4 hangs until I stop running the project from VS2015 (see below)

ue4 hang

Am I missing something?

global shader cache file '.PCD3D_SM5.bin.' is missing

Exciting project, thanks for making this available and the detailed instructions!

I'm at the point where I can almost compile my (empty) project. However, I get the message:

The global shader cache file 'C:/Program Files/Epic Games/UE_4.15/Engine/GlobalShaderCache-PCD3D_SM5.bin' is missing. 

globalshadercache is missing

It is correct that the file does not exist. Is there a setting or a step I'm missing? Thanks.

Is it possible to use AirSim without external hardware?

Is it possible to use AirSim without an external controller? Keyboard / Mouse / Even XBox Controller.

Or, must you have an external device?

Is there a way to have a "software emulator" version of what's setup in the settings.json file?

2017-02-20_11-19-53

How i can connect by Xbox joystick to PC directly.

I have no Pixhawk firmware, is it possible to control the vehicle by the XBox joystick which connected to PC directly?
I plugin the xbox joystick to the PC USB port, but the QGroundController did not detected it.

Missing UE4Editor-AirSim.dll?

I have successfully compile the plugin, however once I edit the .uproject file in order to enable plugin using notepage. Thank I confused with this step:

"Right click on the Unreal project .uproject file, then Generate Visual Studio Project files"

I have right click on the project file, but there is no option to generate visual studio project.
Then I tried to open it using Unreal Editor and I got following msg show up:


The following modules are missing or built with a different engine version:

UE4Editor-AirSim.dll

Would you like to rebuild them now?
Yes No

So, my question are

  1. Where is UE4Editor-AirSim.dll?
  2. How to generate the code by right click?
  3. Is notepad a proper way to edit the .uproject file? Is there anyway to do it using the Unreal Editor?

Framerate drop when UE4 window out of focus

When trying to control the UAV through the command line, the simulator becomes extremely slow. It seems in general whenever the window is out of focus, the simulator drops a lot of frames. Is there a workaround for that?

Build Error on macOS: default initialization of an object of const type 'const VehicleParams' without a user-provided default constructor.

Compiler version: clang-800.0.42.1.
Build error message:

/Users/JMSuen/Repositories/AirSim/AirLib/src/controllers/MavLinkDroneController.cpp:890:36: error: default initialization of an object of const type
      'const msr::airlib::VehicleParams' without a user-provided default constructor
        static const VehicleParams vehicle_params_;
                                   ^
                                                  {}
1 warning and 1 error generated.
make[3]: *** [AirLib/CMakeFiles/AirLib.dir/Users/JMSuen/Repositories/AirSim/AirLib/src/controllers/MavLinkDroneController.cpp.o] Error 1
make[2]: *** [AirLib/CMakeFiles/AirLib.dir/all] Error 2
make[1]: *** [AirLib/CMakeFiles/AirLib.dir/rule] Error 2
make: *** [AirLib] Error 2

According to this SO page, struct VehicleParams should be declared as non-POD.

Compile Error chrono(769): error C2679

Getting the following error when building.
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\chrono(769): error C2679: binary '+=': no operator found which takes a right-hand operand of type 'const std::chrono::duration<double,std::ratio<1,1>>' (or there is no acceptable conversion)

Can't take off with Pixracer (while Pixhawk does work)

I'm able to arm and watch the props spin up but throttling up on my transmitter does nothing. I have tried calibrating the RC inputs through QGroundControl multiple times as well as try 2 different transmitter/receiver combos. Using the PX4 Log Viewer I'm able to see my rc inputs through mavlinkmanual_control_t but there seems to be no response in neither roll, pitch, yaw, throttle of mavlinkhil_controls_t.

Also disarming doesn't seem to stop the props from spinning.

SITL Build on Windows 10 BASH Missing build_posix_sitl_default directory

Per the following instructions:

One must install BASH on a Windows 10 system and run the following commands:

=====================================

git clone https://github.com/PX4/Firmware.git

cd Firmware

git submodule update --init --recursive

make posix_sitl_default

=====================================

And the error being encountered is:

=====================================

-- Configuring incomplete, errors occurred!

/bin/sh: 1: cd: can't cd to /mnt/c/Dev/Firmware/build_posix_sitl_default

make: *** [posix_sitl_default] Error 2

=====================================

The directory build_posix_sitl_default does not exist within the mast PX4 tree.

What I have done:

Installed and verified BASH shell is working.

Installed and verified make command is working.

Installed and verified cmake command is working.

Is there additional files I must obtain to get the build_posix_sitl_default directory or is there something else wrong?

Rpc control

I can't seem to get RPC control of the quad. I'm using the SITL method and have gotten manual control working using QGC. The problem I seem to be having is getting the controller into offboard mode; I'm not sure how AirLib handles putting the quad into this mode.

DroneShell times out when performing requestcontrol and when attempting to change in QGC I get "command temporarily rejected".

Anyone have any pointers for debugging this?

Build error in linux

When trying to build Airsim in linux, I can build till 88% and get an error.
[ 88%] Building CXX object HelloDrone/CMakeFiles/HelloDrone.dir/home/niroj/Airsim/AirSim/HelloDrone/main.cpp.o

/home/niroj/Airsim/AirSim/AirLib/deps/rpclib/include/rpc/msgpack/object_fwd.hpp:94:8: warning: all member functions in class ‘clmdep_msgpack::v1::has_as’ are private [-Wctor-dtor-privacy]
struct has_as {
^~~~~~
/home/niroj/Airsim/AirSim/HelloDrone/main.cpp: In function ‘int main()’:
/home/niroj/Airsim/AirSim/HelloDrone/main.cpp:94:27: error: use of deleted function ‘rpc::rpc_error::rpc_error(const rpc::rpc_error&)’
catch (rpc::rpc_error e) {
^
In file included from /home/niroj/Airsim/AirSim/HelloDrone/main.cpp:12:0:
/home/niroj/Airsim/AirSim/AirLib/deps/rpclib/include/rpc/rpc_error.h:18:7: note: ‘rpc::rpc_error::rpc_error(const rpc::rpc_error&)’ is implicitly deleted because the default definition would be ill-formed:
class rpc_error : public std::runtime_error {
^~~~~~~~~
/home/niroj/Airsim/AirSim/AirLib/deps/rpclib/include/rpc/rpc_error.h:18:7: error: use of deleted function ‘clmdep_msgpack::v1::object_handle::object_handle(const clmdep_msgpack::v1::object_handle&)’
compilation terminated due to -fmax-errors=2.

MSBuild

I apologize if this is not the appropriate place for support questions, but I've run into an issue while trying to install. When trying to build airsim (build.cmd in repo) I run into the error of it being unable to find microsoft.build.tasks.v12.0.dll. It's looking in the following directory:

program files (x86)\MSBuild\Microsoft\14.0\bin

The file is not there and after looking around I went ahead and installed MSBuild separately from here. This populated the ....\MSBuild\Microsoft\12.0 directory and the missing dll is there. However, I'm uncertain how to redirect the MSBuildToolsPath that is referenced. This may be simple, but my search has not yet found a good way of doing so that I understand.

Full error message:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\CodeAnalysis\Microsoft.CodeAnalysis
.targets(219,5): error MSB4175: The task factory "CodeTaskFactory" could not be loaded from the a
ssembly "C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Build.Tasks.v12.0.dll". Could not load
file or assembly 'file:///C:\Program Files (x86)\MSBuild\14.0\bin\Microsoft.Build.Tasks.v12.0.dl
l' or one of its dependencies. The system cannot find the file specified. [D:\Epic Games\AirSim\M
avLinkCom\MavLinkCom.vcxproj]

System Info:
Windows 10, 64bit
Visual Studio Community 15

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.