Proof CM_ENTRY_DIGITAL_AUTOPILOT (closes #196)
This commit is contained in:
parent
3a9b000cb4
commit
b47cb532c2
@ -31,11 +31,11 @@
|
|||||||
# Colossus 2A
|
# Colossus 2A
|
||||||
|
|
||||||
# Page 1063
|
# Page 1063
|
||||||
# SUBROUTINE TO READ GIMBAL ANGLES AND FORM DIFFERENCES. GIMBAL ANGLES ARE SAVED IN 2'S COMPLEMENT, BUT THE
|
# SUBROUTINE TO READ GIMBAL ANGLES AND FORM DIFFERENCES. GIMBAL ANGLES ARE SAVED IN 2S COMPLEMENT, BUT THE
|
||||||
# DIFFERENCES ARE IN 1'S COMP. ENTER AND READ ANGLES EACH .1 SEC.
|
# DIFFERENCES ARE IN 1S COMP. ENTER AND READ ANGLES EACH .1 SEC.
|
||||||
#
|
#
|
||||||
# CM/DSTBY = 1 FOR DAP OPERATION
|
# CM/DSTBY = 1 FOR DAP OPERATION
|
||||||
# CM/DSTBY = 0 TO TERMINATE DAP OPERATION
|
# CM/DSTBY = 0 TO TERMINATE DAP OPERATION.
|
||||||
|
|
||||||
BANK 15
|
BANK 15
|
||||||
|
|
||||||
@ -53,11 +53,11 @@ READGYMB CA TEN # KEEP RESTART DT GOING RELATIVE TO
|
|||||||
# PHASCHNG PROTECTION IS IN CM/DAPIC.
|
# PHASCHNG PROTECTION IS IN CM/DAPIC.
|
||||||
|
|
||||||
CA BIT6 # CHECK FOR FINE ALIGN MODE OF CDU.
|
CA BIT6 # CHECK FOR FINE ALIGN MODE OF CDU.
|
||||||
MASK IMODES33 # (PROTECT AOG/PIP ETC AS WELL AS
|
MASK IMODES33 # ( PROTECT AOG/PIP ETC AS WELL AS
|
||||||
EXTEND # GIMBAL DIFFERENCES)
|
EXTEND # GIMBAL DIFFERENCES)
|
||||||
BZF READGYM1 # OK
|
BZF READGYM1 # OK
|
||||||
|
|
||||||
CS BIT1 # NOT IN FINE ALIGN, SO IDLE
|
CS BIT1 # NOT IN FINE ALIGN, SO IDLE.
|
||||||
MASK CM/FLAGS # SET GYMDIFSW = 0
|
MASK CM/FLAGS # SET GYMDIFSW = 0
|
||||||
TS CM/FLAGS
|
TS CM/FLAGS
|
||||||
TC FLUSHJET # QUENCH JETS, SINCE MAY BE A WHILE.
|
TC FLUSHJET # QUENCH JETS, SINCE MAY BE A WHILE.
|
||||||
@ -87,7 +87,7 @@ DOBRATE? CS CM/FLAGS # CM/DSTBY=103D BIT2 GYMDIFSW=104D BIT1
|
|||||||
INDEX A
|
INDEX A
|
||||||
TC +1
|
TC +1
|
||||||
TC DOBRATE # OK, GO ON
|
TC DOBRATE # OK, GO ON
|
||||||
TC CM/GYMIC # DON'T CALC BODYRATE ON FIRST PASS.
|
TC CM/GYMIC # DONT CALC BODYRATE ON FIRST PASS.
|
||||||
NOOP
|
NOOP
|
||||||
TC FLUSHJET # TURN OFF ALL JETS
|
TC FLUSHJET # TURN OFF ALL JETS
|
||||||
|
|
||||||
@ -97,7 +97,7 @@ DOBRATE? CS CM/FLAGS # CM/DSTBY=103D BIT2 GYMDIFSW=104D BIT1
|
|||||||
TC TASKOVER
|
TC TASKOVER
|
||||||
|
|
||||||
DOBRATE CA ONE # DO BODYRATE
|
DOBRATE CA ONE # DO BODYRATE
|
||||||
DOBRATE1 TS JETEM # SKIP BODYRATE
|
DOBRATE1 TS JETEM # SKIP BODYRATE.
|
||||||
|
|
||||||
CA TEN # KEEP CDU READ GOING.
|
CA TEN # KEEP CDU READ GOING.
|
||||||
TC WAITLIST
|
TC WAITLIST
|
||||||
@ -168,7 +168,7 @@ CM/DAPON CA EBAOG
|
|||||||
TS EBANK
|
TS EBANK
|
||||||
|
|
||||||
TC DOWNFLAG # RESET DAPBIT1. T5 RESTART IDENTIFIER.
|
TC DOWNFLAG # RESET DAPBIT1. T5 RESTART IDENTIFIER.
|
||||||
ADRES DAPBIT1 # BIT 15 FLAG 6 CMFLAGS.
|
ADRES DAPBIT1 # BIT 15 FLAG 6 CM FLAGS.
|
||||||
TC DOWNFLAG # RESET DAPBIT2
|
TC DOWNFLAG # RESET DAPBIT2
|
||||||
ADRES DAPBIT2 # BIT 14 FLAG 6
|
ADRES DAPBIT2 # BIT 14 FLAG 6
|
||||||
EXTEND
|
EXTEND
|
||||||
@ -181,7 +181,7 @@ CM/DAPON CA EBAOG
|
|||||||
TC FLUSHJET # JETS DEPARTED ON SM. ZERO JET BITS.
|
TC FLUSHJET # JETS DEPARTED ON SM. ZERO JET BITS.
|
||||||
|
|
||||||
CS 13,14,15
|
CS 13,14,15
|
||||||
MASK DAPDATR1 # SET CONFIG BITS=0 FOR ENTRY
|
MASK DAPDATR1 # SET CONFIG BITS =0 FOR ENTRY
|
||||||
TS DAPDATR1
|
TS DAPDATR1
|
||||||
TC +4
|
TC +4
|
||||||
|
|
||||||
@ -198,8 +198,7 @@ NOTYET CA .5SEC
|
|||||||
# NEXT PASS.
|
# NEXT PASS.
|
||||||
TS P63FLAG # SO WAKEP62 WILL NOT BE INITIATED UNTIL
|
TS P63FLAG # SO WAKEP62 WILL NOT BE INITIATED UNTIL
|
||||||
# HEADSUP IS SET IN P62.
|
# HEADSUP IS SET IN P62.
|
||||||
|
# FLAG TO PREVENT MULTIPLE CALLS TO WAKEP62.
|
||||||
# FLAG TO PREVENT MULTIPLE CALLS TO WAKEP62
|
|
||||||
|
|
||||||
CA 7
|
CA 7
|
||||||
TS JETAG
|
TS JETAG
|
||||||
@ -240,7 +239,7 @@ CM/DAPIC CA EBAOG
|
|||||||
|
|
||||||
INHINT
|
INHINT
|
||||||
CM/DAP2C CS PIPTIME +1
|
CM/DAP2C CS PIPTIME +1
|
||||||
# PRIO OF P62 L PRIO AVG.:PIPTM=PIPTM1.
|
# PRIO OF P62 L PRIO AVG.:PIPTM=PIPTM1
|
||||||
TS JETEM
|
TS JETEM
|
||||||
|
|
||||||
CA POS1/2
|
CA POS1/2
|
||||||
@ -264,11 +263,11 @@ CM/DAP2C CS PIPTIME +1
|
|||||||
MASK CM/FLAGS # DAPARM, .05GSW, LATSW, ENTRYDSP
|
MASK CM/FLAGS # DAPARM, .05GSW, LATSW, ENTRYDSP
|
||||||
AD CM/SWIC2 # SET CM/DSTBY, LATSW
|
AD CM/SWIC2 # SET CM/DSTBY, LATSW
|
||||||
# DISABLE ENTRY DISPLAY, SINCE DES. GIMB.
|
# DISABLE ENTRY DISPLAY, SINCE DES. GIMB.
|
||||||
# CALC. (P62.3) GOES TO ENDEXIT
|
# CALC. (P62.3) GOES TO ENDEXIT.
|
||||||
TS CM/FLAGS
|
TS CM/FLAGS
|
||||||
|
|
||||||
CA 7
|
CA 7
|
||||||
TS BETA/180 # NECESSARY: NO OVFL CORRECTIO
|
TS BETA/180 # NECESSARY: NO OVFL CORRECTION
|
||||||
CA ONE # INITIALIZE THE TM OF BODY RATES VIA
|
CA ONE # INITIALIZE THE TM OF BODY RATES VIA
|
||||||
TS SW/NDX # UPBUFF.
|
TS SW/NDX # UPBUFF.
|
||||||
|
|
||||||
@ -282,20 +281,20 @@ CM/DAP2C CS PIPTIME +1
|
|||||||
CADR P62.2
|
CADR P62.2
|
||||||
|
|
||||||
CM/SWIC1 OCT 16017
|
CM/SWIC1 OCT 16017
|
||||||
CM/SWIC2 = TEN # 00012: CM/DSTBY, LATSW
|
CM/SWIC2 = TEN # 00012 : CM/DSTBY, LATSW
|
||||||
-CDUT+1 OCT 77766
|
-CDUT+1 OCT 77766
|
||||||
EBANK= T5LOC
|
EBANK= T5LOC
|
||||||
T5IDLER1 2CADR T5IDLOC
|
T5IDLER1 2CADR T5IDLOC
|
||||||
|
|
||||||
# Page 1070
|
# Page 1070
|
||||||
# THIS SECTION CALCULATES THE ANGULAR BODY RATES EACH .1 SEC. THE ANGULAR RATES ARE THOSE ALONG THE BODY AXES
|
# THIS SECTION CALCULATES THE ANGULAR BODY RATES EACH .1 SEC. THE ANGULAR RATES ARE THOSE ALONG THE BODY AXES
|
||||||
# XB, YB, ZB, AND ARE NORMALLY DESIGNATED P, Q, R. REQUIREMENT: TEMPORARILY ERASE. JETEM, JETEM +1
|
# XB, YB, ZB, AND ARE NORMALLY DESIGNATED P, Q, R. REQUIREMENT: TEMPORARY ERASE. JETEM, JETEM +1
|
||||||
#
|
#
|
||||||
# SINCE RESTARTS ZERO THE JET OUTPUT CHANNELS, NO ATTEMPT IS MADE TO RESTART THE ENTRY DAPS. THAT IS,
|
# SINCE RESTARTS ZERO THE JET OUTPUT CHANNELS, NO ATTEMPT IS MADE TO RESTART THE ENTRY DAPS. THAT IS,
|
||||||
# THE 0.1 SEC DAPS WILL MISS A CYCLE, AND WILL PICK UP AT THE NEXT 0.1 SEC UPDATE. MOST OF THE TIME THE 2 SEC
|
# THE 0.1 SEC DAPS WILL MISS A CYCLE, AND WILL PICK UP AT THE NEXT 0.1 SEC UPDATE. MOST OF THE TIME THE 2 SEC
|
||||||
# ROLL SYSTEM WILL MISS ONLY 0.1 SEC OF CONTROL. HOWEVER, IF THE RESTART OCCURS AFTER THE SECTION TIMETST HAS
|
# ROLL SYSTEM WILL MISS ONLY 0.1 SEC OF CONTROL. HOWEVER, IF THE RESTART OCCURS AFTER THE SECTION TIMETST HAS
|
||||||
# STARTED, THEN THE ROLL SYSTEM WILL MISS ONE CYCLE.
|
# STARTED, THEN THE ROLL SYSTEM WILL MISS ONE CYCLE.
|
||||||
# THIS IS NECESSARY UNDER THE GROUND-RULE THAT NO JET COMMANDS SHALL BE LESS THAN 14 MS.
|
# THIS IS NECESSARY UNDER THE GROUNDRULE THAT NO JET COMMANDS SHALL BE LESS THAN 14 MS.
|
||||||
|
|
||||||
EBANK= AOG
|
EBANK= AOG
|
||||||
BANK 15
|
BANK 15
|
||||||
@ -304,7 +303,7 @@ T5IDLER1 2CADR T5IDLOC
|
|||||||
|
|
||||||
COUNT 15/DAPEN
|
COUNT 15/DAPEN
|
||||||
|
|
||||||
BODYRATE CA AMG # THESE ARE 2'S COMPL NOS, BUT USE ANYWAY.
|
BODYRATE CA AMG # THESE ARE 2S COMPL NOS, BUT USE ANYWAY.
|
||||||
TC SPCOS
|
TC SPCOS
|
||||||
TS COSM
|
TS COSM
|
||||||
|
|
||||||
@ -544,9 +543,9 @@ BIASEDZ TS JETEM2 # SAVE RATE/180. ERROR/180 IS IN L.
|
|||||||
TCF +2
|
TCF +2
|
||||||
CA CM/BIAS
|
CA CM/BIAS
|
||||||
AD L # BIAS THE ERROR.
|
AD L # BIAS THE ERROR.
|
||||||
LXCH Q # SAVE CALLER'S RETURN ADDRES.
|
LXCH Q # SAVE CALLERS RETURN ADDRESS.
|
||||||
TC 3DDZ # GO GENERATE THE ERROR BIT.
|
TC 3DDZ # GO GENERATE THE ERROR BIT.
|
||||||
DXCH L # BIT TO L, RESTORE CALLER'S Q.
|
DXCH L # BIT TO L, RESTORE CALLERS Q.
|
||||||
4D/SDZ CCS JETEM2 # CAME HERE IN EXT ATM. C(L) = ERROR BIT
|
4D/SDZ CCS JETEM2 # CAME HERE IN EXT ATM. C(L) = ERROR BIT
|
||||||
AD 4D/SLIM # IF RATE GEQ 4D/S, SET L=0 AND TAKE
|
AD 4D/SLIM # IF RATE GEQ 4D/S, SET L=0 AND TAKE
|
||||||
TCF +2 # JET BITS ACCORDING TO SGN OF RATE.
|
TCF +2 # JET BITS ACCORDING TO SGN OF RATE.
|
||||||
@ -641,7 +640,7 @@ EXDAP1 TS RAXERR # FOR YAW FDAI
|
|||||||
CA ONE # USE BETADOT TO COORD IN MODE +0
|
CA ONE # USE BETADOT TO COORD IN MODE +0
|
||||||
INDEX A # OTHERWISE USE RREL.
|
INDEX A # OTHERWISE USE RREL.
|
||||||
CA RREL
|
CA RREL
|
||||||
TC BIASEDZ # GO TEST DZ +0 IF IN DX, +-1 OTHERWISE
|
TC BIASEDZ # GO TEST DZ. +0 IF IN DZ, +-1 OTHERWISE
|
||||||
# IF GEQ 4D/S, SET ERROR BIT IN L=0
|
# IF GEQ 4D/S, SET ERROR BIT IN L=0
|
||||||
EXTEND
|
EXTEND
|
||||||
ROR LCHAN # L HAS BETA BIT
|
ROR LCHAN # L HAS BETA BIT
|
||||||
@ -687,11 +686,11 @@ EXDAP2 INCR CMDAPMOD # SET CMDAPMOD TO +1
|
|||||||
INDEX A
|
INDEX A
|
||||||
CAF P/RJCODE # GET ROLL CODE
|
CAF P/RJCODE # GET ROLL CODE
|
||||||
EXTEND # ROLL CONTROL WITH YAW JETS.
|
EXTEND # ROLL CONTROL WITH YAW JETS.
|
||||||
WRITE ROLLJETS # WE'LL SKIP REGULAR ROLL SYST
|
WRITE ROLLJETS # WE,LL SKIP REGULAR ROLL SYST
|
||||||
|
|
||||||
CA ROLLHOLD # ROLL/180 AT CM/DAPON TIME.
|
CA ROLLHOLD # ROLL/180 AT CM/DAPON TIME.
|
||||||
EXTEND
|
EXTEND
|
||||||
MSU ROLL/180 # 1'S COMPL, BUT SO WHAT'S A BIT?
|
MSU ROLL/180 # 1,S COMPL, BUT SO WHATS A BIT.?
|
||||||
TS L # FORCE A LIMIT CYCLE IN YAW RATE.
|
TS L # FORCE A LIMIT CYCLE IN YAW RATE.
|
||||||
CCS SALFA
|
CCS SALFA
|
||||||
CA L # TO REMOVE ITS BIASING EFFECT ON M DOT.
|
CA L # TO REMOVE ITS BIASING EFFECT ON M DOT.
|
||||||
@ -717,7 +716,7 @@ COSTRIM DEC .93969 # COS(-20) (FOR NOMINAL L/D = .3)
|
|||||||
# FROM TRIM, SO USE ON-BOARD ESTIMATES.
|
# FROM TRIM, SO USE ON-BOARD ESTIMATES.
|
||||||
|
|
||||||
# Page 1080
|
# Page 1080
|
||||||
# JET CODE TABLES FOLLOW
|
# JET CODE TABLES FOLLOW _
|
||||||
|
|
||||||
OCTAL 00120 # POS Y
|
OCTAL 00120 # POS Y
|
||||||
YJETCODE OCTAL 00000 # RCS JET BITS
|
YJETCODE OCTAL 00000 # RCS JET BITS
|
||||||
@ -787,7 +786,7 @@ GETLCX CA POS1/2 # FORM RCOM/360
|
|||||||
AD NEG1/2
|
AD NEG1/2
|
||||||
AD NEG1/2 # IGNORE OVFL
|
AD NEG1/2 # IGNORE OVFL
|
||||||
XCH LCX/360 # -R/360
|
XCH LCX/360 # -R/360
|
||||||
ADS LCX/360 # LCX/360 = RCOM/360 - R/360 RANGE (-1,1)
|
ADS LCX/360 # LCX/360 = RCOM/360 -R/360 RANGE (-1,1)
|
||||||
|
|
||||||
# DOES SGN(-VT) (VT/180) (VT/180) (180/(4 A1 TT COSALFA)) + X/360 + SGN(X) / 2 OVFL ?
|
# DOES SGN(-VT) (VT/180) (VT/180) (180/(4 A1 TT COSALFA)) + X/360 + SGN(X) / 2 OVFL ?
|
||||||
|
|
||||||
@ -840,7 +839,7 @@ COMPAT CA LCX/360 # CORRECT FOR ASSUMED COORD TURN.
|
|||||||
MP 180/8ATT
|
MP 180/8ATT
|
||||||
TS VSQ/4API
|
TS VSQ/4API
|
||||||
|
|
||||||
# IS SGN(VT) ( (180/4A1 TT) VT/180 VT/180 - .5 BUFLIM/360 ) -X/360 -.5 BUFLIM/360 POS?
|
# IS SGN(VT) ( (180/4A1 TT) VT/180 VT/180 - .5 BUFLIM/360 ) -X/360 - .5 BUFLIM/360 POS?
|
||||||
|
|
||||||
WHICHALF DOUBLE # FOR SECOND BURN, A1
|
WHICHALF DOUBLE # FOR SECOND BURN, A1
|
||||||
COM
|
COM
|
||||||
@ -861,7 +860,7 @@ WHICHALF DOUBLE # FOR SECOND BURN, A1
|
|||||||
AD BUFLIM
|
AD BUFLIM
|
||||||
AD BUFLIM
|
AD BUFLIM
|
||||||
EXTEND
|
EXTEND
|
||||||
BZMF DZ1 # POINT (X,V) IN RHP
|
BZMF DZ1 # POINT (X,V) IN RHP.
|
||||||
|
|
||||||
# IS POINT WITHIN VELOCITY DZ?
|
# IS POINT WITHIN VELOCITY DZ?
|
||||||
|
|
||||||
@ -1188,7 +1187,7 @@ CM/FDAIR CA HALF
|
|||||||
|
|
||||||
CM/DUMPR CS SW/NDX # COMBINED ALTERNATION SWITCH AND FILE
|
CM/DUMPR CS SW/NDX # COMBINED ALTERNATION SWITCH AND FILE
|
||||||
TS SW/NDX
|
TS SW/NDX
|
||||||
EXTEND # INDEX
|
EXTEND # INDEX.
|
||||||
BZMF CMTMFILE # FILE STARTS WITH SW/NDX +1 AND GOES TO
|
BZMF CMTMFILE # FILE STARTS WITH SW/NDX +1 AND GOES TO
|
||||||
# ENDBUF.
|
# ENDBUF.
|
||||||
# INDEX IS POS FOR NEEDLES.
|
# INDEX IS POS FOR NEEDLES.
|
||||||
@ -1203,7 +1202,6 @@ CM/DUMPR CS SW/NDX # COMBINED ALTERNATION SWITCH AND FILE
|
|||||||
CMTMFILE AD THREE
|
CMTMFILE AD THREE
|
||||||
EXTEND
|
EXTEND
|
||||||
BZMF SAVENDX
|
BZMF SAVENDX
|
||||||
|
|
||||||
# Page 1091
|
# Page 1091
|
||||||
CA TIME1 # INITIALIZE THE TM LIST IN UPBUFF.
|
CA TIME1 # INITIALIZE THE TM LIST IN UPBUFF.
|
||||||
TS CMTMTIME
|
TS CMTMTIME
|
||||||
@ -1252,7 +1250,7 @@ T5IDLER2 2CADR T5IDLOC
|
|||||||
# CONSTANTS USED IN THE ROLL CONTROL SYSTEM:
|
# CONSTANTS USED IN THE ROLL CONTROL SYSTEM:
|
||||||
# CONSTANTS ARE THE FOLLOWING: A = 9.1 DEG/SECSQ, VM = 20 DEG/SEC, T = 2 SEC, TCDU = .1 SEC,
|
# CONSTANTS ARE THE FOLLOWING: A = 9.1 DEG/SECSQ, VM = 20 DEG/SEC, T = 2 SEC, TCDU = .1 SEC,
|
||||||
# XMIN = 4 DEG, VMIN = 2 DEG/SEC, K = .25, A1 = 4.55 DEG/SECSQ, VI = 1 DEG/SEC, INTERCEPT WITH DZ SIDE
|
# XMIN = 4 DEG, VMIN = 2 DEG/SEC, K = .25, A1 = 4.55 DEG/SECSQ, VI = 1 DEG/SEC, INTERCEPT WITH DZ SIDE
|
||||||
# XBUF = 4DEG
|
# XBUF = 4 DEG
|
||||||
|
|
||||||
-T-3 DEC -203 # CS
|
-T-3 DEC -203 # CS
|
||||||
VSQMIN DEC .61050061 E-3 # VSQ MIN/4 A PI = 4/(4 (9.1) 180)
|
VSQMIN DEC .61050061 E-3 # VSQ MIN/4 A PI = 4/(4 (9.1) 180)
|
||||||
@ -1266,7 +1264,7 @@ XMIN/360 DEC 182 # XMIN/360 = 4/ 360 EXP 14 = 182 INTEGER
|
|||||||
1/16A1 = 180/8ATT
|
1/16A1 = 180/8ATT
|
||||||
# 1/16A1 = 180/(16 A1 TT)
|
# 1/16A1 = 180/(16 A1 TT)
|
||||||
# = 180/(16 4.55 4)
|
# = 180/(16 4.55 4)
|
||||||
XS/360 DEC 91 # = (XMIN +VI (T-1/K))/360 = 2/360 EXP 14
|
XS/360 DEC 91 # =(XMIN +VI (T-1/K))/360 = 2/360 EXP 14
|
||||||
BUFLIM = XS/360 # 4/(2 360)
|
BUFLIM = XS/360 # 4/(2 360)
|
||||||
|
|
||||||
KTRCS = HALF # KT = (.25) 2 = .5
|
KTRCS = HALF # KT = (.25) 2 = .5
|
||||||
|
Loading…
Reference in New Issue
Block a user