Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |     |   Wurzel  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

einige Melodien

Quelle  TVCROLLDAP.agc   Sprache: Apollo

 

# Copyright: Public domain.
# Filename: TVCROLLDAP.agc
# Purpose: Part of the source code for Colossus 2A, AKA Comanche 055.
# It is part of the source code for the Command Module's (CM)
# Apollo Guidance Computer (AGC), for Apollo 11.
# Assembler: yaYUL
# Contact: Ron Burkey <info@sandroid.org>.
# Website: www.ibiblio.org/apollo.
# Pages: 984-998
# Mod history: 2009-05-13 RSB Adapted from the Colossus249/ file of the
# same name, using Comanche055 page images.
#
# This source code has been transcribed or otherwise adapted from digitized
# images of a hardcopy from the MIT Museum.  The digitization was performed
# by Paul Fjeld, and arranged for by Deborah Douglas of the Museum.  Many
# thanks to both.  The images (with suitable reduction in storage size and
# consequent reduction in image quality as well) are available online at
# www.ibiblio.org/apollo.  If for some reason you find that the images are
# illegible, contact me at info@sandroid.org about getting access to the
# (much) higher-quality images which Paul actually created.
#
# Notations on the hardcopy document read, in part:
#
# Assemble revision 055 of AGC program Comanche by NASA
# 2021113-051.  10:28 APR. 1, 1969
#
# This AGC program shall also be referred to as
# Colossus 2A

# Page 984
# PROGRAM NAME...TVC ROLL AUTOPILOT
# LOG SECTION...TVCROLLDAP SUBROUTINE...DAPCSM
# MOD BY SCHLUNDT 21 OCTOBER 1968


# FUNCTIONAL DESCRIPTION....

#      *AN ADAPTATION OF THE LEM P-AXIS CONTROLLER
#      *MAINTAIN OGA WITHIN 5 DEG DEADBND OF OGAD, WHERE OGAD = OGA AS SEEN
# BY IGNITION (P40)
#      *MAINTAIN OGA RATE LESS THAN 0.1 DEG/SEC LIMIT CYCLE RATE
#      *SWITCHING LOGIC IN PHASE PLANE.... SEE GSOP CHAPTER 3
#      *USES T6 CLOCK TO TIME JET FIRINGS
#      *MAXIMUM JET FIRING TIME = 2.56 SECONDS, LIMITED TO 2.5 IF GREATER
#      *MINIMUM JET FIRING TIME = 15 MS
#      *JET PAIRS FIRE ALTERNATELY
#      *AT LEAST 1/2 SECOND DELAY BEFORE A NEW JET PAIR IS FIRED
#      *JET FIRINGS MAY NOT BE EXTENDED, ONLY SHORTENED, WHEN RE-EVALUATION
# OF A JET FIRING TIME IS MADE ON A LATER PASS

# CALLING SEQUENCE....

#      *ROLLDAP CALL VIA WAITLIST, IN PARTICULAR BY TVCEXEC (EVERY 1/2 SEC)
# WITH A 3CS DELAY TO ALLOW FREE TIME FOR OTHER RUPTS (DWNRPT, ETC.)

# NORMAL EXIT MODES.... ENDOFJOB

# ALARM OR ABORT EXIT MODES.... NONE

# SUBROUTINES CALLED.....NONE

# OTHER INTERFACES....

#      *TVCEXEC SETS UP ROLLDAP TASK EVERY 1/2 SECOND AND UPDATES 1/CONACC
# EVERY 10 SECONDS (VIA MASSPROP AND S40.15)
#      *RESTARTS SUSPEND ROLL DAP COMPUTATIONS UNTIL THE NEXT 1/2 SEC
# SAMPLE PERIOD.  (THE PART OF TVCEXECUTIVE THAT CALLS ROLL DAP IS
# NOT RESTARTED.)  THE OGAD FROM IGNITION IS MAINTAINED.

# ERASABLE INITIALIZATION REQUIRED....

#      *1/CONACC (S40.15)
#      *OGAD (CDUX AT IGNITION)
#      *OGANOW (CDUX AT TVCINIT4 AND TVCEXECUTIVE)
#      *OGAPAST (OGANOW AT TVCEXECUTIVE)
#      *ROLLFIRE = TEMREG = ROLLWORD = 0 (MRCLEAN LOOP IN TVCDAPON)
#
# OUTPUT....

