uavsim.computers
Class ILSComputer

java.lang.Object
  extended by uavsim.computers.A_NavigationComputer
      extended by uavsim.computers.ILSComputer

public class ILSComputer
extends A_NavigationComputer

Defines a navigation computer that links an ILS (instrument landing system) receiver, ILS instrument, DME (distance measuring equipment) instrument, localizer station, glideslope station, and marker beacons. For simplicity, it is assumed that all stations and beacons are on the same frequency and packaged in an ILSAssembly.

Although this computer accesses a DMEMarkerIndicator, it uses only the marker capability. The distance capability must still be handled by a DMEComputer.

Author:
Dan Tappan [23.10.11]

Field Summary
private  VORLocalizerGlideslope _ilsInstrument
          the ILS instrument
private  VORDMEReceiver _ilsReceiver
          the ILS receiver
private  DMEMarkerIndicator _markerInstrument
          the marker instrument
 
Fields inherited from class uavsim.computers.A_NavigationComputer
_chart
 
Constructor Summary
ILSComputer(NavigationChart chart, VORDMEReceiver ilsReceiver, VORLocalizerGlideslope ilsInstrument, DMEMarkerIndicator markerInstrument)
          Creates an ILS computer.
 
Method Summary
 AttitudePitch calculateGlideslopeCorrectionAngle(ILSAssembly ilsAssembly, SevenDOFDescriptor sevenDOFDescriptor)
          Calculates the glideslope correction angle.
private  AttitudeYaw calculateLocalizerCorrectionAngle(ILSAssembly ilsAssembly, SevenDOFDescriptor sevenDOFDescriptor)
          Calculates the localizer correction angle.
 VORLocalizerGlideslope getILSInstrument()
          Gets the ILS instrument.
 VORDMEReceiver getILSReceiver()
          Gets the ILS receiver.
 DMEMarkerIndicator getMarkerInstrument()
          Gets the marker instrument.
 java.lang.String toString()
          
 void update(SevenDOFDescriptor sevenDOFDescriptor)
          Updates the instrument based on the computed navigation information.
private  void updateMarker(ILSAssembly ilsAssembly, SevenDOFDescriptor sevenDOFDescriptor)
          Updates the marker instrument based on whether the UAV is over any marker.
 
Methods inherited from class uavsim.computers.A_NavigationComputer
getNavigationChart, refresh
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

_ilsInstrument

private final VORLocalizerGlideslope _ilsInstrument
the ILS instrument


_ilsReceiver

private final VORDMEReceiver _ilsReceiver
the ILS receiver


_markerInstrument

private final DMEMarkerIndicator _markerInstrument
the marker instrument

Constructor Detail

ILSComputer

public ILSComputer(NavigationChart chart,
                   VORDMEReceiver ilsReceiver,
                   VORLocalizerGlideslope ilsInstrument,
                   DMEMarkerIndicator markerInstrument)
Creates an ILS computer.

Parameters:
chart - - the navigation chart
ilsReceiver - - the ILS receiver
ilsInstrument - - the ILS instrument
markerInstrument - - the marker instrument
Method Detail

calculateGlideslopeCorrectionAngle

public AttitudePitch calculateGlideslopeCorrectionAngle(ILSAssembly ilsAssembly,
                                                        SevenDOFDescriptor sevenDOFDescriptor)
Calculates the glideslope correction angle.

Parameters:
ilsAssembly - - the ILS assembly
sevenDOFDescriptor - - the UAV 7-DOF descriptor
Returns:
the angle

calculateLocalizerCorrectionAngle

private AttitudeYaw calculateLocalizerCorrectionAngle(ILSAssembly ilsAssembly,
                                                      SevenDOFDescriptor sevenDOFDescriptor)
Calculates the localizer correction angle.

Parameters:
ilsAssembly - - the ILS assembly
sevenDOFDescriptor - - the UAV 7-DOF descriptor
Returns:
the angle

getILSInstrument

public VORLocalizerGlideslope getILSInstrument()
Gets the ILS instrument.

Returns:
the instrument

getILSReceiver

public VORDMEReceiver getILSReceiver()
Gets the ILS receiver.

Returns:
the receiver

getMarkerInstrument

public DMEMarkerIndicator getMarkerInstrument()
Gets the marker instrument.

Returns:
the instrument

toString

public java.lang.String toString()

Overrides:
toString in class java.lang.Object

update

public void update(SevenDOFDescriptor sevenDOFDescriptor)
Updates the instrument based on the computed navigation information.

Specified by:
update in class A_NavigationComputer
Parameters:
sevenDOFDescriptor - - the UAV 7-DOF descriptor

updateMarker

private void updateMarker(ILSAssembly ilsAssembly,
                          SevenDOFDescriptor sevenDOFDescriptor)
Updates the marker instrument based on whether the UAV is over any marker.

Parameters:
ilsAssembly - - the ILS assembly
sevenDOFDescriptor - - the UAV 7-DOF descriptor