HP 59501B Digital to Analog Converter / Power Supply Programmer Repair

HP 59501B Digital to Analog Converter / Power Supply Programmer Repair

Show Video

[Marc] All right! Today, on  the bench, we have not one,   but two HP 59501B Isolated  DAC Power Supply Programmers. And these are little HP-IB contraptions from the  early '70s that are really super easy to set up. And you send them a number, and it outputs a  voltage that's proportional to your number.

I use them, right now, to drive  the graphics recorder to record my   clock signal from the atomic clock. Hello and welcome back! As you'll soon  see, I will be embarking on a campaign   of metrology with HP atomic clocks, with  the ultimate goal of taking one clock up   a high mountain and measure relativistic  time speed up due to the lesser gravity,   an effect predicted by Einstein's  general theory of relativity. But, before I can prove for myself  that time is indeed relative,   I need to check if my clocks stay  in close agreement with each other,   when next to each other in the lab. Which, as  you'll see, is much more difficult than it sounds. In order to do that, I could just gather long  term drift data, we are talking several days,   using my trusty HP 5334B Universal Counter. It  should give me a resolution of 100 picoseconds.   I'd gather the data points via HP-IB on  a modern computer, then plot the results   on an Excel chart. But that would be  both awfully ugly, and no fun at all. Instead, let's use our HP 7132A Chart Recorder  to draw the plot in real time. Now that's more  

like it! I have a rolling plot that I can check  at a glance when I walk past the experiment,   and easily spot the short term  stability and long term trends. However, the chart recorder  is an analog instrument,   and the counter is digital. So, we  need some kind of digital to analog   conversion to drive recorder. And that's  where our little HP 59501B box comes in. It's part of the HP 59000  series of handy dandy boxes,   meant to support nascent digital  automation via HP-IB, introduced in 1978. [Marc] So, the 59000 series of HP-IB boxes  appears in 1978, the age of digital automation.

And I have almost the whole  collection here! Look at that! There is the DAC, or power supply  programmer, that we are going to work on. The relay actuators, two of them. So,   those are really convenient. You can  either program them, or push the buttons.

The timing generator, which we're  going to use to measure the clocks. The A to D converter, and the ASCII to parallel  converter, which is actually a digital output box. And then, also part of the same  series, are those cute ones over here. There is the extra cute bubble LED 59309A  digital clock, with an input at 5 MHz,   that can take in the atomic clock.  So, I could make this one atomic. It's a real time clock. You  can interrogate it by HP-IB.

And then, there are the rare but  oh-so-beautiful Panaplex displays, here. The 59304A numeric displays, with  their neon Panaplex displays. This one is unsuccessfully trying to say  boobs, but this one does Shell Oil correctly.

So, nice collection of instruments.  And those are also forever instruments.   There are mentions of some of  these in the 1999 catalog! But back to the D to A we have today, the HP  59501B, the 1985 revision, which is identical   in spec to the A, as far as I can tell. It is  called an Isolated DAC/Power Supply Programmer,   as it can also be used to transform  most of the HP analog power supplies   of the time into digitally controlled ones,  although we won't use that capability today.

[Marc] So, I have one that I know there's  something wrong with it, I can't zero it. And the other one, I just bought on eBay, and  I just plugged it in. And apart that it had   a broken top, which I repaired with  some glue, it's functioning very well. By the way, it's a very simple  unit. There's no on/off button.   You have some adjustments for the  zero, the scale of your D to A.

And then, there's some more adjustments. You  can use them to drive a power supply. Basically,   you can wire it up so it replaces the Zener  or the reference in your power supply. At the back, there's just  HP-IB, the address of the HP-IB. This is a good button! You can turn it into  bipolar or unipolar. So, it can go plus/minus. And then there's the output,   and other things. Those are to connect  several of the HP power supplies. So, that was at the time, in the early '70s,   when the power supplies weren't digital. But  this would turn them into digital power supplies.

Last but not least, I got the manual, which  I have scanned already, put on the web. I'm going to try it. You need something  that speaks HP-IB, like my HP 9816. And you do: OUTPUT. This one is address zero,   so 700. 7 being the HP-IB interface, and  00 being the address of the instrument. And then you give it a number from  1000 to 1999, or 2000 to 2999.

