<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.flightgear.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kwikius</id>
	<title>FlightGear wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.flightgear.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kwikius"/>
	<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/Special:Contributions/Kwikius"/>
	<updated>2026-04-04T09:05:56Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.6</generator>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132464</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132464"/>
		<updated>2021-07-05T09:52:37Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: /* Using FlightGear for software in the loop simulation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;KcoqxdLbXuo&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
==== Interfacing to FlightGear ====&lt;br /&gt;
There are many options to choose from {{ main article|Interfacing FlightGear}}&lt;br /&gt;
&lt;br /&gt;
===== Sending data to the FDE =====&lt;br /&gt;
I chose to use [[Telnet_usage|telnet interface]]. There is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/scripts/example/fgfsclient.cxx C++ example in the FlightGear source code] , that shows basic useage. Telnet is relatively slow since it sends data as text, but you need to send a surprisingly small amount of information to control the aircraft. Usually you are merely sending information to modify pitch, roll and yaw. Less frequently you are changing throttle ,flaps and so on. By caching data in your app and only sending information if it actually changed, the overhead is quite low.  When bandwidth becomes an issue, then there are other protocols available.&lt;br /&gt;
&lt;br /&gt;
===== Receiving data from the FDE =====&lt;br /&gt;
I chose to use [[Property Tree/Sockets|socket interface]]. Again there is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/examples/netfdm C++example in the FlightGear source code]. Note that the example sends data to FlightGear, but the socket can also be used to read the [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Network/net_fdm.hxx FGNetFDM] structure from FlightGear via a socket, which is what I chose to do. The FGNetFDM structure contains most, if not all the information that is need at a fast rate. Socket UDP interface sends the FGNetFDM structure as a binary chunk, so is fast.&amp;lt;ref&amp;gt;Lurking in FlightGear, there is a pipe interface which would promise to be very fast, but there is not much information about it. [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/FDM/ExternalPipe/ ExternalPipe] [https://sourceforge.net/p/flightgear/mailman/message/34559783/] &amp;lt;/ref&amp;gt; Other data can be read back using the telnet interface. &lt;br /&gt;
&lt;br /&gt;
===== Frame rate =====&lt;br /&gt;
Ideally we would like to receive the FDE data from FlightGear at arbitrarily high rates, but unfortunately this is one area where FlightGear isnt great. I can only get an update rate of 10 Hz. In practise this limitation can be worked with by simulating aircraft where things happen more slowly.&amp;lt;ref&amp;gt;The video above uses an update rate of 10Hz. The EasyStar has modified parameters.&amp;lt;/ref&amp;gt; The only alternative is to use an external FDE and just use FlightGear as a viewer. &amp;lt;ref&amp;gt;This is the approach taken by Ardupilot, by using JSBSim directly.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Visualising the simulation ===&lt;br /&gt;
*The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
L&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132463</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132463"/>
		<updated>2021-07-05T09:49:51Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: Add framerate info&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;KcoqxdLbXuo&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
==== Interfacing to FlightGear ====&lt;br /&gt;
There are many options to choose from {{ main article|Interfacing FlightGear}}&lt;br /&gt;
&lt;br /&gt;
===== Sending data to the FDE =====&lt;br /&gt;
I chose to use [[Telnet_usage|telnet interface]]. There is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/scripts/example/fgfsclient.cxx C++ example in the FlightGear source code] , that shows basic useage. Telnet is relatively slow since it sends data as text, but you need to send a surprisingly small amount of information to control the aircraft. Usually you are merely sending information to modify pitch, roll and yaw. Less frequently you are changing throttle ,flaps and so on. By caching data in your app and only sending information if it actually changed, the overhead is quite low.  When bandwidth becomes an issue, then there are other protocols available.&lt;br /&gt;
&lt;br /&gt;
===== Receiving data from the FDE =====&lt;br /&gt;
I chose to use [[Property Tree/Sockets|socket interface]]. Again there is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/examples/netfdm C++example in the FlightGear source code]. Note that the example sends data to FlightGear, but the socket can also be used to read the [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Network/net_fdm.hxx FGNetFDM] structure from FlightGear via a socket, which is what I chose to do. The FGNetFDM structure contains most, if not all the information that is need at a fast rate. Socket UDP interface sends the FGNetFDM structure as a binary chunk, so is fast.&amp;lt;ref&amp;gt;Lurking in FlightGear, there is a pipe interface which would promise to be very fast, but there is not much information about it. [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/FDM/ExternalPipe/ ExternalPipe] [https://sourceforge.net/p/flightgear/mailman/message/34559783/] &amp;lt;/ref&amp;gt; Other data can be read back using the telnet interface. &lt;br /&gt;
&lt;br /&gt;
=== Frame rate ===&lt;br /&gt;
Ideally we would like to receive the FDE data from FlightGear at arbitrarily high rates, but unfortunately this is one area where FlightGear isnt great. I can only get an update rate of 10 Hz. In practise this limitation can be worked with by simulating aircraft where things happen more slowly.&amp;lt;ref&amp;gt;The video above uses an update rate of 10Hz. The EasyStar has modified parameters.&amp;lt;/ref&amp;gt; The only alternative is to use an external FDE and just use FlightGear as a viewer. &amp;lt;ref&amp;gt;This is the approach taken by Ardupilot, by using JSBSim directly.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Visualising the simulation ===&lt;br /&gt;
*The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
L&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132462</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132462"/>
		<updated>2021-07-05T09:09:52Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;KcoqxdLbXuo&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
==== Interfacing to FlightGear ====&lt;br /&gt;
There are many options to choose from {{ main article|Interfacing FlightGear}}&lt;br /&gt;
&lt;br /&gt;
===== Sending data to the FDE =====&lt;br /&gt;
I chose to use [[Telnet_usage|telnet interface]]. There is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/scripts/example/fgfsclient.cxx C++ example in the FlightGear source code] , that shows basic useage. Telnet is relatively slow since it sends data as text, but you need to send a surprisingly small amount of information to control the aircraft. Usually you are merely sending information to modify pitch, roll and yaw. Less frequently you are changing throttle ,flaps and so on. By caching data in your app and only sending information if it actually changed, the overhead is quite low.  When bandwidth becomes an issue, then there are other protocols available.&lt;br /&gt;
&lt;br /&gt;
===== Receiving data from the FDE =====&lt;br /&gt;
I chose to use [[Property Tree/Sockets|socket interface]]. Again there is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/examples/netfdm C++example in the FlightGear source code]. Note that the example sends data to FlightGear, but the socket can also be used to read the [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Network/net_fdm.hxx FGNetFDM] structure from FlightGear via a socket, which is what I chose to do. The FGNetFDM structure contains most, if not all the information that is need at a fast rate. Socket UDP interface sends the FGNetFDM structure as a binary chunk, so is fast.&amp;lt;ref&amp;gt;Lurking in FlightGear, there is a pipe interface which would promise to be very fast, but there is not much information about it. [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/FDM/ExternalPipe/ ExternalPipe] [https://sourceforge.net/p/flightgear/mailman/message/34559783/] &amp;lt;/ref&amp;gt; Other data can be read back using the telnet interface. &lt;br /&gt;
&lt;br /&gt;
=== Visualising the simulation ===&lt;br /&gt;
*The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
L&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=File:Slope_soaring_at_Rhossilli.jpg&amp;diff=132397</id>
		<title>File:Slope soaring at Rhossilli.jpg</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=File:Slope_soaring_at_Rhossilli.jpg&amp;diff=132397"/>
		<updated>2021-06-18T17:23:11Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: Uploaded own work with UploadWizard&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=={{int:filedesc}}==&lt;br /&gt;
{{Information&lt;br /&gt;
|description={{en|1=Slope soaring with EasyStar RC glider at Rhossilli U.K.}}&lt;br /&gt;
|date=2021-06-18&lt;br /&gt;
|source={{own}}&lt;br /&gt;
|author=[[User:Kwikius|Kwikius]]&lt;br /&gt;
|permission=&lt;br /&gt;
|other versions=&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=={{int:license-header}}==&lt;br /&gt;
{{self|cc-by-sa-4.0}}&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132377</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132377"/>
		<updated>2021-06-16T11:18:43Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: /* Receiving data from the FDE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
==== Interfacing to FlightGear ====&lt;br /&gt;
There are many options to choose from {{ main article|Interfacing FlightGear}}&lt;br /&gt;
&lt;br /&gt;
===== Sending data to the FDE =====&lt;br /&gt;
I chose to use [[Telnet_usage|telnet interface]]. There is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/scripts/example/fgfsclient.cxx C++ example in the FlightGear source code] , that shows basic useage. Telnet is relatively slow since it sends data as text, but you need to send a surprisingly small amount of information to control the aircraft. Usually you are merely sending information to modify pitch, roll and yaw. Less frequently you are changing throttle ,flaps and so on. By caching data in your app and only sending information if it actually changed, the overhead is quite low.  When bandwidth becomes an issue, then there are other protocols available.&lt;br /&gt;
&lt;br /&gt;
===== Receiving data from the FDE =====&lt;br /&gt;
I chose to use [[Property Tree/Sockets|socket interface]]. Again there is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/examples/netfdm C++example in the FlightGear source code]. Note that the example sends data to FlightGear, but the socket can also be used to read the [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Network/net_fdm.hxx FGNetFDM] structure from FlightGear via a socket, which is what I chose to do. The FGNetFDM structure contains most, if not all the information that is need at a fast rate. Socket UDP interface sends the FGNetFDM structure as a binary chunk, so is fast.&amp;lt;ref&amp;gt;Lurking in FlightGear, there is a pipe interface which would promise to be very fast, but there is not much information about it. [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/FDM/ExternalPipe/ ExternalPipe] [https://sourceforge.net/p/flightgear/mailman/message/34559783/] &amp;lt;/ref&amp;gt; Other data can be read back using the telnet interface. &lt;br /&gt;
&lt;br /&gt;
=== Visualising the simulation ===&lt;br /&gt;
*The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
L&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132376</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132376"/>
		<updated>2021-06-16T11:12:32Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
==== Interfacing to FlightGear ====&lt;br /&gt;
There are many options to choose from {{ main article|Interfacing FlightGear}}&lt;br /&gt;
&lt;br /&gt;
===== Sending data to the FDE =====&lt;br /&gt;
I chose to use [[Telnet_usage|telnet interface]]. There is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/scripts/example/fgfsclient.cxx C++ example in the FlightGear source code] , that shows basic useage. Telnet is relatively slow since it sends data as text, but you need to send a surprisingly small amount of information to control the aircraft. Usually you are merely sending information to modify pitch, roll and yaw. Less frequently you are changing throttle ,flaps and so on. By caching data in your app and only sending information if it actually changed, the overhead is quite low.  When bandwidth becomes an issue, then there are other protocols available.&lt;br /&gt;
&lt;br /&gt;
===== Receiving data from the FDE =====&lt;br /&gt;
I chose to use [[Property Tree/Sockets|socket interface]]. Again there is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/examples/netfdm C++example in the FlightGear source code]. Note that the example sends data to FlightGear, but the socket can also be used to read the [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Network/net_fdm.hxx FGNetFDM] structure from FlightGear via a socket, which is what I chose to do. The FGNetFDM structure contains most, if not all the information that is need at a fast rate. Socket UDP interface sends the FGNetFDM structure as a binary chunk, so is fast. Other data can be read back using the telnet interface.  Somehwre lurking in FlighGear, there is a pipe inteface, but &lt;br /&gt;
&lt;br /&gt;
=== Visualising the simulation ===&lt;br /&gt;
*The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132365</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132365"/>
		<updated>2021-06-16T10:27:40Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
==== Interfacing to FlightGear ====&lt;br /&gt;
There are many options to choose from {{ main article|Interfacing FlightGear}}&lt;br /&gt;
&lt;br /&gt;
===== Sending data to the FDE =====&lt;br /&gt;
I chose to use [[Telnet_usage|telnet interface]]. There is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/scripts/example/fgfsclient.cxx C++ example in the FlightGear source code] , that shows basic useage. Telnet is relatively slow since it sends data as text, but you need to send a surprisingly small amount of information to control the aircraft. Usually you are merely sending information to modify pitch, roll and yaw. Less frequently you are changing throttle ,flaps and so on. By caching data in your app and only sending information, if it actually changed, the overhead is quite low.  When bandwidth becomes an issue, then there are other protocols available.&lt;br /&gt;
&lt;br /&gt;
===== Receiving data from the FDE =====&lt;br /&gt;
I chose to use [[Property Tree/Sockets|socket interface]]. Again there is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/examples/netfdm C++example in the FlightGear source code]. Note that the example sends data to FlightGear, but the socket can also be used to read the [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Network/net_fdm.hxx FGNetFDM] structure from FlightGear via a socket, which is what I chose to do. The FGNetFDM structure contains most, if not all the information that is need at a fast rate. Socket UDP interface sends the FGNetFDM structure as a binary chunk, so is fast. Other data can be read back using the telnet interface.  Somehwre lurking in FlighGear, there is a pipe inteface, but &lt;br /&gt;
&lt;br /&gt;
=== Visualising the simulation ===&lt;br /&gt;
*The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132364</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132364"/>
		<updated>2021-06-16T10:21:26Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
==== Interfacing to FlightGear ====&lt;br /&gt;
There are many options to choose from {{ main article|Interfacing FlightGear}}&lt;br /&gt;
&lt;br /&gt;
===== Sending data to the FDE =====&lt;br /&gt;
I chose to use [[Telnet_usage|telnet interface]]. There is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/scripts/example/fgfsclient.cxx C++ example in the FlightGear source code] , that shows basic useage. Telnet is relatively slow, but you need to send a surprisingly small amount of information to control the aircraft. Usually you are merely sending information to modify pitch, roll and yaw. Less frequently you are changing throttle ,flaps and so on. By caching data in your app and only sending information, if it actually changed, the overhead is quite low.  When bandwidth becomes an issue, then there are other protocols available.&lt;br /&gt;
&lt;br /&gt;
===== Receiving data from the FDE =====&lt;br /&gt;
I chose to use [[Property Tree/Sockets|socket interface]]. Again there is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/examples/netfdm C++example in the FlightGear source code]. Note that the example sends data to FlightGear, but the socket can also be used to read the [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Network/net_fdm.hxx FGNetFDM] structure from FlightGear via a socket, which is what I chose to do. The FGNetFDM structure contains most, if not all the information that is need at a fast rate. Other data can be read back using the telnet interface.&lt;br /&gt;
&lt;br /&gt;
=== Visualising the simulation ===&lt;br /&gt;
*The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132363</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132363"/>
		<updated>2021-06-16T10:10:15Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
==== Interfacing to FlightGear ====&lt;br /&gt;
There are many options to choose from {{ main article|Interfacing FlightGear}}&lt;br /&gt;
&lt;br /&gt;
===== Sending data to the FDE =====&lt;br /&gt;
I chose to use [[Telnet_usage|telnet interface]]. There is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/scripts/example/fgfsclient.cxx C++ example in the FlightGear source code] , that shows basic useage.&lt;br /&gt;
&lt;br /&gt;
===== Receiving data from the FDE =====&lt;br /&gt;
I chose to use [[Property Tree/Sockets|socket interface]]. Again there is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/examples/netfdm C++example in the FlightGear source code]. Note that the example sends data to FlightGear, but the socket can also be used to read the [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Network/net_fdm.hxx FGNetFDM] structure from FlightGear via a socket.&lt;br /&gt;
&lt;br /&gt;
=== Visualising the simulation ===&lt;br /&gt;
*The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132362</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132362"/>
		<updated>2021-06-16T10:03:47Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: fix up links&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
====== Interfacing to FlightGear ======&lt;br /&gt;
There are many options to choose from {{ main article|Interfacing FlightGear}}&lt;br /&gt;
&lt;br /&gt;
==== Sending data to the FDE ====&lt;br /&gt;
I chose to use [[Telnet_usage|telnet interface]]. There is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/scripts/example/fgfsclient.cxx C++ example in the FlightGear source code] , that shows basic useage.&lt;br /&gt;
&lt;br /&gt;
====Receiving data from the FDE====&lt;br /&gt;
I chose to use [[Property Tree/Sockets|socket interface]]. Again there is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/examples/netfdm C++example in the FlightGear source code]. Note that the example sends data to FlightGear, but the socket can also be used to read the [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Network/net_fdm.hxx FGNetFDM] structure from FlightGear via a socket.&lt;br /&gt;
&lt;br /&gt;
==== Visualising the simulation ====&lt;br /&gt;
*The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132361</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132361"/>
		<updated>2021-06-16T09:59:39Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
====== Interfacing to FlightGear ======&lt;br /&gt;
There are many options to choose from {{ main article|Interfacing FlightGear}}&lt;br /&gt;
&lt;br /&gt;
==== Sending data to the FDE ====&lt;br /&gt;
I chose to use [[Telnet_usage|telnet interface]]. There is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/scripts/example/fgfsclient.cxx:Links C++ example in the FlightGear source code] , that shows basic useage.&lt;br /&gt;
&lt;br /&gt;
====Receiving data from the FDE====&lt;br /&gt;
I chose to use [[Property Tree/Sockets|socket interface]]. Again there is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/examples/netfdm:Links C++example in the FlightGear source code]. Note that the example sends data to FlightGear, but the socket can also be used to read the [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Network/net_fdm.hxx:Links FGNetFDM] structure from FlightGear via a socket.&lt;br /&gt;
&lt;br /&gt;
==== Visualising the simulation ====&lt;br /&gt;
*The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132360</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132360"/>
		<updated>2021-06-16T09:57:09Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: Add some detail and links about interfacing&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
====== Interfacing to FlightGear ======&lt;br /&gt;
There are many options to choose from {{ main article|Interfacing FlightGear}}&lt;br /&gt;
&lt;br /&gt;
==== Sending data to the FDE ====&lt;br /&gt;
I chose to use [[Telnet_usage|Telnet interface]]. There is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/scripts/example/fgfsclient.cxx:Links C++ example in the FlighGear source code] , that shows basic useage.&lt;br /&gt;
&lt;br /&gt;
====Receiving data from the FDE====&lt;br /&gt;
I chose to use [[Property Tree/Sockets|socket interface]. Again there is a [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/examples/netfdm:Links C++example in the FlightGear source code]. Note that the example sends data to FlightGear, but the socket can also be used to read the [https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/src/Network/net_fdm.hxx:Links FGNetFDM] structure from FlightGear via a socket.&lt;br /&gt;
&lt;br /&gt;
==== Visualising the simulation ====&lt;br /&gt;
*The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132359</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132359"/>
		<updated>2021-06-16T08:56:18Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
==== Sending data to the FDE ====&lt;br /&gt;
==== Receiving data from the FDE ====&lt;br /&gt;
==== Visualising the simulation ====&lt;br /&gt;
* The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132358</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132358"/>
		<updated>2021-06-16T08:53:12Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: Use headings intro etc&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Using FlightGear for software in the loop simulation ==&lt;br /&gt;
=== Introduction ===&lt;br /&gt;
FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== The main requirements for a SITL simulation ===&lt;br /&gt;
&lt;br /&gt;
* To be able to send control commands to the FDE&lt;br /&gt;
* To receive back information from the FDE that can be used to simulate the FC sensors. &lt;br /&gt;
* The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132357</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132357"/>
		<updated>2021-06-16T08:43:39Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The main requirements for a SITL simulation are :&lt;br /&gt;
&lt;br /&gt;
* To be able to send control commands to the FDE&lt;br /&gt;
* To receive back information from the FDE that can be used to simulate the FC sensors. &lt;br /&gt;
* The ability to view the simulation graphically. Though not entirely necessary, in practise this is most useful, since visualisation can show up issues that are hidden in data, therfore the examples use 3D graphical simulation where possible using  FlightGear as the viewer in most cases.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132356</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132356"/>
		<updated>2021-06-16T08:39:03Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
The source code is written in reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The main requirements for a SITL simulation are to be able to send control commands to the FDE and to receive back information from the FDE that can be used to simulate the FC sensors. The ability to view the simulation graphically is not entirely necessary, but the examples will all use 3D graphical simulation where possible using  FlightGear as the viewer as well.&lt;br /&gt;
&lt;br /&gt;
==Footnotes==&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132355</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132355"/>
		<updated>2021-06-16T08:36:52Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: test footnotes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). &amp;lt;ref&amp;gt;The implementation is firmly based on reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The main requirements for a SITL simulation are to be able to send control commands to the FDE and to receive back information from the FDE that can be used to simulate the FC sensors. The ability to view the simulation graphically is not entirely necessary, but the examples will all use 3D graphical simulation where possible using  FlightGear as the viewer as well.&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132354</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132354"/>
		<updated>2021-06-16T08:24:18Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: Move some parts to footnotes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article describes a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC). [1]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The main requirements for a SITL simulation are to be able to send control commands to the FDE and to receive back information from the FDE that can be used to simulate the FC sensors. The ability to view the simulation graphically is not entirely necessary, but the examples will all use 3D graphical simulation where possible using  FlightGear as the viewer as well.&lt;br /&gt;
&lt;br /&gt;
=== Footnotes ===&lt;br /&gt;
&lt;br /&gt;
# The implementation is firmly based on reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132338</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132338"/>
		<updated>2021-06-15T22:55:19Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation.&lt;br /&gt;
This article intends to describe a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;youtube&amp;gt;27LC2WRK0Rk&amp;lt;/youtube&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
&lt;br /&gt;
The implementation is firmly based on reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&lt;br /&gt;
&lt;br /&gt;
The main requirements for a SITL simulation are to be able to send control commands to the FDE and to receive back information from the FDE that can be used to simulate the FC sensors. The ability to view the simulation graphically is not entirely necessary, but the examples will all use 3D graphical simulation where possible using  FlightGear as the viewer as well.&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius&amp;diff=132336</id>
		<title>User:Kwikius</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius&amp;diff=132336"/>
		<updated>2021-06-15T22:51:25Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: add link to first article&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Veteran C++ programmer.&lt;br /&gt;
&lt;br /&gt;
[[User:Kwikius/Using FlightGear for software in the loop simulation]]&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132335</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132335"/>
		<updated>2021-06-15T22:40:04Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: A little more about the main simulation requirements&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation.&lt;br /&gt;
This article intends to describe a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC).&lt;br /&gt;
&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
&lt;br /&gt;
The implementation is firmly based on reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, also available on github at https://github.com/kwikius/quan-trunk.&lt;br /&gt;
&lt;br /&gt;
The main requirements for a SITL simulation are to be able to send control commands to the FDE and to receive back information from the FDE that can be used to simulate the FC sensors. The ability to view the simulation graphically is not entirely necessary, but the examples will all use 3D graphical simulation where possible using  FlightGear as the viewer as well.&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132334</id>
		<title>User:Kwikius/Using FlightGear for software in the loop simulation</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius/Using_FlightGear_for_software_in_the_loop_simulation&amp;diff=132334"/>
		<updated>2021-06-15T22:35:33Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: Created page with &amp;quot;FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation. This article intends to describe a project that uses Flig...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;FlightGear is popular as both a viewer and a flight dynamics engine (FDE) for software in the loop (SITL) simulation.&lt;br /&gt;
This article intends to describe a project that uses FlightGear to provide a viewer and an FDE for simulating flying an RC aeroplane autonomously using a flight controller (FC).&lt;br /&gt;
&lt;br /&gt;
The source code for the examples is available on github at https://github.com/kwikius/fg_ext_fdm.&lt;br /&gt;
&lt;br /&gt;
The implementation is firmly based on reasonably modern C++ and makes use of a C++ library for representing physical quantities called quan, &lt;br /&gt;
also available on github at https://github.com/kwikius/quan-trunk.&lt;br /&gt;
&lt;br /&gt;
The main requirements for a SITL simulation are to be able to send control commands to the FDE and to receive back information from the FDE that can be used &lt;br /&gt;
to simulate the FC sensors. The ability to view the simulation Graphically is not entirely necessary, butthe examples ALL use 3D graphical simulation, since this is the main benefir of using FlighGear.&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
	<entry>
		<id>https://wiki.flightgear.org/w/index.php?title=User:Kwikius&amp;diff=132331</id>
		<title>User:Kwikius</title>
		<link rel="alternate" type="text/html" href="https://wiki.flightgear.org/w/index.php?title=User:Kwikius&amp;diff=132331"/>
		<updated>2021-06-15T22:01:30Z</updated>

		<summary type="html">&lt;p&gt;Kwikius: Initial creation of page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Veteran C++ programmer.&lt;/div&gt;</summary>
		<author><name>Kwikius</name></author>
	</entry>
</feed>