#      *ROLL JET PAIR FIRINGS

# Page 985
# DEBRIS.... MISCELLANEOUS, SHAREABLE WITH RCS/ENTRY, IN EBANK6 ONLY

# Page 986
# SOME NOTES ON THE ROLL AUTOPILOT, AND IN PARTICULAR, ON ITS SWITCHING
# LOGIC.  SEE SECTION THREE OF THE GSOP (SUNDISK/COLOSSUS) FOR DETAILS.

# SWITCHING LOGIC IN THE PHASE PLANE....

#                              OGARATE
#                                 *
#                                 *
#  * * * * * * * * * * *          *
#                                 *     (REGION 1, SEE TEXT BELOW)
#                            *    *
#                                 *
# * * * * * * *     (COAST)       *     ...PARABOLA (SWITCHING = CONTROL)
#               *                 *    .
#                 *               *   *
#                   *             *                (FIRE NEG ROLL JETS)
#                     *           *      *
#     (-DB,+LMCRATE)....*         *
#                       *         *        *
#                       *         *          OGAERROR
# ************************************************************************
#                                 *         *                (-AK, OGAERR)
#                        *        *         *      (REGION 6-PRIME)
#                                 *         *      (SEE TEXT BELOW)
#                          *      *           *
#                                 *             *     ...STRAIGHT LINE
#    (FIRE POS ROLL JETS)     *   *               *  .
#                                 *   (COAST)       *
#                                 *                   * * * * * * * * * *
#                                 *                         -MINLIM
#                                 *    *
#                                 *
#                                 *          * * * * * * * * * * * * * * *
#                                 *                        -MAXLIM
#                                 *
#                                 *

# SWITCHING PARABOLAS ARE CONTROL PARABOLAS, THUS REQUIRING KNOWLEDGE OF
# CONTROL ACCELERATION CONACC, OR ITS RECIPROCAL, 1/CONACC, THE TVC
# ROLL DAP GAIN (SEE TVCEXECUTIVE VARIABLE GAIN PACKAGE).  JET
# FIRING TIME IS SIMPLY THAT REQUIRED TO ACHIEVE THE DESIRED OGARATE,
# SUBJECT TO THE LIMITATIONS DISCUSSED UNDER FUNCTIONAL DESCRIPTION,
# ABOVE.

# THE THREE CONTROL REGIONS (+, -, AND ZERO TORQUE) ARE COMPRIZED OF
# TWELVE SUBSET REGIONS ( 1...6, AND THE CORRESPONDING 1-PRIME...
# 6-PRIME ) SEE SECTION 3 OF THE GSOP (SUNDISK OR COLOSSUS)
# Page 987
#
# GIVEN THE OPERATING POINT NOT IN THE COAST REGION, THE DESIRED OGARATE
# IS AT THE POINT OF PENETRATION OF THE COAST REGION BY THE CONTROL
# PARABOLA WHICH PASSES THROUGH THE OPERATING POINT.  FOR REGION 3
# DESIRED OGARATE IS SIMPLY +-MAXLIM.  FOR REGIONS 1 OR 6 THE SOLUTION
# TO A QUADRATIC IS REQUIRED (THE PENETRATION IS ALONG THE STRAIGHT
# LINE OR MINLIM BOUNDRY SWITCH LINES).  AN APPROXIMATION IS MADE
# INSTEAD.  TAKE AN OPERATING POINT IN REGION 6' .  PASS A TANGENT TO
# THE CONTROL PARABOLA THROUGH THE OPERATING POINT, AND FIND ITS
# INTERSECTION WITH THE STRAIGHT LINE SECTION OF THE SWITCH CURVE...
# THE INTERSECTION DEFINES THE DESIRED OGARATE.  IF THE OPERATING POINT IS
# CLOSE TO THE SWITCH LINE, THE APPROXIMATION IS QUITE GOOD (INDEED
# THE APPROXIMATE AND QUADRATIC SOLUTIONS CONVERGE IN THE LIMIT AS
# THE SWITCH LINE IS APPROACHED).  IF THE OPERATING POINT IS NOT CLOSE
# TO THE SWITCH LINE, THE APPROXIMATE SOLUTION GIVES VALID TREND
# INFORMATION (DIRECTION OF DESIRED OGARATE) AT LEAST.  THE
# RE-EVALUATION OF DESIRED OGARATE IN SUBSEQUENT ROLL DAP PASSES (1/2
# SECOND INTERVALS) WILL BENEFIT FROM THE CONVERGENT NATURE OF THE
# APPROXIMATION.

