Apollo Guidance Computer switching power supply works after 50 years
righto.com
righto.com
That's also because these are hermetically sealed wet tantalum caps, not the dry type that's notorious for shorting out and catching fire. "Wet tants" are very expensive and you can still buy them today:
https://www.mouser.com/Vishay/Passive-Components/Capacitors/...
We were somewhat surprised that both power supplies worked flawlessly after 50 years.
I'm not all that surprised, actually --- but perhaps that's because I've seen plenty of videos on YouTube of more mundane equipment, like vehicles and appliances, coming back to life after several decades of storage or exposure to the elements with minimal repairs, so for a clearly high-reliability component like this AGC PSU to work is almost expected.
Even "Made in USA" "military" Kemet and Kyocera caps are only packaged in USA, with bulk film still being produced in China.
https://www.youtube.com/watch?v=gFEYuaY35Vo
The interesting detail to look for in the video is the LCD with the yield on it - 84% of the capacitors tested within 4.5% of target, and 15% within 9.5%. This must not have been the space-rated product line :)
> The AGC that we're restoring belongs to a private owner who picked it up at a scrapyard in the 1970s after NASA scrapped it.
That is one lucky find. Imagine that it had not been found and scrapped for its metal value. The mind boggles at the potential destruction of such a historical artifact.
> the cordwood components are mounted differently from the other cordwood modules.
For those from cities who have never seen cordwood:
Cordwood is a stack of wood of short length seen from the endgrain, typically used when referring to firewood but also sometimes used in construction.
That's why they also glued them in epoxy. If you don't want you electronics to move (and thus break connections), put them tight in epoxy. And I mean completely glued in. No air left. This is as valid for modern solder joints as well as welded.
Suppose you had an old radio made with all welded construction. I wonder if service would be easier or harder? There is no un-welding (so you'd have to cut the broken component out), but making the new weld is faster than soldering.
Sure, but that is inside the components. This is on the outside, after the components themselves have been manufactured.
> Also wire welding is very common (it's the main technique) in automobile wiring harnesses.
That may be so today but it certainly wasn't in the 1960's.
And even today your typical automotive boars is just soldered. Makes me wonder whether satellites and current space and possibly aircraft circuitry is still manufactured like this.
So, at least in this case solder was used on a satellite.
19:50 in this video shows one in use in making a vacuum tube:
https://pdfs.semanticscholar.org/0911/34a5dc72c5a363ec937e40...
The book was written from the point of view that rectification was pretty much all figured out and it was just a question of some more tweaking and miniaturizing.
Also, 1930s-1950s car radios typically had a step-up converter from the battery voltage to the plate voltage which was a vibrating relay connected to a transformer with diodes to rectify the output.
[0] https://www.amazon.com/Alternating-current-rectification-all...
Anybody who hasn't seen the two dozen or so videos made by CuriousMarc is in for a geekout of historic proportions. Some truly amazing work, with more ups and downs than the Apollo program itself. I can't easily come up with a link on mobile but you'll find it by looking up CuriousMarc on YT. Watch the whole playlist, it's awesome.
I ask because my dad was Group Product Manager at Kemet during this time period. Growing up, he mentioned their products going into several aerospace systems (various ICBMs and military projects, etc) as well as the IBM System 360. But he never mentioned involvement with Apollo and I'm curious if he might have had a hand in the AGC.
BTW, your link to the NASA contract drawing is incorrect - here's the one you probably wanted.
I think the Computer History Museum's might have Sprague caps in it, though.
I definitely remember seeing Kemet markings on at least one of the caps in the power supply restoration videos.
The story he told me was that when the DoD wanted to buy scopes from Tek, rather than jumping through all the acquisition process hoops, Tek just handed them a glossy product catalog and told them to pick out which ones they wanted. Which went about as well as you might think, but back then there really was no substitute for a Tek scope so the Pentagon caved.
Whichever "supplier" marks up the product the least -- a product they will never see, much less stock -- will presumably be the one who wins the right to pass along the order to me. This is the government's idea of competitive bidding.
It's just nuts. The waste, overhead, red tape, and opportunities for corruption are just totally batshit nuts. But what can you do...
Well, they still got their own SKUs with (minor) modifications.
I'm currently sitting in the same room as a Bryston amplifier that, according to it's date code, was manufactured in late 1998. That means it's almost 21 years old and just 1 year off warranty. It's been switched on for most of those 21 years but still works great and has never been serviced. Even more surprisingly, it's not obsolete. It's currently hooked up to a 2018 receiver.
I'd love to see somebody do tear-downs of devices like this and explain how their construction takes longevity into consideration without resorting to the same extremes as NASA (e.g. X-raying caps).
As seen with people who collect Apple products and just keep adding to the fruit basket.
I'm not talking about the post-Jobs stuff.
Would need to resist a lot of temptation for short term gain.
You also see variations in quality levels (eg, kitchen knives).
'Forever' really just means 'until I elect to give them up' to most of us. That's why all those appliances came in ugly colors in the 70's. We were still flirting with planned obsolescence.
Is this out of memory or skipped input or dropped processing requests or too much power drain? What exactly is an "overload error" on such an unusual machine?
[1]: https://en.wikipedia.org/wiki/Interrupt_storm [2]: https://arstechnica.com/science/2019/07/no-a-checklist-error...
The TLDR is: a switch misconfiguration was tasking the computer to process some rendezvous tracking information which was not needed. This exhausted a rather limited set of storage locations and triggered the alarm.
The computer was properly programmed to treat the condition as a secondary failure and continue with its primary task.
The thing that was remarkable to me was the control room engineer's response to the 1201 right before touchdown - they hadn't seen one of those, and it was not the same as the 1202's they had seen earlier.
In the videos I've seen you hear the audio - "1201 alarm" and within less than a second the 28-year-old (average age, just guessing) responds "1201 go". He just gave instant clearance to proceed past a malfunction a few hundred feet above the moon's surface, in real time. Talk about being in the zone.
It wasn't a switch misconfiguration; the Apollo 11 astronauts were flying to the checklist, and did as they had simulated. The Rendezvous Radar switch has three settings -- LGC, AUTO TRACK, and SLEW. In LGC mode, the AGC controls the positioning of the antenna; in AUTO TRACK, the radar automatically tracks the CSM based on return strength; and in SLEW it is automatically positioned.
The trouble came from how the trunnion and shaft angles of the antenna were measured. They used "resolvers", which are sort of like variable transfomers. Resolvers look like motors, and attached to the shaft there are two windings positioned 90 degrees apart from each other. An AC "reference voltage" is applied to an outer winding in the case, and that voltage couples onto the two inner windings with a magnitude proportional to the angle on the shaft. One winding (the "sine" winding) produces an output equal to Vrefsin(theta) and the other ("cosine") winding produces an output equal to Vrefcos(theta), where Vref is the reference voltage and theta is the angle of the shaft. The voltage and phase of both windings can be used to determine exactly what the theta was that produced them.
The circuitry to do this is a bit involved though and lived outside the computer, in a device called the CDU, or Coupling Data Unit. The CDU constantly maintained its own idea of what the angle ("psi") in a digital register. It translated the incoming sine and cosine voltages into a digital representation by mechanizing the equation +-sin(theta-psi) = +-sin(theta)cos(psi) -+ cos(theta)sin(psi). It did so by using the bits of its digital register containing psi to switch on and off resistor dividers that effected cos(psi) and sin(psi) onto the incoming signals, which were then added together with a summing amplifier. The goal of the CDU is to zero this sum; to accomplish this, it "counts" the angle register up or down to reduce the magnitude of the sum. As it counts, switches are changed, which switch out resistors in the circuit, which in turn change cos(psi) and sin(psi) in the above equation. And also, with every other increment, a pulse is transmitted to the AGC to indicate that the angle has changed slightly.
The problem comes in because in addition to the above, the CDU also, for many angles, added to the sum some fraction of the reference voltage directly. This is fine when the switch is in the LGC position; the resolvers are supplied with the same 28V, 800Hz reference voltage that is used inside the CDU. However, when the switch is put in either of the other two positions, the reference voltage for the RR resolvers is switched to an unrelated 15V rail. Critically, this 15V reference has no defined phase relationship with the CDU's 28V 800Hz reference. The phasing is locked in by the exact millisecond at which you power up your subsystems.
So when the switch is changed, the sine and cosine outputs from the resolver are suddenly derived from the 15V reference -- they are much lower before and at a random phase. The CDU doesn't know that this has happened, and still tries to perform the summing as before. However, for many theta/phase relationships, it becomes impossible for the CDU to actually null the sum. In these cases, the CDU becomes "manic", and starts seeking back and forth, frantically changing switches to try to figure out what the angle is, but never succeeding.
This causes a huge flurry of +1 and -1 pulses to the AGC. In order to minimize circuitry, the AGC implemented what was called "unprogrammed" or "cycle-stealing" instructions. The computer only contains a single adder, and adding or subtracting 1 from the current angle requires use of that adder and a memory cycle. Rather than generating a full interrupt, which would require many memory cycles and instructions to handle, the computer simply transparently inserts a single-cycle instruction in between two "programmed" instructions that performs the addition or subtraction. This is totally transparent to software, normally. But with a manic CDU that is incessantly seeking on both RR angles, the AGC receives something close to 12,800 pulses per second, which translates into something around 15% of its total computational time. The landing software had only been designed with a margin of 10% or so.
The 1202s were also a lot less benign than is often reported. They occurred because of the fixed two-second guidance cycle in the landing software. That is, once every two seconds, a job called the SERVICER would start. SERVICER had many tasks during the landing. In order: navigation, guidance, commanding throttle, commanding attitude, and updating displays. With an excessive load as caused by the CDU, new SERVICERs were starting before old ones could finish. Eventually there would be two many old SERVICERs hanging around, and when the time came to start a new one, there would be no slots for new jobs available. When this happened, the EXECUTIVE (job scheduler) would issue a 1201 or 1202 alarm and cause a soft restart of the computer. Every job and task was flushed, and the computer started up fresh, resuming from its last checkpoint. It was essentially a full-on crash and restart, rather than a graceful cancellation of a few jobs. And unlike is often said, the computer wasn't dropping low-priority things; it was failing to complete the most critical job of the landing, the SERVICER.
Luckily, the load was light enough that of the SERVICER's duties, the old SERVICER was usually in the final display updating code when it got preempted by a new SERVICER. This caused times in the descent when the display stopped updating entirely, but the flight proceeded mostly as usual. However, with slightly more load, it was fully possible that the SERVICER could have been preempted in the attitude control portion of the code, or worse yet, the throttle control portion. Since each SERVICER shared the same memory location as the last one (since there was only ever supposed to be one running at a time), this could lead to violent attitude or throttle excursions, which would have certainly called for an abort. Luckily, this didn't happen -- and the flight controllers didn't abort the mission not because 1202s were always safe, but because they didn't understand just how bad it could be, were the load just a tiny bit higher.
CDU theory of operation (starting PDF page 15): http://www.ibiblio.org/apollo/Documents/HSI-208435-003.pdf
CDU coarse module schematic: https://archive.org/stream/apertureCardBox462NARASW_images#p...
Grumman memo (from 1968!) describing the problem, and mentioning it is due to the reference switching to a 15V 800Hz source: https://www.ibiblio.org/apollo/Documents/Memo-GAEC_LMO_541_1...
Excerpt from the LM-8 Systems Handbook showing the reference voltage RR switch wiring: https://i.imgur.com/fMsQ7RI.png
Don Eyles describes the software side best in his book Sunburst and Luminary (which I highly recommend) but he also talks about it in some detail on his website: https://doneyles.com/LM/Tales.html
Thanks for such a detailed account. Unfortunately, it will be added to the trove of otherwise categorized -information that Google returns.
Thanks also, very much, for the links you included below.