Let's start with 2000. The first number, 1 or 2,   makes the scale either 1 volt full  scale, I think, or 10 volt full scale. So 2999 is supposed to give us 9.98  volts, or something like that. Execute... Oh, you guys missed it! It just went to 9.99. Oh, by the way here's  the HP 3438 we just repaired, we can see it! And then you have the six-digit one, which  you can't see, or can't see as nicely. And I'm going to set it back  to 2000, which would be zero.

Oh, and the zero is very good, it's in  the microvolts. Which is the problem   in the other supply, it doesn't work at all. And then, if I do 2500, it should  be at 5 volts. And it's at 4.997. Oh, let me demonstrate bipolar.  I just press this thing. And then let's try the upper scale on  bipolar. It should give me 10 volts. It's off! Okay. So, I have a slight adjustment to do here.

Zero is going to be off too,  at 200 millivolts. It is! And then, if I go negative, it's  going to be offset the same. 2000... And yeah, that should be minus 10 volts,  and it's offset by the same 200 millivolts. Okay. Uh, let me look on my instructions, and  see how I should do the calibration. All right. So, it told me to hook  myself up to the outputs at the back,  

and to send it two commands  in succession, 1000 and 2000,   which will switch between the two ranges and put  it at zero. And that's what I have done here. So, I have this very impressive  program. So, it sets the address,   sends it to 1000, sends it  2000, and it goes back in a loop. And if you could focus, it  would be better. Here we go.

And, I suppose it's going to show  us some steps on the scope. And   if they are not aligned, the zero  is going to move between the two. So, if we run this... Yeah, it got it. And I have  

little spikes. I suppose that's when it goes from  one to the other, the low range and high range. Ah, okay. I can see a little  difference between the two. It's a bit noisy. So let's go into...  let's do first high resolution here. Yeah!

Okay, I think here would be... right there.   And then I can go into averaging,  and it looks nice and flat. Okay, next step is for the zero in unipolar mode.

After I did this interesting initial zero balance  adjustment, I went on to calibrate the min and the   max voltage in unipolar mode, and the unit  exceeded spec by more than a factor of 10,   with the zero coming in below 0.1 millivolts  and the max scale, supposedly 0.999 volts,   coming in at 0.99900 volts. It was then  time to do the same for the bipolar mode,   and that's when things started to go sideways. [Marc] Then switch on the rear  of the unit to bipolar. Bipolar. And now, we have to send it 1500 and  2500, which is the zero on bipolar. Enter, and I will run it.

And... Aha! That was fairly far off,  which is why my zero wasn't good. Oops! I cannot get it far enough! Uhhuh... So, that's the same problem  I have on the other unit. So,   here's my problem, I cannot bring it to zero. What could cause that? So, I know that the other unit is a big problem,  I cannot bring it anywhere close to zero. Hmm. Okay. Let me look at the schematics here.

And looking at the schematics,  there is not much that can go wrong! We're adjusting the zero balance here,  bipolar zero balance, with this resistor. So, I better check that the +15 and the  -15 are actually what we think they should be. And then, it goes straight to this  op amp, current to voltage converter.

So it's an... Yeah, it's an op  amp with a gain of, I suppose,   1 or 10? They adjust it depending  on the bipolar or monopolar range. So, this guy drifting?... Oh, I found what it is! It's  the switch! That's my problem! See? I just twiddle the switch a little bit, and  it goes from balanced to not balanced at all.

Which makes sense, right? If  you look at the schematic,   the switch is straight into the  feedback path of the DC amplifier. I bet you, that's what my second unit  is suffering from too, bad switch. And since this is a well-designed  electronics appreciation channel,   let's fire up the elevator music  and take a looksy at the schematics.

Almost 2/3rds of it is dedicated to decoding  the HP-IB bus commands. Surprisingly, this is   done with basic TTL logic. No microprocessor  or specialized HP-IB controller chip in sight. Here is the Digital to Analog converter  proper. It is an HP proprietary chip.   There are no details about what's  inside, but I have a guess. I bet you,   it's another one of these hybrid chips  with lots of high precision resistors,   switched in and out by FET transistors,  as we had seen on the HP 3438 DVM.

The doc says that the chip converts  the BCD coded digital inputs, that is,   the three digits from 0 to 999 that we  send it, into a current from 0 to 2.5 mA. It is followed by a current to voltage  converter, which is just a giant op-amp. The HP-IB decoding is such a good example of TTL  logic, that I thought I'd give you a tour of it.   Feel free to skip the logic explanation,  as there are no faults in this section. It helps that the decoder only needs  to recognize two HP-IB commands,   Listen and Unlisten, and to latch-in  four ASCII digits sent in a row.