# FOR LARGE OGAERROR THE TANGENT INTERSECTS +-MINLIM SWITCH BOUNDARY BEFORE
# INTERSECTING THE STRAIGHT LINE SWITCH.  HOWEVER THE MINLIM IS
# IGNORED IN COMPUTING THE FIRING TIME, SO THAT THE EXTENSION (INTO
# THE COAST REGION) OF THE STRAIGHT LINE SWITCH IS WHAT IS FIRED TO.
# IF THE ROLL DAP FINDS ITSELF IN THE COAST REGION BEFORE REACHING
# THE DESIRED INTERSECTION (IE. IN THE REGION BETWEEN THE MINLIM
# AND THE STRAIGHT LINE SWITCH) IT WILL EXHIBIT NORMAL COAST-REGION
# BEHAVIOR AND TURN OFF THE JETS.  THE PURPOSE OF THIS FIRING POLICY
# IS TO MAINTAIN STATIC ROLL STABILITY IN THE EVENT OF A JET
# FAILED-ON.

# WHEN THE OPERATING POINT IS IN REGION 1 THE SAME APPROXIMATION IS
# MADE, BUT AT AN ARTIFICIALLY-CREATED OR DUMMY OPERATING POINT,
# DEFINED BY.. OGAERROR = INTERSECTION OF CONTROL PARABOLA AND
# OGAERROR AXIS, OGARATE = +-LMCRATE WHERE SIGN IS OPPOSITE THAT OF
# REAL OPERATING POINT RATE.  WHEN THE OPERATING POINT HAS PASSED
# FROM REGION 1 TO REGION 6', THE DUMMY POINT IS NO LONGER REQUIRED,
# AND THE SOLUTION REVERTS TO THAT OF A REGULAR REGION 6' POINT.


# EQUATION FOR SWITCHING PARABOLA (SEE FIGURE ABOVE)....
#   2
# SOGAERROR = (DB - (SOGARATE) (1/CONACC)/2) SGN(SOGARATE)


# EQUATION FOR SWITCHING STRAIGHT LINE SEGMENT....

# SOGARATE = -(-SLOPE)(SOGAERROR) - SGN(SOGARATE) INTERCEP

# WHERE  INTERCEP = DB(-SLOPE) - LMCRATE
# Page 988
#
# EQUATION FOR INTERSECTION, CONTROL PARABOLA AND STRAIGHT SWITCH LINE....

# DOGADOT = NUM/DEN, WHERE
#    2
#     NUM = (-SLOPE)(OGARATE) (1/CONACC)
#     +SGN(DELOGA)(-SLOPE)(OGAERROR - SGN(DELOGA)(DB))
#     +LMCRATE

#     DEN = (-SLOPE)(LMCRATE)(1/CONACC) - SGN(DELOGA)

#       2
#     DELOGA = OGAERROR - (DB - (OGADOT) (1/CONACC)/2) SGN(OGARATE)


# FOR REGIONS 6 AND 6-PRIME USE ACTUAL OPERATING POINT (OGA, OGARATE)
# FOR OGAERROR AND OGARATE IN THE INTERSECTION EQUATIONS ABOVE.
# FOR REGIONS 1 AND 1-PRIME USE DUMMY OPERATING POINT FOR OGAERROR
# AND OGARATE, WHERE THE DUMMY POINT IS GIVEN BY....
# OGAERROR= DELOGA + DB SGN(OGARATE)
# OGARATE= -LMCRATE SGN(OGARATE)
#
# NOTE, OGAERROR = OGA - OGAD USES DUMMY REGISTER OGA IN ROLL DAP CODING
# ALSO, AT POINT WHERE DOGARATE IS COMPUTED, REGISTER DELOGA IS USED
# AS A DUMMY REGISTER FOR THE OGAERROR IN THE NUM EQUATION ABOVE
# Page 989

# ROLLDAP CODING....

  SETLOC DAPROLL
  BANK
  EBANK= OGANOW
  COUNT* $$/ROLL
ROLLDAP  CAE OGANOW  # OGA RATE ESTIMATOR...SIMPLE FIRST-ORDER
  EXTEND   # DIFFERENCE (SAMPLE TIME = 1/2 SEC)
  MSU OGAPAST
  EXTEND
  MP BIT5
  LXCH A
  TS OGARATE  # SC.AT B-4 REV/SEC

