hardware in the loop simulation for ardupilot mega

hi, am a working in hardware in the loop simulation (HILS) for ardupilot mega.

the purpose of my research is to ensure that ardupilot control system works well,before I do the actual flight test.
the difference between what I do with pre-existing HILS is a model airplane that I use is a model of state space and not a model of an aircraft that already exists on xplane.

The following is an overview of its design scheme:

3690927743?profile=originalI have managed to describe the control block diagram for stabilization control mode from ardupilotmega.pde coding ,and compare the results between simulation control dan ardupilot hardware control. the following picture is the block diagram for stabilization control mode in matlab/simulink :


inside logitudinal block


inside lateral directional block


now, the problem is:

I have difficulty in describing the existing control algorithms ardupilotmega.pde coding  to the form of control block diagram  for auto control mode, because I do not understand the coding of the overall ardupilotmega.pde

so far, for the auto control mode, this is what I have gained:



-i a am still find a solution for make a gps simulation. now my idea is using yaw angle,speed,and inital position to estimate next position (some one help me)

-I am still trying to understand how the working process of waypoint tracking in ardupilotmega.pde coding , so that I can describe the block diagram in matlab / simulink. (some one help me)

new update (1 juni 2012)

this is my video off waypoint tracking simulation 








You need to be a member of diydrones to add comments!

Join diydrones

Email me when people reply –


  • Hi Edmond,

    Did you ever figure this out? I am trying to do the same thing.



    McGill U

    Edmond Leong said:

    Same question for the UDP data receiving from APM (pilot commands).  Question is how to configure the UDP block in Simulink in order to unpack the UDP data from APM? Thanks !


  • hello sufendi, 

    i can't download your attachment file, can you send to my email?


    best regards.

  • i can't download the attachments.could u help me .my email is 4201100117@csu.edu.cn i have read your paper ,thank you anyway

  • Hi Sufendi,

    I am trying to connect APM planner with Matlab like you did (using"UDP Receive" & "UDP Send" blocks)  but then I dont get any data, I just get this message:

    "Error in 'Conexion/UDP Receive': Received a fractional-length packet for the specified data type"

    Does APM planner send data to simulink by MAVlink protocol?

    I dont even know what datas are input/output in the APM planner.

  • Hi Sufendi,

    I know it's been a long time since you've completed this but I am undertaking a similar project but instead of using APM I will be utilising the Pixhawk. I still intend to model the dynamics of a system using matlab/simulink and will utilise a serial connection and mavlink up and down into matlab.

    It's been difficult to find good reference material on the subject. I am wondering If you have a copy of some of the simulation code that I can look at to get an idea of what you were trying to do. At this stage I am stuck trying to get the IMU off of the pixhawk. I have been able to read data off and display it on matlab using MEX but I can't seem to work out how I can use this to transfer to a s-code for use in simulink. Perhaps your work can shed some light.

    If you can I would really appreciate seeing anything you have that might help me. My email is 11306103@student.uts.edu.au

  • Hello. I study HILS . I have a lot of questions.

     1. How to communicate between the APM Planer(mission planer) and Simulink(matlab)?

     2. How to communicate between the Simulink and X-plane?

    I really wonder this problem, help you.

  • Hi All,

    This post on hardware in loop simulation with APM using Matlab seems exciting. I am also working on a similar problem. I am trying to do a Hardware in loop simulation with APM 2.6 connected to a mission planner. Instead of using flight gear or xplane, I am using Matlab to read in actuator commands from the mission planner through UDP and do simulation in Matlab and send back the sensor data to the mission planner.

    I have read in actuator commands send by the mission planner through UDP and I am currently working on sending the simulated data back to the mission planner. It would be of great help to me if someone could share the details of how this has been done. I am also unable to download the simulation file. Help in this regard would be greatly appreciated.


  • dear sufendi

    access is denied to this website

    may you pleas send it to my emai


    thanks alot

  • Dear sufendi


    first let me to say thank you for the sharing your knowledge so others can use. and second let me apologize for the poor english I am writing in

    I am a beginer with electronic and APM. how ever i want to connect it the matlab in order to send my control commands and so on

    first of all i dont know how to do it ( connection for send and recive order). so I want you to help me in this field if is possible.

    having a model that i can run in my computer would so helpful for me.

    thank you so much


This reply was deleted.


DIY Robocars via Twitter
RT @Heavy02011: ⁦@diyrobocars⁩ : A Home-brew computer club* for Connected Autonomous Driving. talk at #piandmore ⁦@PiAndMore⁩ on Jan 23rd h…
DIY Robocars via Twitter
RT @a1k0n: New blog post! Deep dive into my ceiling light based localization algorithm which runs in 1ms on a Raspberry Pi 3: https://t.co/…
DIY Robocars via Twitter
Great new guide to using @donkey_car https://custom-build-robots.com/donkey-car-e-book-en
DIY Robocars via Twitter
RT @chr1sa: The next @DIYRobocars virtual AI race is tomorrow morn at 9:00am PT. You can watch live on Twitch https://www.meetup.com/DIYRobocars/events/275268196/
DIY Robocars via Twitter
New version of Intel OpenBot! This resolves many of the issues with the first version, including a much smoother tr… https://twitter.com/i/web/status/1352395636369313798
DIY Drones via Twitter
Using ArduRover with an RTK GPS https://ift.tt/2N9I3RO
Jan 18
DIY Drones via Twitter
Jan 18
DIY Robocars via Twitter
Jan 18
DIY Robocars via Twitter
Jan 15
DIY Robocars via Twitter
Jan 15
DIY Drones via Twitter
Jan 14
DIY Robocars via Twitter
RT @Heavy02011: @diyrobocars : A Home-brew computer club* for Connected Autonomous Driving on Jan 23rd, 2021 https://www.meetup.com/Connected-Autonomous-Driving/events/275728684/ #Meetu…
Jan 14
DIY Robocars via Twitter
Jan 14
David Hori liked Isabella Domi's profile
Jan 12
DIY Robocars via Twitter
RT @Heavy02011: ⁦@diyrobocars⁩ Autonomous Driving Assembly at #rC3. join us at https://rc3.world/rc3/assembly/diyrobocars-f1tenth/ ⁦@f1tenth⁩ ⁦@DAVGtech⁩ ⁦@DWalmroth⁩…
Jan 11
DIY Robocars via Twitter
RT @chr1sa: New car designs coming for our next @DIYRobocars @donkey_car virtual race on the 23rd. Choose any one you want at race time Le…
Jan 11