Source Code
|
These source-code files are part of a reconstructed copy of Luminary 163, the
first (unflown) release of the Apollo 14 Lunar Module (LM) Apollo Guidance
Computer (AGC) software.
The reconstruction began with reconstructed source code for Luminary 173. Changes between revision 163 and 173 were backed out, as described by Luminary memos 157 and 158. The reconstruction was verified by matching memory-bank checksums to those listed in drawing 2021152N. Note that page numbers in the reconstructed code match those for the baseline log section mentioned in each file's changelog; the page numbers for a real Luminary 163 listing would be different. Comments from the original source code are prefixed with a single '#' symbol, whereas comments added later are prefixed by "##" or "###". Report any errors noted by creating an issue report at the Virtual AGC project's GitHub repository. |
039128,000002: ## Copyright: Public domain.
039129,000003: ## Filename: FINDCDUW_-_GUIDAP_INTERFACE.agc
039130,000004: ## Purpose: A section of Luminary revision 163.
039131,000005: ## It is part of the reconstructed source code for the first
039132,000006: ## (unflown) release of the flight software for the Lunar
039133,000007: ## Module's (LM) Apollo Guidance Computer (AGC) for Apollo 14.
039134,000008: ## The code has been recreated from a reconstructed copy of
039135,000009: ## Luminary 173, as well as Luminary memos 157 amd 158.
039136,000010: ## It has been adapted such that the resulting bugger words
039137,000011: ## exactly match those specified for Luminary 163 in NASA
039138,000012: ## drawing 2021152N, which gives relatively high confidence
039139,000013: ## that the reconstruction is correct.
039140,000014: ## Reference: pp. 899-917
039141,000015: ## Assembler: yaYUL
039142,000016: ## Contact: Ron Burkey <info@sandroid.org>.
039143,000017: ## Website: www.ibiblio.org/apollo/index.html
039144,000018: ## Mod history: 2019-08-21 MAS Created from Luminary 173.
039145,000019:
|
Page 899 |
039147,000021: # PROGRAM NAME: FINDCDUW
039148,000022:
039149,000023: # MOD NUMBER: 1 68 07 15
039150,000024:
039151,000025: # MOD AUTHOR: KLUMPP
039152,000026:
039153,000027: # OBJECTS OF MOD: 1. TO SUPPLY COMMANDED GIMBAL ANGLES FOR NOUN 22.
039154,000028: # 2. TO MAINTAIN CORRECT AND CURRENT THRUST
039155,000029: # DIRECTION DATA IN ALL MODES. THIS IS DONE BY
039156,000030: # FETCHING FOR THE THRUST DIRECTION FILTER THE
039157,000031: # CDUD'S IN PNGCS-AUTO, THE CDU'S IN ALL OTHER
039158,000032: # MODES.
039159,000033: # 3. TO SUBSTITUTE A STOPRATE FOR THE NORMAL
039160,000034: # AUTOPILOT COMMANDS WHENEVER
039161,000035: # 1) NOT IN PNGCS-AUTO, OR
039162,000036: # 2) ENGINE IS OFF.
039163,000037:
039164,000038: # FUNCTIONAL DESCRIPTION:
039165,000039:
039166,000040: # FINDCDUW PROVIDES THE INTERFACES BETWEEN THE VARIOUS POWERED FLITE GUIDANCE PROGRAMS
039167,000041: # AND THE DIGITAL AUTOPILOT. THE INPUTS TO FINDCDUW ARE THE THRUST COMMAND VECTOR
039168,000042: # AND THE WINDOW COMMAND VECTOR, AND THE OUTPUTS ARE THE GIMBAL ANGLE
039169,000043: # INCREMENTS, THE COMMANDED ATTITUDE ANGLE RATES, AND THE COMMANDED
039170,000044: # ATTITUDE LAG ANGLES (WHICH ACCOUNT FOR THE ANGLES BY WHICH THE BODY WILL
039171,000045: # LAG BEHIND A RAMP COMMAND IN ATTITUDE ANGLE DUE TO THE FINITE ANGULAR
039172,000046: # ACCELERATIONS AVAILABLE).
039173,000047:
039174,000048: # FINDCDUW ALINES THE ESTIMATED THRUST VECTOR FROM THE THRUST DIRECTION
039175,000049: # FILTER WITH THE THRUST COMMAND VECTOR, AND, WHEN XOVINHIB SET,
039176,000050: # ALINES THE +Z HALF OF THE LM ZX PLANE WITH THE WINDOW COMMAND VECTOR.
039177,000051:
|
Page 900 |
039179,000053: # SPECIFICATIONS:
039180,000054:
039181,000055: # INITIALIZATION: A SINGLE INTERPRETIVE CALL TO INITCDUW IS REQUIRED
039182,000056: # BEFORE EACH GUIDED MANEUVER USING FINDCDUW.
039183,000057:
039184,000058: # CALL: INTERPRETIVE CALL TO FINDCDUW WITH THE THRUST COMMAND
039185,000059: # VECTOR IN MPAC. INTERPRETIVE CALL TO FINDCDUW -2 WITH
039186,000060: # THE THRUST COMMAND VECTOR IN UNFC/2 AND NOT IN MPAC.
039187,000061:
039188,000062: # RETURNS: NORMAL INTERPRETIVE IN ALL CASES
039189,000063:
039190,000064: # 1. NORMALLY ALL AUTOPILOT CMDS ARE ISSUED.
039191,000065:
039192,000066: # 2. IF NOT PNGCS AUTO, DO STOPRATE AND RETURN
039193,000067: # WITHOUT ISSUING AUTOPILOT CMDS.
039194,000068:
039195,000069: # 3. IF ENGINE OFF, DO STOPRATE AND RETURN WITHOUT
039196,000070: # ISSUING AUTOPILOT CMDS.
039197,000071:
039198,000072: # ALARMS: 00401 IF INPUTS DETERMINE AN ATTITUDE IN GIMBAL LOCK.
039199,000073: # FINDCDUW DRIVES CDUXD AND CDUYD TO THE RQD VALUES,
039200,000074: # BUT DRIVES CDUZD ONLY TO THE GIMBAL LOCK CONE.
039201,000075: # 00402 IF UNFC/2 OR UNWC/2 PRODUCE OVERFLOW WHEN
039202,000076: # UNITIZED USING NORMUNIT. FINDCDUW ISSUES
039203,000077: # STOPRATE AS ONLY INPUT TO AUTOPILOT.
039204,000078:
039205,000079: # INPUTS: UNFC/2 THRUST COMMAND VECTOR, NEED NOT BE SEMI-UNIT.
039206,000080: # UNWC/2 WINDOW COMMAND VECTOR, NEED NOT BE SEMI-UNIT.
039207,000081: # OGABIAS POSSIBLE BIAS FOR OUTER GIMBAL ANGLE (ZEROED IN INITCDUW), UNITS OF PI.
039208,000082: # XOVINHIB FLAG DENOTING X AXIS OVERRIDE INHIBITED.
039209,000083: # CSMDOCKD FLAG DENOTING CSM DOCKED.
039210,000084: # STEERSW FLAG DENOTING INSUFF THRUST FOR THRUST DIR FLTR.
039211,000085:
039212,000086: # OUTPUTS: DELCDUX,Y,Z
039213,000087: # OMEGAPD,+1,+2
039214,000088: # DELPEROR,+1,+2
039215,000089: # CPHI,+1,+2 FOR NOUN22
039216,000090:
039217,000091: # DEBRIS: FINDCDUW DESTROYS SINCDUX,Y,Z AND COSCDUX,Y,Z BY
039218,000092: # WRITING INTO THESE LOCATIONS THE SINES AND COSINES
039219,000093: # OF THE CDUD'S IN PNGCS-AUTO, OF THE CDU'S OTHERWISE.
039220,000094:
|
Page 901 |
039222,000096: # INITIALIZATION FOR FINDCDUW
039223,000097:
039224,000098: 30,3063 BANK 30
039225,000099: 30,2000 SETLOC FCDUW
039226,000100: 30,2000 BANK
039227,000101:
039228,000102: 30,3063 E6,1645 EBANK= ECDUW
039229,000103:
039230,000104: 30,3063 COUNT* $$/FCDUW
039231,000105:
039232,000106: 30,3063 77331 INITCDUW SSP VLOAD
039233,000107: 30,3064 03300 OGABIAS
039234,000108: 30,3065 00000 0
039235,000109: 30,3066 06516 UNITX
039236,000110: 30,3067 03267 STORE UNFV/2
039237,000111: 30,3070 03261 STORE UNWC/2
039238,000112: 30,3071 77616 RVQ
039239,000113:
039240,000114: # FINDCDUW PRELIMINARIES
039241,000115:
039242,000116: 30,3072 77775 VLOAD # FINDCDUW -2: ENTRY WHEN UNFC/2 PRE-STORD
039243,000117: 30,3073 03253 UNFC/2 # INPUT VECTORS NEED NOT BE SEMI-UNIT
039244,000118: 30,3074 40200 FINDCDUW BOV SETPD # FINDCDUW: ENTRY WHEN UNFC/2 IN MPAC
039245,000119: 30,3075 61074 FINDCDUW # INTERPRETER NOW INITIALIZED
039246,000120: 30,3076 00023 22 # LOCS 0 THRU 21 FOR DIRECTION COSINE MAT
039247,000121: 30,3077 77420 STQ EXIT
039248,000122: 30,3100 03246 QCDUWUSR # SAVE RETURN ADDRESS
039249,000123:
039250,000124: # MORE HAUSKEEPING
039251,000125:
039252,000126: 30,3101 33744 CA ECDUWL
039253,000127: 30,3102 56003 XCH EBANK # SET EBANK
039254,000128: 30,3103 55645 TS ECDUWUSR # SAVE USER'S EBANK
039255,000129:
039256,000130: 30,3104 30111 CA DAPBOOLS
039257,000131: 30,3105 74737 MASK CSMDOCKD # CSMDOCKD MUST NOT BE BIT15
039258,000132: 30,3106 10000 CCS A
039259,000133: 30,3107 34753 CA ONE # INDEX IF CSM DOCKED
039260,000134: 30,3110 55647 TS NDXCDUW
039261,000135:
039262,000136: 30,3111 34743 CA XOVINHIB # XOVINHIB MUST NOT BE BIT15
039263,000137: 30,3112 55651 TS FLPAUTNO # SET TO POS-NON-ZERO FLAG PNGCS AUTO NOT
039264,000138:
039265,000139: 30,3113 70111 MASK DAPBOOLS
039266,000140: 30,3114 55650 TS FLAGOODW # FLAGOODW = ANY PNZ NUMBER IF XOV INHIBTD
039267,000141:
|
Page 902 |
039269,000143: # FETCH BASIC DATA
039270,000144:
039271,000145: 30,3115 00004 INHINT # RELINT AT PAUTNO (TC INTPRET)
039272,000146:
039273,000147: 30,3116 30032 CA CDUX # FETCH CDUX,CDUY,CDUZ IN ALL CASES, BUT
039274,000148: 30,3117 54771 TS CDUSPOTX # REPLACE BELOW IF PNGCS AUTO
039275,000149: 30,3120 30033 CA CDUY
039276,000150: 30,3121 54765 TS CDUSPOTY
039277,000151: 30,3122 30034 CA CDUZ
039278,000152: 30,3123 54767 TS CDUSPOTZ
039279,000153:
039280,000154: 30,3124 34742 CA BIT10 # PNGCS CONTROL BIT
039281,000155: 30,3125 00006 EXTEND
039282,000156: 30,3126 02030 RAND CHAN30
039283,000157: 30,3127 10000 CCS A
039284,000158: 30,3130 13145 TCF PAUTNO # NOT PNGCS (BITS INVERTED)
039285,000159:
039286,000160: 30,3131 34736 CA BIT14 # AUTO MODE BIT
039287,000161: 30,3132 00006 EXTEND
039288,000162: 30,3133 02031 RAND CHAN31
039289,000163: 30,3134 10000 CCS A
039290,000164: 30,3135 13145 TCF PAUTNO # NOT AUTO (BITS INVERTED)
039291,000165:
039292,000166: 30,3136 55651 TS FLPAUTNO # RESET FLAG PNGCS AUTO NOT
039293,000167:
039294,000168: 30,3137 31634 CA CDUXD # PNGCS AUTO: FETCH CDUXD,CDUYD,CDUZD
039295,000169: 30,3140 54771 TS CDUSPOTX
039296,000170: 30,3141 31635 CA CDUYD
039297,000171: 30,3142 54765 TS CDUSPOTY
039298,000172: 30,3143 31636 CA CDUZD
039299,000173: 30,3144 54767 TS CDUSPOTZ
039300,000174:
|
Page 903 |
039302,000176: # FETCH INPUTS
039303,000177:
039304,000178: 30,3145 06042 PAUTNO TC INTPRET # ENTERING THRUST CMD STILL IN MPAC
039305,000179: 30,3146 77634 RTB
039306,000180: 30,3147 21727 NORMUNIT
039307,000181: 30,3150 24001 STOVL UNX/2 # SEMI-UNIT THRUST CMD AS INITIAL UNX/2
039308,000182: 30,3151 03261 UNWC/2
039309,000183: 30,3152 47034 RTB RTB
039310,000184: 30,3153 21727 NORMUNIT
039311,000185: 30,3154 47622 QUICTRIG # ALWAYS RQD TO OBTAIN TRIGS OF CDUD'S
039312,000186: 30,3155 24015 STOVL UNZ/2 # SEMI-UNIT WINDOW CMD AS INITIAL UNZ/2
039313,000187: 30,3156 00325 DELV
039314,000188: 30,3157 53404 BOVB UNIT
039315,000189: 30,3160 61733 NOATTCNT # AT LEAST ONE ENTERING CMD VCT ZERO
039316,000190: 30,3161 45000 BOV CALL
039317,000191: 30,3162 61176 AFTRFLTR # IF UNIT DELV OVERFLOWS, SKIP FILTER
039318,000192: 30,3163 47676 *SMNB* # YIELDS UNIT(DELV) IN VEH COORDS FOR FLTR
039319,000193:
039320,000194: # THRUST DIRECTION FILTER
039321,000195:
039322,000196: 30,3164 77776 EXIT
039323,000197:
039324,000198: 30,3165 31670 CA UNFVY/2 # FOR RESTARTS, UNFV/2 ALWAYS INTACT, MPAC
039325,000199: 30,3166 22157 LXCH MPAC +3 # RENEWED AFTER RETURN FROM CALLER,
039326,000200: 30,3167 03466 TC FLTRSUB # TWO FILTER UPDATES MAY BE DONE.
039327,000201: 30,3170 55670 TS UNFVY/2 # UNFV/2 NEED NOT BE EXACTLY SEMI-UNIT.
039328,000202:
039329,000203: 30,3171 31672 CA UNFVZ/2
039330,000204: 30,3172 22161 LXCH MPAC +5
039331,000205: 30,3173 03466 TC FLTRSUB
039332,000206: 30,3174 55672 TS UNFVZ/2
039333,000207:
039334,000208: 30,3175 06042 TC INTPRET # COMPLETES FILTER
039335,000209:
|
Page 904 |
039337,000211: # FIND A SUITABLE WINDOW POINTING VECTOR
039338,000212:
039339,000213: 30,3176 46135 AFTRFLTR SLOAD BHIZ # IF XOV NOT INHIBITED, GO FETCH ZNB
039340,000214: 30,3177 03251 FLAGOODW
039341,000215: 30,3200 61204 FETCHZNB
039342,000216: 30,3201 45175 VLOAD CALL
039343,000217: 30,3202 00015 UNZ/2
039344,000218: 30,3203 61506 UNWCTEST
039345,000219:
039346,000220: 30,3204 77775 FETCHZNB VLOAD
039347,000221: 30,3205 02162 ZNBPIP
039348,000222: 30,3206 34015 STCALL UNZ/2
039349,000223: 30,3207 61506 UNWCTEST
039350,000224:
039351,000225: 30,3210 57575 VLOAD VCOMP # Z AND -X CAN'T BOTH PARALLEL UNFC/2
039352,000226: 30,3211 02146 XNBPIP
039353,000227: 30,3212 00015 STORE UNZ/2
039354,000228:
039355,000229: # COMPUTE THE REQUIRED DIRECTION COSINE MATRIX
039356,000230:
039357,000231: 30,3213 47375 DCMCL VLOAD VXV
039358,000232: 30,3214 00015 UNZ/2
039359,000233: 30,3215 00001 UNX/2
039360,000234: 30,3216 41456 UNIT PUSH # UNY/2 FIRST ITERATION
039361,000235: 30,3217 76435 VXV VSL1
039362,000236: 30,3220 00001 UNX/2
039363,000237: 30,3221 00015 STORE UNZ/2 # -UNZ/2 FIRST ITERATION
039364,000238: 30,3222 63361 VXSC PDVL # EXCHANGE -UNFVZ/2 UNZ/2 FOR UNY/2
039365,000239: 30,3223 03273 UNFVZ/2 # MUST BE SMALL
039366,000240: 30,3224 51361 VXSC BVSU # YIELDS -UNFVY/2 UNY/2-UNFVZ/2 UNZ/2
039367,000241: 30,3225 03271 UNFVY/2 # MUST BE SMALL
039368,000242: 30,3226 53372 VSL1 VAD
039369,000243: 30,3227 00001 UNX/2
039370,000244: 30,3230 77656 UNIT # TOTALLY ELIMINATES THRUST POINTING ERROR
039371,000245: 30,3231 00001 STORE UNX/2 # UNX/2
039372,000246: 30,3232 76435 VXV VSL1
039373,000247: 30,3233 00015 UNZ/2 # -UNZ/2 WAS STORED HERE REMEMBER
039374,000248: 30,3234 00007 STORE UNY/2 # UNY/2
039375,000249: 30,3235 47276 VCOMP VXV
039376,000250: 30,3236 00001 UNX/2
039377,000251: 30,3237 77772 VSL1
039378,000252: 30,3240 00015 STORE UNZ/2 # UNZ/2
039379,000253:
|
Page 905 |
039381,000255: # COMPUTE THE REQUIRED GIMBAL ANGLES
039382,000256:
039383,000257: 30,3241 77624 CALL
039384,000258: 30,3242 61516 NB2CDUSP # YIELDS THE RQD GIMBAL ANGLES, 2'S, PI
039385,000259: 30,3243 77776 EXIT
039386,000260:
039387,000261: # BIAS OUTER GIMBAL ANGLE
039388,000262:
039389,000263: 30,3244 31677 CA OGABIAS
039390,000264: 30,3245 26154 ADS MPAC
039391,000265:
039392,000266: # LIMIT THE MIDDLE GIMBAL ANGLE & COMPUTE THE UNLIMITED GIMBAL ANGLE CHGS
039393,000267:
039394,000268: 30,3246 30156 CA MPAC +2 # LIMIT THE MGA
039395,000269: 30,3247 54001 TS L # CAN'T LXCH: NEED UNLIMITED MGA FOR ALARM
039396,000270: 30,3250 33756 CA CDUZDLIM
039397,000271: 30,3251 03712 TC LIMITSUB # YIELDS LIMITED MGA. 1 BIT ERROR POSSIBLE
039398,000272: 30,3252 56156 XCH MPAC +2 # BECAUSE USING 2'S COMP. WHO CARES?
039399,000273: 30,3253 00006 EXTEND
039400,000274: 30,3254 20156 MSU MPAC +2 # THIS BETTER YIELD ZERO
039401,000275: 30,3255 00006 EXTEND
039402,000276: 30,3256 13260 BZF +2
039403,000277: 30,3257 13741 TCF ALARMMGA
039404,000278:
039405,000279: 30,3260 00004 MGARET INHINT # RELINT AT TC INTPRET AFTER TCQCDUW
039406,000280:
039407,000281: 30,3261 22007 ZL
039408,000282: 30,3262 34752 CA TWO
039409,000283: 30,3263 54142 DELGMBLP TS TEM2
039410,000284:
039411,000285: 30,3264 30001 CA L # TO PREVENT FALSE STARTS ABOUT X, ZERO
039412,000286: 30,3265 00006 EXTEND # FLAGOODW IF DELGMBZ OR Y TOO BIG.
039413,000287: 30,3266 70000 SQUARE
039414,000288: 30,3267 64350 AD HI5 # WITHIN 1 BIT OF -(45 DEG SQUARED)
039415,000289: 30,3270 00006 EXTEND
039416,000290: 30,3271 63274 BZMF +3
039417,000291: 30,3272 34755 CA ZERO
039418,000292: 30,3273 55650 TS FLAGOODW
039419,000293:
039420,000294: 30,3274 50142 INDEX TEM2
039421,000295: 30,3275 30154 CA MPAC
039422,000296: 30,3276 50142 INDEX TEM2
039423,000297: 30,3277 54321 TS CPHI # OUTPUTS TO NOUN22
039424,000298: 30,3300 00006 EXTEND
039425,000299: 30,3301 50142 INDEX TEM2
039426,000300: 30,3302 21634 MSU CDUXD # NO MATTER THAT THESE SLIGHTLY DIFFERENT
039427,000301: 30,3303 40000 COM # FROM WHEN WE INITIALLY FETCHED THEM
039428,000302: 30,3304 50142 INDEX TEM2
039429,000303: 30,3305 55674 TS -DELGMB # -UNLIMITED GIMBAL ANGLE CHGS, 1'S, PI
039430,000304: 30,3306 54001 TS L # FOR PRECEDING TEST ON NEXT LOOP PASS
|
Page 906 |
039432,000306: 30,3307 10142 CCS TEM2
039433,000307: 30,3310 13263 TCF DELGMBLP
039434,000308:
|
Page 907 |
039436,000310: # BRANCHES TO NOATTCNT
039437,000311:
039438,000312: 30,3311 11651 CCS FLPAUTNO
039439,000313: 30,3312 13735 TCF NOATTCNT +2 # NOT PNGCS AUTO
039440,000314:
039441,000315: 30,3313 30101 CA FLAGWRD5
039442,000316: 30,3314 74745 MASK ENGONBIT
039443,000317: 30,3315 00006 EXTEND
039444,000318: 30,3316 13735 BZF NOATTCNT +2 # ENGINE NOT ON
039445,000319:
|
Page 908 |
039447,000321: # LIMIT THE ATTITUDE ANGLE CHANGES
039448,000322:
039449,000323: # THIS SECTION LIMITS THE ATTITUDE ANGLE CHANGES ABOUT A SET OF ORTHOGONAL VEHICLE AXES X,YPRIME,ZPRIME.
039450,000324: # THESE AXES COINCIDE WITH THE COMMANDED VEHICLE AXES IF AND ONLY IF CDUXD IS ZERO. THE PRIME SYSTEM IS
039451,000325: # THE COMMANDED VEHICLE SYSTEM ROTATED ABOUT THE X AXIS TO BRING THE Z AXIS INTO ALINEMENT WITH THE MIDDLE GIMBAL
039452,000326: # AXIS. ATTITUDE ANGLE CHANGES IN THE PRIME SYSTEM ARE RELATED TO SMALL GIMBAL ANGLE CHANGES BY:
039453,000327:
039454,000328: # * -DELATTX * * 1 SIN(CDUZD) 0 * * -DELGMBX *
039455,000329: # * * * * * *
039456,000330: # * -DELATTYPRIME * = * 0 COS(CDUZD) 0 * * -DELGMBY *
039457,000331: # * * * * * *
039458,000332: # * -DELATTZPRIME * * 0 0 1 * * -DELGMBZ *
039459,000333:
039460,000334: 30,3317 23676 LXCH -DELGMB +2 # SAME AS -DELATTZPRIME UNLIMITED
039461,000335: 30,3320 51647 INDEX NDXCDUW
039462,000336: 30,3321 33752 CA DAZMAX
039463,000337: 30,3322 03712 TC LIMITSUB
039464,000338: 30,3323 55676 TS -DELGMB +2 # -DELGMBZ
039465,000339:
039466,000340: 30,3324 31675 CA -DELGMB +1
039467,000341: 30,3325 00006 EXTEND
039468,000342: 30,3326 70745 MP COSCDUZ # YIELDS -DELATTYPRIME/2 UNLIMITED
039469,000343: 30,3327 54001 TS L
039470,000344: 30,3330 51647 INDEX NDXCDUW
039471,000345: 30,3331 33754 CA DAY/2MAX
039472,000346: 30,3332 03712 TC LIMITSUB
039473,000347: 30,3333 00006 EXTEND
039474,000348: 30,3334 10745 DV COSCDUZ
039475,000349: 30,3335 57675 XCH -DELGMB +1 # -DELGMBY, FETCHING UNLIMITED VALUE
039476,000350:
039477,000351: 30,3336 00006 EXTEND
039478,000352: 30,3337 70737 MP SINCDUZ
039479,000353: 30,3340 20001 DDOUBL
039480,000354: 30,3341 40000 COM
039481,000355: 30,3342 00006 EXTEND # YIELDS +DELATTX UNLIMITD, MAG < 180 DEG,
039482,000356: 30,3343 21674 MSU -DELGMB # BASED ON UNLIMITED DELGMBY.
039483,000357: 30,3344 54001 TS L # ONE BIT ERROR IF OPERANDS IN MSU
039484,000358: 30,3345 51647 INDEX NDXCDUW # OF MIXED SIGNS. WHO CARES?
039485,000359: 30,3346 33752 CA DAXMAX
039486,000360: 30,3347 03712 TC LIMITSUB
039487,000361: 30,3350 55674 TS -DELGMB # SAVE LIMITED +DELATTX
039488,000362: 30,3351 11650 CCS FLAGOODW
039489,000363: 30,3352 41674 CS -DELGMB # FETCH IT BACK CHGING SIGN IF WINDOW GOOD
039490,000364: 30,3353 55674 TS -DELGMB # OTHERWISE USE ZERO FOR -DELATTX
039491,000365: 30,3354 41675 CS -DELGMB +1
039492,000366: 30,3355 00006 EXTEND
039493,000367: 30,3356 70737 MP SINCDUZ
039494,000368: 30,3357 20001 DDOUBL # YIELDS -CNTRIB TO -DELATTX FROM -DELGMBY
039495,000369: 30,3360 27674 ADS -DELGMB # -DELGMBX. NO OVERFLOW SINCE LIMITED TO
039496,000370: # 20DEG(1+SIN(70DEG)/COS(70DEG)) < 180DEG
039497,000371:
|
Page 909 |
039499,000373: # COMPUTE COMMANDED ATTITUDE RATES
039500,000374:
039501,000375: # * OMEGAPD * * -2 -4 SINCDUZ +0 * * -DELGMBX *
039502,000376: # * * * * * *
039503,000377: # * OMEGAQD * = * +0 -8 COSCDUZ COSCDUX -4 SINCDUX * * -DELGMBY *
039504,000378: # * * * * * *
039505,000379: # * OMEGARD * * +0 +8 COSCDUZ SINCDUX -4 COSCDUX * * -DELGMBZ *
039506,000380:
039507,000381: # ATTITUDE ANGLE RATES IN UNITS OF PI/4 RAD/SEC = K TRIG FCNS IN UNITS OF 2 X GIMBAL ANGLE RATES IN UNITS OF
039508,000382: # PI/2 RAD/SEC. THE CONSTANTS ARE BASED ON DELGMB BEING THE GIMBAL ANGLE CHANGES IN UNITS OF PI RADIANS,
039509,000383: # AND 2 SECONDS BEING THE COMPUTATION PERIOD (THE PERIOD BETWEEN SUCCESSIVE PASSES THRU FINDCDUW).
039510,000384:
039511,000385: 30,3361 41674 CS -DELGMB
039512,000386: 30,3362 55642 TS OMEGAPD
039513,000387: 30,3363 41675 CS -DELGMB +1
039514,000388: 30,3364 00006 EXTEND
039515,000389: 30,3365 70737 MP SINCDUZ
039516,000390: 30,3366 20001 DDOUBL
039517,000391: 30,3367 27642 ADS OMEGAPD
039518,000392: 30,3370 27642 ADS OMEGAPD
039519,000393:
039520,000394: 30,3371 41675 CS -DELGMB +1
039521,000395: 30,3372 00006 EXTEND
039522,000396: 30,3373 70747 MP COSCDUX
039523,000397: 30,3374 20001 DDOUBL
039524,000398: 30,3375 00006 EXTEND
039525,000399: 30,3376 70745 MP COSCDUZ
039526,000400: 30,3377 55643 TS OMEGAQD
039527,000401: 30,3400 41676 CS -DELGMB +2
039528,000402: 30,3401 00006 EXTEND
039529,000403: 30,3402 70741 MP SINCDUX
039530,000404: 30,3403 27643 ADS OMEGAQD
039531,000405: 30,3404 27643 ADS OMEGAQD
039532,000406: 30,3405 27643 ADS OMEGAQD
039533,000407:
039534,000408: 30,3406 31675 CA -DELGMB +1
039535,000409: 30,3407 00006 EXTEND
039536,000410: 30,3410 70741 MP SINCDUX
039537,000411: 30,3411 20001 DDOUBL
039538,000412: 30,3412 00006 EXTEND
039539,000413: 30,3413 70745 MP COSCDUZ
039540,000414: 30,3414 55644 TS OMEGARD
039541,000415: 30,3415 41676 CS -DELGMB +2
039542,000416: 30,3416 00006 EXTEND
039543,000417: 30,3417 70747 MP COSCDUX
039544,000418: 30,3420 27644 ADS OMEGARD
039545,000419: 30,3421 27644 ADS OMEGARD
039546,000420: 30,3422 27644 ADS OMEGARD
039547,000421:
|
Page 910 |
039549,000423: # FINAL TRANSFER
039550,000424:
039551,000425: 30,3423 34752 CA TWO
039552,000426: 30,3424 54142 CDUWXFR TS TEM2
039553,000427: 30,3425 50142 INDEX TEM2
039554,000428: 30,3426 31674 CA -DELGMB
039555,000429: 30,3427 00006 EXTEND
039556,000430: 30,3430 73757 MP DT/DELT # RATIO OF DAP INTERVAL TO CDUW INTERVAL
039557,000431: 30,3431 03726 TC ONESTO2S
039558,000432: 30,3432 50142 INDEX TEM2
039559,000433: 30,3433 55637 TS DELCDUX # ANGLE INTERFACE
039560,000434:
039561,000435: 30,3434 50142 INDEX TEM2
039562,000436: 30,3435 11642 CCS OMEGAPD
039563,000437: 30,3436 64753 AD ONE
039564,000438: 30,3437 13441 TCF +2
039565,000439: 30,3440 64753 AD ONE
039566,000440: 30,3441 00006 EXTEND # WE NOW HAVE ABS(OMEGAPD,QD,RD)
039567,000441: 30,3442 50142 INDEX TEM2
039568,000442: 30,3443 71642 MP OMEGAPD
039569,000443: 30,3444 00006 EXTEND
039570,000444: 30,3445 74741 MP BIT11 # 1/16
039571,000445: 30,3446 00006 EXTEND
039572,000446: 30,3447 50142 INDEX TEM2 # 2
039573,000447: 30,3450 11530 DV 1JACC # UNITS PI/4 RAD/SEC
039574,000448: 30,3451 54001 TS L
039575,000449: 30,3452 33754 CA DELERLIM
039576,000450: 30,3453 03712 TC LIMITSUB
039577,000451: 30,3454 50142 INDEX TEM2
039578,000452: 30,3455 55274 TS DELPEROR # LAG ANGLE = OMEGA ABS(OMEGA)/2 ACCEL
039579,000453: 30,3456 10142 CCS TEM2
039580,000454: 30,3457 13424 TCF CDUWXFR
039581,000455:
039582,000456: # HAUSKEEPING AND RETURN
039583,000457:
039584,000458: 30,3460 31645 TCQCDUW CA ECDUWUSR
039585,000459: 30,3461 54003 TS EBANK # RETURN USER'S EBANK
039586,000460:
039587,000461: 30,3462 06042 TC INTPRET
039588,000462: 30,3463 52001 SETPD GOTO
039589,000463: 30,3464 00001 0
039590,000464: 30,3465 03246 QCDUWUSR # NORMAL AND ABNORMAL RETURN TO USER
039591,000465:
|
Page 911 |
039593,000467: # THRUST VECTOR FILTER SUBROUTINE
039594,000468:
039595,000469: 30,3466 00006 FLTRSUB EXTEND
039596,000470: 30,3467 22142 QXCH TEM2
039597,000471: 30,3470 54143 TS TEM3 # SAVE ORIGINAL OFFSET
039598,000472: 30,3471 40000 COM # ONE MCT, NO WDS, CAN BE SAVED IF NEG OF
039599,000473: 30,3472 60001 AD L # ORIG OFFSET ARRIVES IN A, BUT IT'S
039600,000474: 30,3473 00006 EXTEND # NOT WORTH THE INCREASED OBSCURITY.
039601,000475: 30,3474 51647 INDEX NDXCDUW
039602,000476: 30,3475 73745 MP GAINFLTR
039603,000477: 30,3476 54001 TS L # INCR TO OFFSET, UNLIMITED
039604,000478: 30,3477 33747 CA DUNFVLIM # SAME LIMIT FOR Y AND Z
039605,000479: 30,3500 03712 TC LIMITSUB # YIELDS INCR TO OFFSET, LIMITED
039606,000480: 30,3501 60143 AD TEM3 # ORIGINAL OFFSET
039607,000481: 30,3502 54001 TS L # TOTAL OFFSET, UNLIMITED
039608,000482: 30,3503 33750 CA UNFVLIM # SAME LIMIT FOR Y AND Z
039609,000483: 30,3504 03712 TC LIMITSUB # YIELDS TOTAL OFFSET, LIMITED
039610,000484: 30,3505 00142 TC TEM2
039611,000485:
039612,000486: # SUBR TO TEST THE ANGLE BETWEEN THE PROPOSED WINDOW AND THRUST CMD VCTS
039613,000487:
039614,000488: 30,3506 63441 UNWCTEST DOT DSQ
039615,000489: 30,3507 00001 UNX/2
039616,000490: 30,3510 50025 DSU BMN
039617,000491: 30,3511 21752 DOTSWFMX
039618,000492: 30,3512 61213 DCMCL
039619,000493: 30,3513 43531 SSP RVQ # RVQ FOR ALT CHOICE IF DOT MAGN TOO LARGE
039620,000494: 30,3514 03251 FLAGOODW # ZEROING WINDOW GOOD FLAG
039621,000495: 30,3515 00000 0
039622,000496:
|
Page 912 |
039624,000498: # NB2CDUSP RETURNS THE 2'S COMPLEMENT, PI, SP CDU ANGLES X,Y,Z IN MPAC,+1,+2 GIVEN THE MATRIX WHOSE ROW VECTORS
039625,000499: # ARE THE SEMI-UNIT NAV BASE VECTORS X,Y,Z EXPRESSED IN STABLE MEMBER COORDINATES, LOCATED AT 0 IN THE PUSH LIST.
039626,000500:
039627,000501: # NB2CDUSP USES ARCTRGSP WHICH HAS A MAXIMUM ERROR OF +-4 BITS.
039628,000502:
039629,000503: 30,3516 63545 NB2CDUSP DLOAD DSQ
039630,000504: 30,3517 00003 2
039631,000505: 30,3520 51021 BDSU BPL
039632,000506: 30,3521 06510 DP1/4TH
039633,000507: 30,3522 61525 +3
039634,000508: 30,3523 77745 DLOAD
039635,000509: 30,3524 06520 ZEROVECS # IN CASE SIN WAS SLIGHTLY > 1/2
039636,000510: 30,3525 77566 SQRT EXIT # YIELDS COS(CDUZ) IN UNITS OF 2
039637,000511:
039638,000512: 30,3526 00006 EXTEND
039639,000513: 30,3527 30155 DCA MPAC
039640,000514: 30,3530 20001 DDOUBL
039641,000515: 30,3531 54145 TS TEM5
039642,000516: 30,3532 13535 TCF +3
039643,000517: 30,3533 34733 CA POSMAX # OVERFLOW. FETCH POSMAX, MPAC ALWAYS POS
039644,000518: 30,3534 54145 TS TEM5 # COS(CDUZ) IN TEM5, UNITS 1
039645,000519:
039646,000520: 30,3535 50120 INDEX FIXLOC
039647,000521: 30,3536 30002 CA 2
039648,000522: 30,3537 22154 LXCH MPAC
039649,000523: 30,3540 03605 TC ARCTRGSP
039650,000524: 30,3541 54156 TS MPAC +2 # CDUZ
039651,000525:
039652,000526: 30,3542 34755 CA ZERO
039653,000527: 30,3543 03563 TC DVBYCOSM
039654,000528: 30,3544 34751 CA FOUR
039655,000529: 30,3545 03563 TC DVBYCOSM
039656,000530: 30,3546 40141 CS TEM1
039657,000531: 30,3547 03605 TC ARCTRGSP
039658,000532: 30,3550 54155 TS MPAC +1 # CDUY
039659,000533:
039660,000534: 30,3551 34750 CA BIT4
039661,000535: 30,3552 03563 TC DVBYCOSM
039662,000536: 30,3553 33562 CA 16OCT
039663,000537: 30,3554 03563 TC DVBYCOSM
039664,000538: 30,3555 40141 CS TEM1
039665,000539: 30,3556 03605 TC ARCTRGSP
039666,000540: 30,3557 54154 TS MPAC # CDUX
039667,000541:
039668,000542: 30,3560 06042 TC INTPRET
039669,000543: 30,3561 77616 RVQ
039670,000544:
039671,000545: 30,3562 00016 16OCT OCT 16
039672,000546:
|
Page 913 |
039674,000548: # THE ELEMENTS OF THE NAV BASE MATRIX WHICH WE MUST DIVIDE BY COS(MGA)
039675,000549: # ALREADY CONTAIN COS(MGA)/2 AS A FACTOR. THEREFORE THE QUOTIENT SHOULD
039676,000550: # ORDINARILY NEVER EXCEED 1/2 IN MAGNITUDE. BUT IF THE MGA IS NEAR PI/2
039677,000551: # THEN COS(MGA) IS NEAR ZERO, AND THERE MAY BE SOME CHAFF IN THE OTHER
039678,000552: # ELEMENTS OF THE MATRIX WHICH WOULD PRODUCE CHAOS UNDER DIVISION.
039679,000553: # BEFORE DIVIDING WE MAKE SURE COS(MGA) IS AT LEAST ONE BIT LARGER
039680,000554: # THAN THE MAGNITUDE OF THE HIGH ORDER PART OF THE OPERAND.
039681,000555:
039682,000556: # IF ONE OR MORE DIVIDES CANNOT BE PERFORMED, THIS MEANS THAT THE
039683,000557: # REQUIRED MGA IS VERY NEARLY +-PI/2 AND THEREFORE THE OTHER GIMBAL
039684,000558: # ANGLES ARE INDETERMINATE. THE INNER AND OUTER GIMBAL ANGLES RETURNED
039685,000559: # IN THIS CASE WILL BE RANDOM MULTIPLES OF PI/2.
039686,000560:
039687,000561: 30,3563 60120 DVBYCOSM AD FIXLOC
039688,000562: 30,3564 54116 TS ADDRWD # ADRES OF OPERAND
039689,000563:
039690,000564: 30,3565 50116 INDEX ADDRWD # FETCH NEG ABS OF OPERAND, AD TEM5, AND
039691,000565: 30,3566 30000 CA 0 # SKIP DIVIDE IF RESULT NEG OR ZERO
039692,000566: 30,3567 00006 EXTEND
039693,000567: 30,3570 63572 BZMF +2
039694,000568: 30,3571 40000 COM
039695,000569: 30,3572 60145 AD TEM5 # C(A) ZERO OR NEG, C(TEM5) ZERO OR POS
039696,000570: 30,3573 00006 EXTEND
039697,000571: 30,3574 63602 BZMF TSL&TCQ # DIFFERENCE ALWAYS SMALL IF BRANCH
039698,000572:
039699,000573: 30,3575 00006 EXTEND # TEM5 EXCEEDS ABS HIGH ORDER PART OF
039700,000574: 30,3576 50116 INDEX ADDRWD # OPERAND BY AT LEAST ONE BIT.
039701,000575: 30,3577 30001 DCA 0 # THEREFORE IT EXCEEDS THE DP OPERAND
039702,000576: 30,3600 00006 EXTEND # AND DIVISION WILL ALWAYS SUCCEED.
039703,000577: 30,3601 10145 DV TEM5
039704,000578: 30,3602 54001 TSL&TCQ TS L
039705,000579: 30,3603 22141 LXCH TEM1
039706,000580: 30,3604 00002 TC Q
039707,000581:
|
Page 914 |
039709,000583: # ARCTRGSP RETURNS THE 2'S COMPLEMENT, PI, SP ANGLE IN THE A REGISTER GIVEN ITS SINE IN A AND ITS COSINE IN L IN
039710,000584: # UNITS OF 2. THE RESULT IS AN UNAMBIGUOUS ANGLE ANYWHERE IN THE CIRCLE, WITH A MAXIMUM ERROR OF +-4 BITS.
039711,000585: # THE ERROR IS PRODUCED BY THE SUBROUTINE SPARCSIN WHICH IS USED ONLY IN THE REGION +-45 DEGREES.
039712,000586:
039713,000587: 30,3605 00006 ARCTRGSP EXTEND
039714,000588: 30,3606 13650 BZF SINZERO # TO AVOID DIVIDING BY ZERO
039715,000589:
039716,000590: 30,3607 00006 EXTEND
039717,000591: 30,3610 22144 QXCH TEM4
039718,000592: 30,3611 54142 TS TEM2
039719,000593: 30,3612 30001 CA L
039720,000594: 30,3613 54143 TS TEM3
039721,000595: 30,3614 34755 CA ZERO
039722,000596: 30,3615 00006 EXTEND
039723,000597: 30,3616 10142 DV TEM2
039724,000598: 30,3617 00006 EXTEND
039725,000599: 30,3620 13637 BZF USECOS
039726,000600:
039727,000601: 30,3621 10143 CCS TEM3 # SIN IS SMALLER OR EQUAL
039728,000602: 30,3622 34755 CA ZERO
039729,000603: 30,3623 13627 TCF +4
039730,000604: 30,3624 40142 CS TEM2 # IF COS NEG, REVERSE SIGN OF SIN,
039731,000605: 30,3625 54142 TS TEM2 # ANGLE = PI-ARCSIN(SIN)
039732,000606: 30,3626 34735 CA NEGMAX # PICK UP PI, 2'S COMPLEMENT
039733,000607: 30,3627 54143 TS TEM3 # WE NO LONGER NEED COS
039734,000608: 30,3630 30142 CA TEM2
039735,000609: 30,3631 03655 TC SPARCSIN -1
039736,000610: 30,3632 03726 TC ONESTO2S
039737,000611: 30,3633 00006 EXTEND
039738,000612: 30,3634 20143 MSU TEM3
039739,000613: 30,3635 03726 1TO2&TCQ TC ONESTO2S
039740,000614: 30,3636 00144 TC TEM4
039741,000615:
039742,000616: 30,3637 40143 USECOS CS TEM3 # COS IS SMALLER
039743,000617: 30,3640 03655 TC SPARCSIN -1 # ANGLE = SIGN(SIN)(PI/2-ARCSIN(COS))
039744,000618: 30,3641 64736 AD HALF
039745,000619: 30,3642 54143 TS TEM3 # WE NO LONGER NEED COS
039746,000620: 30,3643 10142 CCS TEM2
039747,000621: 30,3644 30143 CA TEM3
039748,000622: 30,3645 13635 TCF 1TO2&TCQ
039749,000623: 30,3646 40143 CS TEM3
039750,000624: 30,3647 13635 TCF 1TO2&TCQ
039751,000625:
039752,000626: 30,3650 10001 SINZERO CCS L
039753,000627: 30,3651 34755 CA ZERO
039754,000628: 30,3652 00002 TC Q
039755,000629: 30,3653 34735 CA NEGMAX # PI, 2'S COMP
039756,000630: 30,3654 00002 TC Q
039757,000631:
|
Page 915 |
039759,000633: # SPARCSIN TAKES AN ARGUMENT SCALED UNITY IN A AND RETURNS AN ANGLE SCALED
039760,000634: # 180 DEGREES IN A. IT HAS BEEN UNIT TESTED IN THE REGION +-.94 (+- 70
039761,000635: # DEGREES) AND THE MAXIMUM ERROR IS +-5 BITS WITH AN AVERAGE TIME OF
039762,000636: # 450 MICROSECONDS. SPARCSIN -1 TAKES THE ARGUMENT SCALED TWO.(BOB CRISP)
039763,000637:
039764,000638: 30,3655 60000 DOUBLE
039765,000639: 30,3656 54021 SPARCSIN TS SR
039766,000640: 30,3657 13663 TCF +4
039767,000641: 30,3660 50000 INDEX A
039768,000642: 30,3661 44734 CS LIMITS
039769,000643: 30,3662 54021 TS SR
039770,000644: 30,3663 00006 EXTEND
039771,000645: 30,3664 70000 MP A
039772,000646: 30,3665 54141 TS TEM1
039773,000647: 30,3666 00006 EXTEND
039774,000648: 30,3667 73711 MP DPL9
039775,000649: 30,3670 63710 AD DPL7
039776,000650: 30,3671 00006 EXTEND
039777,000651: 30,3672 70141 MP TEM1
039778,000652: 30,3673 63707 AD DPL5
039779,000653: 30,3674 00006 EXTEND
039780,000654: 30,3675 70141 MP TEM1
039781,000655: 30,3676 63706 AD DPL3
039782,000656: 30,3677 00006 EXTEND
039783,000657: 30,3700 70141 MP TEM1
039784,000658: 30,3701 63705 AD DPL1
039785,000659: 30,3702 00006 EXTEND
039786,000660: 30,3703 70021 MP SR
039787,000661: 30,3704 00002 TC Q
039788,000662: 30,3705 24406 DPL1 DEC 10502 B-14
039789,000663: 30,3706 00660 DPL3 DEC 432 B-14
039790,000664: 30,3707 16204 DPL5 DEC 7300 B-14
039791,000665: 30,3710 50744 DPL7 DEC -11803 B-14
039792,000666: 30,3711 20315 DPL9 DEC 8397 B-14
039793,000667:
|
Page 916 |
039795,000669: # LIMITSUB LIMITS THE MAGNITUDE OF THE POSITIVE OR NEGATIVE VARIABLE
039796,000670: # ARRIVING IN L TO THE POSITIVE LIMIT ARRIVING IN A.
039797,000671: # THE SIGNED LIMITED VARIABLE IS RETURNED IN A.
039798,000672:
039799,000673: # VERSION COURTESY HUGH BLAIR-SMITH
039800,000674:
039801,000675: 30,3712 54141 LIMITSUB TS TEM1
039802,000676: 30,3713 34755 CA ZERO
039803,000677: 30,3714 00006 EXTEND
039804,000678: 30,3715 10141 DV TEM1
039805,000679: 30,3716 10000 CCS A
039806,000680: 30,3717 22141 LXCH TEM1
039807,000681: 30,3720 13722 TCF +2
039808,000682: 30,3721 13724 TCF +3
039809,000683: 30,3722 30001 CA L
039810,000684: 30,3723 00002 TC Q
039811,000685: 30,3724 40141 CS TEM1
039812,000686: 30,3725 00002 TC Q
039813,000687:
039814,000688: # SUBROUTINE TO CONVERT 1'S COMP SP TO 2'S COMP
039815,000689:
039816,000690: 30,3726 10000 ONESTO2S CCS A
039817,000691: 30,3727 64753 AD ONE
039818,000692: 30,3730 00002 TC Q
039819,000693: 30,3731 40000 CS A
039820,000694: 30,3732 00002 TC Q
039821,000695:
039822,000696: # NO ATTITUDE CONTROL
039823,000697:
039824,000698: 30,3733 05600 NOATTCNT TC ALARM
039825,000699: 30,3734 00402 OCT 00402 # NO ATTITUDE CONTROL
039826,000700:
039827,000701: 30,3735 00004 +2 INHINT # COME HERE FOR NOATTCNT WITHOUT ALARM
039828,000702: 30,3736 04674 TC IBNKCALL # RELINT AT TC INTPRET AFTER TCQCDUW
039829,000703: 30,3737 40166 FCADR STOPRATE
039830,000704: 30,3740 13460 TCF TCQCDUW # RETURN TO USER SKIPPING AUTOPILOT CMDS
039831,000705:
039832,000706: # MIDDLE GIMBAL ANGLE ALARM
039833,000707:
039834,000708: 30,3741 05600 ALARMMGA TC ALARM
039835,000709: 30,3742 00401 OCT 00401
039836,000710: 30,3743 13260 TCF MGARET
039837,000711:
|
Page 917 |
039839,000713: # ************************************************************************
039840,000714: # CONSTANTS
039841,000715: # ************************************************************************
039842,000716:
039843,000717: # ADDRESS CONSTANTS
039844,000718:
039845,000719: 30,3744 03245 ECDUWL ECADR ECDUW
039846,000720:
039847,000721: # THRUST DIRECTION FILTER CONSTANTS
039848,000722:
039849,000723: 30,3745 06315 GAINFLTR DEC .2 # GAIN FILTER SANS CSM
039850,000724: 30,3746 03146 DEC .1 # GAIN FILTER WITH CSM
039851,000725:
039852,000726: 30,3747 00071 DUNFVLIM DEC .007 B-1 # 7 MR MAX CHG IN F DIR IN VEH IN 2 SECS.
039853,000727: # THIS DOES NOT ALLOW FOR S/C ROT RATE.
039854,000728:
039855,000729: 30,3750 02041 UNFVLIM DEC .129 B-1 # 129 MR MAX THRUST OFFSET. 105 MR TRAVEL
039856,000730: # +10MR DEFL+5MR MECH MOUNT+9MR ABLATION.
039857,000731:
039858,000732: # CONSTANTS RELATED TO GIMBAL ANGLE COMPUTATIONS
039859,000733:
039860,000734: 30,3751 01673 DOTSWFMX DEC .93302 B-4 # LIM COLNRTY OF UNWC/2 & UNFC/2 TO 85 DEG
039861,000735: # LOWER PART COMES FROM NEXT CONSTANT
039862,000736:
039863,000737: 30,3752 03434 DAXMAX DEC .11111111111 # DELATTX LIM TO 20 DEG IN 2 SECS, 1'S, PI
039864,000738: 30,3753 00266 DEC .0111111111 # 2 DEG WHEN CSM DOCKED
039865,000739:
039866,000740: 30,3754 01616 DAY/2MAX DEC .05555555555 # LIKEWISE FOR DELATTY
039867,000741: 30,3755 00133 DEC .0055555555
039868,000742:
039869,000743: 30,3756 30,3752 DAZMAX = DAXMAX # LIKEWISE FOR DELATTZ
039870,000744:
039871,000745: 30,3756 14344 CDUZDLIM DEC .3888888888 # 70 DEG LIMIT FOR MGA, 1'S, PI
039872,000746:
039873,000747: # CONSTANTS FOR DATA TRANSFER
039874,000748:
039875,000749: 30,3757 01463 DT/DELT DEC .05 # .1 SEC/2 SEC WHICH IS THE AUTOPILOT
039876,000750: # CONTROL SAMPLE PERIOD/COMPUTATION PERIOD
039877,000751:
039878,000752: 30,3760 30,3754 DELERLIM = DAY/2MAX # 10 DEG LIMIT FOR LAG ANGLES, 1'S, PI
039879,000753:
End of include-file FINDCDUW_-_GUIDAP_INTERFACE.agc. Parent file is MAIN.agc