# COMPUTATIONS WHICH FOLLOW USE OGA FOR OGAERR (SAME REGISTER)
# EXAMINE DURATION OF LAST JET FIRING IF JETS ARE NOW ON.

DURATION CA ROLLFIRE # SAME SGN AS PRESENT TORQ,MAGN=POSMAX
  EXTEND
  BZF +2  # ROLL JETS ARE NOW OFF.
  TCF ROLLOGIC # ENTER LOGIC,JETS NOW ON.

  CAE TEMREG  # EXAMINE LAST FIRING INTERVAL
  EXTEND   # IF POSITIVE, DONT FIRE
  BZF ROLLOGIC # ENTER LOGIC, JETS NOW OFF.

  CAF ZERO  # JETS HAVE NOT BEEN OFF FOR 1/2 SEC. WAIT
  TS TEMREG  # RESET TEMREG
WAIT1/2  TCF TASKOVER # EXIT ROLL DAP

# COMPUTE DB-(1/2 CONACC) (OGARATE)SQ  (1/2 IN THE SCALING)

ROLLOGIC CS OGARATE  # SCALED AT 2(-4) REV/SEC
  EXTEND
  MP 1/CONACC # SCALED AT 2(+9) SEC SQ /REV
  EXTEND
  MP OGARATE
  AD DB  # SCALED AT 2(+0) REV
  TS TEMREG  # QUANTITY SCALED AT 2(+0) REV.

# GET SIGN OF OGARATE

  CA OGARATE
  EXTEND
  BZMF +3  # LET SGN(0) BE NEGATIVE
  CA BIT1
  TCF +2
  CS BIT1
  TS SGNRT  # + OR -  2(-14)

# Page 990
# CALCULATE DISTANCE FROM SWITCH PARABOLA (DELOGA)

  EXTEND
  MP TEMREG  # SGN(OGARATE) TEMREG NOW IN L
  CS L
  AD OGA  # SCALED AT 2(+0) REV
DELOGAC  TS DELOGA  # SC.AT B+0 REV, PLUS TO RIGHT OF C-PARAB

# EXAMINE SGN(DELOGA) AND CREATE CA OR CS INSTR. DEPENDING UPON SIGN.

  EXTEND
  BZMF +3
  CAF PRIO30  # =CA (30000)
  TCF +2
  CAF BIT15  # =CS (40000)
  TS I

  INDEX I  # TSET ON I SGN(OGARATE)
  0 SGNRT  # CA OR CS
  COM
  EXTEND
REG1TST  BZMF ROLLON  # IF REGION 1 (DELOGA OGARATE SAME SIGN)

# NO JET FIRE YET.  TEST FOR MAX OGARATE

  INDEX I
  0 OGARATE  # CA OR CS...BOTH MUST BE NEG. HERE
  TS IOGARATE # I.E. I OGARATE
  AD MAXLIM  # SCALED AT 2(-4) REV/SEC
  EXTEND
REG3TST  BZMF RATELIM  # IF REGION 3 (RATES TOO HIGH, FIRE JETS)

# COMPUTATION OF I((-SLOPE)OGA + OGARATE) - INTERCEPT..NOTE THAT STR. LINE
# SWITCH SLOPE IS (SLOPE) DEG/SEC/DEG, A NEG QUANTITY

  CA OGARATE
  EXTEND
  MP BIT14
  TS TEMREG
  CA OGA
  EXTEND
  MP -SLOPE
  DDOUBL
  DDOUBL
  DDOUBL   # (OGA ERROR MUST BE LESS THAN +-225 DEG)
  AD TEMREG

  INDEX I
  0 A  # I((-SLOPE)OGA+OGARATE) AT 2(-3)REV/SEC
  COM
# Page 991
  AD INTERCEP # SCALED AT 2(-3) REV.
  COM
  EXTEND
REG2TST  BZMF NOROLL  # IP REGION 2 (COAST SIDE OF STRT LINE)

# CHECK TO SEE IF OGARATE IS ABOVE MINLIM BOUNDARY

  CA IOGARATE # ALWAYS NEGATIVE
  AD MINLIM  # SCALED AT 2(-4) REV/SEC
  EXTEND
