Date post: | 01-Jan-2016 |
Category: |
Documents |
Upload: | juliet-wise |
View: | 42 times |
Download: | 4 times |
GenericRemote Interface Unit (RIU)
Interface Control Document (ICD)
CCSDS SOIS2013 spring meeting
Glenn Rakow/NASA-GSFC
Purpose
• Evaluate the ICD requirements for an generalized RIU for the purpose of evaluating the SOIS EDS requirements
Agenda
• Purpose• Hardware Device ICD• Software Interface• Generalized RIU Functions• Protocol Profile• Command Formats
Hardware Device ICD• Aspects of an ICD
– Software interfaces• Data Link protocol• Messaging format• Timing relationships• Conversion factors
– Connector interfaces*• External box connectors• Backplane
– Mechanical interfaces*• Form factor• Thermal• Power
• Need to represent complete ICD in EDS– Connector and mechanical require definition
• Human readable• One-stop shopping
* Not focus for SOIS EDS but needs to be supported
Some Observations
• Information to provide in EDS– Some information provided so that other side of interface may
interpret data– Some information provided as insight– Needs to be clear as to normative and informative but always needs
to be there• Depends upon complexity of device, e.g. ASIM or no ASIM
• Need to understand data link controller on far end– Most Milbus controller (not packet driven) are table driven and
controller configuration has transformation to data structure– Most SpaceWire controller (packet driven) require the user to
assemble packet structure– Schedule driven version will do the segmentation for the user
Software Interface (1/2)• Data Link protocol
– Defines the protocol– Does not describe the protocol
• Defines subset of protocol that is applicable• Exception: If data link is not a standard protocol then description of
protocol would be necessary, e.g., RS-422 interface
• Messaging format– Describes the format of commands & telemetry– Addressing within the device– Defines quantity of telemetry and index description
Software Interface (2/2)• Timing relationships
– Relationship of messages between producer and consumer• Request & indication (master & slave) – synchronized by consumer• Asynchronously sent• Synchronously sent – Data transmitted by device based upon timing
information received– Frequency of messages/transactions
• How often messages are generated• How generation is triggered
– Timing information• Physical interface – may be part of data bus or separate discrete signal with pulse or
combination• Time-Stamping of messages (if done)• Time Updates – Protocol for how this is done
– Defined from the perspective of producer– Consumer will have to adapt– Accuracy –how manages jitter (does it compute average and adjust –may be necessary
for any broadcast type trigger, e.g., SpaceWire Time Codes
• Conversion factors– Formulas– Lookup tables
Generalized RIU Functions• 1553 Protocol – Long stub Interface• 1 Hz telemetry
– TBD thermistors or PRTs– TBD external coarse sun sensors– TBD external hinge pots– TBD external pressure transducers– TBD external analog lines (S-Band TT&C)– TBD internal thermistors– TBD internal voltages– TBD external voltages from LVPC– TBD potential calibration channel– TBD current source calibration channel
• 5 Hz telemetry– TBD external coarse sun sensors
• Switch power to X heater zones– TBD 5 Amp heater zones– TBD 2 Amp heater zones
• In-system programmable EEPROM– RS 422 Interface to read/write (test only)– Flight version contains PROM
Protocol Profile (1/X)
Need to clarify options within protocol definition• Mil-Std-1553b – long stub bus• Two data buses possible for use
– Any combination as prime and standby supported (decision up to BC)• RT Address = 5• Message formats allowed:
– BC to RT transfers– RT to BC transfers– Mode Control transfers
• Message formats disallowed:– Broadcast message– RT-to-RT transfers
• Sub-address’ accessible– All– Although not all used
• Unused values are equal to zero
• Mode Code supported– None
• Status Word Flags– Message Error bit – active– All other status bits – always logic zero
Protocol Profile (2/X)• Data word & bit order– Most significant bit transferred first• Bits follow in descending order
– Most significant byte transferred first– Data Word Order• Receive Command
– Word #1 follows Receive Command Word– Word # 2 follows Word # 1
• Transmit Command– Word #1 follows Status Word– Word # 2 follows Word # 1– Word # 32 last
Command Formats (1/x)• Heater Switch Control “ON” Receive Commands
– Milbus values that are same for all Heater Control Regions “ON” commands:• RT Address=5• Receive• Word Count= 1
– Milbus Sub-Address and Data Value are:• Heater Control Region #1
– Sub-address= 2– Data Value = 0x0001
• Heater Control Region #2– Sub-address= 3– Data Value = 0x0002
• Heater Control Region #3– Sub-address= 4– Data Value = 0x0004
• Heater Control Region #4– Sub-address= 5– Data Value = 0x0008
• Heater Control Region #5– Sub-address= 6– Data Value = 0x0010
Command Formats (2/x)• Heater Switch Control “OFF” Receive Commands
– Milbus values that are same for all Heater Control Regions “OFF” commands:• RT Address=5• Receive• Word Count= 1
– Milbus Sub-Address and Data Value are:• Heater Control Region #1
– Sub-address= 2– Data Value = 0x0000
• Heater Control Region #2– Sub-address= 3– Data Value = 0x0000
• Heater Control Region #3– Sub-address= 4– Data Value = 0x0000
• Heater Control Region #4– Sub-address= 5– Data Value = 0x0000
• Heater Control Region #5– Sub-address= 6– Data Value = 0x0000
– All Heaters Regions are “OFF” after a RIU power-on reset
Command Formats (3/x)• Data Collection Sync Receive Command
– Initiates collection of all analog telemetry channels by RT– Delay between successive commands
• 140 ms• 5 Hz was the specification from the C&DH viewpoint
– Milbus Format• RT Address =5• Receive• Sub-address = 1• Word Count= 32 (all zeros, i.e., 0b00000)• Data Word = don’t care (0xXXXX)
Command Formats (4/x)• Heater Region/Sync Count Status Read Command
– Milbus values that are same for all Heater Control Regions “OFF” commands:• RT Address= 5• Transmit• Sub-address= 1• Word Count= 32 (all zeros, i.e., 0b00000)
– Milbus Data Words are:• Word # 1- Heater Status
– Data Format» Bits 15-5 – don’t cares (0bXXXX XXXX XXX)» Bit 4 – Heater 5 Status; Bit 3 – Heater 4 Status; Bit 2 – Heater 3
Status; Bit 1 – Heater 2 Status; Bit 0 – Heater 1 Status» Bit = 0b0 indicates “OFF”; Bit = 0b1 indicates “ON”
• Word # 2 – Telemetry Counter– Data Format
» Bits 15 – 0 – represents number of Sync Commands received» Count rolls over - different values on successive reads means
telemetry has been updated• Words # 3 – 32 are don’t cares
Command Formats (5/x)• Thermistor Telemetry Status Read Command
– Milbus values that are same for all Heater Control Regions “OFF” commands:• RT Address= 5• Transmit• Sub-address= 4• Word Count= 32 (all zeros, i.e., 0b00000)
– Milbus Data Words are:• Word # 1- Thermistor # 65• Word # 32 – Thermistor # 96• Incrementing values in between
– Data Format» Bits 15-12 – Not used – set to ‘1’s (0b1111)» Bits 11 -2 – ADC count
• Bit 11 is msb• Bit 2 is lsb
» Bits 1 – 0 – ADC Noise (don’t care – 0bXX)
Command Formats (6/x)• Thermistor Telemetry Status Read Command
– Milbus values that are same for all Heater Control Regions “OFF” commands:• RT Address= 5• Transmit• Sub-address= 5• Word Count= 32 (all zeros, i.e., 0b00000)
– Milbus Data Words are:• Word # 1- Thermistor # 97• Word # 16 – Thermistor # 112• Word # 17 – Thermistor # 33• Word # 32 – Thermistor # 48• Incrementing values in between
– Data Format» Bits 15-12 – Not used – set to ‘1’s (0b1111)» Bits 11 -2 – ADC count
• Bit 11 is msb• Bit 2 is lsb
» Bits 1 – 0 – ADC Noise (don’t care – 0bXX)
Command Formats (7/x)• Thermistor Telemetry Status Read Command
– Milbus values that are same for all Heater Control Regions “OFF” commands:• RT Address= 5• Transmit• Sub-address= 6• Word Count= 32 (all zeros, i.e., 0b00000)
– Milbus Data Words are:• Word # 1- Thermistor # 49• Word # 16 – Thermistor # 64• Word # 17 – Thermistor # 17• Word # 32 – Thermistor # 32• Incrementing values in between
– Data Format» Bits 15-12 – Not used – set to ‘1’s (0b1111)» Bits 11 -2 – ADC count
• Bit 11 is msb• Bit 2 is lsb
» Bits 1 – 0 – ADC Noise (don’t care – 0bXX)
Command Formats (8/x)• Thermistor Telemetry Status Read Command
– Milbus values that are same for all Heater Control Regions “OFF” commands:• RT Address= 5• Transmit• Sub-address= 7• Word Count= 32 (all zeros, i.e., 0b00000)
– Milbus Data Words are:• Word # 1- # 16, & # 30 - # 32- Reserved• Word # 17 –Conditioned Active Analog Monitor _# 16• Word # 29 – Conditioned Active Analog Monitor_# 28• Incrementing values in between
– Data Format» Bits 15-12 – Not used – set to ‘1’s (0b1111)» Bits 11 -2 – ADC count
• Bit 11 is msb• Bit 2 is lsb
» Bits 1 – 0 – ADC Noise (don’t care – 0bXX)
More Commands
• Have not included all commands here– Refer to ICD
Conversions
• Describes the functions used to convert the raw data values sampled by the ADC into engineering units (ohms, voltage or current) and vice versa.
• ADC specifics:– Each ADC converter is 12 bits, and accepts 0V to 4V full scale.– Digital output values are: 0 to 4095– => Voltage per bit = 4V / 4096 = 976.563E-6
Passive Thermistor Conversions
• The raw thermistor samples returned by the RIU can be converted to resistance using the following formula:– T = Thermistor (ohms)– C = Digital output count from A/D– T = (3906.252 * C) / (4000 - .976563 * C )– C = ((( T * 4000 ) / ( T + 4000 )) * .001) / 976.563E-6
Course Sun Sensor Conversions
• The raw CSS samples returned by the RIU can be converted to current values using the following formula:– CSS = Coarse Sun Sensor output (uA)– C = Digital output count from A/D– CSS = (976.563E-6 * C) / 2940– C = ( CSS * 2940 ) / 976.563E-6
Active Analog Conversions
• The raw Active Analog samples returned by the RIU can be converted to voltages using the following formula:– AA = Active Analog (V)– C = Digital output count from A/D– AA = (976.563E-6 * C) / 0.8008– C = (0.8008 * AA) / 976.563E-6
Pressure Transducer Conversion
• The raw pressure transducer samples returned by the RIU can be converted to voltages using the following formula:– PT = Pressure Transducer (V)– C = Digital output count from A/D– PT = (976.563E-6 * C) / 0.8– C = (0.8 * PT) / 976.563E-6
3.3V or 2.5V Monitor Conversion
• The raw samples returned by the RIU for 3.3 or 2.5V monitors can be converted to voltages
• using the following formula:– M = Monitor Voltage (V)– C = Digital output count from A/D– M = C * 976.563E-6– C = M / 976.563E-6
5V Monitor Conversion
• The raw samples returned by the RIU for 5V monitors can be converted to voltage using the following formula:– M = Monitor Voltage (V)– C = Digital output count from A/D– M = (976.563E-6 * C) / 0.5– C = (0.5 * M) / 976.563E-6
• More to come ….