Rohde & Schwarz HAMEG HMC 8043 Power Supply

The Rohde & Schwarz HMC 8043: A 3 channel power supply 0-32V, max. 3A, 100W.

  • Total output power: 100W
  • Maximum current per channel: 3A for HMC8043
  • Half-19″ form factor, rack mountable
  • FuseLink, FuseDelay, EasyArb, EasyRamp
  • LXI, LAN, USB (TMC and virtual COM port)
  • Data logging directly to flash drive (csv file)

Network Communication

The default ports are:

  • Raw TCP: Port 5025
  • VXI: Port 1024

Raw TCP Communication

netcat 192.168.0.139 5025

Rohde&Schwarz,HMC8043,022156925,HW42000000,SW01.202
*IDN?
Rohde&Schwarz,HMC8043,022156925,HW42000000,SW01.202

SCPI Commands

From the SCPI commands manual (to be found in the resources section).

CMD Meaning
*CLS CLear Status
*ESE Event Status Enable
*ESR? Event Status Read
*IDN? IDeNtification
*OPC OPeration Complete
*RST ReSeT
*SRE Service Request Enable
*STB? STatus Byte query
*TST? self TeST query
*WAI WAIt to continue
  • SYSTem:BEEPer:STATe <Mode>
    Activates or deactivates the front panel control beeper.
  • SYSTem:BEEPer:STATe?
    Queries the state of the front panel control beeper. Returns “0” for deactivated (OFF) and “1” for activated (ON) control beeper.
  • SYSTem:BEEPer[:IMMediate]
    The instrument returns a single beep immediately.
  • SYSTem:ERRor[:NEXT]?
    Queries an error and removes it from the queue. Positive error numbers are instrument-dependent. Negative error numbers are reserved by the SCPI standard. If the queue is empty the response is 0, “No error“.
  • SYSTem:LOCal
    Sets the system to front panel control. The front panel control is unlocked. If the front panel control was locked with the SCPI command SYSTem:RWLock, the message box of the locked front panel on the HMC display will be disappeared.
  • SYSTem:REMote
    Sets the system to remote state. The front panel control is locked. By pushing the softkey button UNLOCK KEYS the front panel control will be activated.
  • SYSTem:RWLock
    Sets the system to remote state. The front panel control is locked and a message box is shown on the HMC display. You are only able to unlock the front panel control via SCPI command SYSTem:LOCal.
  • SYSTem:VERSion?
    Returns the firmware version and the version of the SCPI standard.
  • DISPlay:TEXT:CLEar
    Clears the text message box on the front display.
  • DISPlay:TEXT[:DATA] „<String>“
    Displays a text message box on the front display.
  • TRIGger:SLOPe {POSitive | NEGative}
    Defines the slope type of the external trigger input (terminal block).
  • TRIGger:SLOPe?
    Queries the slope type of the external trigger input (terminal block).

Configuration Commands:

Channel selection

  • INSTrument[:SELect] {OUTPut1 | OUTPut2 | OUTPut3 | OUT1 | OUT2 | OUT3}
    Selects a channel. Each channel of the power supply is considered as separate „instrument“, which is required by the SCPI standard.
  • INSTrument[:SELect]?
    Queries the channel selection.
  • INSTrument:NSELect {1 | 2 | 3}
    Numerical selction of a channel. Each channel of the power supply is considered as separate „instrument“, which is required by the SCPI standard.
  • INSTrument:NSELect?
    Queries the numerical channel selection.

Voltage setting

  • [SOURce:]VOLTage[:LEVel][:IMMediate][:AMPLitude] {<Voltage>| MIN | MAX}}
    Sets the voltage value of the selected channel.
  • [SOURce:]VOLTage[:LEVel][:IMMediate][:AMPLitude]? [MIN I MAX]
    Queries the voltage value of the selected channel.
  • [SOURce:]VOLTage[:LEVel][:IMMediate][:AMPLitude] {UP I DOWN}
    Increases resp. decreases the voltage value of the selected channel. The voltage step size will be defined with the VOLT:STEP command.
  • [SOURce:]VOLTage[:LEVel]:STEP[:INCRement) {<Numeric Value>| DEFault}
    Defines the voltage step size for the VOLT UP (VOLT DOWN) command.
  • [SOURce:]VOLTage[:LEVel]:STEP[:INCRement)? [Default)
    Queries the voltage step size