REG4TST  BZMF NOROLL  # IF REGION 4 (COAST SIDE OF MINLIM)

# ALL AREAS CHECKED EXCEPT LAST AREA...NO FIRE IN THIS SMALL SEGMENT

  INDEX I
  0 OGA
  COM
  AD DB
  COM
  EXTEND
REG5TST  BZMF NOROLL  # IF REGION 5 (COAST SIDE OF DB)

# JETS MUST FIRE NOW.OGARATE IS NEG.(OR VICE VERSA).USE DIRECT STR. LINE.
# DELOGA AND DELOGART ARE USED AS DUMMY VARIABLES IN THE SOLUTION OF A
# STRAIGHT LINE APPROXIMATION TO A QUADRATIC SOLUTION OF THE INTERSECTION
# OF THE CONTROL PARABOLA AND THE STRAIGHT-LINE SWITCH LINE.  THE STRAIGHT
# LINE IS THE TANGENT TO THE CONTROL PARABOLA AT THE OPERATING POINT.  (FOR
# OPERATING POINTS IN REGIONS 6 AND 6')

REGION6  CAE OGA  # USE ACTUAL OPERATING POINT FOR TANGENT
  TS DELOGA  # ACTUAL STATE
  CA OGARATE
  TS DELOGART # ACTUAL STATE,I.E. DEL OGARATE
  TCF ONROLL

# JETS ALSO FIRE FROM HERE EXCEPT OGARATE IS POS (VICE VERSA),USE INDIRECT
# STRAIGHT LINE ESTABLISHED BY TANGENT TO A CONTROL PARABOLA AT    ((DELOGA
# + DB SGN(DELOGA) ), -LMCRATE SGN(DELOGA) ) (THIS IS THE DUMMY
# OPERATING POINT FOR OPERATING POINTS IN REGIONS 1 AND 1' )

ROLLON  INDEX I
  0 DB
  ADS DELOGA  # DELOGA WAS DIST. FROM SWITCH PARABOLA

  CS LMCRATE  # LIMIT CYCLE RATE AT 2(-4) REV/SEC
  INDEX I
  0 A
  TS DELOGART # EVALUATE STATE FOR INDIRECT LINE.

# Page 992
# SOLVE STRAIGHT LINES SIMULTANEOUSLY TO OBTAIN DESIRED OGARATE.

ONROLL  EXTEND   # DELOGART IN ACC. ON ARRIVAL
  MP 1/CONACC
  DOUBLE
  EXTEND
  MP -SLOPE
  TS TEMREG  # 2(-SLOPE)RATE /CONACC
  EXTEND
  MP DELOGART
  TS DELOGART # 2(-SLOPE)(RATESQ)/CONACC
  CS BIT11
  INDEX I
  0 A
RATEDEN  ADS TEMREG  # DENOMINATOR COMPLETED

  INDEX I
  0 DELOGA
  COM
  AD DB
  COM
  EXTEND
  MP -SLOPE
  ADS DELOGART
  CA LMCRATE
  EXTEND
  MP BIT11
RATENUM  AD DELOGART # NUMERATOR COMPLETED

  XCH L  # PLACE NUMERATOR IN L FOR OVERFL. CHECK
  CA ZERO
  EXTEND
  DV TEMREG  # OVERFLOW, IF ANYTHING, NOW APPEARS IN A
  EXTEND
  BZF DVOK  # NO OVERFLOW....(0,L)/TEMREG = 0,L

MINLIMAP CCS A
  CAF POSMAX  #  POSITIVE OVERFLOW
  TCF ROLLSET
  CS POSMAX  # NEGATIVE OVERFLOW
  TCF ROLLSET

DVOK  LXCH A  # PUT NUMERATOR BACK INTO A, 0 INTO L
  EXTEND
  DV TEMREG  # RESULT OF DIVISION IS DESIRED OGARATE
  TCF ROLLSET  # ( SCALED AT B-4 REV/SEC )

RATELIM  CS MAXLIM
  INDEX I
# Page 993
  0 A  # IF I = CA, DESIRED RATE IS -MAXLIM

# COMPUTE JET FIRE TIME, BASED ON DESIRED RATE MINUS PRESENT RATE

