Source Code
![]() |
These source-code files were transcribed from a printout in Don Eyles's personal
collection, scanned by archive.org, and financially sponsored by Peter McDermott.
A team of volunteers performed the transcription and proof-reading. The scanned
page images are available at
the Virtual AGC Project website, as well as higher-quality (but much larger)
images at
the Virtual AGC Project's collection in the Internet Archive. Report any problems by creating
"issues" at
the Virtual AGC Project's GitHub Repository. Notations on the program listing read, in part: YUL SYSTEM FOR AGC: NEW PROGRAM SHEPATIN BY EYLES DEC 13, 1966 THIS PROGRAM WAS ASSEMBLED AS A VERSION OF REVISION 37 OF PROGRAM SUNBURST BY LEM GROUPNote that the date is the date of the printout, not the date of the program revision. |
021497,000002: ## Copyright: Public domain.
021498,000003: ## Filename: Q,R-AXES_REACTION_CONTROL_SYSTEM_AUTOPILOT.agc
021499,000004: ## Purpose: A section of Sunburst revision 37, or Shepatin revision 0.
021500,000005: ## It is part of an early development version of the software
021501,000006: ## for Apollo Guidance Computer (AGC) on the unmanned Lunar
021502,000007: ## Module (LM) flight Apollo 5. Sunburst 37 was the program
021503,000008: ## upon which Don Eyles's offline development program Shepatin
021504,000009: ## was based; the listing herein transcribed was actually for
021505,000010: ## the equivalent revision 0 of Shepatin.
021506,000011: ## This file is intended to be a faithful transcription, except
021507,000012: ## that the code format has been changed to conform to the
021508,000013: ## requirements of the yaYUL assembler rather than the
021509,000014: ## original YUL assembler.
021510,000015: ## Reference: pp. 491-519
021511,000016: ## Assembler: yaYUL
021512,000017: ## Contact: Ron Burkey <info@sandroid.org>.
021513,000018: ## Website: www.ibiblio.org/apollo/index.html
021514,000019: ## Mod history: 2017-05-24 MAS Created from Sunburst 120.
021515,000020: ## 2017-06-01 HG Transcribed
021516,000021: ## 2017-06-15 HG Fix operator DXCH -> TS
021517,000022: ## DAS -> ADS
021518,000023: ## DXCH -> XCH
021519,000024: ## TC -> TCF
021520,000025: ## BZMF -> BZF
021521,000026: ## change value MCOMPTQR DEC -16 -> OCTAL 77765
021522,000027: ## 2017-06-22 RSB Proofed comment text with
021523,000028: ## octopus/ProoferComments.
021524,000029:
![]() |
Page 491 |
021526,000031: 17,2000 BANK 17
021527,000032: 17,2000 E6,1541 EBANK= DT
021528,000033: # THE FOLLOWING T5RUPT ENTRY BEGINS THE PROGRAM WHICH CONTROLS THE Q,R-AXIS ACTION OF THE LEM USING THE RCS JETS.
021529,000034: # THE NOMINAL TIME BETWEEN THE Q,R-AXIS RUPTS IS 100 MS (UNLESS THE TRIM GIMBAL CONTROL SYSTEM IS USED, IN WHICH
021530,000035: # CASE THIS PROGRAM IS IDLE).
021531,000036:
021532,000037: 17,2000 E6,1541 EBANK= DT
021533,000038: 17,2000 03011 40006 NULLFILT 2CADR FILDUMMY
021534,000039:
021535,000040: 17,2002 32563 QRAXIS CAF MS30QR # RESET TIME IMMEDIATELY: DT = 30 MS
021536,000041: 17,2003 54030 TS TIME5
021537,000042:
021538,000043: 17,2004 22016 LXCH BANKRUPT # INTERRUPT LEAD IN (CONTINUED)
021539,000044: 17,2005 00006 EXTEND
021540,000045: 17,2006 22012 QXCH QRUPT
021541,000046:
021542,000047: # SET UP A DUMMY KALMAN FILTER T5RUPT. (THIS MAY BE RESET TO THE KALMAN FILTER INITIALIZATION PASS, IF THE TRIM
021543,000048: # GIMBAL CONTROL SYSTEM SHOULD BE USED.)
021544,000049:
021545,000050: 17,2007 00006 EXTEND
021546,000051: 17,2010 32001 DCA NULLFILT
021547,000052: 17,2011 53001 DXCH T5ADR
021548,000053:
021549,000054: # CALCULATE LEM BODY RATES FOR Q AND R AXES:
021550,000055:
021551,000056: # THIS COMPUTATION IS VALID FOR BOTH ASCENT AND DESCENT SINCE THE OFFSET ACCELERATION TERM IS INCLUDED ALWAYS,
021552,000057: # BUT HAS VALUE ZERO IN DESCENT, AND SINCE THE WEIGHTING FACTORS ARE IN ERASABLE AND DISTINCT.
021553,000058:
021554,000059: # FIRST, CONSTRUCT Y AND Z CDU INCREMENTS:
021555,000060:
021556,000061: 17,2012 30033 CAE CDUY # 2'S COMPLEMENT MEASUREMENT SCALED AT PI
021557,000062: 17,2013 54001 TS L # (SAVE FOR UPDATING OF OLDYFORQ)
021558,000063: 17,2014 00006 EXTEND # FORM INCREMENT IN CDUY FOR LAST 100 MS
021559,000064: 17,2015 21430 MSU OLDYFORQ # (100 MS OLD CDUY SAVED FROM LAST PASS)
021560,000065: 17,2016 23430 LXCH OLDYFORQ # UPDATE OLDYFORQ WITH NEW CDUY VALUE
021561,000066: 17,2017 00006 EXTEND # RESCALE DELTA CDUY FROM PI RADIANS TO
021562,000067: 17,2020 77747 MP BIT7 # PI/2(6) RADIANS BY MULTIPLYING BY 64
021563,000068: 17,2021 22061 LXCH ITEMP1 # SAVE 1'S COMPLEMENT VALUE TEMPORARILY
021564,000069: 17,2022 30034 CAE CDUZ # 2'S COMPLEMENT MEASUREMENT SCALED AT PI
021565,000070: 17,2023 54001 TS L # (SAVE FOR UPDATING OF OLDZFORQ)
021566,000071: 17,2024 00006 EXTEND # FORM INCREMENT IN CDUZ FOR LAST 100 MS
021567,000072: 17,2025 21431 MSU OLDZFORQ # (100 MS OLD CDUZ SAVED FROM LAST PASS)
021568,000073:
021569,000074: 17,2026 23431 LXCH OLDZFORQ # UPDATE OLDZFORQ WITH NEW CDUZ VALUE
021570,000075: 17,2027 00006 EXTEND # RESCALE DELTA CDUZ FROM PI RADIANS TO
021571,000076: 17,2030 77747 MP BIT7 # PI/2(6) RADIANS BY MULTIPLYING BY 64
021572,000077: 17,2031 22062 LXCH ITEMP2 # SAVE 1'S COMPLEMENT VALUE TEMPORARILY
021573,000078:
![]() |
Page 492 |
021575,000080: # SECOND, TRANSFORM CPU INCREMENTS TO BODY-ANGLE INCREMENTS:
021576,000081:
021577,000082: 17,2032 31406 CAE M31 # MATRIX*VECTOR(WITH X COMPONENT ZERO)
021578,000083: 17,2033 00006 EXTEND
021579,000084: 17,2034 70061 MP ITEMP1 # M31 * ITEMP1 = M31 * DELTA CDUY
021580,000085: 17,2035 54063 TS ITEMP3
021581,000086: 17,2036 31403 CAE M32 # M32 * ITEMP2 = M32 * DELTA CDUZ
021582,000087: 17,2037 00006 EXTEND
021583,000088: 17,2040 70062 MP ITEMP2 # DELTAR = M31*(DEL CDUY) + M32*(DEL CDUZ)
021584,000089: 17,2041 26063 ADS ITEMP3 # R_BODY_ANGLE INCREMENT SCALED AT PI/2(6)
021585,000090:
021586,000091: 17,2042 31405 CAE M21 # MATRIX*VECTOR(WITH X COMPONENT ZERO)
021587,000092: 17,2043 00006 EXTEND # CLOBBERS ITEMP2=DEL CDUZ, FOR EFFICIENCY
021588,000093: 17,2044 70061 MP ITEMP1 # M21 * ITEMP1 = M21 * DELTA CDUY
021589,000094: 17,2045 56062 XCH ITEMP2 # M22 * ITEMP2 = M22 * DELTA CDUZ
021590,000095: 17,2046 00006 EXTEND
021591,000096: 17,2047 71401 MP M22 # DELTAQ = M21*(DEL CDUY) + M22*(DEL CDUZ)
021592,000097: 17,2050 26062 ADS ITEMP2 # Q_BODY_ANGLE INCREMENT SCALED AT PI/2(6)
021593,000098:
021594,000099: # FINALLY, DERIVE Q AND R BODY ANGULAR RATES:
021595,000100:
021596,000101: 17,2051 00006 EXTEND # WFORQR IS K/(NOMINAL DT) SCALED AT 16
021597,000102: 17,2052 71635 MP WFORQR # FORM WEIGHTED VALUE OF MEASURED DATA
021598,000103: 17,2053 57417 XCH OMEGAQ # SAVE AND BEGIN TO WEIGHT VALUE OF OLD W
021599,000104: 17,2054 00006 EXTEND # (1-K) IS SCALED AT 1 FOR EFFICIENT CALC
021600,000105: 17,2055 71636 MP (1-K) # (K CHANGES EVERY 2 SECONDS IN ASCENT.)
021601,000106:
021602,000107: 17,2056 61604 AD JETRATEQ # WEIGHTED TERM DUE TO JET ACCELERATION
021603,000108: 17,2057 61656 AD AOSQTERM # TERM DUE TO ASCENT OFFSET ACCELERATION
021604,000109: 17,2060 27417 ADS OMEGAQ # TOTAL RATE ESTIMATE SCALED AT PI/4
021605,000110:
021606,000111: 17,2061 30063 CAE ITEMP3 # GET DELTAR
021607,000112: 17,2062 00006 EXTEND # WFORQR IS K/(NOMINAL DT) SCALED AT 16
021608,000113: 17,2063 71635 MP WFORQR # FORM WEIGHTED VALUE OF MEASURED DATA
021609,000114: 17,2064 57421 XCH OMEGAR # SAVE AND BEGIN TO WEIGHT VALUE OF OLD W
021610,000115: 17,2065 00006 EXTEND # (1-K) IS SCALED AT 1 FOR EFFICIENT CALC
021611,000116: 17,2066 71636 MP (1-K) # (K CHANGES EVERY 2 SECONDS IN ASCENT.)
021612,000117: 17,2067 61605 AD JETRATER # WEIGHTED TERM DUE TO JET ACCELERATION
021613,000118: 17,2070 61657 AD AOSRTERM # TERM DUE TO ASCENT OFFSET ACCELERATION
021614,000119: 17,2071 27421 ADS OMEGAR # TOTAL RATE ESTIMATE SCALED AT PI/4
021615,000120:
021616,000121: 17,2072 01647 TC QJUMPADR
021617,000122: 17,2073 32076 SKIPQRAX CA NORMQADR
021618,000123: 17,2074 55647 TS QJUMPADR
021619,000124: 17,2075 15751 TCF RESUME
021620,000125: 17,2076 02077 NORMQADR GENADR NORMALQ
021621,000126: 17,2077 37741 NORMALQ CAF BIT13 # CHECKING ATTITUDE HOLD BIT
021622,000127: 17,2100 00006 EXTEND
021623,000128: 17,2101 02031 RAND 31 # BITS INVERTED
021624,000129: 17,2102 00006 EXTEND
021625,000130:
021626,000131: 17,2103 12117 BZF CHKBIT10
021627,000132:
![]() |
Page 493 |
021629,000134: 17,2104 37740 CAF BIT14 # ATT HOLD BIT NOT PRESENT. CHECK FOR AUTO
021630,000135: 17,2105 00006 EXTEND
021631,000136: 17,2106 02031 RAND 31
021632,000137: 17,2107 00006 EXTEND
021633,000138: 17,2110 12620 BZF ATTSTEER # AUTOMATIC STEERING, CHECK FOR RATE HOLD
021634,000139: 17,2111 00006 EXTEND # IF MODE SELECT SW OFF DO DAPIDLER NEXT
021635,000140: 17,2112 32116 DCA IDLEADRQ
021636,000141: 17,2113 53001 DXCH T5ADR
021637,000142:
021638,000143: 17,2114 15751 TCF RESUME
021639,000144:
021640,000145: 17,2115 E6,1541 EBANK= DT
021641,000146: 17,2115 02136 34006 IDLEADRQ 2CADR DAPIDLER
021642,000147: 17,2117 37744 CHKBIT10 CAF BIT10 # BIT10=1 FOR MIN IMP USE OF RHC
021643,000148: 17,2120 70077 MASK DAPBOOLS
021644,000149: 17,2121 00006 EXTEND
021645,000150: 17,2122 12162 BZF CHEKSTIK # IN ATT-HOLD/RATE-COMMAND IF BIT10=0
021646,000151:
021647,000152: 17,2123 31007 CAE DELAYCTR # SET TO 2 BY RUPT 10
021648,000153: 17,2124 00006 EXTEND
021649,000154: 17,2125 12416 BZF XTRANS
021650,000155:
021651,000156: 17,2126 32571 CA MINTADR
021652,000157: 17,2127 54062 TS TJETADR
021653,000158:
021654,000159: 17,2130 37755 CA BIT1
021655,000160: 17,2131 00006 EXTEND
021656,000161: 17,2132 02031 RAND 31
021657,000162: 17,2133 00006 EXTEND
021658,000163: 17,2134 13504 BZF 2JETS+Q
021659,000164:
021660,000165: 17,2135 37754 CA BIT2
021661,000166: 17,2136 00006 EXTEND
021662,000167: 17,2137 02031 RAND 31
021663,000168: 17,2140 00006 EXTEND
021664,000169: 17,2141 13331 BZF 2JETS-Q
021665,000170:
021666,000171: 17,2142 37751 CA BIT5
021667,000172: 17,2143 00006 EXTEND
021668,000173: 17,2144 02031 RAND 31
021669,000174: 17,2145 00006 EXTEND
021670,000175: 17,2146 13470 BZF 2JETS+R
021671,000176:
021672,000177: 17,2147 37750 CA BIT6
021673,000178: 17,2150 00006 EXTEND
021674,000179: 17,2151 02031 RAND 31
021675,000180: 17,2152 00006 EXTEND
021676,000181: 17,2153 13270 BZF 2JETS-R
021677,000182:
021678,000183: 17,2154 12416 TCF XTRANS
021679,000184:
![]() |
Page 494 |
021681,000186: 17,2155 32560 MINTJET CAF +T6TJMIN
021682,000187: 17,2156 55611 TS TQR
021683,000188: 17,2157 37761 CA ZERO
021684,000189: 17,2160 55007 TS DELAYCTR
021685,000190: 17,2161 12462 TCF TORQUEV
021686,000191:
021687,000192: 17,2162 37737 CHEKSTIK CAF BIT15 # OUT-OF-DETENT BIT
021688,000193: 17,2163 00006 EXTEND
021689,000194: 17,2164 02031 RAND 31 # BITS INVERTED
021690,000195:
021691,000196: 17,2165 00006 EXTEND
021692,000197: 17,2166 12231 BZF RHCACTIV # BRANCH IF OUT OF DETENT
021693,000198: 17,2167 37755 CA BIT1 # OUR RATE COMMAND BIT
021694,000199: 17,2170 70077 MASK DAPBOOLS
021695,000200:
021696,000201: 17,2171 00006 EXTEND
021697,000202: 17,2172 62620 BZMF ATTSTEER # AUTOMATIC STEERING, CHECK FOR RATE HOLD
021698,000203: # WE WERE IN RATE COMMAND AND RATES MUST BE MADE SMALLER
021699,000204:
021700,000205: # ARE RATES SMALL ENOUGH NOW
021701,000206: 17,2173 31416 CA OMEGAP
021702,000207: 17,2174 00006 EXTEND
021703,000208: 17,2175 70000 SQUARE
021704,000209: 17,2176 52062 DXCH ITEMP1
021705,000210:
021706,000211: 17,2177 31417 CA OMEGAQ
021707,000212: 17,2200 00006 EXTEND
021708,000213: 17,2201 70000 SQUARE
021709,000214: 17,2202 20062 DAS ITEMP1
021710,000215:
021711,000216: 17,2203 31421 CA OMEGAR
021712,000217: 17,2204 00006 EXTEND
021713,000218: 17,2205 70000 SQUARE
021714,000219: 17,2206 20062 DAS ITEMP1
021715,000220:
021716,000221: # WE NOW HAVE SQUARED MAGNITUDE OF RATE VECTOR IN ITEMP1
021717,000222: 17,2207 42565 CS 16/32400 # 1 DEG/SEC SCALED AT PI.PI/16
021718,000223: 17,2210 60061 AD ITEMP1
021719,000224:
021720,000225: 17,2211 00006 EXTEND
021721,000226: 17,2212 62220 BZMF RATESMAL
021722,000227:
021723,000228: # THE RATE IS NOT SMALL ENOUGH YET.
021724,000229:
021725,000230: 17,2213 31417 CA OMEGAQ
021726,000231: 17,2214 55424 TS QRATEDIF
021727,000232: 17,2215 31421 CA OMEGAR
021728,000233: 17,2216 55425 TS RRATEDIF
021729,000234: 17,2217 12264 TCF OBEYQRRC
021730,000235:
021731,000236: 17,2220 47755 RATESMAL CS BIT1
021732,000237:
![]() |
Page 495 |
021734,000239: 17,2221 70077 MASK DAPBOOLS # RATE COMMAND BIT SET TO ZERO
021735,000240: 17,2222 54077 TS DAPBOOLS
021736,000241:
021737,000242: 17,2223 30032 CAE CDUX
021738,000243: 17,2224 54766 TS CDUXD
021739,000244: 17,2225 30033 CAE CDUY
021740,000245: 17,2226 54767 TS CDUYD
021741,000246: 17,2227 30034 CAE CDUZ
021742,000247: 17,2230 54770 TS CDUZD
021743,000248:
021744,000249: 17,2231 37755 RHCACTIV CAF BIT1
021745,000250: 17,2232 70077 MASK DAPBOOLS
021746,000251: 17,2233 00006 EXTEND
021747,000252: 17,2234 12416 BZF XTRANS # LET P AXIS SET THE RATE COMMAND BIT
021748,000253: # COMPUTE RATE ERRORS
021749,000254: 17,2235 30042 CAE Q-RHCCTR
021750,000255: 17,2236 00006 EXTEND
021751,000256: 17,2237 77745 MP BIT9
021752,000257: 17,2240 32572 CA -.88975
021753,000258:
021754,000259: 17,2241 00006 EXTEND
021755,000260: 17,2242 70001 MP L # -Q RATE COMMAND SCALED AT PI/4
021756,000261: 17,2243 61417 AD OMEGAQ
021757,000262: 17,2244 55424 TS QRATEDIF
021758,000263:
021759,000264: 17,2245 30044 CAE R-RHCCTR
021760,000265: 17,2246 00006 EXTEND
021761,000266: 17,2247 77745 MP BIT9
021762,000267: 17,2250 32572 CA -.88975
021763,000268: 17,2251 00006 EXTEND
021764,000269: 17,2252 70001 MP L # -R RATE COMMAND SCALED AT PI/4.
021765,000270: 17,2253 61421 AD OMEGAR
021766,000271: 17,2254 55425 TS RRATEDIF
021767,000272:
021768,000273: # ZERO,ENABLE,AND START COUNTERS 99
021769,000274: 17,2255 37761 CAF ZERO
021770,000275: 17,2256 54043 TS P-RHCCTR
021771,000276: 17,2257 54042 TS Q-RHCCTR
021772,000277: 17,2260 54044 TS R-RHCCTR
021773,000278: 17,2261 32566 CAF BIT8,9
021774,000279: 17,2262 00006 EXTEND
021775,000280: 17,2263 05013 WOR 13
021776,000281:
021777,000282: 17,2264 32611 OBEYQRRC CA RTJETADR
021778,000283: 17,2265 54062 TS TJETADR
021779,000284:
021780,000285: 17,2266 11424 CCS QRATEDIF
021781,000286: 17,2267 12330 TCF POSQEROR
021782,000287: 17,2270 12272 TCF NOQJETS
021783,000288: 17,2271 12277 TCF NEGQEROR
021784,000289:
![]() |
Page 496 |
021786,000291: 17,2272 11425 NOQJETS CCS RRATEDIF # CHECK SIGN OF RATE ERROR AND GET ABVAL
021787,000292: 17,2273 12357 TCF R+,CHKDB
021788,000293:
021789,000294: 17,2274 12416 TCF XTRANS
021790,000295: 17,2275 12370 TCF R-,CHKDB
021791,000296: 17,2276 12416 TCF XTRANS
021792,000297:
021793,000298: 17,2277 61476 NEGQEROR AD -RATEDB
021794,000299: 17,2300 00006 EXTEND
021795,000300: 17,2301 62272 BZMF NOQJETS
021796,000301:
021797,000302: 17,2302 11425 CCS RRATEDIF
021798,000303: 17,2303 12314 TCF R+Q-CHKR
021799,000304: 17,2304 12306 TCF Q-NORJTS
021800,000305: 17,2305 12321 TCF R-Q-CHKR
021801,000306:
021802,000307: 17,2306 41424 Q-NORJTS CS QRATEDIF
021803,000308: 17,2307 55440 TS RATEDIF
021804,000309: 17,2310 61477 AD -2JETLIM
021805,000310: 17,2311 00006 EXTEND
021806,000311: 17,2312 63504 BZMF 2JETS+Q
021807,000312: 17,2313 13502 TCF 4JETS+Q
021808,000313:
021809,000314: 17,2314 61476 R+Q-CHKR AD -RATEDB
021810,000315: 17,2315 00006 EXTEND
021811,000316: 17,2316 62306 BZMF Q-NORJTS
021812,000317:
021813,000318: 17,2317 03565 TC EDOTVGEN
021814,000319: 17,2320 13417 TCF 2-V.RATE
021815,000320:
021816,000321: 17,2321 61476 R-Q-CHKR AD -RATEDB
021817,000322: 17,2322 00006 EXTEND
021818,000323: 17,2323 62306 BZMF Q-NORJTS
021819,000324: 17,2324 03561 TC EDOTUGEN
021820,000325: 17,2325 00006 EXTEND
021821,000326: 17,2326 61425 SU RRATEDIF
021822,000327: 17,2327 13444 TCF 2+U.RATE
021823,000328:
021824,000329: 17,2330 61476 POSQEROR AD -RATEDB
021825,000330: 17,2331 00006 EXTEND
021826,000331: 17,2332 62272 BZMF NOQJETS
021827,000332:
021828,000333: 17,2333 11425 CCS RRATEDIF
021829,000334: 17,2334 12345 TCF R+Q+CHKR
021830,000335: 17,2335 12337 TCF Q+NORJTS
021831,000336: 17,2336 12352 TCF R-Q+CHKR
021832,000337:
021833,000338: 17,2337 31424 Q+NORJTS CA QRATEDIF
021834,000339: 17,2340 55440 TS RATEDIF
021835,000340: 17,2341 61477 AD -2JETLIM
021836,000341:
021837,000342: 17,2342 00006 EXTEND
021838,000343: 17,2343 63331 BZMF 2JETS-Q
021839,000344:
![]() |
Page 497 |
021841,000346: 17,2344 13327 TCF 4JETS-Q
021842,000347:
021843,000348: 17,2345 61476 R+Q+CHKR AD -RATEDB
021844,000349: 17,2346 00006 EXTEND
021845,000350: 17,2347 62337 BZMF Q+NORJTS
021846,000351: 17,2350 03561 TC EDOTUGEN
021847,000352: 17,2351 13307 TCF 2-U.RATE
021848,000353:
021849,000354: 17,2352 61476 R-Q+CHKR AD -RATEDB
021850,000355: 17,2353 00006 EXTEND
021851,000356: 17,2354 62337 BZMF Q+NORJTS
021852,000357: 17,2355 03565 TC EDOTVGEN
021853,000358: 17,2356 13350 TCF 2+V.RATE
021854,000359:
021855,000360: 17,2357 61476 R+,CHKDB AD -RATEDB
021856,000361: 17,2360 00006 EXTEND
021857,000362: 17,2361 62416 BZMF XTRANS
021858,000363: 17,2362 31425 CA RRATEDIF
021859,000364: 17,2363 55440 TS RATEDIF
021860,000365: 17,2364 61477 AD -2JETLIM
021861,000366: 17,2365 00006 EXTEND
021862,000367: 17,2366 63270 BZMF 2JETS-R
021863,000368: 17,2367 13266 TCF 4JETS-R
021864,000369:
021865,000370: 17,2370 61476 R-,CHKDB AD -RATEDB
021866,000371: 17,2371 00006 EXTEND
021867,000372: 17,2372 62416 BZMF XTRANS
021868,000373: 17,2373 41425 CS RRATEDIF
021869,000374: 17,2374 55440 TS RATEDIF
021870,000375: 17,2375 61477 AD -2JETLIM
021871,000376: 17,2376 00006 EXTEND
021872,000377: 17,2377 63470 BZMF 2JETS+R
021873,000378:
021874,000379: 17,2400 13466 TCF 4JETS+R
021875,000380:
021876,000381: 17,2401 11440 RTJETIME CCS RATEDIF # SCALED AT PI/4 RADIANS/SECOND
021877,000382: 17,2402 67755 AD ONE
021878,000383: 17,2403 12405 TCF +2
021879,000384: 17,2404 67755 AD ONE # ABS(RATEDIF)
021880,000385: 17,2405 00006 EXTEND
021881,000386: 17,2406 70066 MP 1/NJETAC # SCALED AT 2(8)/PI SECOND(2)/RADIANS
021882,000387: 17,2407 00006 EXTEND
021883,000388: 17,2410 77752 MP BIT4 # SCALED AT 2(3) SECONDS
021884,000389: 17,2411 30001 CAE L
021885,000390: 17,2412 00006 EXTEND
021886,000391: 17,2413 72561 MP 25/32.QR # TJET NOW PROPERLY SCALED IN A
021887,000392: 17,2414 55611 TS TQR # AT 2(4)16/25 SECONDS
021888,000393: 17,2415 12462 TCF TORQUEV
021889,000394:
![]() |
Page 498 |
021891,000396: # DAPSECTION: XTRANS MOD. NO. 1 DATE: NOVEMBER 20, 1966
021892,000397:
021893,000398: # AUTHOR: JOHN S. BLISS (ADAMS ASSOCIATES)
021894,000399:
021895,000400: # MODIFICATION BY: JONATHAN D. ADDELSTON (ADAMS ASSOCIATES)
021896,000401:
021897,000402: # X-AXIS TRANSLATION LOGIC (IN THE ABSENSE OF Q,R-AXIS ROTATION) IS INITIATED IN THE "XTRANS" SECTION.
021898,000403:
021899,000404: # XTRANS FIRST SETS ADDTLT6 AND ADDT6JTS TO ZERO FOR USE BY "JTLST" AND "T6JOB" WHEN THEY ARE CALLED. IT THEN
021900,000405: # CHECKS FOR PLUS OR MINUS X TRANSLATION REQUESTS FROM THE ASTRONAUT'S STICK. IF NONE IS REQUESTED IN THAT WAY,
021901,000406: # THE ULLAGE BIT OF DAPBOOLS IS CHECKED. (NOTE THAT THE ORDER OF THE TESTS ALLOWS THE ASTRONAUT TO OVERRIDE THE
021902,000407: # INTERNAL ULLAGE REQUEST.) IF NO TRANSLATION IS REQUESTED, ALL Q,R-AXIS JETS ARE TURNED OFF AND THE INTERRUPT
021903,000408: # IS TERMINATED.
021904,000409:
021905,000410:
021906,000411: # CALLING SEQUENCE: NONE. SUBROUTINES CALLED: +/-TRANS
021907,000412:
021908,000413: # NORMAL EXIT: 1. IF NO TRANSLATION: RESUME.
021909,000414: # 2.IF SOME TRANSLATION: +/-TRANS.
021910,000415:
021911,000416: # ALARM/ABORT MODE: NONE.
021912,000417:
021913,000418: # INPUT: ULLAGER/DAPBOOLS,BITS7,8/CHANNEL 31.
021914,000419:
021915,000420: # OUTPUT: C(ANYTRANS) = NEGMAX FOR +X TRANSLATION.
021916,000421: # C(ANYTRANS) = POSMAX FOR -X TRANSLATION.
021917,000422: # C(TRANSNOW) = C(TRANSAVE) = +0.
021918,000423: # C(TRANONLY) = PNZ.
021919,000424:
021920,000425: # DEBRIS: A,L,
021921,000426:
021922,000427:
021923,000428: 17,2416 37761 XTRANS CAF ZERO # PICK UP ZERO AND INITIALIZE
021924,000429: 17,2417 55474 TS ADDTLT6
021925,000430: 17,2420 55473 TS ADDT6JTS
021926,000431:
021927,000432: 17,2421 55611 TS TQR # A ZERO OF JET TIME FOR THE TORQUE VEXTOR
021928,000433:
021929,000434: 17,2422 37747 CAF BIT7 # IS PLUS X TRANSLATION DESIRED
021930,000435:
021931,000436: 17,2423 00006 EXTEND
021932,000437: 17,2424 02031 RAND 31 # CHANNEL 31 BITS INVERTED
021933,000438: 17,2425 00006 EXTEND
021934,000439: 17,2426 12444 BZF +XORULGE # YES, +X
021935,000440:
021936,000441: 17,2427 37746 CAF BIT8 # NO, IS MINUS X TRANSLATION DESIRED
021937,000442: 17,2430 00006 EXTEND
021938,000443: 17,2431 02031 RAND 31 # CHANNEL 31 BITS INVERTED
021939,000444: 17,2432 00006 EXTEND
021940,000445: 17,2433 12446 BZF -XTRANS # YES, -X
021941,000446:
021942,000447: 17,2434 37750 CAF BIT6 # NO, IS ULLAGE(+X TRANSLATION) DESIRED
021943,000448: 17,2435 70077 MASK DAPBOOLS
021944,000449:
![]() |
Page 499 |
021946,000451: 17,2436 10000 CCS A
021947,000452: 17,2437 12444 TCF +XORULGE # YES, ULLAGE
021948,000453:
021949,000454: 17,2440 37761 CAF ZERO # SINCE NEITHER ROTATION NOR TRANSLATION
021950,000455: 17,2441 00006 EXTEND # ARE NEEDED, TURN OFF ALL JETS FOR THE
021951,000456: 17,2442 01005 WRITE 5 # Q,R-AXES.
021952,000457:
021953,000458: 17,2443 15751 TCF RESUME
021954,000459:
021955,000460: 17,2444 37737 +XORULGE CAF NEGMAX # PLUS TRANSLATION OR ULLAGE DESIRED:
021956,000461: 17,2445 12447 TCF +2 # LOAD NEGMAX IN A AND SKIP NEXT OPCODE TO
021957,000462:
021958,000463: 17,2446 37735 -XTRANS CAF POSMAX # -X TRANSLATION DESIRED, A = POSMAX, AND
021959,000464: 17,2447 54071 TS ANYTRANS # LOAD ANYTRANS WITH A(NEG/POS MAX)
021960,000465:
021961,000466: 17,2450 37761 CAF ZERO # INITIALIZE TRANSNOW AND TRANSAVE WITH
021962,000467: 17,2451 54072 TS TRANSNOW # ZERO FOR USE IN THE JET POLICY SELECTION
021963,000468: 17,2452 54073 TS TRANSAVE # PROGRAM.
021964,000469:
021965,000470: 17,2453 00006 EXTEND # SET UP 2CADR FOR TRANSFER TO +/-XTRAN.
021966,000471: 17,2454 32460 DCA JTPOLADR
021967,000472: 17,2455 54070 TS TRANONLY # STORE POSITIVE, NON-ZERO S-REGISTER IN
021968,000473: 17,2456 52006 DTCB # TRANONLY. AFTER +/-XTRAN, GO TO JTLST.
021969,000474:
021970,000475: 17,2457 E6,1471 EBANK= JTSONNOW
021971,000476: 17,2457 02316 40006 JTPOLADR 2CADR +/-XTRAN # TRANSLATION ONLY ENTRY TO JET POLICY
021972,000477:
![]() |
Page 500 |
021974,000479: # DO NECESSARY PARTS OF Q,R-AXES TORQUE VECTOR RECONSTRUCTION HERE AND NOW. FOR OTHER PARTS WAIT UNTIL THE NEXT
021975,000480: # P-AXIS RCS DAP T5RUPT.
021976,000481:
021977,000482: 17,2461 55611 NORMRETN TS TQR
021978,000483:
021979,000484:
021980,000485: 17,2462 41611 TORQUEV CS TQR # CALCULATED Q,R JET TIME (AS IN TIME6)
021981,000486: 17,2463 62560 AD +T6TJMIN
021982,000487: 17,2464 00006 EXTEND # CORRECT BRANCH.
021983,000488: 17,2465 62471 BZMF TQRGTTMI # BRANCH FOR TQR = OR GREATER THAN MINIMP.
021984,000489: 17,2466 37761 CA ZERO
021985,000490: 17,2467 55475 TS TOFJTCHG # SINCE TQR LESS THAN A MINIMUM IMPULSE,
021986,000491: 17,2470 12416 TCF XTRANS # SEE IF TRANSLATION IS DESIRED .
021987,000492: 17,2471 31611 TQRGTTMI CAE TQR
021988,000493: 17,2472 55475 TS TOFJTCHG
021989,000494: 17,2473 62557 AD -1.5CSP
021990,000495: 17,2474 00006 EXTEND
021991,000496: 17,2475 62502 BZMF DOQRSKIP
021992,000497: 17,2476 31471 CAE JTSONNOW
021993,000498: 17,2477 06015 TC WRITEQR # TURN ON QR JETS USING T6JOB SUBROUTINE.
021994,000499: 17,2500 15751 TCF RESUME
021995,000500:
021996,000501: 17,2501 02073 SKIPQRAD GENADR SKIPQRAX
021997,000502: 17,2502 32501 DOQRSKIP CA SKIPQRAD
021998,000503: 17,2503 55647 TS QJUMPADR
021999,000504:
022000,000505: # CHANGE JET ON AND OFF BITS TO ACCOUNT FOR THE PRESENT STATE OF THE
022001,000506: # CHANNEL. THE CHANGES ACCOUNT FOR PURE ROTATION ONLY- NOT TRANSLATION.
022002,000507: 17,2504 31471 CA JTSONNOW # = JETS WHICH ARE TO GO ON NOW.
022003,000508: 17,2505 00006 EXTEND
022004,000509: 17,2506 02005 RAND 5 # MASK THE CHANNEL WITH THE DESIRED STATE.
022005,000510: 17,2507 00006 EXTEND
022006,000511: 17,2510 12535 BZF NOQRON # A IS ZERO IF NO JETS TO GO ON ARE ON.
022007,000512: 17,2511 67737 AD BIT15 # MAKE DIFFERENCE CORRESPOND TO A QR JET.
022008,000513: 17,2512 00006 EXTEND
022009,000514: 17,2513 61471 SU JTSONNOW # RESULT IS COMPLEMENT OF JET BITS WHICH
022010,000515: 17,2514 54001 TS L # ARE TO BE ON FOR 6.5MS MORE THAN CALC.
022011,000516: 17,2515 00006 EXTEND
022012,000517: 17,2516 12542 BZF JTSAREON # A=0,THUS ALL JETS TO GO ON ARE NOW ON.
022013,000518: 17,2517 31472 TRSLTMN2 CAE JTSATCHG
022014,000519: 17,2520 77735 MASK POSMAX # REMOVE BIT15 FROM JTSATCHG.
022015,000520: 17,2521 00006 EXTEND
022016,000521: 17,2522 12526 BZF NOTRANS # IF JTSATCHG = 0 THEN NO TRANSLATION NOW.
022017,000522: 17,2523 32570 CA 14-TQRMN
022018,000523: 17,2524 27475 ADS TOFJTCHG # INSURE T GREATER THAN 14 MS.
022019,000524: 17,2525 12552 TCF TOJTLST
022020,000525: 17,2526 40001 NOTRANS CS L
022021,000526: 17,2527 67737 AD BIT15 # MAKE JET BITS CORRESPOND TO QR AXIS.
022022,000527: 17,2530 57472 XCH JTSATCHG # JTSONNOW - L = JETS ON AT TOFJTCHG.
022023,000528:
022024,000529: 17,2531 55473 TS ADDT6JTS # JTS ON AT TOFJTCHG +ONDELAY.
022025,000530:
![]() |
Page 501 |
022027,000532: 17,2532 32570 CA 14-TQRMN
022028,000533: 17,2533 55474 TS ADDTLT6
022029,000534: 17,2534 12552 TCF TOJTLST
022030,000535: 17,2535 32570 NOQRON CA 14-TQRMN
022031,000536: 17,2536 27475 ADS TOFJTCHG
022032,000537: 17,2537 37761 CA ZERO
022033,000538: 17,2540 55474 TS ADDTLT6
022034,000539: 17,2541 12552 TCF TOJTLST
022035,000540:
022036,000541: 17,2542 31472 JTSAREON CAE JTSATCHG
022037,000542: 17,2543 77735 MASK POSMAX
022038,000543: 17,2544 00006 EXTEND
022039,000544: 17,2545 12550 BZF +3
022040,000545: 17,2546 32567 CAF MCOMPTQR
022041,000546: 17,2547 27475 ADS TOFJTCHG
022042,000547: 17,2550 37761 CA ZERO
022043,000548: 17,2551 55474 TS ADDTLT6
022044,000549: 17,2552 31471 TOJTLST CA JTSONNOW
022045,000550: 17,2553 06015 TC WRITEQR
022046,000551: 17,2554 00006 EXTEND
022047,000552: 17,2555 32610 DCA JTLSTADR
022048,000553: 17,2556 52006 DTCB
022049,000554: 17,2557 77417 -1.5CSP DEC -0.01465
022050,000555: 17,2560 00014 +T6TJMIN DEC +.00073
022051,000556: 17,2561 31000 25/32.QR DEC 0.78125
022052,000557: 17,2562 37776 MS20QR OCTAL 37776
022053,000558: 17,2563 37775 MS30QR OCTAL 37775
022054,000559: 17,2564 37773 MS50QR OCTAL 37773
022055,000560: 17,2565 00010 16/32400 DEC 0.00049
022056,000561: 17,2566 00600 BIT8,9 OCTAL 00600
022057,000562: 17,2567 77765 MCOMPTQR OCTAL 77765 # -10 MS COMPUTATION TIME
022058,000563: 17,2570 00013 14-TQRMN DEC 11 B-14
022059,000564:
022060,000565: 17,2571 02155 MINTADR GENADR MINTJET
022061,000566: 17,2572 43415 -.88975 DEC -.88975
022062,000567: 17,2573 20000 (1-K),QR DEC 0.50000 # K = 1/2
022063,000568: 17,2574 02000 (1-KQ)/8 DEC 0.06250
022064,000569: 17,2575 77557 -90MS DEC -.00879
022065,000570: 17,2576 00220 +90MS DEC 0.00879
022066,000571: 17,2577 77537 NEGCSP2 DEC -.00977
022067,000572: 17,2600 40252 ALL+XJTS OCTAL 40252
022068,000573: 17,2601 00201 2,10-OUT OCTAL 00201
022069,000574: 17,2602 40042 +X,A OCTAL 40042
022070,000575: 17,2603 40210 +X,B OCTAL 40210
022071,000576: 17,2604 00104 1,9-OUT OCTAL 00104
022072,000577: 17,2605 40104 -X,A OCTAL 40104
022073,000578: 17,2606 40021 -X,B OCTAL 40021
022074,000579: 17,2607 E6,1471 EBANK= JTSONNOW
022075,000580: 17,2607 03415 34006 JTLSTADR 2CADR JTLST
022076,000581: 17,2611 02401 RTJETADR GENADR RTJETIME
022077,000582:
![]() |
Page 502 |
022079,000584: # Q,R-AXES ATTITUDE STEERING CALCULATIONS:
022080,000585:
022081,000586: # (EXECUTED WHEN LGC IS IN AUTOMATIC SCSMODE OR IF SCSMODE IS ATTITUDE HOLD AND THE ROTATIONAL HAND CONTROLLER IS
022082,000587: # NEITHER OUT OF DETENT NOR IS THE RATE COMMAND BIT SET IN DAPBOOLS)
022083,000588:
022084,000589: # IMMEDIATELY AFTER CALCULATING THE ATTITUDE ERRORS, THE FOLLOWING TESTS ARE MADE TO DETERMINE WHETHER THE DESCENT
022085,000590: # ENGINE TRIM GIMBAL SHOULD BE USED TO CONTROL THE LEM ATTITUDE RATHER THAN THE RCS JETS:
022086,000591:
022087,000592: # 1) IS THE TRIM GIMBAL FUNCTIONALLY OPERATIVE?
022088,000593: # 2) ARE THE Q,R-AXES RCS JETS OFF?
022089,000594: # 3) ARE BOTH TRIM GIMBAL DRIVES OFF?
022090,000595: # 4) IS THE LEM RATE LESS THAN .5 DEG/SEC ABOUT BOTH AXES?
022091,000596:
022092,000597: 17,2612 32617 GOTOGTS CAF INITFILT # ERRORS NOW CONTROLLABLE BY TRIM GIMBAL
022093,000598:
022094,000599: 17,2613 55000 TS T5ADR # SET T5RUPT TO GO TO FILTER INITIALIZING
022095,000600: 17,2614 15751 TCF RESUME # PROGRAM
022096,000601:
022097,000602: 17,2615 07400 BGIM24 OCTAL 07400
022098,000603: 17,2616 03603 DESCADR GENADR TJETLAW
022099,000604: 17,2617 02000 INITFILT GENADR FILTINIT # ADDRESS OF FILTER INITIALIZATION RUPT
022100,000605:
022101,000606: # "ATTSTEER" IS THE NOMINAL ENTRY POINT FOR REACTION CONTROL SYSTEM ATTITUDE STEERING:
022102,000607: # BEGIN ATTSTEER BY CHECKING IF RATE HOLD MODE(CURRENTLY USED ONLY AT SIVB
022103,000608: # -LEM SEPARATION-206 MISSION PHASE 6) IS REQUESTED(BIT 14 OF DAPBOOLS ON)
022104,000609: # IF BIT 14 IS OFF, BRANCH TO QERRCALC DIRECTLY AND BEGIN AUTOMATIC
022105,000610: # STEERING. IF BIT 14 IS ON, TEST BIT 3 OF DAPBOOLS TO SEE IF THE DESIRED
022106,000611: # RATE HAS BEEN SAVED YET. IF IT IS ON, THIS IS NOT THE FIRST PASS AND
022107,000612: # THE RATE HAS BEEN SAVED. GO DIRECTLY TO QERRCALC FOR AUTOMATIC STEERING
022108,000613: # IF THE BIT IS OFF, THE RATE MUST BE SAVED. TRANSFER TO SAVERATE(BANK25)
022109,000614: # AND RETURN AFTER FIRST PASS TO RESUME AND DAPIDLER.
022110,000615:
022111,000616: # IN ORDER TO USE RATE HOLD, THE MISSION PROGRAMMER MUST SET BIT 14 OF
022112,000617: # DAPBOOLS ON AND SET BIT 3 OF DAPBOOLS TO ZERO. UPON RETURNING FROM THE
022113,000618: # FIRST PASS AT LEAST THROUGH RATE HOLD, THE MISSION PROGRAMMER MUST RESET
022114,000619: # BIT 3 TO ITS PREVIOUS VALUE IF THIS IS NOT 1, BECAUSE SAVERATE SETS BIT3
022115,000620: # TO 1 FOR ALL PASSES AFTER THE FIRST IN ORDER NOT TO SAVE THE RATE AGAIN.
022116,000621:
022117,000622:
022118,000623: # IN ADDITION TO NON-RATE HOLD MODE AND NON-FIRST PASS RATE HOLD MODE
022119,000624: # EXITS TO QERRCALC, THE FIRST PASS EXITS TO RESUME, IE. OUT OF INTERRUPT
022120,000625: # AND BACK TO DAPIDLER TO AWAIT THE NEXT CALL TO DAP.
022121,000626:
022122,000627: # RATE HOLD PRODUCES THE FOLLOWING OUTPUT IN ERASABLE --
022123,000628:
022124,000629: # CDUD - SCALED AT +/-PI, DESIRED GIMBAL ANGLE
022125,000630:
022126,000631: # DELCDU - SCALED AT +/-PI, INCREMENT TO CDUD EVERY 100 MS.
022127,000632:
022128,000633: # OMEGAPD, QD, RD - SCALED AT +/-PI/4, BODY AXIS RATES
022129,000634:
022130,000635: # ALL THESE ARE USED BY AUTOMATIC STEERING MODE EQUATIONS.
022131,000636:
![]() |
Page 503 |
022133,000638: # RATE HOLD REQUIRES OMEGAP, Q, R EVERY .25 SEC, AND ALSO REQUIRES PILOT-
022134,000639: # TO-GIMBAL AXIS MATRIX ELEMENTS, MR12, 22, 13, 23 TO BE LOCATED IN THAT
022135,000640: # ORDER.
022136,000641:
022137,000642: # FINALLY, RATE HOLD LEAVES DEBRIS IN --
022138,000643:
022139,000644: # DLCDUIDX - LOOP INDEX USED IN COMPUTING DELCDUS, =1, 0
022140,000645:
022141,000646: # ITEMP1 - STORES TEMPORARY PRODUCTS AND SUMS, LEFT WITH DELCDUY IN 1S.
022142,000647:
022143,000648:
022144,000649:
022145,000650: 17,2620 40077 ATTSTEER CS DAPBOOLS # DOES BIT14 OF DAPBOOLS REQUEST RATE HOLD
022146,000651: 17,2621 77740 MASK BIT14 # (SIVB-LEM SEPARATION)
022147,000652: 17,2622 10000 CCS A
022148,000653: 17,2623 12660 TCF QERRCALC # NO, GO DIRECTLY TO AUTOMATIC STEERING
022149,000654:
022150,000655: # CHECK DAPBOOLS, BIT3, TO SEE IF DESIRED RATE HAS BEEN SAVED YET
022151,000656:
022152,000657: # TO COMPUTE THE DELCDUS, Y AND Z, WE SET UP A LOOP AND SOLVE THE EQUATION
022153,000658:
022154,000659: # C(DELCDUY+DLCDUIDX)=(OMEGAQ).C(MR12+DLCDUIDX)+OMEGARD.C(MR13+DLCDUIDX))
022155,000660: # .(100MS) SCALED AT PI IN 2S COMPLEMENT(LIKE CDUS)
022156,000661:
022157,000662: # DURING THIS COMPUTATION, ITEMP1 IS USED TO STORE THE PARTIAL SUMS AND
022158,000663: # PRODUCTS. DELCDUY IS RESCALED TO 1 AS MR12 AND MR13 ARE SCALED AT 2.
022159,000664: # AFTER CONVERTING TO TWOS COMPLEMENT, WE SET DELCDUX TO ZERO TO AVOID ANY
022160,000665: # ROLL DURING RATE HOLD MODE. NOTE THAT DELCDUS ARE COMPUTED IN THE NEGA-
022161,000666: # TIVE TO ALLOW 2S COMP. MOD. SUBTRACT LATER ON (CDU-(-DELCDU))
022162,000667:
022163,000668: 17,2624 37755 CAF ONE # SET UP LOOP INDEX TO COMPUTE DELCDUS.
022164,000669: 17,2625 55645 NEXDLCDU TS DLCDUIDX # DLCDUIDX = C(A)
022165,000670:
022166,000671: 17,2626 40775 CS OMEGAQD # DLCDUIDX = 1 DLCDUIDX = 0
022167,000672: 17,2627 00006 EXTEND # ITEMP1=-OMEGAQD.MR22
022168,000673: 17,2630 51645 INDEX DLCDUIDX
022169,000674: 17,2631 71400 MP MR12 # MR22 SCALED AT 1 MR12 SCALED AT 2
022170,000675: 17,2632 54061 TS ITEMP1 # ITEMP1=-OMEGAQD.MR12
022171,000676:
022172,000677: 17,2633 40776 CS OMEGARD # C(A)=ITEMP1 -OMEGARD.MR23
022173,000678: 17,2634 00006 EXTEND
022174,000679: 17,2635 51645 INDEX DLCDUIDX # C(A)=ITEMP1 -OMEGARD.MR13
022175,000680: 17,2636 71402 MP MR13 # MR23 SCALED AT 1 MR13 SCALED AT 2
022176,000681:
022177,000682: 17,2637 60061 AD ITEMP1
022178,000683: 17,2640 00006 EXTEND # DELT = 100 MS. SCALED AT 4 SEC.
022179,000684: 17,2641 73374 MP 100MSCAL
022180,000685: 17,2642 54061 TS ITEMP1 # ITEMP1 = C(A) . DELT
022181,000686:
022182,000687: 17,2643 11645 CCS DLCDUIDX # CHECK INDEX FOR RESCALING
022183,000688: 17,2644 12647 TCF +3 # DELCDUZ SCALED AT PI/4, RESCALE UNNEEDED
022184,000689:
![]() |
Page 504 |
022186,000691: 17,2645 30061 CAE ITEMP1 # DELCDUY SCALED AT PI/2, RESCALE BY
022187,000692: 17,2646 26061 ADS ITEMP1 # ADDING TO ITSELF
022188,000693:
022189,000694: 17,2647 10061 CCS ITEMP1 # CONVERT DELCDUS TO TWOS COMPLEMENT (SAME
022190,000695: 17,2650 67755 AD ONE # AS CDUS). ADD ONE TO RESTORE PRE-CCS A
022191,000696: 17,2651 12653 TCF STODLCDU # STORE DIRECT IF POSITIVE ZERO
022192,000697: 17,2652 40000 COM # COMPLEMENT IF NEGATIVE, CCS INCREMENTS
022193,000698: 17,2653 51645 STODLCDU INDEX DLCDUIDX # IF NEGATIVE ZERO, STORE POSITIVE ZERO
022194,000699: 17,2654 54772 TS DELCDUY # STORE FINAL DELCDUZ OR DELCDUY
022195,000700:
022196,000701: 17,2655 11645 CCS DLCDUIDX # TEST INDEX DLCDUIDX, EITHER 1 OR 0
022197,000702: 17,2656 12625 TCF NEXDLCDU # IF 1, DO DELCDUY
022198,000703: 17,2657 54771 TS DELCDUX # DELCDUZ,Y DONE, 0 TO DELCDUX-NO ROLL
022199,000704:
022200,000705: 17,2660 30033 QERRCALC CAE CDUY # Q-ERROR CALCULATION
022201,000706: 17,2661 00006 EXTEND
022202,000707: 17,2662 20767 MSU CDUYD # CDU ANGLE - ANGLE DESIRED (Y-AXIS)
022203,000708: 17,2663 54061 TS ITEMP1 # SAVE FOR RERRCALC
022204,000709: 17,2664 00006 EXTEND
022205,000710: 17,2665 71405 MP M21 # (CDUY-CDUYD)*M21 SCALED AT PI RADIANS
022206,000711: 17,2666 57413 XCH ER # SAVE FIRST TERM (OF TWO) IN OPP.AXIS REG
022207,000712: 17,2667 30034 CAE CDUZ # SECOND TERM CALCULATION:
022208,000713: 17,2670 00006 EXTEND
022209,000714: 17,2671 20770 MSU CDUZD # CDU ANGLE -ANGLE DESIRED (Z-AXIS)
022210,000715: 17,2672 54062 TS ITEMP2 # SAVE FOR RERRCALC
022211,000716: 17,2673 00006 EXTEND
022212,000717:
022213,000718: 17,2674 71401 MP M22 # (CDUZ-CDUZD)*M22 SCALED AT PI RADIANS
022214,000719: 17,2675 27413 ADS ER # SAVE SUM OF TERMS, NO OVERFLOW EVER
022215,000720: 17,2676 55467 TS QERROR # SAVE QERROR FOR EIGHT-BALL DISPLAY
022216,000721:
022217,000722: 17,2677 30061 RERRCALC CAE ITEMP1 # R-ERROR CALCULATION:
022218,000723: 17,2700 00006 EXTEND # CDU ANGLE -ANGLE DESIRED (Y-AXIS)
022219,000724: 17,2701 71406 MP M31 # (CDUY-CDUYD)*M31 SCALED AT PI RADIANS
022220,000725: 17,2702 57411 XCH E # SAVE FIRST TERM (OF TWO) IN OPP.AXIS REG
022221,000726: 17,2703 30062 CAE ITEMP2 # SECOND TERM CALCULATION:
022222,000727: 17,2704 00006 EXTEND # CDU ANGLE -ANGLE DESIRED (Z-AXIS)
022223,000728: 17,2705 71403 MP M32 # (CDUZ-CDUZD)*M32 SCALED AT PI RADIANS
022224,000729: 17,2706 27411 ADS E # SAVE SUM OF TERMS, NO OVERFLOW EVER
022225,000730: 17,2707 55470 TS RERROR # SAVE R-ERROR FOR EIGHT-BALL DISPLAY
022226,000731:
022227,000732: # TEST (1): IS THE TRIM GIMBAL FUNCTIONALLY OPERATIVE?
022228,000733:
022229,000734: 17,2710 37754 CAF BIT2 # ETST TO SEE IF LEM AND DAP MODES ALLOW
022230,000735: 17,2711 70077 MASK DAPBOOLS # USE OF TRIM GIMBAL CONTROL SYSTEM:
022231,000736: 17,2712 10000 CCS A # BIT2 = 0 MEANS THAT TRIM GIMBAL CONTROL
022232,000737: 17,2713 12755 TCF STILLRCS # IS POSSIBLE, SO TEST OTHER TG CONDITIONS
022233,000738:
022234,000739: # TEST (2): ARE THE Q,R-AXES RCS JETS OFF?
022235,000740: 17,2714 00006 EXTEND # BUT, IF JETS ARE OFF AND TRIM GIMBAL MAY
022236,000741:
022237,000742: 17,2715 00005 READ 5 # POSSIBLY BE USED: BEING IN THE JET COAST
022238,000743:
![]() |
Page 505 |
022240,000745: 17,2716 10000 CCS A # REGION OF THE PHASE PLANE IS A NECESSARY
022241,000746: 17,2717 12755 TCF STILLRCS # BUT INSUFFICIENT REASON FOR GTS USE
022242,000747:
022243,000748: # TEST(3): ARE BOTH TRIM GIMBAL DRIVES OFF?
022244,000749:
022245,000750: 17,2720 00006 EXTEND # BITS 9-12 OF CHANNEL 12 ARE THE SIGNALS
022246,000751: 17,2721 00012 READ 12 # WHICH DRIVE THE TRIM GIMBAL ENGINE:
022247,000752: 17,2722 72615 MASK BGIM24 # IF NONE OF THESE BITS ARE ON, THEN BOTH
022248,000753:
022249,000754: 17,2723 10000 CCS A # WAITLIST TASKS TO TURN OFF THE DRIVES
022250,000755: 17,2724 12755 TCF STILLRCS # HAVE BEEN DONE AND GTS CONTROL CAN OCCUR
022251,000756:
022252,000757: # TEST(4): IS THE LEM RATE LESS THAN .5 DEG/SEC ABOUT BOTH AXES?
022253,000758:
022254,000759: 17,2725 37755 CA BIT1
022255,000760: 17,2726 54066 LOOPTOP TS QRCNTR
022256,000761: 17,2727 60000 DOUBLE
022257,000762: 17,2730 50000 INDEX A
022258,000763: 17,2731 11417 CCS OMEGAQ # IS ERROR RATE SMALL ENOUGH FOR GTS.
022259,000764: 17,2732 62753 AD -RATLM+1 # -.5 DEG/SEC SCALED AT PI/4 + 1 BIT
022260,000765: 17,2733 12735 TCF +2
022261,000766: 17,2734 62753 AD -RATLM+1
022262,000767: 17,2735 00006 EXTEND
022263,000768: 17,2736 62740 BZMF +2 # IS RATE LESS,EQUAL .5 DEG/SEC.
022264,000769: 17,2737 12755 TCF STILLRCS # NO. SO USE RCS.
022265,000770: 17,2740 50066 INDEX QRCNTR # YES. TRY THE ERROR MAGNITUDE.
022266,000771: 17,2741 11467 CCS QDIFF # IS ERROR SMALL ENOUGH FOR GTS.
022267,000772: 17,2742 62754 AD -XBND+1 # -1.4 DEG SCALED AT PI + 1 BIT
022268,000773: 17,2743 12745 TCF +2
022269,000774: 17,2744 62754 AD -XBND+1
022270,000775: 17,2745 00006 EXTEND
022271,000776: 17,2746 62750 BZMF +2 # IS ERROR LESS,EQUAL 1.4 DEG.
022272,000777:
022273,000778: 17,2747 12755 TCF STILLRCS # NO. USE RCS CONTROL.
022274,000779: 17,2750 10066 CCS QRCNTR # THIS AXIS IS FINE. ARE BOTH DONE.
022275,000780: 17,2751 12726 TCF LOOPTOP # NOW TRY THE Q AXIS.
022276,000781: 17,2752 12612 TCF GOTOGTS # TRANSFER TO TRIM GIMBAL CONTROL
022277,000782: 17,2753 77512 -RATLM+1 OCT 77512 # -.5 DEG/SEC SCALED AT PI/4 + 1 BIT
022278,000783: 17,2754 77601 -XBND+1 OCT 77601 # -1.4 DEG SCALED AT PI, + 1 BIT.
022279,000784: # "STILLRCS" IS THE ENTRY POINT TO RCS ATTITUDE STERRING WHENEVER IT IS FOUND THAT THE TRIM GIMBAL CONTROL
022280,000785: # SYSTEM SHOULD NOT BE USED;
022281,000786:
022282,000787: # BRANCH TO SPSRCS WHEN BIT 15 = 0 FOR SPS BACKUP
022283,000788:
022284,000789: 17,2755 10077 STILLRCS CCS DAPBOOLS
022285,000790: 17,2756 13576 TCF SPSBAKUP
022286,000791: 17,2757 12760 NOOP
022287,000792: 17,2760 32616 CAF DESCADR # SET JET SELECT LOGIC RETURN ADDRESS TO
022288,000793: 17,2761 54062 TS TJETADR # THE Q,R-AXIS TJETLAW CALCULATION
022289,000794:
022290,000795: 17,2762 05041 TC T6JOBCHK # CHECK T6 CLOCK RUPT BEFORE SUBROUTINE
022291,000796:
![]() |
Page 506 |
022293,000798:
022294,000799: # Q,R-AXES URGENCY FUNCTION LOOP:
022295,000800:
022296,000801: # SET UP LOOP TO DO R-AXIS, THEN Q-AXIS:
022297,000802:
022298,000803: 17,2763 37755 CAF ONE # 1: REFERS TO R-AXIS VARIABLES.
022299,000804: 17,2764 54061 TS AXISCNTR # 2: REFERS TO Q-AXIS VARIABLES.
022300,000805:
022301,000806: # PICK UP EDOT AND RESCALE FROM PI/4 TO PI/16 RADIANS/SECOND:
022302,000807:
022303,000808: 17,2765 50061 URGLOOP INDEX AXISCNTR # ERROR RATES ARE PRE-CALCULATED BY RATE
022304,000809: 17,2766 31424 CAE EDOTQ # DERIVATION SCALED AT PI/4 RADIANS/SECOND
022305,000810: 17,2767 00006 EXTEND # MULTIPLYING BY FOUR (BIT3) LEAVES EDOT
022306,000811: 17,2770 77753 MP FOUR # AS C(L) IF EDOT LESS THAN 11.25 DEG/SEC.
022307,000812: 17,2771 00006 EXTEND
022308,000813:
022309,000814: 17,2772 12774 BZF +2 # IF C(A) NON-ZERO, THEN EDOT GREATER THAN
022310,000815: 17,2773 13042 TCF EDOTMAX # 11.25 DEG/SEC IN MAGNITUDE, SO LIMIT IT.
022311,000816:
022312,000817: 17,2774 10001 CCS L # INSURE NON-ZERO EDOT:
022313,000818: 17,2775 67754 AD TWO # C(L) PNZ REMAINS UNCHANGED.
022314,000819: 17,2776 13000 TCF +2 # C(L) NNZ REMAINS UNCHANGED.
022315,000820: 17,2777 40000 COM # C(L) +0 BECOMES 77776.
022316,000821: 17,3000 67763 AD NEG1 # C(L) -0 BECOMES 77776.
022317,000822: 17,3001 55407 EDOTSTOR TS EDOT # SAVE NON-ZERO EDOT SCALED AT PI/16.
022318,000823:
022319,000824: 17,3002 00006 EXTEND # CALCULATE (EDOT)(EDOT):
022320,000825: 17,3003 70000 SQUARE
022321,000826: 17,3004 55412 TS EDOT(2) # SCALED AT PI(2)/2(+8) RAD(2)/SEC(2).
022322,000827:
022323,000828: 17,3005 00006 EXTEND # 0.5 +8 2
022324,000829: 17,3006 50061 INDEX AXISCNTR # ------ SCALED AT 2 /PI SEC /RAD.
022325,000830: 17,3007 71711 MP 1/ACCQ # ACCQ,R
022326,000831: 17,3010 00006 EXTEND # DEADBAND = 5.0 OR 1.0 OR 0.3 DEGREES
022327,000832: 17,3011 61415 SU DB # SCALED AT PI RADIANS.
022328,000833: 17,3012 55442 TS FPQR # 0.5(1/ACC)EDOT(2)-DB SCALED AT PI RADS.
022329,000834:
022330,000835: 17,3013 31412 CAE EDOT(2) # SCALED AT PI(2)/2(8) RAD(2)/SEC(2).
022331,000836: 17,3014 00006 EXTEND
022332,000837:
022333,000838: 17,3015 50061 INDEX AXISCNTR
022334,000839: 17,3016 71713 MP 1/AMINQ # .5(1/ACCMIN) 2(8)/PI SEC(2)/RAD.
022335,000840: 17,3017 61415 AD DB # DEADBAND SCALED AT PI RADIANS.
022336,000841: 17,3020 55460 TS FPQRMIN # .5(1/ACCMIN)EDOT(2)+DB SCALED AT PI RAD.
022337,000842:
022338,000843: 17,3021 11407 CCS EDOT # EDOT TEST ON SIGN (NON-ZERO):
022339,000844: 17,3022 31411 CAE E # ATTITUDE ERROR FOR THIS AXIS
022340,000845: 17,3023 13025 TCF +2 # SCALED AT PI RADIANS.
022341,000846: 17,3024 13047 TCF EDOTNEG
022342,000847: 17,3025 27442 ADS FPQR # E+0.5(1/ACC)EDOT(2)-DB SCALED AT PI RAD.
022343,000848:
022344,000849: 17,3026 11407 FTEST CCS EDOT # EDOT GUARANTEED NOT +0 OR -0.
022345,000850: 17,3027 11442 CCS FPQR # FPQR ---------- NOT +0.
022346,000851:
![]() |
Page 507 |
022348,000853: 17,3030 13035 TCF QUICKURG # EDOT.G.+0, FPQR.G.+0.
022349,000854: 17,3031 11442 CCS FPQR # EDOT.L.-0.
022350,000855: 17,3032 13053 TCF FMINCALC # EDOT.L.-0,FPQR.G.+0/EDOT.G.+0,FPQR.L.-0.
022351,000856: 17,3033 13053 TCF FMINCALC # EDOT.G.+0,FPQR.E.-0 (FROM FIRST CCS).
022352,000857: 17,3034 13035 TCF QUICKURG # EDOT.L.-0,FPQR.L.-0.
022353,000858:
022354,000859: 17,3035 31407 QUICKURG CAE EDOT # EDOT.L.-0,FPQR.E.-0 (FROM 2ND CCS).
022355,000860: 17,3036 00006 EXTEND # SCALE FROM PI/16 TO PI RADIANS/SECOND
022356,000861: 17,3037 77743 MP BIT11 # TO HAVE SAME SCALING AS FPQR AFTER THE
022357,000862: 17,3040 61442 AD FPQR # IMPLICIT MULT. OF FPQR BY 1/SEC.
022358,000863: 17,3041 13075 TCF URGMULT # THIS URGENCY = (1/ACC)(FPQR+EDOT).
022359,000864:
022360,000865: 17,3042 10000 EDOTMAX CCS A # GUARANTEED NOT +0 OR -0.
022361,000866: 17,3043 37735 CAF POSMAX
022362,000867: 17,3044 13001 TCF EDOTSTOR # SET EDOT TO SIGNED MAXIMUM.
022363,000868: 17,3045 47735 CS POSMAX
022364,000869: 17,3046 13001 TCF EDOTSTOR # SCALED AT PI/16 RADIANS/SECOND.
022365,000870:
022366,000871: 17,3047 41442 EDOTNEG CS FPQR # SCALED AT PI RADIANS
022367,000872:
022368,000873: 17,3050 61411 AD E # ATTITUDE ERROR FOR THIS AXIS
022369,000874: 17,3051 55442 TS FPQR # E-0.5(1/ACC)EDOT(2)+DB SCALED AT PI RAD.
022370,000875: 17,3052 13026 TCF FTEST
022371,000876:
022372,000877: 17,3053 11442 FMINCALC CCS FPQR # NECESSARY RETEST ON FPQR;
022373,000878: 17,3054 41460 CS FPQRMIN
022374,000879: 17,3055 13057 TCF +2 # E-0.5(1/ACCMIN)EDOT(2)-DB
022375,000880: 17,3056 31460 CAE FPQRMIN
022376,000881: 17,3057 61411 AD E # E+0.5(1/ACCMIN)EDOT(2)+DB
022377,000882: 17,3060 55460 TS FPQRMIN # SCALED AT PI RADIANS.
022378,000883:
022379,000884: 17,3061 11407 CCS EDOT # EDOT GUARANTEED NOT +0 OR -0.
022380,000885: 17,3062 11460 CCS FPQRMIN # FPQRMIN GUARANTEED NOT +0 (CALL IT F).
022381,000886: 17,3063 13070 TCF ZEROURG # EDOT.G.+0, F.G.+0.
022382,000887: 17,3064 11460 CCS FPQRMIN # EDOT.L.-0.
022383,000888: 17,3065 13074 TCF NORMURG # EDOT.L.-0, F.G.+0 / EDOT.G.+0, F.L.-0.
022384,000889: 17,3066 13074 TCF NORMURG # EDOT.G.+0, F.E.-0 (FROM FIRST CCS).
022385,000890: 17,3067 13070 TCF ZEROURG # EDOT.L.-0, F.L.-0.
022386,000891: 17,3070 00006 ZEROURG EXTEND # EDOT.L.-0, F.E.-0 (FROM 2ND CCS).
022387,000892:
022388,000893: 17,3071 33166 DCA DPZEROY # THIS URGENCY IS ZERO.
022389,000894: 17,3072 53505 DXCH URGENCYQ
022390,000895: 17,3073 13101 TCF MOREURG # TEST FOR NEXT AXIS
022391,000896:
022392,000897: 17,3074 31460 NORMURG CAE FPQRMIN # THIS URGENCY IS FPQRMIN(1/ACC).
022393,000898: 17,3075 00006 URGMULT EXTEND
022394,000899: 17,3076 50061 INDEX AXISCNTR
022395,000900: 17,3077 71711 MP 1/ACCQ
022396,000901: 17,3100 53505 DXCH URGENCYQ # SAVE D.P. SCALED AT 2(+9).
022397,000902:
022398,000903: 17,3101 10061 MOREURG CCS AXISCNTR # TEST FOR END OF LOOP
022399,000904:
![]() |
Page 508 |
022401,000906: 17,3102 13104 TCF +2 # CONTINUE.
022402,000907: 17,3103 13167 TCF URGSCALQ # FINISHED.
022403,000908:
022404,000909: 17,3104 54061 TS AXISCNTR # Q-AXIS
022405,000910:
022406,000911: 17,3105 00006 EXTEND
022407,000912: 17,3106 31505 DCA URGENCYQ # SET URGENCYR
022408,000913: 17,3107 53507 DXCH URGENCYR
022409,000914:
022410,000915: 17,3110 53412 DXCH E # SET ER,EDOT(2)R
022411,000916: 17,3111 53414 DXCH ER
022412,000917: 17,3112 55411 TS EQ # SET EQ
022413,000918: 17,3113 31407 CAE EDOT
022414,000919: 17,3114 55410 TS EDOT(R) # SET EDOT(R).
022415,000920:
022416,000921: 17,3115 12765 TCF URGLOOP # CONTINUE.
022417,000922:
022418,000923: # SUFFICIENT TEST FOR URGENCY RESCALING:
022419,000924:
022420,000925: 17,3116 11506 URGSCALR CCS URGENCYR # IF ABVAL(URGENCYR) LESS THAN SCALE BOUND
022421,000926: 17,3117 63164 AD SCALEBND
022422,000927: 17,3120 13122 TCF +2 # THEN BOTH URGENCIES CAN BE RESCALED FROM
022423,000928: 17,3121 63164 AD SCALEBND
022424,000929: 17,3122 00006 EXTEND # 2(+9) TO 2(+4) SECONDS.
022425,000930: 17,3123 63125 BZMF URGSCALE
022426,000931: 17,3124 13175 TCF URGLIMS
022427,000932:
022428,000933: # RESCALE BOTH URGENCIES FROM 2(+9) TO 2(+4) SECONDS:
022429,000934:
022430,000935: 17,3125 31504 URGSCALE CAE URGENCYQ
022431,000936: 17,3126 00006 EXTEND
022432,000937: 17,3127 77750 MP BIT6
022433,000938: 17,3130 23504 LXCH URGENCYQ
022434,000939: 17,3131 31505 CAE URGENCYQ +1
022435,000940: 17,3132 00006 EXTEND
022436,000941: 17,3133 77750 MP BIT6
022437,000942: 17,3134 27504 ADS URGENCYQ
022438,000943:
022439,000944: 17,3135 31506 CAE URGENCYR
022440,000945: 17,3136 00006 EXTEND
022441,000946: 17,3137 77750 MP BIT6
022442,000947: 17,3140 23506 LXCH URGENCYR
022443,000948: 17,3141 31507 CAE URGENCYR +1
022444,000949: 17,3142 00006 EXTEND
022445,000950: 17,3143 77750 MP BIT6
022446,000951: 17,3144 27506 ADS URGENCYR
022447,000952:
022448,000953: 17,3145 33163 CAF URGLM2 # SET URGENCY LIMIT FOR 2(+4) SCALING.
022449,000954: 17,3146 54066 TS URGLIMIT
022450,000955: 17,3147 13177 TCF URGFUDGE
022451,000956:
![]() |
Page 509 |
022453,000958: 17,3150 31717 URGRATQM CAE URGRATQ
022454,000959: 17,3151 00006 EXTEND
022455,000960: 17,3152 71504 MP URGENCYQ
022456,000961: 17,3153 55504 TS URGENCYQ
022457,000962: 17,3154 13206 TCF URGFUDG1
022458,000963:
022459,000964: 17,3155 31720 URGRATRM CAE URGRATR
022460,000965: 17,3156 00006 EXTEND
022461,000966:
022462,000967: 17,3157 71506 MP URGENCYR
022463,000968: 17,3160 55506 TS URGENCYR
022464,000969: 17,3161 13215 TCF URGPLANE
022465,000970:
022466,000971: 17,3162 77637 URGLM1 DEC -0.00586 # -3 SECONDS SCALED AT 2(+9)
022467,000972: 17,3163 71777 URGLM2 DEC -0.1875 # -3 SECONDS SCALED AT 2(+4)
022468,000973: 17,3164 77002 SCALEBND DEC -0.03105 # -16 SECONDS SCALED AT 2(+9)
022469,000974: 17,3165 00000 00000 DPZEROY 2DEC 0 B-28
022470,000975: # NECESSARY TEST FOR URGENCY RESCALING:
022471,000976:
022472,000977: 17,3167 11504 URGSCALQ CCS URGENCYQ # IF ABVAL(URGENCYQ) LESS THAN SCALE BOUND
022473,000978: 17,3170 63164 AD SCALEBND
022474,000979: 17,3171 13173 TCF +2 # THEN TEST URGENCYR FOR RESCALABLE
022475,000980: 17,3172 63164 AD SCALEBND
022476,000981: 17,3173 00006 EXTEND # MAGNITUDE.
022477,000982: 17,3174 63116 BZMF URGSCALR
022478,000983:
022479,000984: # USE URGENCY CORRECTION FACTOR RATIO WHEN NECESSARY:
022480,000985:
022481,000986: 17,3175 33162 URGLIMS CAF URGLM1 # SET URGENCY LIMIT FOR 2(+9) SCALING
022482,000987: 17,3176 54066 TS URGLIMIT
022483,000988:
022484,000989:
022485,000990: 17,3177 31652 URGFUDGE CAE AOSQ # TEST ON ASOQ(URGENCYQ) GREATER THAN ZERO
022486,000991: 17,3200 00006 EXTEND
022487,000992:
022488,000993: 17,3201 13206 BZF URGFUDG1 # (IF AOSQ ZERO, DO NOT USE URGRATQ.)
022489,000994: 17,3202 00006 EXTEND
022490,000995: 17,3203 71504 MP URGENCYQ # IF PRODUCT NEGATIVE, APPLY URGRATQ.
022491,000996: 17,3204 00006 EXTEND
022492,000997: 17,3205 63150 BZMF URGRATQM
022493,000998:
022494,000999: 17,3206 31653 URGFUDG1 CAE AOSR # TEST ON AOSR(URGENCYR) GREATER THAN ZERO
022495,001000: 17,3207 00006 EXTEND
022496,001001: 17,3210 13215 BZF URGPLANE # (IF AOSR ZERO, DO NOT USE URGRATQ.)
022497,001002: 17,3211 00006 EXTEND
022498,001003: 17,3212 71506 MP URGENCYR # IF PRODUCT NEGATIVE, APPLY URGRATR.
022499,001004: 17,3213 00006 EXTEND
022500,001005: 17,3214 63155 BZMF URGRATRM
022501,001006:
022502,001007: 17,3215 31504 URGPLANE CAE URGENCYQ # BEGIN URGENCY-PLANE COMPUTATIONS:
022503,001008: 17,3216 00006 EXTEND
022504,001009:
![]() |
Page 510 |
022506,001011: 17,3217 13357 BZF BURGZERO # TEST FOR BOTH URGENCIES ZERO
022507,001012:
022508,001013: 17,3220 00006 EXTEND
022509,001014: 17,3221 73375 MP -TAN22.5
022510,001015: 17,3222 61506 AD URGENCYR
022511,001016: 17,3223 00006 EXTEND
022512,001017: 17,3224 73372 MP COS22.5
022513,001018: 17,3225 55512 TS TERMA # UR.COS(22.5)-UQ.SIN(22.5)
022514,001019:
022515,001020: 17,3226 41506 CS URGENCYR
022516,001021: 17,3227 00006 EXTEND
022517,001022: 17,3230 73375 MP -TAN22.5
022518,001023: 17,3231 61504 AD URGENCYQ
022519,001024: 17,3232 00006 EXTEND
022520,001025:
022521,001026: 17,3233 73372 MP COS22.5
022522,001027: 17,3234 55513 TS TERMB # UR.SIN(22.5)+UQ.COS(22.5)
022523,001028:
022524,001029: 17,3235 61512 A+B/A-B AD TERMA
022525,001030: 17,3236 55510 TS A+B
022526,001031: 17,3237 41513 A-B/ONLY CS TERMB
022527,001032: 17,3240 61512 AD TERMA
022528,001033: 17,3241 55511 TS A-B
022529,001034:
022530,001035: # AXIS AND MODE SELECTION
022531,001036:
022532,001037: 17,3242 31513 CAE TERMB # B URGENCY TEST
022533,001038: 17,3243 00006 EXTEND
022534,001039: 17,3244 63376 BZMF NEGBURG
022535,001040:
022536,001041: 17,3245 31512 POSBURG CAE TERMA # A URGENCY TEST
022537,001042: 17,3246 00006 EXTEND
022538,001043: 17,3247 63316 BZMF NETAPOSB
022539,001044:
022540,001045: 17,3250 31511 POSAPOSB CAE A-B
022541,001046: 17,3251 00006 EXTEND
022542,001047: 17,3252 63274 BZMF MINUSU # NEGATIVE U-AXIS SELECTED
022543,001048:
022544,001049: 17,3253 31714 2/4JET-R CAE 1/AMINR
022545,001050: 17,3254 55627 TS .5ACCMNE
022546,001051: 17,3255 00006 EXTEND
022547,001052: 17,3256 31414 DCA ER
022548,001053: 17,3257 53412 DXCH E
022549,001054: 17,3260 31410 CAE EDOT(R)
022550,001055: 17,3261 55407 TS EDOT
022551,001056: 17,3262 30066 CAE URGLIMIT
022552,001057: 17,3263 61506 AD URGENCYR
022553,001058: 17,3264 00006 EXTEND
022554,001059: 17,3265 63270 BZMF 2JETS-R
022555,001060:
022556,001061: 17,3266 47755 4JETS-R CS ONE
022557,001062:
![]() |
Page 511 |
022559,001064: 17,3267 13507 TCF POLTYPE # GO FIND BEST POLICY
022560,001065:
022561,001066: 17,3270 11663 2JETS-R CCS NJ-R
022562,001067: 17,3271 13266 TCF 4JETS-R
022563,001068: 17,3272 47754 CS TWO
022564,001069: 17,3273 13507 TCF POLTYPE # GO FIND BEST POLICY
022565,001070:
022566,001071: 17,3274 31715 MINUSU CAE 1/AMINU
022567,001072: 17,3275 55627 TS .5ACCMNE
022568,001073: 17,3276 31506 CAE URGENCYR
022569,001074: 17,3277 61506 AD URGENCYR
022570,001075: 17,3300 10000 CCS A
022571,001076: 17,3301 60066 AD URGLIMIT
022572,001077: 17,3302 13304 TCF +2
022573,001078: 17,3303 60066 AD URGLIMIT
022574,001079: 17,3304 00006 EXTEND
022575,001080: 17,3305 63311 BZMF 2JETS-U
022576,001081:
022577,001082: 17,3306 03523 2JETSM-U TC UXFORM
022578,001083:
022579,001084: 17,3307 36301 2-U.RATE CAF THREE
022580,001085: 17,3310 13507 TCF POLTYPE # GO FIND BEST POLICY
022581,001086:
022582,001087: 17,3311 11665 2JETS-U CCS NJ-U
022583,001088: 17,3312 13306 TCF 2JETSM-U
022584,001089: 17,3313 03523 TC UXFORM
022585,001090: 17,3314 37754 CAF TWO
022586,001091: 17,3315 13507 TCF POLTYPE # GO FIND BEST POLICY
022587,001092:
022588,001093: 17,3316 31510 NETAPOSB CAE A+B
022589,001094: 17,3317 00006 EXTEND
022590,001095: 17,3320 63335 BZMF PLUSV
022591,001096:
022592,001097: 17,3321 31713 2/4JET-Q CAE 1/AMINQ
022593,001098: 17,3322 55627 TS .5ACCMNE
022594,001099: 17,3323 30066 CAE URGLIMIT
022595,001100: 17,3324 61504 AD URGENCYQ
022596,001101: 17,3325 00006 EXTEND
022597,001102: 17,3326 63331 BZMF 2JETS-Q
022598,001103:
022599,001104: 17,3327 47760 4JETS-Q CS FIVE
022600,001105: 17,3330 13507 TCF POLTYPE # GO FIND BEST POLICY
022601,001106:
022602,001107: 17,3331 11661 2JETS-Q CCS NJ-Q
022603,001108: 17,3332 13327 TCF 4JETS-Q
022604,001109: 17,3333 46276 CS SIX
022605,001110: 17,3334 13507 TCF POLTYPE # GO FIND BEST POLICY
022606,001111:
022607,001112: 17,3335 31716 PLUSV CAE 1/AMINV
022608,001113: 17,3336 55627 TS .5ACCMNE
022609,001114: 17,3337 41504 CS URGENCYQ
022610,001115:
![]() |
Page 512 |
022612,001117: 17,3340 61506 AD URGENCYR
022613,001118: 17,3341 10000 CCS A
022614,001119:
022615,001120:
022616,001121: 17,3342 60066 AD URGLIMIT
022617,001122: 17,3343 13345 TCF +2
022618,001123: 17,3344 60066 AD URGLIMIT
022619,001124: 17,3345 00006 EXTEND
022620,001125: 17,3346 63352 BZMF 2JETS+V
022621,001126:
022622,001127: 17,3347 03515 2JETSM+V TC VXFORM
022623,001128: 17,3350 37760 2+V.RATE CAF FIVE
022624,001129: 17,3351 13507 TCF POLTYPE # GO FIND BEST POLICY
022625,001130:
022626,001131: 17,3352 11666 2JETS+V CCS NJ+V
022627,001132: 17,3353 13347 TCF 2JETSM+V
022628,001133: 17,3354 03515 TC VXFORM
022629,001134: 17,3355 37753 CAF FOUR
022630,001135: 17,3356 13507 TCF POLTYPE # GO FIND BEST POLICY
022631,001136:
022632,001137: 17,3357 31506 BURGZERO CAE URGENCYR # TEST FOR SECOND URGENCY ALSO ZERO
022633,001138: 17,3360 00006 EXTEND
022634,001139: 17,3361 12416 BZF XTRANS # NO ROTATION NEEDED NOW
022635,001140:
022636,001141: 17,3362 00006 EXTEND # TIME SAVING A,B CALCULATION
022637,001142: 17,3363 73373 MP SIN22.5
022638,001143: 17,3364 55513 TS TERMB # UR.SIN(22.5)
022639,001144:
022640,001145: 17,3365 31506 CAE URGENCYR
022641,001146: 17,3366 00006 EXTEND
022642,001147: 17,3367 73372 MP COS22.5
022643,001148: 17,3370 55512 TS TERMA # UR.COS(22.5)
022644,001149: 17,3371 13237 TCF A-B/ONLY
022645,001150:
022646,001151: 17,3372 35441 COS22.5 DEC 0.92388 # COSINE OF 22.5 DEGREES
022647,001152: 17,3373 14176 SIN22.5 DEC 0.38268 # SINE OF 22.5 DEGREES
022648,001153: 17,3374 00632 100MSCAL DEC 0.025
022649,001154: 17,3375 62575 -TAN22.5 DEC -.41421 # NEGATIVE OF TANGENT OF 22.5 DEGREES
022650,001155:
022651,001156: 17,3376 31512 NEGBURG CAE TERMA # A URGENCY TEST
022652,001157: 17,3377 00006 EXTEND
022653,001158: 17,3400 63426 BZMF NEGANEGB
022654,001159:
022655,001160: 17,3401 31510 POSANEGB CAE A+B
022656,001161: 17,3402 00006 EXTEND
022657,001162: 17,3403 63474 BZMF 2/4JET+Q
022658,001163:
022659,001164: 17,3404 31716 MINUSV CAE 1/AMINV
022660,001165: 17,3405 55627 TS .5ACCMNE
022661,001166: 17,3406 41504 CS URGENCYQ
022662,001167: 17,3407 61506 AD URGENCYR
022663,001168:
022664,001169: 17,3410 10000 CCS A
022665,001170: 17,3411 60066 AD URGLIMIT
022666,001171:
![]() |
Page 513 |
022668,001173: 17,3412 13414 TCF +2
022669,001174: 17,3413 60066 AD URGLIMIT
022670,001175: 17,3414 00006 EXTEND
022671,001176: 17,3415 63421 BZMF 2JETS-V
022672,001177:
022673,001178: 17,3416 03515 2JETSM-V TC VXFORM
022674,001179: 17,3417 37757 2-V.RATE CAF SEVEN
022675,001180: 17,3420 13507 TCF POLTYPE # GO FIND BEST POLICY
022676,001181:
022677,001182: 17,3421 11667 2JETS-V CCS NJ-V
022678,001183: 17,3422 13416 TCF 2JETSM-V
022679,001184: 17,3423 03515 TC VXFORM
022680,001185: 17,3424 36276 CAF SIX
022681,001186: 17,3425 13507 TCF POLTYPE # GO FIND BEST POLICY
022682,001187:
022683,001188: 17,3426 31511 NEGANEGB CAE A-B
022684,001189: 17,3427 00006 EXTEND
022685,001190: 17,3430 63453 BZMF 2/4JET+R
022686,001191:
022687,001192: 17,3431 31715 PLUSU CAE 1/AMINU
022688,001193: 17,3432 55627 TS .5ACCMNE
022689,001194: 17,3433 31504 CAE URGENCYQ
022690,001195: 17,3434 61506 AD URGENCYR
022691,001196: 17,3435 10000 CCS A
022692,001197: 17,3436 60066 AD URGLIMIT
022693,001198: 17,3437 13441 TCF +2
022694,001199: 17,3440 60066 AD URGLIMIT
022695,001200: 17,3441 00006 EXTEND
022696,001201: 17,3442 63446 BZMF 2JETS+U
022697,001202:
022698,001203: 17,3443 03523 2JETSM+U TC UXFORM
022699,001204: 17,3444 37755 2+U.RATE CAF ONE
022700,001205:
022701,001206: 17,3445 13507 TCF POLTYPE # GO FIND BEST POLICY
022702,001207:
022703,001208: 17,3446 11664 2JETS+U CCS NJ+U
022704,001209: 17,3447 13443 TCF 2JETSM+U
022705,001210: 17,3450 03523 TC UXFORM
022706,001211: 17,3451 37761 CAF ZERO
022707,001212: 17,3452 13507 TCF POLTYPE # GO FIND BEST POLICY
022708,001213:
022709,001214: 17,3453 31714 2/4JET+R CAE 1/AMINR
022710,001215: 17,3454 55627 TS .5ACCMNE
022711,001216: 17,3455 00006 EXTEND
022712,001217: 17,3456 31414 DCA ER
022713,001218: 17,3457 53412 DXCH E
022714,001219: 17,3460 31410 CAE EDOT(R)
022715,001220: 17,3461 55407 TS EDOT
022716,001221: 17,3462 30066 CAE URGLIMIT
022717,001222: 17,3463 61506 AD URGENCYR
022718,001223:
022719,001224: 17,3464 00006 EXTEND
022720,001225:
![]() |
Page 514 |
022722,001227: 17,3465 63470 BZMF 2JETS+R
022723,001228:
022724,001229: 17,3466 46301 4JETS+R CS THREE
022725,001230: 17,3467 13507 TCF POLTYPE # GO FIND BEST POLICY
022726,001231:
022727,001232: 17,3470 11662 2JETS+R CCS NJ+R
022728,001233: 17,3471 13466 TCF 4JETS+R
022729,001234: 17,3472 47753 CS FOUR
022730,001235: 17,3473 13507 TCF POLTYPE # GO FIND BEST POLICY
022731,001236:
022732,001237: 17,3474 31713 2/4JET+Q CAE 1/AMINQ
022733,001238: 17,3475 55627 TS .5ACCMNE
022734,001239: 17,3476 30066 CAE URGLIMIT
022735,001240: 17,3477 61504 AD URGENCYQ
022736,001241:
022737,001242: 17,3500 00006 EXTEND
022738,001243: 17,3501 63504 BZMF 2JETS+Q
022739,001244:
022740,001245: 17,3502 47757 4JETS+Q CS SEVEN
022741,001246: 17,3503 13507 TCF POLTYPE # GO FIND BEST POLICY
022742,001247:
022743,001248: 17,3504 11660 2JETS+Q CCS NJ+Q
022744,001249: 17,3505 13502 TCF 4JETS+Q
022745,001250: 17,3506 47752 CS EIGHT
022746,001251:
022747,001252: # GENERALIZED CALLING SEQUENCE FOR ALL Q,R-AXES ROTATIONS (FROM BANK 17):
022748,001253:
022749,001254: 17,3507 54061 POLTYPE TS NETACNDX # SAVE INDEX INDICATING AXIS, DIRECTION,
022750,001255: 17,3510 00006 EXTEND # AND NUMBER OF JETS REQUESTED (THIS SPEC-
022751,001256: 17,3511 33514 DCA POLADR # IFIES THE "OPTIMAL" POLICY. TRANSFER
022752,001257: 17,3512 52006 DTCB # ACROSS BANKS TO POLICY SELECTION ROUTINE
022753,001258:
022754,001259: 17,3513 E6,1471 EBANK= JTSONNOW
022755,001260: 17,3513 02170 40006 POLADR 2CADR POLTYPEP # 2CADR OF JET POLICY SELECT ROUINTE.
022756,001261:
022757,001262:
![]() |
Page 515 |
022759,001264: # SUBROUTINES UXFORM AND VXFORM CALCULATE NEEDED VALUES FOR T-JET LAW
022760,001265: # (THEY GO OFF TO REDUCE RATE, IF NECESSARY, AND THEN DO NOT RETURN)
022761,001266:
022762,001267: 17,3515 31705 VXFORM CAE 1/2JETSV # GET INVERSE OF V-JET ACCELERATION
022763,001268: 17,3516 54066 TS 1/NJETAC
022764,001269: 17,3517 41411 CS EQ # COMPLEMENT FOR TRANSFORMATION
022765,001270: 17,3520 55411 TS EQ
022766,001271: 17,3521 41424 CS EDOTQ
022767,001272: 17,3522 13526 TCF UVXFORM +1
022768,001273: 17,3523 31701 UXFORM CAE 1/2JETSU # SET INVERSE OF U-JET ACCELERATION
022769,001274: 17,3524 54066 TS 1/NJETAC
022770,001275:
022771,001276: 17,3525 31424 UVXFORM CAE EDOTQ # TRANSFORM ANGULAR RATE TO U/V-AXIS
022772,001277: 17,3526 61425 AD EDOTR
022773,001278: 17,3527 00006 EXTEND
022774,001279: 17,3530 73575 MP .707
022775,001280: 17,3531 55407 TS EDOT # SAVE FOR REDUCEUV
022776,001281: 17,3532 00006 EXTEND
022777,001282: 17,3533 77753 MP BIT3
022778,001283: 17,3534 00006 EXTEND
022779,001284:
022780,001285: 17,3535 13543 BZF UVEDOT # BRANCH IF RESCALING SUCCESSFUL.
022781,001286:
022782,001287: 17,3536 10000 CCS A # LIMIT EDOT TO +/- 11.25 DEG/SEC.
022783,001288: 17,3537 37735 CAF POSMAX
022784,001289: 17,3540 13544 TCF UVEDOT1
022785,001290: 17,3541 47735 CS POSMAX
022786,001291: 17,3542 13544 TCF UVEDOT1
022787,001292:
022788,001293: 17,3543 30001 UVEDOT CAE L
022789,001294: 17,3544 55407 UVEDOT1 TS EDOT # RATE ERROR SCALED AT PI/16.
022790,001295: 17,3545 00006 EXTEND
022791,001296: 17,3546 70000 SQUARE
022792,001297: 17,3547 55412 TS EDOT(2) # SAVE RATE SQUARED SCALED AT PI(2)/2(8)
022793,001298:
022794,001299: 17,3550 77533 -1.6CSP DEC -.01000 # 160 MS SCALED AT 2(4) SECONDS
022795,001300: 17,3551 00014 +TJMINT6 DEC +.00073
022796,001301: 17,3552 77767 -TJMIN16 DEC -.00047
022797,001302: 17,3553 17,3552 -TJMINQR EQUALS -TJMIN16
022798,001303: 17,3553 00050 38.5MAT4 DEC 0.00242 # 38.75 MS SCALED AT 4
022799,001304: 17,3554 77733 -MS35AT4 DEC -.00219 # -35MS SCALED AT 4
022800,001305: 17,3555 34344 MAXRATE DEC 0.88889 # 10 DEGREES/SECOND SCALED AT PI/16
022801,001306: 17,3556 31221 MAXRATE2 DEC 0.79012 # 100 DEG(2)/SEC(2) SCALED AT PI(2)/2(8)
022802,001307: 17,3557 01552 .6DEG/SC DEC 0.05333 # 6/10 DEGREES/SECOND SCALED AT PI/16
022803,001308:
022804,001309: 17,3560 31000 25/32QR DEC 0.78125
022805,001310:
![]() |
Page 516 |
022807,001312: # THESE TWO SUBROUTINES TRANSFORM EDOTQ,EDOTR INTO THE U/V-AXIS (RESPECTIVELY) FOR THE RATE COMMAND MODE (ONLY).
022808,001313: # VALUE IS STORED IN EDOTGEN SCALED AT PI/4 RADIANS/SECOND.
022809,001314:
022810,001315: 17,3561 BANK 17
022811,001316: 17,3561 31701 EDOTUGEN CAE 1/2JETSU # FOR U-AXIS TRANSFORMATION
022812,001317: 17,3562 54066 TS 1/NJETAC
022813,001318: 17,3563 31424 CAE EDOTQ
022814,001319: 17,3564 13570 TCF +4
022815,001320: 17,3565 31705 EDOTVGEN CAE 1/2JETSV # FOR V-AXIS TRANSFORMATION
022816,001321: 17,3566 54066 TS 1/NJETAC
022817,001322: 17,3567 41424 CS EDOTQ
022818,001323: 17,3570 61425 AD EDOTR
022819,001324: 17,3571 00006 EXTEND
022820,001325: 17,3572 73575 MP .707
022821,001326: 17,3573 55440 TS RATEDIF
022822,001327: 17,3574 00002 TC Q
022823,001328:
022824,001329:
022825,001330:
022826,001331: 17,3575 26501 .707 DEC 0.70711
022827,001332:
022828,001333: 17,3576 00006 SPSBAKUP EXTEND
022829,001334: 17,3577 33602 DCA SPSRCSAD
022830,001335: 17,3600 52006 DXCH Z
022831,001336: 17,3601 E6,1541 EBANK= DT
022832,001337: 17,3601 03536 42006 SPSRCSAD 2CADR SPSRCS
022833,001338:
![]() |
Page 517 |
022835,001340: # *********TJETLAW************************************************************************************************
022836,001341:
022837,001342: 17,3603 41407 TJETLAW CS EDOT # TEST ON EDOT SIGN:
022838,001343: 17,3604 00006 EXTEND
022839,001344: 17,3605 63611 BZMF +4
022840,001345: 17,3606 55407 TS EDOT # SIGNS OF E AND EDOT CHANGED IF EDOT NEG,
022841,001346: 17,3607 41411 CS E # TO CONSIDER FUNCTIONS IN THE UPPER HALF
022842,001347: 17,3610 55411 TS E # OF THE E-DOT PHASE PLANE.
022843,001348:
022844,001349: 17,3611 31412 CAE EDOT(2) # SCALED AT PI(2)/2(+8) RAD(2)/SEC(2)
022845,001350: 17,3612 00006 EXTEND # 1/NETACC HAS BEEN SET FOR N-JETS WITH
022846,001351: 17,3613 70066 MP 1/NETACC # IMPLICIT FACTOR OF (1/2).
022847,001352: 17,3614 61411 AD E # ATTITUDE ERROR SCALED AT PI RADIANS.
022848,001353: 17,3615 00006 EXTEND # DEADBAND VALUE SCALED AT PI RADIANS.
022849,001354: 17,3616 61415 SU DB # E+.5EDOT/NETACC-DB
022850,001355: 17,3617 55445 TS HDAP # SCALED AT PI RADIANS.
022851,001356:
022852,001357: 17,3620 00006 EXTEND
022853,001358: 17,3621 63662 BZMF NEGHDAP
022854,001359:
022855,001360: 17,3622 31407 CAE EDOT # RATE ERROR; LIMITED TO +/- 11.25 DEG/SEC
022856,001361: 17,3623 00006 EXTEND # SCALED AT PI/LG RADIANS/SECOND.
022857,001362: 17,3624 70066 MP 1/NETACC # SCALED AT 2(+8)/PI SEC(2)/RAD: (ACC) (-1)
022858,001363: 17,3625 20001 DDOUBL # SCALED AT 2(+4) SECONDS.
022859,001364: 17,3626 55512 TS TERMA
022860,001365:
022861,001366: 17,3627 63550 AD -1.6CSP # EDOT/NETACC-1.6CSP SCALED AT 16 SECONDS.
022862,001367: 17,3630 00006 EXTEND
022863,001368: 17,3631 63634 BZMF +3
022864,001369:
022865,001370: 17,3632 37740 MAXTJET CAF BIT14 # (1/2) IS LIKE POSMAX AT THIS SCALING.
022866,001371: 17,3633 12461 TCF NORMRETN # (OVERFLOW IS PREVENTED IN THIS WAY.)
022867,001372:
022868,001373: 17,3634 41445 CS HDAP # DBMINIMP-E-EDOT(2)/NETACC+DB
022869,001374: 17,3635 61626 AD MINIMPDB # SCALED AT PI RADIANS.
022870,001375: 17,3636 00006 EXTEND # (DURING APS BURNS DBMINIMP=-DB)
022871,001376: 17,3637 63711 BZMF MAINBRCH
022872,001377:
022873,001378: 17,3640 31512 CAE TERMA # EDOT/NETACC-35MS SCALED AT 16 SECONDS.
022874,001379: 17,3641 63554 AD -MS35AT4
022875,001380: 17,3642 00006 EXTEND # COMPARE TIME-TO-GET-ZERO-RATE WITH 35MS.
022876,001381: 17,3643 63646 BZMF INZONE4
022877,001382:
022878,001383: 17,3644 63553 AD 38.5MAT4 # TIME-TO-GET-ZERO-RATE + 1/2 MINIMP.
022879,001384: 17,3645 13752 TCF TJETSCAL
022880,001385:
022881,001386: 17,3646 31606 INZONE4 CAE NO.QJETS # IF NO Q-AXIS JETS THEN MUST HAVE R-AXIS
022882,001387: 17,3647 00006 EXTEND
022883,001388: 17,3650 13656 BZF ROTRAXIS
022884,001389:
![]() |
Page 518 |
022886,001391: 17,3651 30775 CAE OMEGAQD # WITH Q-AXIS JETS, ZERO THE RATE ERROR.
022887,001392: 17,3652 55417 TS OMEGAQ
022888,001393:
022889,001394: 17,3653 31607 CAE NO.RJETS # IF NO R-AXIS JETS, THEN Q-AXIS JETS WERE
022890,001395: 17,3654 00006 EXTEND # ALREADY FOUND.
022891,001396: 17,3655 13660 BZF DOTJMIN
022892,001397:
022893,001398: 17,3656 30776 ROTRAXIS CAE OMEGARD # WITH R-AXIS JETS, ZERO THE RATE ERROR.
022894,001399: 17,3657 55421 TS OMEGAR
022895,001400:
022896,001401: 17,3660 33551 DOTJMIN CAF +TJMINT6 # USE MINIMUM IMPULSE DT FOR TQR.
022897,001402: 17,3661 12461 TCF NORMRETN
022898,001403:
022899,001404: 17,3662 31412 NEGHDAP CAE EDOT(2) # RATE ERROR SQUARED SCALED AT PI(2)/2(8).
022900,001405:
022901,001406: 17,3663 00006 EXTEND
022902,001407: 17,3664 71627 MP .5ACCMNE # .5(1/ACCMIN) AT 2(8)/PI SEC(2)/RAD.
022903,001408: 17,3665 61411 AD E # ATTITUDE ERROR SCALED AT PI RADIANS
022904,001409: 17,3666 61415 AD DB # DEADBANDS (2) SCALED AT PI RADIANS
022905,001410: 17,3667 61625 AD DBMINIMP # (DURING APS BURNS DBMINIMP = 0.)
022906,001411: 17,3670 00006 EXTEND
022907,001412: 17,3671 63673 BZMF +2
022908,001413: 17,3672 12416 TCF XTRANS # NO ROTATION JETS NEEDED.
022909,001414:
022910,001415: 17,3673 43555 +2 CS MAXRATE # 10 DEGREES/SECOND SCALED AT PI/16.
022911,001416: 17,3674 61407 AD EDOT # EDOT-MAXRATE SCALED AT PI/16 RAD/SEC.
022912,001417: 17,3675 00006 EXTEND
022913,001418: 17,3676 63700 BZMF +2
022914,001419: 17,3677 12416 TCF XTRANS
022915,001420:
022916,001421: 17,3700 41407 +2 CS EDOT # RATE ERROR SCALED AT PI/16 RAD/SEC.
022917,001422: 17,3701 00006 EXTEND # (LIMITED TO +/< 11.25 DEG/SEC.)
022918,001423: 17,3702 70066 MP 1/NETACC # SCALED AT 2(+8)/PI SEC(2)/RAD; (ACC):-1)
022919,001424: 17,3703 20001 DDOUBL # SCALED AT 2(34) SECONDS.
022920,001425: 17,3704 55512 TS TERMA
022921,001426:
022922,001427: 17,3705 41445 CS HDAP # -E+.51EDOT(2)/NETACC+DB
022923,001428: 17,3706 61411 AD E
022924,001429:
022925,001430: 17,3707 61411 AD E # TWICE ERROR NEGATES E OF HDAP(ABOVE)
022926,001431: 17,3710 61626 AD MINIMPDB
022927,001432: 17,3711 55445 MAINBRCH TS HDAP # -HDAP(ABOVE)+2E+DBMINIMP AT PI RADIANS.
022928,001433:
022929,001434: 17,3712 30066 CAE 1/NETACC # .5(1/NETACC+1/ACCMIN) SCALED AT 2(8)/PI.
022930,001435: 17,3713 27627 ADS .5ACCMNE # .5ACCMNE NOW HOLDS DENOM.
022931,001436:
022932,001437: 17,3714 00006 EXTEND # DENOM(MAXRATE(2)).HDAP AT PI RADIANS.
022933,001438: 17,3715 73556 MP MAXRATE2
022934,001439: 17,3716 61445 AD HDAP
022935,001440: 17,3717 00006 EXTEND
022936,001441: 17,3720 63756 BZMF NOROOT
![]() |
Page 519 |
022938,001443: 17,3721 31445 CAE HDAP # +(HDAP/DENOM)(1)NETACC)(2) AT 2(8) SELS.
022939,001444: 17,3722 00006 EXTEND
022940,001445: 17,3723 11627 DV .5ACCMNE
022941,001446: 17,3724 00006 EXTEND
022942,001447: 17,3725 70066 MP 1/NETACC
022943,001448: 17,3726 00006 EXTEND
022944,001449: 17,3727 70066 MP 1/NETACC
022945,001450: 17,3730 20001 DDOUBL
022946,001451: 17,3731 20001 DDOUBL
022947,001452: 17,3732 55513 TS TERMB
022948,001453:
022949,001454: 17,3733 33550 CAF -1.6CSP # -1.6(CSP)-EDOT/NETACC SCALED AT 16 SECS
022950,001455: 17,3734 61512 AD TERMA
022951,001456: 17,3735 00006 EXTEND
022952,001457: 17,3736 70000 SQUARE # (-1.6(CSP)-EDOT/NETACC)(2) AT 256 SECS
022953,001458: 17,3737 61513 AD TERMB
022954,001459: 17,3740 00006 EXTEND # (-1.6(CSP)-EDOT/NETACC)(2)+TERMB
022955,001460: 17,3741 63632 BZMF MAXTJET
022956,001461:
022957,001462:
022958,001463: 17,3742 33552 CAF -TJMIN16 # -EDOT/NETACC-TJMIN SCALED AT 16.
022959,001464: 17,3743 61512 AD TERMA
022960,001465: 17,3744 00006 EXTEND
022961,001466: 17,3745 63764 BZMF MAYNOJET
022962,001467:
022963,001468: 17,3746 05041 PREROOT TC T6JOBCHK
022964,001469:
022965,001470: 17,3747 41513 CS TERMB
022966,001471: 17,3750 05435 TC SPROOT # SQRT(-TERMB) SCALED AT 2(4) SECONDS.
022967,001472: 17,3751 61512 TJSUM AD TERMA # TERMA+SQRT(-TERMB)
022968,001473:
022969,001474: 17,3752 60000 TJETSCAL DOUBLE # NOW SCALED AT 2(+3) SECONDS.
022970,001475: 17,3753 00006 EXTEND
022971,001476: 17,3754 73560 MP 25/32QR # SCALED TO 16/25 2(+4) SECONDS.
022972,001477: 17,3755 12461 TCF NORMRETN
022973,001478:
022974,001479: 17,3756 33555 NOROOT CAF MAXRATE
022975,001480: 17,3757 63557 AD .6DEG/SC # MAXRATE+DEL SCALED AT PI/16 RAD/SEC.
022976,001481: 17,3760 00006 EXTEND
022977,001482: 17,3761 70066 MP 1/NETACC # (MAXRATE+DEL)/NETACC
022978,001483: 17,3762 20001 DDOUBL # SCALED AT 2(+4) SECONDS
022979,001484: 17,3763 13751 TCF TJSUM
022980,001485:
022981,001486:
022982,001487: 17,3764 33552 MAYNOJET CAF -TJMIN16
022983,001488: 17,3765 61512 AD TERMA # TERMA-TJMIN SCALED AT 2(+4) SECONDS.
022984,001489: 17,3766 00006 EXTEND
022985,001490: 17,3767 70000 SQUARE # SCALED AT 2(+8) SECONDS.
022986,001491: 17,3770 61513 AD TERMB
022987,001492: 17,3771 00006 EXTEND
022988,001493: 17,3772 63746 BZMF PREROOT # (TERMA-TJMIN)(2)+TERMB AT 2(8) SECONDS.
022989,001494: 17,3773 12416 TCF XTRANS # NO ROTATION JETS.
End of include-file Q,R-AXES_REACTION_CONTROL_SYSTEM_AUTOPILOT.agc. Parent file is MAIN.agc