-
Notifications
You must be signed in to change notification settings - Fork 343
/
IMU_CALIBRATION_AND_ALIGNMENT.agc
1348 lines (1228 loc) · 22.8 KB
/
IMU_CALIBRATION_AND_ALIGNMENT.agc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
### FILE="Main.annotation"
## Copyright: Public domain.
## Filename: IMU_CALIBRATION_AND_ALIGNMENT.agc
## Purpose: A section of Manche72 revision 3.
## It is part of the reconstructed source code for the final, flown
## release of the software for the Command Module's (CM) Apollo
## Guidance Computer (AGC) for Apollo 13. No original listings
## of this program are available; instead, this file was recreated
## from a reconstructed copy of Comanche 072. It has been adapted
## such that the resulting bugger words exactly match those
## specified for Manche72 revision 3 in NASA drawing 2021153G,
## which gives relatively high confidence that the reconstruction
## is correct.
## Assembler: yaYUL
## Contact: Ron Burkey <info@sandroid.org>.
## Website: www.ibiblio.org/apollo/index.html
## Mod history: 2024-05-19 MAS Created from Comanche 072.
# NAME- IMU PERFORMANCE TESTS 2
#
# DATE- MARCH 20, 1967
#
# BY- SYSTEM TEST GROUP 864-6900 EXT. 1274
#
# MODNO.- ZERO
#
# FUNCTIONAL DESCRIPTION
#
# POSITIONING ROUTINES FOR THE IMU PERFORMANCE TESTS AS WELL AS SOME OF
# THE TESTS THEMSELVES. FOR A DESCRIPTION OF THESE SUBROUTINES AND THE
# OPERATING PROCEDURES (TYPICALLY) SEE STG MEMO 685. THEORETICAL REF. E-1973
BANK 33
SETLOC IMUCAL
BANK
EBANK= POSITON
IMUTEST CA ZERO
TS DRIFTT
TS GEOCOMP1
CAF TESTTIME
TS LENGTHOT
TC COAALIGN # TAKE CARE OF DRIFT FLAG
CAF 1SECX
TS 1SECXT1
CA OC14400
TS 1/PIPADT
GUESS TC INTPRET # CALCULATE -COS LATITUDE AND SIN LATITUDE
CALL
LATAZCHK
COS DCOMP
SL1
STODL WANGI
LATITUDE
SIN SL1
STORE WANGO
EXIT
GEOIMUTT TC BANKCALL # GYROCOMPASS COMES IN HERE
CADR IMUZERO
TC IMUSTLLG
IMUBACK CA ZERO
TS NDXCTR
TS TORQNDX
TS TORQNDX +1
NBPOSPL CA DEC17
TS ZERONDX1
CA XNBADR
TC ZEROING
CA HALF
TS XNB
TC INTPRET
DLOAD SIN
AZIMUTH
STORE YNB +2
STODL ZNB +4
AZIMUTH
COS
STORE YNB +4
DCOMP
STORE ZNB +2
EXIT
TC CHECKMM
MM 03 # SEE IF IN OPTICAL VERIFICATION
TCF +2 # NO
TCF SETNBPOS +1 # YES
TC INTPRET
CALL
CALCGA
EXIT
TC BANKCALL
CADR IMUCOARS
CAF GLOKFBIT # IF GLOKFAIL SET, GIMBAL LOCK
MASK FLAGWRD3
EXTEND
BZF +2
INCR NDXCTR # +1 IF IN GIMBAL LOCK, OTHERWISE 0
TC DOWNFLAG # RESET GIMBAL LOCK FLAG
ADRES GLOKFAIL # BIT 14 FLAG 3
TC IMUSTLLG
CCS NDXCTR # IF ONE GO AND DO A PIPA TEST ONLY
TC PIPACHK # ALIGN AND MEASURE VERTICAL PIPA RATE
TC BANKCALL
CADR IMUFINE
TC IMUSTLLG
EXTEND
DCA PERFDLAY
TC LONGCALL
EBANK= POSITON
2CADR GOESTIMS
CA ESTICADR
TC JOBSLEEP
GOESTIMS CA ESTICADR
TC JOBWAKE
TC TASKOVER
ESTICADR CADR ESTIMS
TORQUE CA ZERO
TS DSPTEM2
CA DRIFTI
TS DSPTEM2 +1
INDEX POSITON
TS SOUTHDR -1
TC SHOW
PIPACHK INDEX NDXCTR # PIPA TEST
TC +1
TC EARTHR*
CA DEC57
TS LENGTHOT
CA ONE
TS RESULTCT
CA ZERO
INDEX PIPINDEX
TS PIPAX
TS DATAPL
TS DATAPL +4
TC CHECKG # PIP PULSE CATCHING ROUTINE
INHINT
CAF TWO
TC TWIDDLE
EBANK= XSM
ADRES PIPATASK
TC ENDOFJOB
PIPATASK EXTEND
DIM LENGTHOT
CA LENGTHOT
EXTEND
BZMF STARTPIP
CAF BIT10
TC TWIDDLE
EBANK= XSM
ADRES PIPATASK
STARTPIP CAF PRIO20
TC FINDVAC
EBANK= XSM
2CADR PIPJOBB
TC TASKOVER
PIPJOBB INDEX NDXCTR
TC +1
TC EARTHR*
CA LENGTHOT
EXTEND
BZMF +2
TC ENDOFJOB
CA FIVE
TS RESULTCT
TC CHECKG
EXTEND
DCS DATAPL
DAS DATAPL +4
TC INTPRET
DLOAD DSU
DATAPL +6
DATAPL +2
BPL CALL
AINGOTN
OVERFFIX
AINGOTN PDDL DDV
DATAPL +4
SL4 DMPR
DEC585 # DEC585 HAS BEEN REDEFINED FOR LEM
RTB
SGNAGREE
STORE DSPTEM2
EXIT
CCS NDXCTR
TC COAALIGN # TAKE PLATFORM OUT OF GIMBAL LOCK
TC SHOW
VERTDRFT CA 3990DEC # ABOUT 1 HOUR VERTICAL DRIFT TEST
TS LENGTHOT
INDEX POSITON
CS SOUTHDR -2
TS DRIFTT
CA XSM +4 # 0 IF POSN 4
EXTEND
BZF PON2
PON4 CS BIT5 # OFFSET PLATFORM
ADS ERCOMP1 +2
CA BIT5
ADS ERCOMP1
TCF PONG
PON2 CS BIT5
ADS ERCOMP1 +2
CA BIT5
ADS ERCOMP1 +4
PONG TC EARTHR*
CA ZERO # ALLOW ONLY SOUTH GYRO EARTH RATE COMPENS
TS ERVECTOR
TS ERVECTOR +1
GUESS1 CAF POSMAX
TS TORQNDX
TS TORQNDX +1
CA CDUX
TS LOSVEC
TC ESTIMS
VALMIS CA DRIFTO
TS DSPTEM2 +1
CA ZERO
TS DSPTEM2
TC SHOW
ENDTEST1 TC DOWNFLAG # IMU NOT IN USE
ADRES IMUSE # BIT 8 FLAG 0
CS ZERO
TC NEWMODEX +3
TC BANKCALL
CADR MKRELEAS
TC ENDEXT
OVERFFIX DAD DAD
DPPOSMAX
ONEDPP
RVQ
COAALIGN EXTEND # COARSE ALIGN SUBROUTINE
QXCH QPLACE
CA ZERO
TS THETAD
TS THETAD +1
TS THETAD +2
TC BANKCALL
CADR IMUCOARS
TC BANKCALL
CADR IMUSTALL
TC SOMERR2
TC QPLACE
IMUSTLLG EXTEND
QXCH QPLACE
TC COAALIGN +10
CHECKG EXTEND # PIP PULSE CATCHING ROUTINE
QXCH QPLACE
TC +6
CHECKG1 RELINT
CA NEWJOB
EXTEND
BZMF +6
TC CHANG1
INHINT
INDEX PIPINDEX
CS PIPAX
TS ZERONDX
INHINT
INDEX PIPINDEX
CA PIPAX
AD ZERONDX
EXTEND
BZF CHECKG1
INDEX PIPINDEX
CA PIPAX
INDEX RESULTCT
TS DATAPL
TC FINETIME
INDEX RESULTCT
TS DATAPL +1
INDEX RESULTCT
LXCH DATAPL +2
RELINT
ENDCHKG TC QPLACE
ZEROING TS L
TCF +2
ZEROING1 TS ZERONDX1
CAF ZERO
INDEX L
TS 0
INCR L
CCS ZERONDX1
TCF ZEROING1
TC Q
SETLOC IMUCAL3
BANK
ERTHRVSE DLOAD PDDL
SCHZEROS # PD24 = (SIN -COS 0)(OMEG/MS)
LATITUDE
COS DCOMP
PDDL SIN
LATITUDE
VDEF VXSC
OMEG/MS
STORE ERVECTOR
RTB
LOADTIME
STOVL TMARK
SCHZEROS
STORE ERCOMP1
RVQ
SETLOC IMUCAL
BANK
EARTHR ITA RTB # CALCULATES AND COMPENSATES EARTH RATE
S2
LOADTIME
STORE TEMPTIME
DSU BPL
TMARK
ERTHR
CALL
OVERFFIX
ERTHR SL VXSC
9D
ERVECTOR
MXV VAD
XSM
ERCOMP1
STODL ERCOMP1
TEMPTIME
STORE TMARK
AXT,1 RTB
ECADR ERCOMP1
PULSEIMU
GOTO
S2
EARTHR* EXTEND
QXCH QPLACES
TC INTPRET
CALL
EARTHR
PROUT EXIT
TC IMUSTLLG
TC QPLACES
SHOW EXTEND
QXCH QPLACE
SHOW1 CA POSITON
TS DSPTEM2 +2
CA VB06N98
TC BANKCALL
CADR GOFLASH
TC ENDTEST1 # V34
TC QPLACE # V33
TCF SHOW1
OC14400 OCT 14400
3990DEC = OMEG/MS
VB06N98 VN 0698
TESTTIME OCT 01602
DEC17 = ND1
OGCPL ECADR OGC
1SECX = 1SEC
DEC57 = VD1
XNBADR GENADR XNB
XSMADR GENADR XSM
OMEG/MS 2DEC .24339048
P11OUT TC BANKCALL
CADR MATRXJOB # RETURN TO P11
COUNT 02/COMST
BLOCK 2
FINETIME INHINT # RETURNS WITH INTERRUPT INHIBITED
EXTEND
READ LOSCALAR
TS L
EXTEND
RXOR LOSCALAR
EXTEND
BZF +4
EXTEND
READ LOSCALAR
TS L
+4 CS POSMAX
AD L
EXTEND
BZF FINETIME +1
EXTEND
READ HISCALAR
TC Q
# PROGRAM NAME-OPTIMUM PRELAUNCH ALIGNMENT CALIBRATION
# DATE- NOVEMBER 2 1966
# BY- GEORGE SCHMIDT IL 7-146 EXT. 126
# MOD NO 3
#
# FUNCTIONAL DESCRIPTION
#
# THIS SECTION CONSISTS OF PRELAUNCH ALIGNMENT AND GYRO DRIFT TESTS
# INTEGRATED TOGETHER TO SAVE WORDS. COMPASS IS COMPLETELY RESTART
# PROOFED EXCEPT FOR THE FIRST 30 SECONDS OR SO. PERFORMANCE TESTS OF
# THE IRIGS IS RESTART PROOFED ENOUGH TO GIVE 75 PERCENT CONFIDENCE THAT
# IF A RESTART OCCURS THE DATA WILL STILL BE GOOD. GOOD PRACTICE TO RECYCL
# WHEN A RESTART OCCURS UNLESS IT HAPPENS NEAR THE END OF A TEST-THEN WAIT
# FOR THE DATA TO FLASH.
#
# A RESTART IN GYROCOMPASS DURING GYRO TORQUING CAUSES PULSES TO BE LOST
# THE PRELAUNCH ALIGNMENT TECHNIQUE IS BASICALLY THE SAME AS IN BLOCK 1
# EXCEPT THAT IT HAS BEEN SIMPLIFIED IN THE SENSE THAT SMALL ANGLE APPROX.
# HAVE BEEN USED. THE DRIFT TESTS USE A UNIQUE IMPLEMENTATION OF THE
# OPTIMUM STATISTICAL FILTER. FOR A DESCRIPTION SEE E-1973. BOTH OF THESE
# ROUTINES USE STANDARD SYSTEM TEST LEADIN PROCEDURES. THE INITIALIZATION
# PROCEDURE FOR THE DRIFT TESTS IS IN THE JDC S. THE INITIALIZATION METHOD
# FOR GYROCOMPASS IS AN ERAS LOAD THEN A MISSION PHASE CALL.
# THE COMPASS ALIGNS TO Z DOWN, X DOWNRANGE, HAS THE CAPABILITY
# CHANGE AZIMUTH WHILE RUNNING, IS COMPENSATED FOR
# COMPONENT ERRORS, IS CAPABLE OF OPTICAL VERIFICATION (CSM ONLY).
#
# COMPASS ERASABLE LOAD REQUIRED
#
# 1- LAUNCHAZ-DP AZIMUTH IN REV FROM NORTH OF XSM DESIRED (NOM=.2)
# 2- LATITUDE-DP-OF LAUNCH PAD
# 3- AZIMUTH-DP-OF ZNB OF VEHICLE
# 4- IMU COMPENSATION PARAMETERS
# 5- AZ AND ELEVATION OF TARGETS 1,2 ****OPTIONAL****
#
# TO PERFORM AS PART OF COMPASS
#
# 1- OPTICAL VERIFICATION- V 65 E
# 2- AZIMUTH CHANGE- V 78 E
#
# SUBROUTINES CALLED
#
# DURING OPTICAL VERIFICATION (CSM ONLY) ESSENTIALLY ALL OF INFLIGHT ALIGN
# IS CALLED IN ONE WAY OR ANOTHER. SEE THE LISTING.
#
# NORMAL EXIT
#
# DRIFT TESTS- LENGTHOT GOES TO ZERO-RETURN TO IMU PERF TEST2 CONTROL
# GYROCOMPASS-MANY, SEE THE LISTING
#
# ALARMS
#
# 1600 OVERFLOW IN DRIFT TEST
# 1601 BAD IMU TORQUE ABORT
# 1602 BAD OPTICS DURING VERIFICATION-RETURN TO COMPASS CSM ONLY
#
# OUTPUT
#
# DRIFT TESTS- FLASHING DISPLAYS OF RESULTS-CONTROLLED IN IMU PERF TESTS 2
# COMPASS-PROGRAM MODE LIGHTS TELL YOU WHAT PHASE OF PROGRAM YOU ARE IN
# 01 INITIALIZING THE PLATFORM POSITION AND ERASABLE
# 02 GYROCOMPASSING
# 03 DOING OPTICAL VERIFICATION (CSM)
#
# DEBRIS
#
# ALL CENTRALS, ALL OF EBANK XSM
# MOST OF THE ROUTINES COMMON TO ALIGNMENT AND CALIBRATION APPEAR
# ON THE NEXT FEW PAGES.
COUNT 33/P02
EBANK= XSM
BANK 33
SETLOC IMUCAL
BANK
ESTIMS TC 2PHSCHNG # COMES HERE FROM IMU2
OCT 00075
OCT 00004 # TURN OFF GROUP 4 IF ON
RSTGTS1 INHINT # COMES HERE PHASE1 RESTART
CA TIME1
TS GTSWTLT1
CAF ZERO # ZERO THE PIPAS
TS PIPAX
TS PIPAY
TS PIPAZ
RELINT
CA 77DECML # ZERO ALL NECESSARY LOCATIONS
TS ZERONDX1
CA ALXXXZ
TC ZEROING
TC INTPRET
SLOAD
SCHZEROS
STOVL GCOMPSW -1
INTVAL +2 # LOAD SOME INITIAL DRIFT GAINS
STOVL ALX1S
SCHZEROS
STORE GCOMP
STORE DELVX # GCOMPZER SUBROUTINE NO LONGER NEEDED
EXIT
CCS GEOCOMP1 # NON ZERO IF COMPASS.
TC +2
TC SLEEPIE +1
TC INTPRET
CALL
ERTHRVSE
EXIT
CA LENGTHOT # TIMES FIVE IS THE NUM OF SEC ERECTING
TS ERECTIME
TC NEWMODEX
MM 02
TC BANKCALL # SET UP PIPA FAIL TO CAUSE ISS ALARM
CADR PIPUSE # COMPASS NEVER TURNS THIS OFF
TC ANNNNNN # END OF FIRST TIME THROUGH
# COMES HERE AT THE END OF EVERY ITERATION THROUGH DRIFT TEST OR COMPASS
# SET UP WAITLIST SECTION
SLEEPIE TS LENGTHOT # TEST NOT OVER-DECREMENT LENGTHOT
TC PHASCHNG # CHANGE PHASE
OCT 00135
CCS TORQNDX # ARE WE DOING VERTDRIFT
TC EARTHR* # TRUE TORQUE SOUTH GYRO
WTLISTNT TC CHKCOMED # SEE IF COMPASS OVER
TC SETGWLST
TC ENDOFJOB
SETGWLST EXTEND
QXCH MPAC # CALLED EVERY WAITLIST OR AZIMUTH CHANGE
INHINT
CS TIME1
AD GTSWTLT1
EXTEND
BZMF +2
AD NEGMAX # 10 MS ERROR OK
AD 1SECXT1 # 1 SEC FOR CALIBRATION, .5 SEC IN COMPASS
EXTEND
BZMF RIGHTGTS
WTGTSMPL TC TWIDDLE
EBANK= ALTIM
ADRES ALLOOP
TC MPAC
RIGHTGTS CAF FOUR # SET UP NEXT WAITLIST-ALLOW SOME TIME
TC WTGTSMPL # END OF WAITLIST SECTION
# STORE AND LOAD DATA SECTIONS FOR RESTART PROOFING
25DECML EQUALS OCT31
STOREDTA CAF 25DECML
TS MPAC
INDEX MPAC
CAE THETAX1
INDEX MPAC
TS RESTARPT
CCS MPAC
TCF STOREDTA +1
TC Q
LOADSTDT CAF 25DECML
TS MPAC
INDEX MPAC
CA RESTARPT
INDEX MPAC
TS THETAX1
CCS MPAC
TCF LOADSTDT +1
TC Q
# COMES HERE EVERY ITERATION BY A WAITLIST CALL SET IN SLEEPIE
ALLOOP CA TIME1
TS GTSWTLT1 # STORE TIME TO SET UP NEXT WAITLIST.
ALLOOP3 CA ALTIM
TS GEOSAVE1
TC PHASCHNG
OCT 00115
ALLOOP1 CAE GEOSAVE1
TS ALTIM
CCS A
CA A # SHOULD NEVER HIT THIS LOCATION
TS ALTIMS
CS A
TS ALTIM
CAF ZERO
XCH PIPAX
TS DELVX
CAF ZERO
XCH PIPAY
TS DELVY
CAF ZERO
XCH PIPAZ
TS DELVZ
CAF 19DECML # 23 OCT
TC NEWPHASE
OCT 00005
SPECSTS CAF PRIO22
TC FINDVAC
EBANK= GEOSAVE1
2CADR ALFLT # START THE JOB
TC TASKOVER
# THIS IS PART OF THE JOB DONE EVERY ITERATION
ALFLT TC STOREDTA # STORE DATA IN CASE OF RESTART IN JOB
TC PHASCHNG # THIS IS THE JOB DONE EVERY ITERATION
OCT 00215
TCF +2
ALFLT1 TC LOADSTDT # COMES HERE ON RESTART
CCS GEOCOMP1
TC +2
TC NORMLOP
TC CHKCOMED # SEE IF PRELAUNCH OVER
TC BANKCALL # COMPENSATION IF IN COMPASS
CADR 1/PIPA
NORMLOP TC INTPRET
DLOAD
INTVAL
STOVL S1
DELVX
VXM VSL1
XSM
DLOAD DCOMP
MPAC +3
STODL DPIPAY
MPAC +5
STORE DPIPAZ
SETPD AXT,1
0
8D
SLOAD DCOMP
GEOCOMP1
BMN
ALWAYSG # DO A QUICK COMPASS
# NOW WE HAVE JUST THE CALIBRATION PARTS OF THE PROGRAM-NEXT PAGES
COUNT 33/COMST
ALCGKK SLOAD BMN
ALTIMS
ALFLT3 # NO NEW GAINS NEEDED
ALKCG AXT,2 LXA,1 # LOADS SLOPES AND TIME CONSTANTS AT RQST
12D
ALX1S
ALKCG2 DLOAD* INCR,1
ALFDK +144D,1
DEC -2
STORE ALDK +10D,2
TIX,2 SXA,1
ALKCG2
ALX1S
ALFLT3 AXT,1 # MEASUREMENT INCORPORATION ROUTINES
8D # AND GAIN UPDATES
DELMLP DLOAD* DMP
DPIPAY +8D,1
PIPASC
SLR BDSU*
9D
INTY +8D,1
STORE INTY +8D,1
PDDL DMP*
VELSC
VLAUN +8D,1
SL2R
DSU STADR
STORE DELM +8D,1
STORE DELM +10D,1
TIX,1 AXT,2
DELMLP
4
ALILP DLOAD* DMPR*
ALK +4,2
ALDK +4,2
STORE ALK +4,2
TIX,2 AXT,2
ALILP
8D
ALKLP LXC,1 SXA,1
CMPX1
CMPX1
DLOAD* DMPR*
ALK +1,1
DELM +8D,2
DAD*
INTY +8D,2
STORE INTY +8D,2
DLOAD* DAD*
ALK +12D,2
ALDK +12D,2
STORE ALK +12D,2
DMPR* DAD*
DELM +8D,2
INTY +16D,2
STORE INTY +16D,2
DLOAD* DMP*
ALSK +1,1
DELM +8D,2
SL1R DAD*
VLAUN +8D,2
STORE VLAUN +8D,2
TIX,2 AXT,1
ALKLP
8D
LOOSE DLOAD* PDDL* # EXTRAPOLATE SWAY VARIABLES
ACCWD +8D,1
VLAUN +8D,1
PDDL* VDEF
POSNV +8D,1
MXV VSL1
TRANSM1
DLOAD
MPAC
STORE POSNV +8D,1
DLOAD
MPAC +3
STORE VLAUN +8D,1
DLOAD
MPAC +5
STORE ACCWD +8D,1
TIX,1
LOOSE
AXT,2 AXT,1 # EVALUATE SINES AND COSINES
6
2
BOOP DLOAD* DMPR
ANGX +2,1
GEORGEJ
SR2R
PUSH SIN
SL3R XAD,1
X1
STORE 16D,2
DLOAD
COS
STORE 22D,2 # COSINES
TIX,2
BOOP
PERFERAS EXIT
CA EBANK7
EBANK= LAT(SPL)
TS EBANK
TC LAT(SPL) # GOTO ERASABLE ONLY TO RETURN
# CAUTION
#
# THE ERASABLE PROGRAM THAT DOES THE CALCULATIONS MUST BE LOADED
# BEFORE ANY ATTEMPT IS MADE TO RUN THE IMU PERFORMANCE TEST
EBANK= LENGTHOT
ONCEMORE CCS LENGTHOT
TC SLEEPIE # TEST NOT OVER SET UP NEXT WAITLIST
CCS TORQNDX
TCF +2
TC SETUPER1
CA CDUX
TS LOSVEC +1 # FOR TROUBLESHOOTING POSNS 2$4 VD
SETUPER1 TC INTPRET # DRIFT TEST OVER
DLOAD PDDL # ANGLES FROM DRIFT TEST ONLY
ANGZ
ANGY
PDDL VDEF
ANGX
VCOMP VXSC
GEORGEJ
MXV VSR1
XSM
STORE OGC
EXIT
TORQINCH TC PHASCHNG
OCT 00005
CA OGCPL
TC BANKCALL
CADR IMUPULSE
TC IMUSTLLG
CCS TORQNDX # + IF IN VERTICAL DRIFT TEST
TC VALMIS # VERT DRIFT TEST OVER
TC INTPRET
CALL # SET UP ERATE FOR PIP TEST OR COMPASS
ERTHRVSE
EXIT
TC TORQUE # GO TO IMU2 FOR A PIPA TEST AND DISPLAY
SOMEERRR TC ALARM
OCT 1600
TC +3
SOMERR2 TC ALARM
OCT 1601
TC PHASCHNG
OCT 00005
TC ENDTEST1
# THE FAMOUS MAGIC NUMBERS OF SCHMIDT ARE NOW PART OF AN ERASABLE LOAD.
DEC585 OCT 02222 # 1170 B+14 ORDER IS NOW IMPORTANT
SCHZEROS 2DEC .00000000
2DEC .00000000
OCT 00000
ONEDPP OCT 00000
OCT 00001 # ABOVE ORDER IS IMPORTANT
INTVAL OCT 4
OCT 2
DEC 144
DEC -1
SOUPLY 2DEC .93505870 # INITIAL GAINS FOR PIP OUTPUTS
2DEC .26266423 # INITIAL GAINS/4 FOR ERECTION ANGLES
77DECML DEC 77
ALXXXZ GENADR ALX1S -1
# GYROCOMPASS PORTIONS FINISH THIS LOG SECTION
COUNT 33/P01
# INITIALIZATION SECTION
GTSCPSS CA FLAGWRD1 # CALLED BY V37
MASK NOP01BIT
EXTEND
BZF GTSCPSSA
TC POODOO
OCT 21521 # NO DO ALARM FOR P01 - P11 ALREADY DONE
GTSCPSSA CAF ONE
TS GEOCOMP1 # THIS IS THE LEAD IN FOR COMPASS.
CA 1/PIPAGT
TS 1/PIPADT
NXXTENN CA BIT8
TS LENGTHOT
CAF 1/2SECX # COMPASS IS A .5 SEC LOOP
TS 1SECXT1
CAF ONE
TS PREMTRX1
TS PERFDLAY +1
CAF ZERO
TS PERFDLAY
EXTEND
DCA LUNCHAZ1
DXCH NEWAZ1
EXTEND
DCA LUNCHAZ1
DXCH OLDAZMTH
SETUPGC CA DEC17
TS ZERONDX1
CA XSMADR
TC ZEROING
TC POSN17C
TC GEOIMUTT # GO TO IMU2 FOR FURTHER INITIALIZATION
POSN17C EXTEND # COMPASS POSITION Z DOWN, X DOWNRANGE
QXCH QPLACE # FROM NORTH IN REVOLUTIONS + CLOCKWSE
CS HALF # ALL THIS TO INITIALIZE MATRIX
TS ZSM
TC INTPRET
DLOAD PUSH
NEWAZ1
SIN
STORE XSM +4
STODL YSM +2
COS
STORE YSM +4
DCOMP
STORE XSM +2
EXIT
TC QPLACE
# JOB DONE EVERY ITERATION THROUGH COMPASS PROGRAM. SET BY TASK ALLOOP
COUNT 33/P02
ALWAYSG DLOAD* DSU* # COMPASS AND ERECT
DPIPAY +8D,1
FILDELV1 +8D,1
DMPR DAD*
GEOCONS1
FILDELV1 +8D,1
STORE FILDELV1 +8D,1
DAD*
INTVEC1 +8D,1
STORE INTVEC1 +8D,1
DMPR DAD*
GEOCONS2
FILDELV1 +8D,1
DMPR PUSH
GEOCONS5
TIX,1 SLOAD
ALWAYSG
ERECTIM1
BZE DLOAD
COMPGS
THETAN1 +2
DSU STADR
STODL THETAN1 +2 # ERECTION ONLY.
BDSU
THETAN1 +4
STORE THETAN1 +4
GOTO
ADDINDRF
COMPGS DLOAD DAD # COMPASS
THETAN1
FILDELV1
STODL THETAN1
FILDELV1
DMPR BDSU
GEOCONS3
THETAN1 +4
STODL THETAN1 +4
FILDELV1 +4
DMPR BDSU
GEOCONS3
THETAN1 +2
PDDL DMPR
INTVEC1 +4
GEOCONS4
BDSU STADR
STORE THETAN1 +2
ADDINDRF EXIT
ENDGTSAL CCS LENGTHOT # IS 5 SEC OVER-THE TIME TO TORQ PLATFORM
TC SLEEPIE # NO-SET UP NEXT WAITLIST CALL FOR .5 SEC
TC CHKCOMED
CCS LGYRO # YES BUT ARE GYROS BUSY
TCF SLEEPIE +1 # BUSY-GET THEM .5 SECONDS FROM NOW
LASTGTS TC INTPRET
VLOAD
ERCOMP1
STODL THETAX1
TMARK
STORE ALK
EXIT # PREVIOUS SECTION WAS FOR RESTARTS
RESTAIER TC PHASCHNG
OCT 00275
TC INTPRET # ADD COMPASS COMMANDS INTO ERATE
VLOAD MXV
THETAN1
XSM
VSL1 VAD
THETAX1
STODL ERCOMP1
ALK
STORE TMARK
EXIT
TC EARTHR* # TORQUE IT ALL IN
CAE ERECTIM1
TS GEOSAVE1
TC PHASCHNG
OCT 00155
RESTEST1 TC INTPRET
VLOAD
SCHZEROS
STORE THETAN1
EXIT
CCS PREMTRXC
TC NOCHORLD
TC PHASCHNG
OCT 00255
RESTEST3 TC INTPRET
DLOAD
LAUNCHAZ
DSU BZE
OLDAZMTH
NOAZCHGE
STORE 0D
SLOAD DAD
ONEDPP +1
PREMTRXC # DOES NOT CHANGE LAUNCHAZ
STODL PREMTRXC
LAUNCHAZ
STODL NEWAZMTH
0D
ADERCOMP STORE ERCOMP +4
EXIT
TC POSN17C
TC PHASCHNG
OCT 00335
RESCHNG EXTEND
DCA NEWAZMTH
DXCH OLDAZMTH
CA BIT7 # SPEND 320 SEC ERECTING
TS LENGTHOT
TC PHASCHNG
OCT 00075
SPITGYRO CA ERCOMPPL
TC BANKCALL
CADR IMUPULSE
TC BANKCALL