ROLLSET  TS TEMREG  # STORE DESIRED OGARATE (SCALED B-4)
  EXTEND
  SU OGARATE  # RATE DIFF. SCALED AT 2(-4) REV/SEC
  TS TEMREG  # OVERFLOW PROTECT
  TCF +3  #     "       "
  INDEX A  #           "       "
  CS LIMITS  #     "       "
  EXTEND
  MP T6SCALE  # T6SCALE = 8/10.24
  EXTEND
  MP 1/CONACC # SCALED AT B+9 SECSQ/REV (MAX < .60)
  DDOUBL
  DDOUBL
  TS TEMREG  # OVERFLOW PROTECT
  TCF +3  #     "     "
  INDEX A  #        "     "
  CS LIMITS  #      "      "
  TS TEMREG  # JET FIRE TIME AT 625 MICROSEC/BIT
  EXTEND   # POS MEANS POSITIVE ROLL TORQUE.
  BZF NOROLL

# JET FIRE TIME IS NZ, TEST FOR JETS NOW ON.

  CAE TEMREG  # DESIRED CHANGE IN OGARATE
  EXTEND
  MP ROLLFIRE # (SGN OF TORQUE..ZERO IF JETS NOW OFF)
  CCS A
  TCF MOREROLL # CONTINUE FIRING WITH PRESENT POLARITY
  TCF NEWROLL  # START NEW FIRING NOW, PLUS
  TCF NOROLL  # TERMINATE OLD FIRING, NEW SIGN REQUESTED
  TCF NEWROLL  # START NEW FIRING NOW, MINUS

# CONTINUE PRESENT FIRING

MOREROLL CAF ZERO
  TS I  # USE TEMP. AS MOREROLL SWITCH
  TCF MAXTFIRE

# START NEW FIRING BUT CHECK IF GREATER THAN MIN FIRE TIME.

NEWROLL  CCS TEMREG  # CALL THIS T6FIRE
  AD ONE
  TCF +2
  AD ONE
  COM   # -MAG(T6FIRE)
  AD TMINFIRE # TMINFIRE-MAG(T6FIRE)
# Page 994
  COM
  EXTEND
MINTST  BZMF NOROLL  # IF NOT GREATER THAN TMINFIRE (NEW FIRE)

# PROCEED WITH NEW FIRING BUT NOT LONGER THAN TMAXFIRE.

MAXTFIRE CA TEMREG
  EXTEND
  MP 1/TMXFIR # I.E. 1/TMAXFIRE
  EXTEND
MAXTST  BZF NOMXFIRE # IF LESS THAN TMAXFIRE

  CCS A
  CAF TMAXFIRE # USE MAXIMUM
  TCF +2
  CS TMAXFIRE # USE MAXIMUM
  TS TEMREG

# SET UP SIGN OF REQUIRED TORQUE.

NOMXFIRE CCS TEMREG  # FOR TORQUE SIGN
  CA POSMAX  # POSITIVE TORQUE REQUIRED
  TCF +2
  CA NEGMAX  # NEGATIVE TORQUE REQUIRED
  TS ROLLFIRE # SET ROLLFIRE FOR + OR - TORQUE

  COM   # COMPLEMENT... POS. FOR NEG. TORQUE
  EXTEND
  BZMF +3  # POSITIVE TORQUE REQUIRED
  CS TEMREG
  TS TEMREG

FIRELOOK CA I  # IS IT MOREROLL
  EXTEND
  BZF FIREPLUG # YES
  TCF JETROLL  # MAG(T6FIRE) NOW IN TEMREG

FIREPLUG CAE TIME6  # CHECK FOR EXTENDED FIRING
  EXTEND
  SU TEMREG
  EXTEND
EXTENTST BZMF TASKOVER # IF EXTENSION WANTED, DONT, EXIT ROLL DAP
  TCF JETROLL

NOROLL  CS ZERO  # COAST....(NEG ZERO FOR TIME6)
  TS ROLLFIRE # NOTE, JETS CAN FIRE NEXT PASS
  TS TEMREG

JETROLL  EXTEND
  DCA NOROL1T6
# Page 995
  DXCH T6LOC
  CA TEMREG  # ENTER JET FIRING TIME
  TS TIME6

  CA I  # I=0 IF MOREROLL,KEEP SAME JETS ON
  EXTEND
SAMEJETS BZF TASKOVER # IF JETS ON KEEP SAME JETS.  EXIT ROLL DAP

  CCS ROLLFIRE
  TCF +TORQUE
  TCF T6ENABL
  TCF -TORQUE
  TCF T6ENABL

