diff options
Diffstat (limited to 'doc/tools/pdl2texi/Drive.d')
-rw-r--r-- | doc/tools/pdl2texi/Drive.d | 890 |
1 files changed, 0 insertions, 890 deletions
diff --git a/doc/tools/pdl2texi/Drive.d b/doc/tools/pdl2texi/Drive.d deleted file mode 100644 index 82c3de020e..0000000000 --- a/doc/tools/pdl2texi/Drive.d +++ /dev/null @@ -1,890 +0,0 @@ -OBJECT: Drive - DESCRIPTION: - This object provides an interface to the elevation/azimuth - drive system(ECA). - THEORY OF OPERATION: - This object encapsulates the turret drive. The object provides - an interface to control the turret drive. A method is provided - to set the azimuth and elevation rate of the drive. Methods are - provided to request the drive to run in stabilized or power mode - and set the drive speed to high or low. A method is also provided - to allow for drift adjust. - - This object also tracks drive system on hours. It gets the hours - from the EEPROM data, allows the hours to be set, updates the - hours via the activation and deactivation of the drive, and - provides access to the hours. - - + This is the first bullet. - + This is the second bullet. - + This is the third bullet. - + This is the fourth bullet. - + This is the fifth bullet. - - The object also provides methods to access azimuth and elevation - displacement, and methods to process changes in the hardware - discretes drive on, stabilized mode, thermal fault and fault. - - The object also provides methods to enable and disable - both the remote and turret power interlocks which determine if - the drive can be driven by the remote or turret handstation - respectively. - -ATTRIBUTE DESCRIPTIONS: - - -ATTRIBUTE: Azimuth_displacement - DESCRIPTION: - This attribute represents the current azimuth displacement - of the turret. - TYPE: floating point - RANGE: 0-0 - UNITS: degrees - REQUIREMENTS: - AFS 8.2.11 Receive Azimuth Displacement and Elevation Displacement - AIS 5.2.6 Azimuth Displacement analog - - -ATTRIBUTE: Azimuth_rate - DESCRIPTION: - Azimuth rate command for movement of the turret. - TYPE: floating point - RANGE: X-Y - UNITS: degrees / second - DEFAULT: none - REQUIREMENTS: - AFS 8.2.3 Send Azimuth and Elevation Rate to ECA - AIS 5.3.4 Elevation Rate analog - AIS 5.3.5 Azimuth Rate analog - - -ATTRIBUTE: Drift_adjust - DESCRIPTION: - This attribute represents the current drift adjustment mode - of the ECA turret drive. - TYPE: enumerated - MEMBERS: - ADJUST_OFF - drift adjust mode is OFF - ADJUST_ON - drift adjust mode is ON - REQUIREMENTS: - AFS 8.2.6 Capable of turret drift adjustment - AIS 5.3.1 Drift Adjust discrete - - -ATTRIBUTE: Drive_on - DESCRIPTION: - Current status of the turret drive. The turret drive may either be - switched on or off. - TYPE: boolean - MEMBERS: - FALSE - turret drive is off - TRUE - turret drive is on - DEFAULT: FALSE - REQUIREMENTS: - AFS 8.2.9 Monitor Drive System On - AIS 5.2.1 Drive System On discrete - - -ATTRIBUTE: Drive_system_hours - DESCRIPTION: - Total number of hours drive has been activated. - TYPE: integer - RANGE: 0 - +INFINITY - UNITS: seconds - REQUIREMENTS: - AFS 4.11 Respond to CDT elapsed time indicator key - - -ATTRIBUTE: Elevation_displacement - DESCRIPTION: - This attribute represents the current elevation displacement - of the turret. - TYPE: floating point - RANGE: 0-0 - UNITS: degrees - REQUIREMENTS: - AFS 8.2.11 Receive Azimuth Displacement and Elevation Displacement - AIS 5.2.7 Elevation Displacement analog - - -ATTRIBUTE: Elevation_rate - DESCRIPTION: - Elevation rate command for movement of the turret. - TYPE: floating point - RANGE: X - Y - UNITS: degrees / second - DEFAULT: none - REQUIREMENTS: - AFS 8.2.3 Send Azimuth and Elevation Rate to ECA - AIS 5.3.4 Elevation Rate analog - AIS 5.3.5 Azimuth Rate analog - - -ATTRIBUTE: Fault - DESCRIPTION: - This attribute denotes whether a turret malfunction has occurred. - TYPE: boolean - MEMBERS: - TRUE - a turret malfunction has occurred - FALSE - no turret malfunction has occurred - DEFAULT: FALSE - REQUIREMENTS: - AFS 8.2.7 Check for ECA failure indication - AIS 5.2.4 Turret Drive Malfunction discrete - - -ATTRIBUTE: Mode - DESCRIPTION: - Current requested drive mode. - TYPE: enumerated - MEMBERS: - POWER - operate in POWER mode - STAB - operate in STABILIZED mode - DEFAULT: POWER - REQUIREMENTS: - bogus requirement - - -ATTRIBUTE: Remote_power_interlock_position - DESCRIPTION: - This is the status of the remote's power interlock. - TYPE: enumerated - MEMBERS: - OPEN - relay is open - CLOSED - relay is closed - REQUIREMENTS: - AFS 8.2.12 Control Power Interlock - - -ATTRIBUTE: Speed - DESCRIPTION: - Current speed mode of the ECA turret drive. - TYPE: enumerated - MEMBERS: - LOW_SPEED - turret drive does not allow the maximum rate - HIGH_SPEED - turret drive allows the maximum rate - DEFAULT: HIGH - REQUIREMENTS: - AFS 8.2.5 Control Turret - AIS 5.3.3 Turret High Speed Mode discrete - - -ATTRIBUTE: Stabilized_mode - DESCRIPTION: - Current drive mode indicating whether the ECA electronics are - operating in Stabilized mode or Power mode. - TYPE: boolean - MEMBERS: - FALSE - not operating in STABILIZED mode - TRUE - operating in STABILIZED mode - DEFAULT: FALSE - REQUIREMENTS: - AFS 8.2.8 Monitor Turret Stab Mode Indicate - AIS 5.2.3 Turret Stab Mode Indicate discrete - - -ATTRIBUTE: State - DESCRIPTION: - Current state of the turret drive. - TYPE: enumerated - MEMBERS: - ACTIVATED - turret drive is ON and active - DEACTIVATED - turret drive is ON but deactivated - DEFAULT: DEACTIVATED - REQUIREMENTS: - AFS 8.2.4 Set Plam Grips Active - AIS 5.3.2 Palm Grips Active discrete - - -ATTRIBUTE: Thermal_fault - DESCRIPTION: - This attribute denotes whether a turret thermal fault has occurred. - TYPE: boolean - MEMBERS: - TRUE - a turret thermal fault has occurred - FALSE - no turret thermal fault has occurred - DEFAULT: FALSE - REQUIREMENTS: - AFS 8.2.7 Check for ECA failure indication - AIS 5.2.2 Turret ECA Thermal Failure discrete - - -ATTRIBUTE: Turret_power_interlock_position - DESCRIPTION: - This is the status of the turret's power interlock. - TYPE: enumerated - MEMBERS: - OPEN - relay is open - CLOSED - relay is closed - REQUIREMENTS: - AFS 8.2.12 Control Power Interlock - - -ASSOCIATION DESCRIPTIONS: none - -ABSTRACT TYPE DESCRIPTIONS: - -ABSTRACT TYPE: Drift_adjust_t - DESCRIPTION: - This abstract type represents the current drift adjustment mode - of the ECA turret drive. - VISIBILITY: public - DERIVATION: enumerated - MEMBERS: - ADJUST_OFF = 0 - drift adjust mode is OFF - ADJUST_ON = 1 - drift adjust mode is ON - REQUIREMENTS: - AIS 5.3.1 Drift Adjust discrete - -ABSTRACT TYPE: Interlock_status - DESCRIPTION: - An interlock state being OPEN or CLOSED. - VISIBILITY: private - DERIVATION: enumerated - MEMBERS: - OPEN - interlock relay is in the open state - CLOSED - interlock relay is in the closed state - REQUIREMENTS: - AFS 8.2.12 Control Power Interlock - -ABSTRACT TYPE: Mode - DESCRIPTION: - This type specifies the drive mode of the ECA turret drive. - VISIBILITY: public - DERIVATION: enumerated - MEMBERS: - POWER - operate in POWER mode - STAB - operate in STABILIZED mode - -ABSTRACT TYPE: Speed - DESCRIPTION: - This type specifies the Speed mode of the ECA turret drive. - VISIBILITY: public - DERIVATION: enumerated - MEMBERS: - LOW_SPEED = 0 - turret drive does not allow the maximum rate - HIGH_SPEED = 1 - turret drive allows the maximum rate - REQUIREMENTS: - AIS 5.3.3 Turret High Speed Mode discrete - -ABSTRACT TYPE: State_t - DESCRIPTION: - This type specifies the state of the turret drive. - VISIBILITY: private - DERIVATION: enumerated - MEMBERS: - DEACTIVATED - turret drive is ON but deactivated - ACTIVATED - turret drive is ON and active - -DATA ITEM DESCRIPTIONS: - -DATA ITEM: Azimuth_displacement_control - DESCRIPTION: - This data item contains the Azimuth_displacement analog control - information. - TYPE: handle - - -DATA ITEM: Azimuth_rate_control - DESCRIPTION: - This data item contains the Azimuth_rate analog control - information. - TYPE: handle - - -DATA ITEM: Drift_adjust_control - DESCRIPTION: - This data item contains the Drift_adjust discrete control - information. - TYPE: handle - - -DATA ITEM: Drive_activate_control - DESCRIPTION: - This data item contains the activate drive relay control information. - TYPE: handle - - -DATA ITEM: Drive_activated_timestamp - DESCRIPTION: - This data item stores the timestamp of the last time the drive was - activated. It will be used to compute the activated time when a - deactivate is received. - TYPE: time_t - DEFAULT: none - NOTES: - see C library for data type information - - -DATA ITEM: Drive_on - DESCRIPTION: - The current status of the turret drive representing whether - the drive is on or off. - TYPE: boolean - DEFAULT: FALSE - - -DATA ITEM: Drive_on_control - DESCRIPTION: - This data item contains the Drive_on discrete flag control - information. - TYPE: handle - - -DATA ITEM: Drive_system_hours - DESCRIPTION: - This data item stores the actual time the drive has been active. - This value will be output by the Get_time method and will be set - by the Set_time method. - TYPE: integer - RANGE: 0 - +INFINITY - UNITS: seconds - DEFAULT: 0 - - -DATA ITEM: Elevation_rate_control - DESCRIPTION: - This data item contains the Elevation_rate analog control - information. - TYPE: handle - - -DATA ITEM: Elevation_displacement_control - DESCRIPTION: - This data item contains the Elevation_displacement analog control - information. - TYPE: handle - - -DATA ITEM: Fault_control - DESCRIPTION: - This data item contains the Fault discrete flag control - information. - TYPE: handle - - -DATA ITEM: Remote_power_interlock_control - DESCRIPTION: - This data item contains the Remote_power_interlock relay control - information. - TYPE: handle - - -DATA ITEM: Stabilized_mode_control - DESCRIPTION: - This data item contains the Stabilized_mode discrete flag control - information. - TYPE: handle - - -DATA ITEM: State - DESCRIPTION: - The current state of the turret drive representing an activated or - deactivated drive. - TYPE: State_t - DEFAULT: DEACTIVATED - - -DATA ITEM: Thermal_fault_control - DESCRIPTION: - This data item contains the Thermal_fault discrete flag control - information. - TYPE: handle - - -DATA ITEM: Turret_power_interlock_control - DESCRIPTION: - This data item contains the Turret_power_interlock relay control - information. - TYPE: handle - - -DATA ITEM: Turret_power_interlock_status - DESCRIPTION: - The accurate status of the turret power interlock relay. This value - will be used to control the relay during a transition from the remote - back to the turret console. - TYPE: Interlock_status - DEFAULT: none - - -METHOD DESCRIPTIONS: - -METHOD: Activate - DESCRIPTION: - This method activates the turret drive system. A timestamp of the - activation is recorded to keep a running count of hours the drive has - been active. - VISIBILITY: public - INPUTS: none - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.4 Set Palm Grips Active - AIS 5.3.2 Palm Grips Active discrete - PDL: - - if Drive_on - if State is DEACTIVATED - close the Drive_activate_control relay using the Relay object - timestamp Drive_activated_timestamp for Drive_system_hours - running total - set State to ACTIVATED - else - already in the ACTIVATED state - - -METHOD: Create - DESCRIPTION: - This method initializes the Turret Drive object. All monitors of - turret drive signals are initialized and/or registered. All turret - drive characteristics are set to their initial values. - VISIBILITY: public - INPUTS: none - OUTPUTS: none - PDL: - - set State to DEACTIVATED - - get Drive_system_hours to initialize the elapsed drive time - from the Statistics (eeprom database) object - this is - stored upon shutdown in eeprom - - create Fault_control using Discrete_flag object with the - following attributes - true_sense - DISCRETE_FLAG_TRUE_IS_1 - is_buffered - false - is_monitored - true - period - 10ms - change_routine - Change_fault - change fault using initial value returned from create Fault_control - - create Thermal_fault_control using Discrete_flag object with - the following attributes - true_sense - DISCRETE_FLAG_TRUE_IS_0 - is_buffered - false - is_monitored - true - period - 10ms - change_routine - Change_thermal_fault - change thermal fault using initial value returned from create - Thermal_fault_control - - create Stabilized_mode_control using Discrete_flag object with the - following attributes - true_sense - DISCRETE_FLAG_TRUE_IS_1 - is_buffered - false - is_monitored - true - period - 10ms - change_routine - Change_stabilized_mode - change stabilized mode using initial value returned from create - Stabilized_mode_control - - create Drive_on_control using Discrete_flag object with the - following attributes - true_sense - DISCRETE_FLAG_TRUE_IS_1 - is_buffered - false - is_monitored - true - period - 10ms - change_routine - Change_drive_on - change drive on using initial value returned from create - Drive_on_control - - create Azimuth_rate_control using the Linear_dac object - with the following attributes: - voltage_low - -10 - voltage_high - +10 - logical_low - -60 - logical_high - +60 - is_buffered - false - period - none - initial_value - 0 - - create Elevation_rate_control using the Linear_dac object with the - following attributes: - voltage_low - -10 - voltage_high - +10 - logical_low - -60 - logical_high - +60 - is_buffered - false - period - none - initial_value - 0 - - create Azimuth_displacement_control using the Linear_adc object with - the following attributes: - voltage low - - voltage high - - logical low - - logical high - - is_buffered - false - is_monitored - false - period - none - change_routine - none - delta - none - - create Elevation_displacement_control using the Linear_adc object - with the following attributes: - voltage low - - voltage high - - logical low - - logical high - - is_buffered - false - is_monitored - false - period - none - change_routine - none - delta - none - - create Drive_activate_control using the Relay object with the - following attributes: - open_sense - RELAY_OPEN_IS_0 - is_buffered - false - period - none - initial_state - RELAY_OPEN - - create Turret_power_interlock_control using the Relay object with - the following attributes: - open_sense - RELAY_OPEN_IS_0 - is_buffered - false - period - none - initial_state - RELAY_OPEN - set Turret_power_interlock_status to OPEN - - create Remote_power_interlock_control using the Relay - object with the following attributes: - open_sense - RELAY_OPEN_IS_0 - is_buffered - false - period - none - initial_state - RELAY_OPEN - - create Drift_adjust_control using the Discrete_out object with - following attributes: - is_buffered - false - period - 10ms - initial_value - ADJUST_OFF - - -METHOD: Deactivate - DESCRIPTION: - This method deactivates the turret drive system. A timestamp of the - activation is recorded to keep a running count of hours the drive - has been active. - VISIBILITY: public - INPUTS: none - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.4 Set Plam Grips Active - AIS 5.3.2 Palm Grips Active discrete - PDL: - - if Drive_on - if State is DEACTIVATED - timestamp deactivate for Drive_system_hours running total - deactivate drive by opening the Drive_activate_control relay - using the Relay object - compute running time since last activate - add running time to Drive_system_hours - set State to DEACTIVATED - else - already in the DEACTIVATED state - - -METHOD: Disable_remote_power_interlock - DESCRIPTION: - This method disables the turret power interlock safety preventing - the turret from being driven by the remote's handstation. - VISIBILITY: public - INPUTS: none - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.12 Control Power Interlock - PDL: - - open the remote power interlock relay - return the turret relay to its designated state defined by the - Turret_power_interlock_status - - -METHOD: Disable_turret_power_interlock - DESCRIPTION: - This method disables the turret power interlock safety preventing - the turret from being driven by the turret's handstation. - VISIBILITY: public - INPUTS: none - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.12 Control Power Interlock - PDL: - - Deactivate the Drive object - open the turret power interlock relay - set Turret_power_interlock_status to OPEN - - -METHOD: Enable_remote_power_interlock - DESCRIPTION: - This method will enable the remote power interlock to allow - the turret to be driven from the remote station. - VISIBILITY: public - INPUTS: none - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.12 Control Power Interlock - NOTES: - At this time the turret's power interlock is opened to avoid - having both relays closed at a time. - PDL: - - if Drive_on - open the turret power interlock relay using the Relay object - close the remote power interlock relay using the Relay object - - -METHOD: Enable_turret_power_interlock - DESCRIPTION: - This method will enable the turret power interlock to allow - the turret to be driven from the turret station. - VISIBILITY: public - INPUTS: none - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.12 Control Power Interlock - NOTES: - At this time the closed state is saved to allow the correct state - to be returned to in the event a remote overrides the turret and the - remote gives up its control, we must return to the previous state of - the turret power interlock. - PDL: - - if Drive_on - close the turret power interlock relay using the Relay object - - set the Turret_power_interlock_status to CLOSED to return to - when remote gives up control - - -METHOD: Get_AZ_EL_displacement - DESCRIPTION: - This method returns the current azimuth displacement and elevation - displacement from the ECA. - VISIBILITY: public - INPUTS: none - OUTPUTS: - current azimuth displacement value - current elevation displacement value - REQUIREMENTS: - AFS 8.2.11 Receive Azimuth Displacement and Elevation Displacement - AIS 5.2.6 Azimuth Displacement analog - AIS 5.2.7 Elevation Displacement analog - NOTES: - Currently supported as an on-demand type of signal. May change to a - monitored analog signal. - PDL: - - if Drive_on - get and return current azimuth displacement and current elevation - displacement from ECA using the Linear_ADC object - - -METHOD: Get_hours - DESCRIPTION: - This method returns the current value contained in the elapsed - turret drive active time. - VISIBILITY: public - INPUTS: none - OUTPUTS: - elapsed turret drive time - the current elasped turret drive time - REQUIREMENTS: - bogus requirements - REFERENCES: - AFS 4.11 Respond to CDT elapsed time indicator key - NOTES: - bogus notes - PDL: - - return the current value for Drive_system_hours - - -METHOD: Set_drift_adjust - DESCRIPTION: - This method provides the ability to set the drift adjust to the - value represented by the handstation. Drift adjust is either ON - or OFF. - VISIBILITY: public - INPUTS: - value - new drift adjust value - ADJUST_OFF - drift adjust mode is OFF - ADJUST_ON - drift adjust mode is ON - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.6 Capable of turret drift adjustment - AIS 5.3.1 Drift Adjust discrete - PDL: - - if Drive_on - set drift adjust discrete to value using Discrete_out object - -METHOD: Set_hours - DESCRIPTION: - This method will set the turret drive activated elapsed time value - to the specified value. - VISIBILITY: public - INPUTS: - new_elapsed_time_value - specified turret drive elapsed time value - OUTPUTS: none - REQUIREMENTS: - AFS 4.11 Respond to CDT elapsed time indicator key - PDL: - - set the value of Drive_system_hours to the value specified by - new_elapsed_time_value - - -METHOD: Set_mode - DESCRIPTION: - This method sets the requested mode of the turret drive. - VISIBILITY: public - INPUTS: - mode - new requested mode - POWER - operating in POWER mode - STAB - operating in STABILIZED mode - OUTPUTS: none - REQUIREMENTS: - bogus requirements - PDL: - if mode is POWER - set drive mode switchlight to PWR_LAMP using the Console object - else if mode is STAB - set drive mode switchlight to STB_LAMP using the Console object - - -METHOD: Set_rate - DESCRIPTION: - This method provides the ability to send azimuth and elevation rates - to the drive. Two parameters are used as input to designate the - corresponding rates. These parameters must be in degrees per second. - VISIBILITY: public - INPUTS: - azimuth rate - new azimuth rate in degress per second - elevation rate - new elevation rate in degress per second - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.3 Send Azimuth and Elevation Rate to ECA - AIS 5.3.4 Elevation Rate analog - AIS 5.3.5 Azimuth Rate analog - NOTES: - May need to couple these analogs with an interface driver to close - the window between writes and conversions. - PDL: - - if Drive_on - send the new azimuth rate to the Azimuth analog - send the new elevation rate to Elevation analog - - -METHOD: Set_speed - DESCRIPTION: - This method sets the turret drive speed mode to the specified value - either high or low based on user input. - VISIBILITY: public - INPUTS: - new_speed_value - new value to set the turret speed to - LOW_SPEED - turret drive does not allow the maximum rate - HIGH_SPEED - turret drive allows the maximum rate - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.5 Control Turret - AIS 5.3.3 Turret High Speed Mode discrete - PDL: - - if Drive_on - set turret drive high speed mode discrete to the new_speed_value - using Discrete_out object - - -METHOD: Change_drive_on - DESCRIPTION: - This method will be used to report a transition of the drive system - on discrete. - VISIBILITY: private - INPUTS: - value - new drive system on value - FALSE - indicates drive not on - TRUE - indicates drive on - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.9 Monitor Drive System On - AIS 5.2.1 Drive System On discrete - REFERENCES: - bogus references - NOTES: - bogus notes - PDL: - - set Drive_on to value - if Drive_on is FALSE - deactivate the turret drive using the Drive object - - -METHOD: Change_fault - DESCRIPTION: - This method will be used to indicate that a turret malfunction - has been recognized by the turret drive. - VISIBILITY: private - INPUTS: - value - new value resulting from a fault discrete change - FALSE - indicates no fault - TRUE - indicates fault - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.7 Check for ECA failure indication - AIS 5.2.4 Turret Drive Malfunction discrete - PDL: - - if value - send turret fault message using the Display object - else - return - - -METHOD: Change_stabilized_mode - DESCRIPTION: - This method will determine a transition from STAB mode to POWER mode. - It will set the stab mode lamp on the console. - VISIBILITY: private - INPUTS: - value - new value resulting from a stab mode discrete change - FALSE - indicates not stabilized mode - TRUE - indicates stabilized mode - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.8 Monitor Turret Stab Mode Indicate - AIS 5.2.3 Turret Stab Mode Indicate discrete - PDL: - - if value - set STAB mode light to LAMP_ON using the Console object - else value indicates not stabilized mode - set STAB mode light to LAMP_OFF using the Console object - - -METHOD: Change_thermal_fault - DESCRIPTION: - This method will be used to indicate that a thermal fault has been - recognized by the turret drive. - VISIBILITY: private - INPUTS: - value - new value resulting from a thermal fault discrete change - FALSE - indicates no thermal fault - TRUE - indicates thermal fault - OUTPUTS: none - REQUIREMENTS: - AFS 8.2.7 Check for ECA failure indication - AIS 5.2.2 Turret ECA Thermal Failure discrete - PDL: - - if value - send thermal fault message using the Display object - else - return - -TASK DESCRIPTIONS: none - -ENDOBJECT: Drive |