Skip to content

Sebastian Harnisch

  • Categories
  • Tags
  • Search
  • Tools
  • Measurements
  • Imprint
  • Privacy policy
  • 20230714_190902745_iOS

    Progammable Decade Resistor: Calibration results

    July 15, 2023

    In one of the previous I covered in depth, how I use the term “calibration” in the context of the programmable decade resistor and how the calibration procedure works. Today it’s all about the result.

  • 20230617_155717412_iOS

    Programmable Decade Resistor: Warm-up curve

    July 7, 2023

    Generally, test and measurement equipment needs a certain period of warm-up time to provide low drift. That is also true for the programmable decade. I’m especially interested in the warm-up time with all relays off as well as with many relays on. I chose a value of 100 kΩ100\text{ k}\Omega for the second test. (For simplicity I decided against using latching relays, however that would be a better choice performance-wise as mentioned before. Due to the additional power dissipation in the relay coils the curves will look different.)

  • 20230617_155356512_iOS

    Programmable Decade Resistor: Final Product

    June 23, 2023

    In this post I’ll show a few pictures of the programmable decade resistor in its enclosure. Inside the unit Mainboard with some powered relays Rear panel: Optional terminals for channel 2, digital inputs, USB, power and fuse Unit with the case closed

  • mainboard_ausschnitt

    Programmable Decade Resistor: Mainboard

    June 14, 2023

    The mainboard features the main controller paired with an EEPROM, the resistor decades (precision resistors, signal relays) including two temperature sensors, relay drivers and signal conditioning for the two external digital inputs. Main controller The main controller is a STM32G441KBT6 microcontroller (170MHz Cortex M4, 128kB Flash, 32kB RAM). The microcontroller features a USB 2.0 device peripheral.

  • 20230602_153929609_iOS

    Breakout box for Agilent 6611B AC Power Source

    June 7, 2023

    I got my Agilent 6611B AC power source/analyzer a few weeks back, but hadn’t used it as much as I wanted. The reason was simple: The connections are made with rear mounted screw terminals - hence it was just a bit inconvenient to interface with products and circuits. The solution was really simple: A Hammond Manufactoring enclosure equipped with a European " Schuko"-style power outlet and some additional safety-banana jacks for prototyping.

  • block_diagram

    Programmable Decade Resistor: System Design

    June 1, 2023

    The block diagram provides an overview of the different circuit groups of each functional block, their internal connections and external interfaces. The Programmable Decade Resistor consists of three main functional blocks: Power supply (Power Supply Board) Programmable decades, control and driver circuits (Mainboard) User Interface (User Interface Board) The power supply board uses an off-the-shelve AC/DC converter to provide a +15V rail. The +15V rail powers the relays on the mainboard as well as a DC/DC converter. A single DC/DC converter generates a +3.3V supply for both the mainboard and the UI board, including the LED display. The power rails are earth-referenced. (Nevertheless, the inputs of the Programmable Decade Resistor are floating thanks to the isolation of the relays.)

  • Screenshot 2023-04-26 195928

    Programmable Decade Resistor: Switching (3)

    May 25, 2023

    Now that we have a calibrated programmable resistance decade, we can try to make the programmable decade resistor more accuracte - for higher resistance values. Actually, the idea behind that is trivial. I’d like to start with an example in which we set a resistance value of Rset=100.000 kΩR_{set} = 100.000\text{ k}\Omega. (Let’s not worry about temp drift, contact resistance etc.) In my case all resistors have a specified tolerance of 0.1%0.1\%. So we’d expect a resistance somewhere in the range of

  • 20230518_102646675_iOS

    Displaying graphics and text on an oscilloscope screen

    May 18, 2023

    While playing with an old Hameg HM504 and the Tektronix 465B oscilloscope that I repaired recently, I thought that I should do yet another mandatory tinker project: Using a microcontroller to write text on an oscilloscope screen via the XYZ-mode. And so I designed a small USB powered board around the STM32G441KBT6 which seems to be my go-to microcontroller nowadays. Its fairly capable dual channel 12-bit DAC (up to 5 MSPS) comes in really handy for generating the x- and y-components. Initially I thought about using a discrete 8-bit R2R network to modulate the brightness with the Z input, but after testing the circuit I finally decided keep it simple and just implement blanking with just a single GPIO output.

  • prog_res_calibration

    Programmable Decade Resistor: Switching (2)

    May 11, 2023

    In the last post we had a look at the short circuit performance of a decade. This time I want to address the question whether we can make the resistor decade more accurate, despite the fact that the design doesn’t feature any mechanism ( e. g. potentiometer) to adjust resistance values. The short answer: Yes, partially. But first things first.

  • 20230204_151947578_iOS

    Programmable Decade Resistor: Switching (1)

    April 29, 2023

    In the previous posts we discussed the topology selection as well as the power handling capabilities of the decade resistor. Now it’s time to have a look at different aspects of switching. Today it’s all about the effect of the contact resistance of the relays, which impacts the performance of the decade resistor, not only, but especially when a decade is shorted.

← Newer 1 2 3 4 5 6 Older →

This website does not use cookies, but stores technically necessary settings and data (e.g. theme, app configuration) in your browser's local storage. See privacy policy for details on data processing on this website.

© 2026 Sebastian Harnisch