Dual control: Difference between revisions

Jump to navigation Jump to search
Updated.
m (The hope of getting any kind of successful dual-control operation in 1.0.0 is small.)
(Updated.)
Line 1: Line 1:
This is an add-on for [[FlightGear]] that adds basic support for shared control of an [[aircraft]] over the FlightGear [[Multiplayer Howto|multiplayer network]]. The main part is a set of generic [[Nasal scripting language|Nasal]] modules and modified instrument files that form the core of the networked shared control functionality.  
Dual Control is a system for [[FlightGear]] that adds basic support for shared control of an [[aircraft]] over the FlightGear [[Multiplayer Howto|multiplayer network]].


'''Note:''' The Open Scene Graph based FlightGear/CVS (developer's version) is needed to use this add-on. The aircraft might load in FlightGear 1.0.0 too but the copilot cannot see or touch anything in the cockpit.  
'''Note:''' FlightGear/CVS (developer's version) or the upcoming Dec 2008 FlightGear release are needed to use Dual Control.


[http://www.gidenstam.org/FlightGear/DualControl The main page for this add-on.] A summary of the information follows below.
==Aircraft==


==Aircraft==
Currently there are currently a small number of aircraft with dual control support:
* [[Zeppelin NT]] (<tt>ZLT-NT</tt>, <tt>ZLT-NT-copilot</tt>). Available i FlightGear/CVS.
* c172p Skyhawk with dual control (<tt>c172p-pilot</tt> and <tt>c172p-copilot</tt>). Based on David Megginson's [[Cessna C172|c172p]] single control aircraft. Available from [http://www.gidenstam.org/FlightGear/DualControl/Aircraft the dual-control aircraft hangar]. The tar.gz archive for the aircraft should be extracted in $FG_ROOT/Aircraft/.


Currently there are two aircraft with dual control support:
* [[Zeppelin NT]]. Available i FlightGear/CVS.
* c172p Skyhawk with dual control (c172p-pilot and c172p-copilot), which is based on David Megginson's [[Cessna C172|c172p]] single control aircraft. Available from [http://www.gidenstam.org/FlightGear/DualControl/Aircraft the dual-control aircraft hangar]. The tar.gz archive for the aircraft should be extracted in $FG_ROOT/Aircraft/.


The aircraft enables a pilot and copilot to jointly fly the aircraft over the FlightGear multiplayer network. Pilot and copilot currently have shared control over primary flight controls, throttle, mixture and so on. Exactly which controls are shared varies between the aircraft but usually include elevator trim, flaps, brakes, cockpit switches, the radio stack and some instrument settings. The copilot has a subset of the full instrumentation (also depending on the aircraft), usually including airspeed, altimeter, VSI, HSI, turn coordinator, engine RPM and the radio stack. Nav/Comm 1 and the first VOR indicator is best controlled by the pilot, while Nav/Comm 2 and the corresponding VOR indicator is faster for the copilot.


The aircraft enables a pilot and copilot to jointly fly the aircraft over the FlightGear multiplayer network. Pilot and copilot currently have shared control over primary flight controls, throttle, mixture and so on. Exactly which controls are shared varies between the aircraft but usually include elevator trim, flaps, brakes, cockpit switches, the radio stack and some  instrument settings. The copilot has a subset of the full instrumentation, including airspeed, altimeter, VSI, HSI, turn coordinator, engine RPM and the radio stack. Nav/Comm 1 and the first VOR indicator is best controlled by the pilot, while Nav/Comm 2 and the corresponding VOR indicator is faster for the copilot.
[[Image:ZLT-NT-dual.jpg]]


==Usage instruction==
==Usage instruction==
The system consists of two "aircraft":  
The system consists of two "aircraft":


The pilot uses a special variant of the c172p, c172p-pilot. The pilot need to specify the callsign of the copilot (other copilots will be ignored).
The pilot uses a special variant of the c172p, <tt>c172p-pilot</tt>. The pilot need to specify the callsign of the copilot (other copilots will be ignored).
For the Zeppelin NT the aircraft names are <tt>ZLT-NT</tt> and <tt>ZLT-NT-copilot</tt>, respectively.


'''Pilot usage example:'''
'''Pilot usage example:'''
  fgfs --aircraft=c172p-pilot --prop:/sim/remote/pilot-callsign="someone"  
  fgfs --aircraft=c172p-pilot --prop:/sim/remote/pilot-callsign="someone"  


The copilot uses a special "aircraft", c172p-copilot, which piggybacks on the designated pilot and captures the local control inputs. A current limitation is that only the cockpit view (ctrl-v) is jitter free. There is also a noticeable delay between control inputs and effect, since they are passed via the the multiplayer protocol. The severity of this delay depend on round trip time and some other factors - the delay seems significantly longer than the round trip time itself which is due to buffering in the MP protocol receiver. That said, I have flown successfully as copilot in a setup with 100-120ms round trip time between both pilot and server and copilot and server (total delay >500ms). Landing is a bit exciting in that case, however.
The copilot uses a special "aircraft", c172p-copilot, which piggybacks on the designated pilot and captures the local control inputs. A current limitation is that only the cockpit views are jitter free. There is also a noticeable delay between control inputs and effect, since they are passed via the the multiplayer protocol. The severity of this delay depend on round trip time and some other factors - the delay seems significantly longer than the round trip time itself which is due to buffering in the MP protocol receiver. That said, I have flown successfully as copilot in a setup with 100-120ms round trip time between both pilot and server and copilot and server (total delay >500ms). Landing is a bit exciting in that case, however.


'''Copilot usage example:'''
'''Copilot usage example:'''
  fgfs --aircraft=c172p-copilot --prop:/sim/remote/pilot-callsign="anybody"
  fgfs --aircraft=c172p-copilot --prop:/sim/remote/pilot-callsign="anybody"
Note: The copilot will want to reset the view (ctrl-v) to avoid jitter as external views are jitter prone.
Note: External views are jitter prone for the copilot.
 
== Developer information ==
 
The main part of the Dual Control system is a set of generic [[Nasal scripting language|Nasal]] modules and modified instrument files that form the core of the networked shared control functionality. See the link below for some more information.
 
==External links==
 
* [http://www.gidenstam.org/FlightGear/DualControl The main page for the Dual Control system.] Check here for the latest information.
789

edits

Navigation menu