# PROCEED WITH + TORQUE

+TORQUE  CA ROLLWORD # WHAT WAS THE LAST +TORQUE COMBINATION
  MASK BIT1  # WAS IT NO.9-11
  EXTEND
  BZF NO.9-11  # NOT 9-11, SO USE IT THIS TIME

NO.13-15 CS BIT1
  MASK ROLLWORD
  TS ROLLWORD # CHANGE BIT 1 TO ZERO
  CAF +ROLL2
  EXTEND
  WRITE CHAN6
  TCF T6ENABL

NO.9-11  CAF BIT1  # 1ST + JETS TO FIRE (MRCLEAN OS ROLLWORD)
  ADS ROLLWORD # CHANGE BIT 1 TO ONE
  CAF +ROLL1
  EXTEND
  WRITE CHAN6
  TCF T6ENABL

-TORQUE  CA ROLLWORD # WHAT WAS LAST -TORQUE COMBINATION
  MASK BIT2  # WAS IT NO.12-10
  EXTEND
  BZF NO.12-10 # NOT 12-10, SO USE IT THIS TIME

NO.16-14 CS BIT2
  MASK ROLLWORD
  TS ROLLWORD # CHANGE BIT 2 TO ZERO
  CAF -ROLL2
  EXTEND
  WRITE CHAN6
  TCF T6ENABL

NO.12-10 CAF BIT2  # 1ST -JETS TO FIRE (MRCLEAN OS ROLLWORD)
# Page 996
  ADS ROLLWORD # CHANGE BIT 2 TO ONE
  CAF -ROLL1
  EXTEND
  WRITE CHAN6

T6ENABL  CAF BIT15
  EXTEND
  WOR CHAN13
RDAPEND  TCF TASKOVER # EXIT ROLL DAP

# Page 997
# THIS T6 TASK SHUTS OFF ALL ROLL JETS

NOROLL1  LXCH BANKRUPT # SHUT OFF ALL (ROLL) JETS, (A T6 TASK
  CAF ZERO  # CALLED BY ..JETROLL..)
  TS ROLLFIRE # ZERO INDICATES JETS NOW OFF
  EXTEND
KILLJETS WRITE CHAN6
  TCF NOQRSM

# Page 998
# CONSTANTS FOR ROLL AUTOPILOT....

  EBANK= BZERO
NOROL1T6 2CADR NOROLL1

DB  DEC .01388889 # DEAD BAND (5 DEG), SC.AT B+0 REV

-SLOPE  DEC 0.2  # -SWITCHLINE SLOPE(0.2 PER SEC) SC.AT B+0
     # PER SEC
LMCRATE  DEC .00027778 B+4 # LIMIT CYCLE RATE (0.1 DEG/SEC) SC.AT
     # B-4 REV/SEC
INTERCEP DEC .0025 B+3 # DB(-SLOPE) - LMCRATE, SC.AT B-3 REV/SC

MINLIM  DEC .00277778 B+4 # RATELIM,MIN (1DEG/SEC), SC.AT B-4 REV/SC

1/MINLIM DEC 360 B-18 # RECIPROCAL THEREOF, SHIFTED 14 RIGHT

MAXLIM  DEC .01388889 B+4 # RATELIM,MAX (5DEG/SEC), SC.AT B-4 REV/SC

TMINFIRE DEC 1.5 B+4  # 15 MS (14MIN), SC.AT 16 BITS/CS

TMAXFIRE DEC 250 B+4  # 2.5 SEC, SC.AT 16 BITS/CS

1/TMXFIR = BIT3  # RECIPROCAL THEREOF, SHIFTED 14 RIGHT,
     # ROUNDS TO OCT00004, SO ALLOWS 2.56
     # SEC FIRINGS BEFORE APPLYING LIMIT
T6SCALE  = PRIO31  # (B+3) (16 BITS/CS) (100CS/SEC)

+ROLL1  =  FIVE  # ONBITS FOR JETS 9 AND 11
+ROLL2  = OCT120  # ONBITS FOR JETS 13 AND 15
-ROLL1  = TEN  # ONBITS FOR JETS 12 NAD 10
-ROLL2  OCT 240  # ONBITS FOR JETS 16 AND 14

Messung V0.5 in Prozent
C=60 H=100 G=82

¤ Dauer der Verarbeitung: 0.8 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Statistik
#Sources=1128594
#Domains=1976912