Current setting

  • [SOURce:]CURRent[:LEVel][:IMMediate][:AMPLitude] {<Current>| MIN | MAX}
    Sets the current value of the selected channel.
  • [SOURce:]CURRent[:LEVel][:IMMediate][:AMPLitude]? [MIN I MAX]
    Queries the current value of the selected channel.
  • [SOURce:]CURRent[:LEVel][:IMMediate][:AMPLitude] {UP I DOWN} Increases resp. decreases the current value of the selected channel. The current step size will be defined with the CURR:STEP command.
  • [SOURce:]CURRent[:LEVel]:STEP[:INCRement) {<Numeric Value>| DEFault}
    Defines the current step size for the CURR UP (CURR DOWN) command.
  • [SOURce:]CURRent[:LEVel]:STEP[:INCRement]? [Default]`
    Queries the current step size.

Combined setting of voltage and current

  • APPLy {<Voltage>|DEF|MIN|MAX} [,{<Current>|DEF|MIN|MAX}][,{OUT1|OUT2|OUT3}]
    Sets the voltage and current value of the selected channel.
  • APPLy?
    Queries the voltage and current value of the selected channel.

Output setting

  • OUTPut[:STATe] {OFF | ON | 0 | 1}
    Activates or deactivates the previous selected channel and turning on the master output. The selected channel and master output LED lights up. If the output will be turned off with OUTP OFF only the previous selected channel will be deactivated. After sending OUTP OFF command the master output button is still activated
  • OUTPut[:STATe]?
    Queries the output state.
  • OUTPut:CHANnel[:STATe] {OFF | ON | 0 | 1}
    Activates or deactivates the previous selected channel. The channel output LED ligths up. ( OUTPut:CHANnel[:STATe]?
    Queries the channel output state.
  • OUTPut:MASTer[:STATe] {OFF | ON | 0 | 1}
    Turning on / off all previous selcted channels simultaneously.
  • OUTPut:MASTer[:STATe]?
    Queries the master output state.

Fuse setting

  • FUSE[:STATe] {ON | OFF | 0 | 1}
    Activates or deactivates the fuse for the previous selected channel.
  • FUSE[:STATe]?
    Queries the fuse state of the previous selected channel.
  • FUSE:DELay {<Delay>| MIN | MAX}
    Defines a fuse delay for the previous selected channel.
  • FUSE:DELay? [MIN I MAX]
    Queries the fuse delay time for the previous selected channel.
  • FUSE:LINK {1 | 2 | 3}
    Combines the channel fuses (fuse linking) for the previous selected channel. Each channel fuse can be linked together (depending on the instrument type).
  • FUSE:LINK? {1 | 2 | 3}
    Queries the combined fuses. If the fuse of channel 1 is linked with fuse of channel 2, a „1“ is returned; when the fuse of channel 1 is not linked to the fuse of channel 2, it returns a „0“.
  • FUSE:TRIPed?
    Queries the fuse trip of the previous selected channel.

OVP setting

  • [SOURce:]VOLTage:PROTection[:STATe] {OFF | ON | 0 | 1}
    Activates or deactivates the OVP for the previous selected channel.
  • [SOURce:]VOLTage:PROTection[:STATe]?
    Queries the OVP state of the previous selected channel.
  • [SOURce:]VOLTage:PROTection:LEVel {<Voltage>| MIN | MAX | DEF} Sets the OVP value of the previous selected channel.
  • [SOURce:]VOLTage:PROTection:LEVel? [MIN | MAX | DEF] Queries the OVP value of the previous selected channel.
  • [SOURce:]VOLTage:PROTection:TRIPped?
    Queries the OVP state of the previous selected channel.
  • [SOURce:]VOLTage:PROTection:CLEar
    Resets the OVP state of the selected channel. If the OVP has tripped the OVP message on the display will be cleared for the selected channel.
  • [SOURce:]VOLTage:PROTection:MODE {MEASured | PROTected}
    Sets the OVP mode for the previous selected channel.
  • [SOURce:]VOLTage:PROTection:MODE?
    Returns the OVP mode for the previous selected channel.

OPP setting

  • [SOURce:]POWer:PROTection[:STATe] {OFF | ON | 0 | 1}
    Activates or deactivates the OPP for the previous selected channel.
  • [SOURce:]POWer:PROTection[:STATe]?
    Queries the OPP state of the previous selected channel.
  • [SOURce:]POWer:PROTection:LEVel {<Power>| MIN | MAX | DEF}
    Sets the OPP value of the previous selected channel.
  • [SOURce:]POWer:PROTection:LEVel? [MIN | MAX | DEF]
    Queries the OPP value of the previous selected channel.
  • [SOURce:]POWer:PROTection:TRIPped?
    Queries the OPP state of the previous selected channel.
  • [SOURce:]POWer:PROTection:CLEar
    Resets the OPP state of the selected channel. If the OPP has tripped the red blinking OPP message on the display will be cleared for the selected channel.

Measurement Commands

  • MEASure[:SCALar]:CURRent[:DC]?
    Queries the measured current value of the previous selected channel.
  • MEASure[:SCALar][:VOLTage][:DC]?
    Queries the measured voltage value of the previous selected channel.
  • MEASure[:SCALar]:POWer?
    Queries the measured power value of the previous selected channel.
  • MEASure[:SCALar]:ENERgy?
    Queries the measured the current released energy value of the previous selected channel. Please notice that the energy meter has to be activated to measure the current released energy value.
  • MEASure[:SCALar]:ENERgy:STATe {ON | OFF | 0 | 1}
    Activates or deactivates the energy meter function.
  • MEASure[:SCALar]:ENERgy:STATe?
    Queries the energy meter state of the the previous selected channel.
  • MEASure[:SCALar]:ENERgy:RESet
    Resets the energy meter value of the previous selected channel.

Arbitrary commands

  • ARBitrary[:STATe] {ON | OFF | 0 | 1}
    Activates or deactivates the arbitrary function for the previous selected channel.
  • ARBitrary[:STATe]?
    Queries the arbitrary function state of the the previous selected channel.
  • ARBitrary:DATA <Data>
    Defines the arbitrary points for the previous selected channel. Max. 512 arbitrary points can be defined. The dwell time between 2 arbitrary points is specified from 10ms to 10 min.
  • ARBitrary:DATA?
    Queries the defined arbitrary points for the previous selected channel.
  • ARBitrary:REPetitions <Repetitions>
    Defines the repetition rate of the defined arbitrary waveform for the previous selected channel. Up to 255 repetitions are possible. If the repetition rate „0“ is selected the arbitrary waveform of the previous selected channel will be repeated infinitely.
  • ARBitrary:REPetitions?
    Queries the defined repetition rate of the previous selected channel.
  • ARBitrary:ENDPoint <Endpoint>
    Defines the arbitrary waveform endpoint of the selected channel. Max. 512 arbitrary points can be defined.
  • ARBitrary:ENDPoint?
    Queries the defined arbitrary waveform endpoint of the selected channel.
  • ARBitrary:CLEar
    Clears the previous defined arbitrary waveform data for the selected channel.
  • ARBitrary:TRIGgered[:STATe] {ON | OFF | 0 | 1}
    Activates or deactivates the trigger input on the rear connector (terminal block) for arbitrary functionality.
  • ARBitrary:TRIGgered[:STATe]?
    Queries the trigger input state of the the previous selected channel.
  • ARBitrary:TRIGgered:MODE {SINGle | RUN}
    Selects the arbitrary trigger mode of the previous selected channel.
  • ARBitrary:TRIGgered:MODE?
    Queries the arbitrary trigger mode of the previous selected channel.
  • ARBitrary:FNAMe {<“File_Name“>},[{INT | EXT | DEF}]
    Defines the file name and storage location for the arbitrary function.
  • ARBitrary:FNAMe?
    Queries the file name and storage location for the arbitrary function.
  • ARBitrary:SAVE
    Stores the previous defined arbitrary points of the selected channel to the selected memory with the defined file name.
  • ARBitrary:LOAD
    Loads the stored arbitrary waveform of the previous selected channel and memory.

Advanced operating functions:

Analog In

  • [SOURce:]VOLTage:AINPut[:STATe] {OFF | ON | 0 | 1}
    Activates or deactivates the Analog In function for the previous selected channel.
  • [SOURce:]VOLTage:AINPut[:STATe]?
    Queries the Analog In function state of the the previous selected channel.
  • [SOURce:]VOLTage:AINPut:INPut {VOLTage | CURRent}
    Selects the input unit of the Analog In connector (terminal block) on the rear panel.
  • [SOURce:]VOLTage:AINPut:INPut?
    Queries the input unit of the Analog In connector (terminal block) on the rear panel.
  • [SOURce:]VOLTage:AINPut:MODE {LINear | STEP}
    Selects the mode of the Analog In connector (terminal block) on the rear panel.
  • [SOURce:]VOLTage:AINPut:MODE?
    Queries the mode of the Analog In connector (terminal block) on the rear panel.
  • [SOURce:]VOLTage:AINPut:THReshold {<Threshold>| MIN | MAX | DEF}
    Sets the threshold for the Analog In mode STEP.
  • [SOURce:]VOLTage:AINPut:THReshold?
    Queries the threshold of the Analog In mode STEP.

EasyRamp

  • [SOURce:]VOLTage:RAMP[:STATe] {OFF | ON | 0 | 1}
    Activates or deactivates the EasyRamp function for the previous selected channel.
  • [SOURce:]VOLTage:RAMP[:STATe]?
    Queries the EasyRamp function state of the the previous selected channel.
  • [SOURce:]VOLTage:RAMP:DURation {<Duration>| MIN | MAX | DEF}
    Sets the duration of the voltage ramp.
  • [SOURce:]VOLTage:RAMP:DURation?
    Queries the duration of the voltage ramp.

Sequencing

  • SEQuence[:STATe] {ON | OFF | 0| 1}
    Activates or deactivates the power sequencing function.
  • SEQuence[:STATe]?
    Queries the power sequencing function state.
  • SEQuence:CHANnel[:STATe] {ON | OFF | 0 | 1}
    Activates or deactivates the power sequencing delay of the previous selected channel.
  • SEQuence:CHANnel[:STATe]?
    Queries the power sequencing dely of the previous selected channel.
  • SEQuence:DELay {<Delay>| MIN | MAX}
    Defines the power sequencing delay of the previous selected channel.
  • SEQuence:DELay?
    Queries the power sequencing delay of the previous selected channel.
  • SEQuence:TRIGgered {ON | OFF | 0 | 1}
    Activates or deactivates the power sequencing trigger function of the previous selected channel.
  • SEQuence:TRIGgered?
    Queries the state of the power sequencing trigger function.

Still missing from this list:

  • Data and File Management
  • Status Reporting

VXI-11 Shell

https://github.com/pklaus/HMC-8043

pip install python-vxi11
pip install https://github.com/pklaus/HMC-8043/archive/master.zip

Then run the VXI11 console that's included:

hmc-8043-shell 192.168.0.14
vxi11 > INSTrument:NSELect?
1
vxi11 > APPLy?
1.100E+00, 1.000E+00
vxi11 > OUTPut?
0
vxi11 > OUTPut:STATe?
0
vxi11 > OUTPut:CHANnel?
0
vxi11 >

Resources

Comments