A listen command is the combination  of the Attention line, which signals   that what is on the HP-IB bus should be  interpreted as a command rather than data,   and the proper values of data bits 6 and 7. You  can see how this combo is detected by gate U6. But we only want to listen if our HP-IB  address is included in the command. The HP-IB address is sent along on the 5  lower data bits. You can see how they are   decoded and compared to the address set  switches, at the back of the instrument,   by U3. If we have both a Listen  command match and an address match,  

then gate U9 turns on and sets the  Flip Flop U12 to the listen state. The instrument has now recognized that  the HP-IB controller wants to talk to it,   and is about to send us 4 data bytes. The  green LED, that says Listen on the front panel,   will turn on, and the listen signal will  open the gate to the clock generator. There is a bit of noodle logic at the bottom,  that handles the 3-wire handshake protocol.

It might be slightly noodely, but what  it does is fairly simple: it generates   an Acquire Data Signal pulse, called ACDS, when  it's time for us to look at stuff on the bus. So, now that we are listening, and  if the next byte is data and not   a command (which we can tell from the ATN  line), at the time we get the ACDS signal,   the clock generator will generate a pulse,  simply called clock here. Since we are   supposed to get 4 data bytes, we will get 4  clock pulses, one for each digit sent to us.

The clock then goes through U15, an  opto-isolator. And so do the 4 lower   data bits. This is what isolates the  ground of the HP-IB controller from   the ground of our DAC output, and  why this is called an isolated DAC. Our 4 clock pulses, one for each data byte,  then go to the Data Storage Sequencer. That's   a big name for something that  simply counts up to 4. Oh yeah.

The next time my 3 year old  nephew manages to count up to 4,   I'll bestow him with the title  of Data Storage Sequencer. This prodigious circuit is implemented  with a shift register, that shifts a   single bit around, so its 4 outputs  turn on in sequence, one at a time. They'll each enable a latch chip, where  our data byte will get memorized. The   first data byte gets latched in a simple  flip-flop, which only cares about bits 0 and 1. That's because all it has to do is  decide if the first number is a 1 or a 2,   in order choose the low or the high range.

The next digits should be ASCII  0 to 9, so we care only about the   four lower bits. These four bits are  latched in succession on chips U18,   U19, and U20, as directed by our  toddler logic, aka the sequencer. Our toddler logic is also arranged, so that  right after the 4th count, it resets itself   while emitting a fifth pulse, the load pulse. This  goes to a second set of latches, identical to the  

first ones. So, the 4 digits that had been  accumulated in the first column of latches,   are now transferred all at once to the second  column of latches. That column used to contain   the old DAC value, and is now cleanly updated all  at once. And voila, our DAC is now updated with  

the new value, and the analog signal comes out  of DAC OUT on pin 9. Yay! HP-IB message decoded. There is one more thing that the HP-IB logic  needs to do, which is recognizing the Unlisten   command. Unlisten is a combo of Attention,  and some specific combo of data bits 1 to   7. You can see how these bits are combined  on the large gate U4. If we get a match,   we have an Unlisten command, and  the listen flip flop is reset.

Add two reset lines, one coming from  power on, and one coming from IFC,   the InterFace Clear signal, and you have a simple  HP-IB bus decoder made with a few TTL chips. And all that seems to be working perfectly. But trouble awaits after our  DAC current gets out of pin 9. The DAC is working in tandem with an  external op-amp, which is wired as a   transimpedance amplifier. That's  another big name to say that it  

transforms current into voltage. That  is simply done by shoving the current   straight into the minus pin of the op-amp,  without the traditional input resistor. Note that we don't see the other traditional  feedback resistor, the one that controls   the op-amp gain. That's because this precision  resistor is hidden inside the DAC chip. Actually,  

it must be least two resistors, one for the  unipolar range, and another one for the bipolar   range, that doubles the gain, since bipolar  operation has twice the voltage span. You can   indeed see one pin labeled 10V Span, and another  labeled 20V Span. This all checks out so far. But what's the matter with our switch  S2? That's the unipolar/bipolar switch,   that I think is causing us trouble.  It seems to do two things. First,   it switches in a Bipolar Reference Offset voltage  into the DAC, derived from the voltage reference   that is also inside the DAC. Undoubtedly,  that's to change the DAC mid-point to zero.

