How to simulate a REAL-LIFE 3D drone using Unreal Engine (Ubuntu 22.04, AirSim, PX4, QGroundControl)

Поделиться
HTML-код
  • Опубликовано: 16 ноя 2024
  • НаукаНаука

Комментарии • 35

  • @mohammedabdel-nasser3570
    @mohammedabdel-nasser3570 2 месяца назад

    Thank you very much. Actually, you explained in every thing in detailed.

  • @cabbiestales
    @cabbiestales 15 дней назад

    Hello, Hasan! Thank you for posting this video. Why would you choose Python over C++, considering that C++ is generally faster and more reliable?

    • @hseysen
      @hseysen  6 дней назад

      Hi! I believe on my machine I didn't have a calculator, so I figured I would quickly use the Python REPL for calculating the memory that I wanted to allocate. But generally, I prefer both, it's just that, when stability, reliability, speed and memory management is important, I opt for C++, but when there are no strict requirements, I tend to make do with Python.

  • @marcellzahoran5820
    @marcellzahoran5820 4 дня назад

    hey, love this tutorial, everything works, my only question is if I modify the blocks project, can I than package it for linux so it works without the editor on ubuntu 22.04?

    • @marcellzahoran5820
      @marcellzahoran5820 4 дня назад

      I got the following error during packaging:
      [2024.11.13-15.28.10:326][537]UATHelper: Packaging (Linux): In file included from /home/zarcell/git/AirSim/Unreal/Environments/Blocks 4.27/Intermediate/Build/Linux/B4D820EA/Blocks/Development/Chaos/Module.Chaos.4_of_5.cpp:2:
      [2024.11.13-15.28.10:326][537]UATHelper: Packaging (Linux): In file included from /home/zarcell/git/UnrealEngine-4.27/Engine/Source/Runtime/Experimental/Chaos/Private/Chaos/PBDRigidDynamicSpringConstraints.cpp:3:
      [2024.11.13-15.28.10:326][537]UATHelper: Packaging (Linux): In file included from Runtime/Experimental/Chaos/Public/Chaos/PBDRigidDynamicSpringConstraints.h:4:
      [2024.11.13-15.28.10:326][537]UATHelper: Packaging (Linux): In file included from Runtime/Experimental/ChaosCore/Public/Chaos/Array.h:4:
      [2024.11.13-15.28.10:326][537]UATHelper: Packaging (Linux): /home/zarcell/git/UnrealEngine-4.27/Engine/Source/Runtime/Core/Public/Templates/TypeHash.h:102:27: error: unknown type name 'uint64_t'
      [2024.11.13-15.28.10:326][537]UATHelper: Packaging (Linux): inline uint32 GetTypeHash(uint64_t A)
      [2024.11.13-15.28.10:326][537]UATHelper: Packaging (Linux): ^
      [2024.11.13-15.28.10:326][537]PackagingResults: Error: unknown type name 'uint64_t'
      [2024.11.13-15.28.10:358][537]LogSlate: Took 0.018523 seconds to synchronously load lazily loaded font '../../../Engine/Content/Slate/Fonts/DroidSansFallback.ttf' (3848K)
      [2024.11.13-15.28.10:358][537]LogSlate: Last resort fallback font was requested. Font: '../../../Engine/Content/Slate/Fonts/DroidSansFallback.ttf', Character: 'U+001b)'
      [2024.11.13-15.28.10:380][537]LogSlate: Took 0.020298 seconds to synchronously load lazily loaded font '../../../Engine/Content/SlateDebug/Fonts/LastResort.ttf' (5269K)

  • @zahrakhan-u2z
    @zahrakhan-u2z 4 дня назад

    can i install unrealengine and airsim in ubuntu 20 ??

  • @htc2930
    @htc2930 7 месяцев назад

    Thanks for a fantastic video, I've encountered almost all of issues similar to those in the video while trying to set up AirSim simulation. I wish I had found this video earlier. Could you please make a video about how to integrate ROS2 with AirSim and then use ROS2 nodes to control the drone?

    • @vipulpardeshi2868
      @vipulpardeshi2868 5 месяцев назад

      Hello Friend,did you find such video anywhere?

    • @jfc123_boy
      @jfc123_boy 3 месяца назад

      I think that you need to use MAVROS, this will make the bridge between the drone controller (px4/ardupilot) and the ROS1/2 node.
      MAVROS is a ROS package that can convert between ROS topics and MAVLink messages allowing the drone controller to communicate with ROS.

  • @KerimovProductions
    @KerimovProductions 9 месяцев назад

    very informative. Thanks!

  • @hidrogenodeuterio
    @hidrogenodeuterio 4 месяца назад

    Good video, i will try it

  • @ahmedsaleh4640
    @ahmedsaleh4640 3 месяца назад

    Thanks for the video and the information i wanted to ask can i using this method simulate the drones physics and change some parameters in the enviroment to simulate real life scenarioes?

    • @hseysen
      @hseysen  3 месяца назад

      Absolutely! AirSim is open-source so you can modify anything you wish. You can even change the drone behavior by modifying paremetrs using QGroundControl if running PX4 SITL as mentioned in the video. Parameters get saved, so you don't need to change them every time.

    • @ahmedsaleh4640
      @ahmedsaleh4640 3 месяца назад

      @@hseysen i didnt try it out yet but can i change something like the drone weight, maybe add the battery factor and try to simulate the flight time something like this, i want to know before i deep dive into it
      Thanks again for replying and sharing this info

  • @aa-yi2wf
    @aa-yi2wf 2 месяца назад

    Hello, this video helped me download.
    However, I have a few questions. First, even though I changed the latitude and longitude in the setting.json file, there is no change in Unreal Engine and qgroundcontrol. Why is this? Second, I want to create a route in the qgroundcontrol and fly it, but it doesn't work. Could you please tell me how you do it? Thank you

    • @hseysen
      @hseysen  2 месяца назад

      Hello, thanks for your comment, I forgot to mention in the video that for some odd reason, the Mission API in AirSim is bugged, so it doesn't work with a pre-determined mission through QGroundControl. If you want, you can explore how to write a python script to give a mission to your UAV through AirSim Python API, it should have some examples in the PythonClient directory.
      The altitude QGroundControl shows is the relative altitude, and the one you define in the settings is the absolute altitude. It just tells QGroundControl that we are currently at this altitude, but QGroundControl always operates with relative altitude when you tell it to takeoff. You can probably still see the information about absolute altitude in the Analyze Tools -> Mavlink Inspector and look at the Altitude message.

  • @shovalnachum6407
    @shovalnachum6407 3 месяца назад

    I removed the "-lstdc++" like you said, but when I try to run "./build" in the termimal, theres an error message because it is searching for "-lstdc++"..
    what can I do? wjy do we even need to delete those line

    • @hseysen
      @hseysen  2 месяца назад

      Hello, what operating system version are you using? Is it the same as mentioned in the video, Ubuntu 22.04? And what exactly is the error message?

    • @stelioskoroneos3872
      @stelioskoroneos3872 Месяц назад +1

      Libstdc++ is missing. sudo apt-get install libstdc++-12-dev is need it.
      Also you will need sudo apt-get install libunwind-dev installed

    • @tatchungnguyen2349
      @tatchungnguyen2349 7 дней назад

      @@stelioskoroneos3872 Thank you a lot, I fixed it

  • @고성윤-d2i
    @고성윤-d2i 8 месяцев назад

    Hello, I am a student currently attending university in Korea. Your video was very informative. I've been trying to follow along in the same environment, but when I checked the document folder to edit the AirSim configuration file, I couldn't find the settings.json file for AirSim anywhere. Could you please help me with this?

    • @hseysen
      @hseysen  8 месяцев назад +2

      Hello! I'm glad the video was helpful. The configuration file settings.json is not there by default, so you need to create that folder and the file by yourself. Refer to the settings on AirSim documentation for the settings template.

  • @aradhyagaonkar9542
    @aradhyagaonkar9542 9 месяцев назад

    Hello. I am a Noob regarding this project but I want to know how I can use python to control the drone here

    • @hseysen
      @hseysen  8 месяцев назад

      Hello! A quick documentation can be found here microsoft.github.io/AirSim/api_docs/html/. There are also many Python scripts present in the AirSim repository, for example the multirotor path follower script here: github.com/microsoft/AirSim/blob/main/PythonClient/multirotor/path.py Running the simulator first, then this script will enable you to control your drone using Python only

  • @王聪-x7h
    @王聪-x7h 6 месяцев назад

    hi, does unreal engine and airsim require GPU resources to run the simulation?

    • @hseysen
      @hseysen  5 месяцев назад +1

      Hi, yes unfortunately, you need some GPU resources to have a better experience. I guess it would be possible to run it without a GPU, but it's going to be painful

  • @vipulpardeshi2868
    @vipulpardeshi2868 5 месяцев назад

    Hey is it true that we cannot use Airsim anymore.Or is it going to be paid software ??Good video ❤

    • @hseysen
      @hseysen  5 месяцев назад

      Hello, no AirSim will be made into a new product which will be paid software, but Microsoft is still keeping the open-source repository alive. It's just that the developers won't bring any new updates to it.

    • @bohdanbykov6959
      @bohdanbykov6959 4 месяца назад

      @@hseysen Hello. I haven't seen AirSim being used in UE5. Is it possible to rebuild it for the current versions of the engine?

    • @hseysen
      @hseysen  4 месяца назад

      @@bohdanbykov6959 I believe for all UE4 plugins, it is possible to rebuild them in UE5, provided they have the source code, which AirSim gives us. There may be some small issues or bugs that may need fixing though

  • @TheBarthew
    @TheBarthew 4 месяца назад

    Links are text, some of them with dots (not directly usable)

    • @hseysen
      @hseysen  4 месяца назад

      Hello, thanks for pointing it out, it was an issue I overlooked with RUclips verification. Should be fixed now

  • @nik_it9914
    @nik_it9914 5 месяцев назад

    19:04 ...

  • @GATE2024-me4jg
    @GATE2024-me4jg 6 месяцев назад

    gddo

  • @furkanunal1001
    @furkanunal1001 17 дней назад

    @hseysen thank you for all bro, thats work!