It also switches in an additional offset  adjustment for our transimpedance op-amp,   so you can fine adjust the zero volt  in addition to the two end points.   And that's the adjustment that we can't get right. At first, I thought that the offset  adjustment was not working because   of the switch. But the switch has a  huge 121 kOhms resistor in series,  

so a little bit of extra resistance  in the switch will not do any harm. Instead, I believe that the added switch  resistance in the reference voltage circuit   throws off the DAC mid point, and makes  it impossible to correct it within the   range of the zero adjustment. I think we  have found the root cause of our problem. The rest of the circuit is a traditional  voltage amplifier. Nothing super special,  

except maybe for the range switching. I'll skip over it, but he HP manual  describes it in detail if you are interested. However, I want to mention the  turn-off/turn-on control circuit.   It's there to make sure that the output  of the instrument is zero at power on,   and goes back to zero just before power  off. This is essential, since this could   be controlling a power supply, and you  don't want to output a large voltage spike. It's a trick circuit with 3 FET analog switches,  Q7, Q8 and Q9, that shunt the output amplifier to   ground at not just one, but three places. They  really wanted to make sure there was no output!

It takes advantage of the fact that the -15V comes  on and turns off faster than the other supplies.   It also uses the second shift register,  conveniently left over from U25,   to release the shorts only after  the first load command is completed. That's it, sorry for the lengthy explanation,   there is just a lot happening even in a simple  HP instrument like this one. And I kid you not,   the spectacular HP service manual  explains most of this, if not more. Anyhow, thanks to the superb HP manual,   we have a good hunch of what may have gone  wrong, probably the switch. Let's repair it.

[Marc] So, if there's some bad contact over  here, it's not perfect, it's going to put   me all over the place. Which is exactly what  it's doing here. So I need to clean the switch. And I think I have to desolder it. Yeah, got it! All right. Oh, it's from the front! Okay, I might not  have had to take it apart so much. Okay.

It's a press construction where the plastic  has been... there's like little plastic posts,   and they have been thermo-compressed. So, I don't know that we can take it apart easily.  I'm going to have a look under the microscope. (Moments later...) All right. So, under the microscope, I was able to  

cut the top of the thermo-compressed little  posts very cleanly, with an X-Acto knife. And then, you take those two things out,  you take the spring out, and it comes apart. And you can see how this thing works. If I can  remount it, let's mount it without the spring. It goes in there, it goes like this. So, there's not much wipe in there.  So, if a film of something deposits,   it's not going to be a good contact.

But I can just wipe it with a cotton swab. All right, spring... Device in... Compress the spring...

Yeah, I do have to glue it back together. Dang it! So, there's a post here, post there,  a post there, and a post there. All right... Indicated...  Not indicated... All right! And it's 0.32 now over here.

0.36 over here. 0.33 over here, and 0.33 over here. So I think I am good! All right, so, that's the  issue with analog instruments,   where the switch is in the analog path.  That is not ideal when the switch ages. So, if I go now to bipolar, and I  go into my program... There you go!

Now I can zero it. All right. Then I get out of it, and I get back  in. I get out of it, and I get back in. And now it's stable! Okay, Let's do the alignment procedure once again. Unipolar, a zero at the full scale.  0.0 something millivolts, okay! So, we send it a 2999.

9.990 V, and I think that's hard  to adjust any better than this. So now, we are perfect on the non-bipolar  mode, and we switch to bipolar. Run... Ah, yeah, and we didn't move a bit! Look,  

we are still aligned on our  zero. So that's working now! Uhhuh, it was just a silly, silly switch. Okay, bipolar is adjusted  differently. You adjust the   negative end point. So I'm going to be at -10V. + 1 millivolts? No, it's not in spec. Okay -10 V.

You send the other end of the spec. And there,   top end is 9.98V because you  have lost one bit of resolution. With my hard to turn pot, I don't like this pot.

There we go, 0.998, but it's going  to change when I do the other end. And then it's 10.0003! Okay,  so we are totally within spec,   right? The spec is here,  and we have one more zero! So I have my - 10.000 on one side, I should  be at 9.98 on the other side. I'm at 9.9801! And now, if I try the middle, it should  be close to zero hopefully. Actually,  

middle is more important to me. Yeah, it's 400 microvolts. Okay. - 5 volt? Yup, it's minus 5.00006. + 5 volt? Yeah 5.00001. All right, I am very excellently calibrated! So this handy dandy unit had become inaccurate  because of a dirty switch. But once repaired,   it's back to the old HP goodness, exceeding  its spec by a factor of 10 after 40 years.  

No Chinesium instrument this one. So in the  atomic clock metrology setup it goes, and it's   time to look at the other problematic unit,  which I bet you has the exact the same fault. [Marc] And this is the second unit that  has a similar problem. I can already tell:   I moved the switch and my  zero is all over the place.

Yeah, it's never twice the same thing. Look at that! Okay, so, same issue. I need to do the  same contact cleaning and realign it,   and probably it will work just as well.

(Moments later...) And sure enough, now, if I go to  the minimum, it should be minus 10,   and it's minus 10 with four zeros in the decimals. Maximum should be 9.98 volts, and it's 9.9800. That should be the zero, which I could never  achieve before, and now it's 180 microvolts. So, it took me like a quarter of the time  as the first one. So that's the beauty,   once you know what it is, it really goes fast.

And hopefully, that's why I shoot these videos. Well, first, because the hardware is  beautiful. We always learn something. But if you have the same instrument, you  probably have the same problem! So it'll go   way faster. Anyhow, now I have two units that  work, and I'll see you in the next episode. Woah, woah, woah, don't go away  quite yet. I couldn't resist,   I said I wouldn't do it,  but I really had to try it. And I know at the beginning of the video, I say  I wouldn't do it. But I'm going to do it anyhow:  

try to control a power supply  with the power supply programmer,   as they call it, because that's  one of its main applications. And the documentation is a little bit hard to read  about that. There's a million ways to connect all   the power supplies. This way, that way, that  way, that way, which is the way I'm using. That way, that way, that way, that  way, that way, that way, that way,   that way, that way, that way, and that way! To do all kinds of stuff. You can  control current, voltage, etc... But it turns out, that there is a whole  bunch of power suppliers supported. And  

I see most of the ones I have, that  are not HP-IB, can be supported. This one is no exception, that's the 6226B. And what you have to do, is wire them  up, in this case it's only three wires.

Some of the ties have to be removed,   you have to add some other ones. It's quite  complicated, but I think I figured it out. So, we'll see we if we'll have gained  control of our power supply via a computer. Okay, so, I've never tried  it. We'll see if this works.

Wow, it looks like it's slightly  negative. I don't know what that means. I'm just outputting to address 6, this, 1000,  which should be the zero on the lower range. And this should light up if  it receives it. And it did! Uh, let's put it mid-range,  1500. And that didn't do diddly. On this range? No, it's negative. Let's go to one volt. Aha,  aha! It did something! Okay.

Oh, because I'm in the wrong mode!  I was in bipolar mode! All right,   so that's why it was negative before. 000, Exec... Ah, there we go! Now we  at zero! We're not negative anymore. 100... Yeah! 500... Weehee! There we go! And then you have to adjust the  full range. So, how do I do that? 2999, Exec... Whoop, that's a little too much.

Yeah, there you go. All  right! So now, I am matched. And that should program it to 10 volts... It did! So, let me write a little program here,  that shows that I have control over this. (Soon after...) All right, I have come up with this  masterpiece of software engineering,   which are two for loops in BASIC.

So, FOR I = 0 TO 15 STEP of 10, I just  scale it up by the right amount, and   send the result to the DAC. There's a little thing I have to do, because  it doesn't go to 1000, is just goes to 999. So it goes 10 20 30 40 50 volts. And on the  way down, I go down in steps of minus 1 volts.

And we run that, and we should  go up and down on our supply. And just to see how precise that  is, I put our digital meter. So, run... 10, 20, 30, 40, 50, 49, 48, 47, 46... So, it's remarkably precise, for going  from digital to analog, then driving   the power supply, then back to digital, and  we're falling back right on our feet here. See? Good old analog stuff from the 1980s.  Or 70s, for the power supply, actually 60s!

It's still good after 50 years! Three, two, one, zero... Here we go!

2025-04-20 12:29

Show Video

Other news

Атомная МОЩЬ Китая: 113 ГВт АЭС - ПРОПАГАНДА или Великое Чудо?! 2025-05-02 16:35
Verkada Command Demo: Complete Video Management in the Cloud 2025-05-01 22:05
Set Up Local AI with Home Assistant Using Ollama | Voice Assistant with Attitude! 2025-04-30 02:58