Load transient response testing using MOSFET switch

The load transient response illustrates a power supply's ability to respond to abrupt changes in load current. The simplest way to achieve that is to use a MOSFET as a fast switch that will connect an additional load in parallel, increasing output current. The output voltage is shown on the scope image in yellow trace and the voltage on the MOSFET input in blue.

 

Fig. 1: Load transient response tested with MOSFET switch

Short circuit recovery

Testing short circuit can be also done using the MOSFET switch, but that is directly connected to the power supply’s output terminals. The output voltage is set to 6 V. The output current is also set to a maximum value of 5 A. On Fig. 2, the yellow trace is the output voltage, and the blue trace the MOSFET gate signal. Measured recovery from a shorted output is below 2 ms.

 

Fig. 2: Short circuit recovery

Capacitive load

The Capacitive load testing is performed by simply connecting a capacitor to the output terminals with oscilloscope probe already connected, A huge output voltage drop is expected from an uncharged capacitor. Fig. 3 shows what happened when the output voltage is set to 30 V and a 10 000 μF electrolytic capacitor is connected. The output after recovery remains stable, without sign of oscillation.

 

Fig. 3: Output voltage drop when a 10 000 μF uncharged capacitor is connected

 

When down-programmer is present and activated (that is a default for the DCP405 module) it is important to check how it behaves with huge capacitive load connected while programmed output voltage varies. Fig. 4 shows voltage that output voltage rises and falls without visible oscillations when 2200 μF is connected on the output and no resistive load is presented. The down-programmer needs only 20 ms to discharge such huge load (charged to 30 V). It has to dissipate that in heat. Therefore performing such testing with high frequency will rise the main heatsink temperature considerably, but MCU will acts by increasing cooling fan speed accordingly.

 

Fig. 4: Charge and discharge of 2200 μF capacitor (Down-programmed enabled)

Inductive load

The DCP405 module behavior with the connected inductive load is tested by repetitively applying 100 μH power inductor using once again the MOSFET switcher. Output voltage is set to 30 V and current to 5 A. Power output (yellow trace) does not shows any sign of oscillation.

 

Fig. 5: Output voltage with 100 μH inductive load connected

Output voltage programming (internal DAC)

Testing the output voltage programming can demonstrate undesirable overshoots or undershoots when the output voltage is changed rapidly. In addition this test can give us an idea of responsiveness of the complete system (i.e. power supply firmware, and the settling time of the output). The result shown in Fig. 6 was generated by step change the output voltage from 5 V to 40 V, with no load connected. The programming period is just 6 ms (167 Hz).

 

Fig. 6: Fast programming (via SCPI LIST), full range, no load

The rising time without load connected for full range step (i.e. 0 to 40 V) is shown on Fig. 7. and falling time (with down-programmer activated) on Fig. 5.

 

Fig. 7: Output voltage rising time (no load, full range)

 

Fig. 8: Output voltage falling time (no load, full range)

Output voltage programming (external signal source)

The DCP405 power module can be also programmed from an external source using the protected input accessible via the front panel push-in connector. As in the case of internal programming, +2.5 V is required for full scale. In this operating mode it is possible to measure the maximum settling time because the input analog control signal is applied directly to the CV control loop.

A square wave and sine wave programming external signals are used to get results shown in Fig. 9 and Fig. 10. Since sine wave programming could goes up to 400 Hz it could be used to emulate ripple of fully rectified mains ripple (i.e. 100 or 120 Hz).

 

Fig. 9: Output voltage programming from external source (100 Hz square wave)

 

Fig. 10: Output voltage programming from external source (400 Hz sine wave)

Change the mode of operation (CV/CC)

The DCP405 changes its operational mode when a particular programmed output value is reached. A sudden change in resistance that could change a mode of operation must be “smooth” – no oscillation nor overshooting are permitted during a transition. This test was performed by repetitively connecting and disconnecting an additional load with a MOSFET switcher driven by the signal generator (blue trace). The output voltage was set to 40 V and current limited to 500 mA. Therefore when the right load is applied, the DCP405 module should change mode from CV to CC which will cause the output voltage to drop as shown on Fig. 11.

 

Fig. 11: Mode of operation changes

Power on, forced power off, standby and soft reset

When the power module is powered on or off, the output voltage should show no signs of overshoot. Powering on with output voltage set to 30 V is shown on Fig. 12. and powering off on Fig. 13.

 

Fig. 12: Power on, Vout=30 V, no load connected

 

Fig. 13: Power off (AC main unplugged), Vout=30 V, no load connected

Entering standby mode is equal to powering off but preformed under firmware control. Therefore its possible to disable power output first and then remove the input power. The results is visible on Fig. 14.

 

Fig. 14: Entering the stand-by mode, Vout = 25 V, no load connected

Executing soft start is similar to standby mode but without removing input power. Therefore the output voltage drop is even faster since post-regulator control circuits remain functional, output voltage is set to zero, and output capacitor discharge is assisted by down-programmer (Fig. 15.).

 

Fig. 15: Output voltage drop on soft reset

Down-programmer

The down-programmer circuit rapidly draws off the energy stored in the output capacitor and connected device’s input capacitor. Effectively, it sinks the current from the capacitors back inside the power module where it is dissipate into heat. If programmed voltage drop in short period of time (tens of milliseconds) is large (e.g. 30 V to 0 V), the output voltage without down-programmer cannot be set as it is shown in Fig. 16. The same voltage drop can be easily accomplished with down-programmer circuit enabled (Fig. 17.)

 

Fig. 16: 30 V step without load and down-programmed disabled

 

Fig. 17: 30 V step without load and down-programmed enabled

HW (crowbar) OVP

The DCP405 module comes with both software and hardware OVP (over-voltage protection). The response time of the software based OVP is limited by the execution speed of firmware that take care of all modules and has to periodically check if set OVP threshold is reached or not. It could be too slow when protection of the sensitive connected device is needed that cannot tolerate more then few percents over its nominal supply voltage.

Operation of the hardware based OVP on the other side is not affected with other tasks that MCU has to accomplish since it is accomplished by dedicated circuit to monitor output voltage. Therefore it can act as fast as that circuit can reacts (i.e. its crowbar element in the first place).

Hardware OVP circuit has fixed threshold level that is set to approximately 5% above programmed output voltage. On Fig. 18, the output voltage is set to 30 V and “error” voltage of 31.5 V is applied from external source on the DCP405's power output terminals. The response time is within 20 μs that is almost two order of magnitude better then software based OVP. The similar response time of about 30 μs can be measured for lower set output voltage, e.g. 3.3 V as shown on Fig. 19.

 

Fig. 18: OVP tripped on Vout = 30 V

 

Fig. 19: OVP tripped on Vout = 3.3 V

Output ripple and noise (PARD)

The PARD (Periodic and Random Deviation) that exists on the power output is caused mainly by switching power pre-regulator and to some extent by bias power supply noise because the post-regulator circuit has limited ability to reject such switching noise. Since PARD consists of low level, broadband signals, major test set concerns are ground loops, proper shielding, and impedance matching. PARD measurement setup is shown on Fig. 20. To block the DC current a 4.7 μF capacitor is connected in series with the signal path, and to eliminate cable ringing and standing waves 50 Ω in-line terminator is used. Protective Earth (PE) of DSO and power module are directly connected to reject common mode noise as shown on Fig. 21.

 

Fig. 20: PARD measurement setup

 

Fig. 21: PARD measurement setup on DSO side

 

On Fig. 22 is shown DSO own noise when its input is shorted to ground and give us an idea about error that should be taken into account when measuring low level signals such as PARD.

 

Fig. 22: DSO noise (grounded input)

On the power module side, an additional 22 μF elco + 1 μF MLCC are used where probing is taken place (Fig. 23) because we cannot perform measurement directly on the Cout that is tens of millimeters far away behind the power module front panel. That gives us result shown on Fig. 24 for output current of 1.5 A.

 

Fig. 23: PARD measurement on power module output with decoupling, Iout = 1.5 A

 

Fig. 24: Output ripple and noise, Iout = 1.5 A

 

As an example of how setup of such measurement is sensitive, the PARD is also measured on the output of BNC adapter without additional output decoupling on the power terminals (Fig. 25). The results looks much worse but still below 10 mVpp.

 

Fig. 25: PARD measurement on BNC adapter, Iout = 1.5 A

 

Fig. 26: Output ripple and noise, Iout = 1.5 A

 

 

 

 

 

Add a comment

5.6. HCOPy

The Hardcopy commands are used to print the entire display to a specified file rather than “printing” to an external device.

 

SCPI command

Description

HCOPy

 

[:IMMediate]

Initiates hardcopy output

:DESTination {<destination>}

Sets the hardcopy destination

:SDUMp[:IMMediate]

Initiates hardcopy output

5.6.1. HCOPy:DESTination

Syntax

HCOPy:DESTination {<destination>}

Description

Not implemented yet

 

This command sets the hardcopy destination. The destination is always set to MMEMory (i.e. SD Card). This command is included only for compatibility with the SCPI standard. The destination file on the mass memory device is specified by the MMEMory:NAME command.

Usage example

HCOPY:DEST MMEM

Related Commands

MMEMory:CLOSe

MMEMory:NAME

MMEMory:OPEN

5.6.2. HCOPy[:IMMediate]

Syntax

HCOPy[:IMMediate]

Description

Not implemented yet

 

This command immediately initiates hardcopy output according to the current HCOPy setup parameters. This command is the same as HCOPy:SDUMp[:IMMediate].

Usage example

MMEM:NAME "sample1.png"

MMEM:OPEN

HCOP:DEST "MMEM"

HCOP

MMEM:CLOS

Related Commands

HCOPy:DESTination

HCOPy:SDUMp[:IMMediate]

5.6.3. HCOPy:SDUMp[:IMMediate]

Syntax

HCOPy:SDUMp[:IMMediate]

Description

Not implemented yet

 

This command initiates a screen dump of the entire TFT display's screen, and is the same as the HCOPy[:IMMediate] command.

Usage example

MMEM:NAME "sample2.png"

MMEM:OPEN

HCOP:DEST "MMEM"

HCOP:SDUM

MMEM:CLOS

Related Commands

HCOPy:DESTination

HCOPy[:IMMediate]

 

Add a comment

 

Common command

Description

*CLS

Clears all status data structures

*ESE {<value>}

Programs the Standard Event Status Enable register bits

*ESR?

Reads the Standard Event Status Register

*IDN?

Returns the UNIQUE identification of the BB3

*OPC

Operation Complete Command used for program synchronization

*RCL {<profile>}

Recalls the BB3 state stored in the specified storage location

*RST

Reset BB3 to the initial state

*SAV {<profile>}

Stores the current BB3 state in the specified storage location

*STB?

Reads the Status Byte register

*TRG

Generates a software trigger

*TST?

Returns Self-Test results

*WAI

Waits until all pending commands are completed

 

SCPI Command

Description

ABORt

Resets the trigger system to the Idle state

:DLOG

Stops the internal data logging session

CALibrate[:MODE] {<bool>, <password>}

Enables/disables calibration mode

:CLEar {<password>}

Clears all calibration parameters

:CURRent

 

[:DATA] {<new value>}

Enters the calibration value

:LEVel {<level>}

Calibrates the output current programming

:RANGe {<range>}

Sets current range for multiple current range model

:PASSword

 

:NEW {<old>, <new>}

Changes calibration password

:REMark {<string>}

Saves calibration information

:SAVE

Saves the new cal constants in non-volatile memory

:STATe {<bool>, <password>}

Enables calibration parameters

:VOLTage

 

[:DATA] {<new value>}

Enters the calibration value

:LEVel {<level>}

Calibrates the output voltage programming

DIAGnostic

 

[:INFOrmation]

 

:ADC?

Returns the latest values acquired by ADC

:CALibration?

Returns a list of the calibration parameters

:FAN?

Returns status of the cooling fan.

:PROTection?

Returns the information about all protections.

:TEST?

Returns results of the most recent self-test

DISPlay

 

:BRIGhtness {<value>}

Sets the intensity of the front panel TFT display

:CMAP {<palette>}

Sets color palette (theme)

:CMAP:COLor:CATalog?

Returns names and RGB values of all available colors

:CMAP:COLor[:RGB] {<name>, <red>, <green>, <blue>}

Sets RGB value for the selected color

:DATA?

Reads screen image data

:MODE {<mode>}

Sets the main page appearance

[:WINdow]

 

[:STATe] {<bool>}

Sets the front panel TFT display state

:TEXT {<message>}

Displays a message on the front panel TFT display

:CLEar

Clear a message on the front panel TFT display

INITiate

 

[:IMMediate]

Completes one full trigger cycle

:DLOG {<filename>}

Enables internal data log session

:CONTinuous {<bool>}

Enables/disables continuous transient triggers

INSTrument

 

[:SELect] {<channel>}

Selects the output to be programmed

:CATalog?

Returns a quoted string of the list of valid choices for the instrument channels

:FULL?

Returns a list of string – number pairs

:COUPle

 

:TRACking {<type>}

Selects independent, parallel-tracking, or series-tracking mode

:DISPlay

 

:TRACe[<n>] {<value>}

Selects output value on the specified display trace

:SWAP

Swaps positions of selected output values

:YT

 

:RATE {<duration>}

Selects YT view sample duration

:NSELect {<channel>}

Selects the output to be programmed

MEASure

 

[:SCALar]

 

:CURRent

 

[:DC]? [<channel>]

Takes a measurement; returns the average current

:POWer

 

[:DC]? [<channel>]

Takes a measurement; returns the average power

:TEMPerature

 

[:DC]? {<sensor>}

Takes a measurement; returns the average temperature

[:VOLTage]

 

[:DC]? [<channel>]

Takes a measurement; returns the average voltage

MEMory

 

:NSTates?

Returns total number of state storage memory locations

:STATe

 

:CATalog?

Lists the names associated with all ten state storage locations

:DELete {<profile>}

Deletes the contents of a state storage location

:ALL

Deletes the contents of all state storage locations

:NAME {<profile>, <name>}

Assigns a custom name to a state storage locations

:RECall

 

:AUTO {<bool>}

Specifies whether the power-down state is recalled from location 0 on power-on

:SELect {<profile>}

Specifies which BB3 state will be used at power on

:VALid? {<profile>}

Determines whether a storage location contains a valid state

MMEMory

 

:CATalog [<directory>]

Returns a list of items in the specified directory (folder)

:LENgth [<directory>]

Returns the number of items in the specified directory

:CDIRectory {<directory>}

Changes the current directory

:COPY {<source>}, {<destination>}

Copies <source> to <destination>

:DATE? {<filename>}

Returns date that the specified file was last saved

:DELete {<filename>}

Deletes an existing file

:DOWNload

 

:ABORt

Aborts current download session

:DATA :DATA {#<length>,<encoding>,<block>}

Downloads data from the host computer

:FNAMe {<filename>}

Creates or opens the specified filename for download data

:SIZE {<filesize>}

Sets information about file size used for progress bar

:LOAD

 

:LIST[<n>] {<filename>}

Loads stored LIST to the specified channel

:PROFile {<filename>}

Loads stored user profile

:STATe {<filename>}

Loads the instrument setup

:LOCK {<password>}

Sets write protection

:MDIRectory {<directory>}

Makes a new directory

:MOVE {<source>}, {<destination>}

Moves or renames <source> to <destination>

:RDIRectory {<directory>}

Removes the specified directory

:STORe

 

:LIST[<n>] {<filename>}

Saves specified channel LIST

:PROFile {<filename>}

Saves specified user profile

:STATe {<filename>}

Saves the instrument setup

:TIME? {<filename>}

Returns time that the specified file was last saved

:UNLock {<password>}

Clears write protection

:UPLoad? {<filename>}

Uploads data to the host computer

OUTPut

 

[:STATe] {<bool>}

Enables the specified output channel(s)

TRIGgered {<bool>} [, <channel>]

Controls channel output state with trigger

:MODE?

Returns the channel mode of operation

:PROTection

 

:CLEar

Resets latched protection

:COUPle {<bool>}

Enables channel coupling for protection faults

:TRACk[:STATe] {<bool>}

Enables channels to operate in the track mode

SIMUlator

 

:EXIT

Closes simulator

:GUI

Starts simulator’s GUI

:LOAD {<value>}

Sets value of the virtual load

:STATe {<bool>}

“Connects” virtual load to the channel output

:PIN1 {<bool>}

Sets value of the PIN1 input

:PWRGood {<bool>}

Sets the PWRGOOD signal state

:RPOL {<bool>}

Sets the RPOL signal state

:TEMP {<value>}

Sets the temperature sensor value

:VOLT:PROG:EXT {<voltage>}

Sets the output voltage when channel is in external programming mode

SENSe

 

:CURRent

 

[:DC]

 

RANGe[:UPPer] {<range>}

Selects a DC current measurement range

AUTO {<bool>}

Enables/disables seamless measurement auto ranging

:DLOG

 

:FUNCtion

 

:CURRent {<bool>}, {<channel>}

Enables/disables output current internal data logging

:POWer {<bool>}, {<channel>}

Enables/disables output power internal data logging

:VOLTage {<bool>}, {<channel>}

Enables/disables output voltage internal data logging

:PERiod {<time>}

Sets the sample period for internal data logging

:TIME {<time>}

Sets the sample duration for internal data logging

[SOURce[<n>]]

 

:CURRent

 

[:LEVel]

 

[:IMMediate][:AMPLitude] {<current>}

Sets the output current

:STEP[:INCRement] {<step>}

Sets the step of the current change

:TRIGgered [:AMPLitude] {<current>}

Sets the triggered output current

:LIMit

 

[:POSitive][:IMMediate][:AMPLitude] {<current>}

Sets the output current limit

:PROTection

 

:DELay

 

[:TIME] {<time>}

Sets the over-current protection (OCP) programming delay

:STATe {<bool>}

Enables/disables over-current protection on the selected channel

:TRIPped?

Returns status of over-current protection activation

:LIST

 

:COUNt

Sets the number of times that the list is executed

:CURRent[:LEVel]

Specifies the current setting for each list step

:DWELl

Specifies the dwell time for each list step

:VOLTage[:LEVel]

Specifies the voltage setting for each list step

:POWer

 

:LIMit {<power>}

Sets the output power limit

:PROTection[:LEVel]

Sets the over-power protection (OPP) level

:DELay

 

[:TIME] {<time>}

Sets the over-power protection programming delay

:STATe {<bool>}

Enables/disables over-power protection on the selected channel

:TRIPped?

Returns status of over-power protection activation

:VOLTage

 

[:LEVel]

 

[:IMMediate][:AMPLitude] {<voltage>}

Sets the output voltage

:STEP[:INCRement] {<step>}

Sets the step of the voltage change

:TRIGgered [:AMPLitude] {<voltage>}

Sets the triggered output voltage

:LIMit

 

[:POSitive][:IMMediate][:AMPLitude] {<voltage>}

Sets the output voltage limit

:PROGram[:SOURce] {<source>}

Sets voltage programming source

:PROTection[:LEVel]

Sets the over-voltage protection (OVP) level

:DELay

 

[:TIME] {<time>}

Sets the over-voltage protection (OVP) programming delay

:STATe {<bool>}

Enables/disables over-voltage protection on the selected channel

:TRIPped?

Returns status of over-voltage protection activation

:SENSe[:SOURce] {<source>}

Sets voltage sense inputs source

STATus

 

:OPERation

 

[:EVENt]?

Returns the value of the Operation Event register

:CONDition?

Returns the value of the Operation Instrument Condition register

:ENABle {<value>}

Enables specific bits in the Operation Event register

:INSTrument[<n>]

 

[:EVENt]?

Returns the value of the Operation Instrument Event register

:CONDition?

Returns the value of the Operation Instrument Condition register

:ENABle {<value>}

Enables specific bits in the Operation Instrument Event register

:ISUMmary<n>

 

[:EVENt]?

Returns the value of the Operation Instrument Isummary Event register

:CONDition?

Returns the value of the Operation Instrument Isummary Condition register

:ENABle {<value>}

Enables specific bits in the Operation Instrument Isummary Event register

:PREset

Presets all enable registers to power-on state

:QUEStionable

 

[:EVENt]?

Returns the value of the Questionable Event register

:CONDition?

Returns the value of the Questionable Condition register

:ENABle {<value>}

Enables specific bits in the Questionable Event register

:INSTrument[<n>]

 

[:EVENt]?

Returns the value of the Questionable Instrument Event register

:CONDition?

Returns the value of the Questionable Instrument Condition register

:ENABle {<value>}

Enables specific bits in the Questionable Instrument Event register

:ISUMmary<n>

 

[:EVENt]?

Returns the value of the Questionable Instrument Isummary Event register

:CONDition?

Returns the value of the Questionable Instrument Isummary Condition register

:ENABle {<value>}

Enables specific bits in the Questionable Instrument Isummary Event register

SYSTem

 

:BEEPer[:IMMediate]

Issues a single beep immediately

:STATe {<bool>}

Enables beeper function

:KEY

 

:STATe {<bool>}

Enables click tone for local control

:CAPability?

Returns an <instrument_specifier>

:CHANnel

 

[:COUNt]?

Returns the number of output channels

:INFOrmation

 

:AHOur

 

TOTal?

Returns channel’s total delivered energy in Ah

:CURRent?

Returns output current capability

:ONtime

 

LAST?

Returns time passed after last output enable

TOTal?

Returns channel’s total active time

:POWer?

Returns output power capability

:PROGram?

Returns programmable features of the channel

:VOLTage?

Returns output voltage capability

:WHOur

 

TOTal?

Returns channel’s total delivered energy in Wh

:MODel?

Returns the channel model identification

:COMMunicate

 

:ENABle {<bool>, <interface>}

Enables the remote interface

:ETHernet

 

:ADDRess {<ip_address>}

Sets the static LAN (IP) address

:DHCP {<bool>}

Enables the use of the Dynamic Host Configuration Protocol (DHCP)

:DNS <ip_address>

Sets the IP address of the DNS server.

:GATEway {<ip_address>}

Sets the IP address of the default gateway

:MAC?

Returns the MAC address

:PORT {<number>}

Sets the port number

:SMASk {<mask>}

Sets the static subnet mask

:NTP {<server>}

Set s NTP service server address

:RLSTate {<state>}

Places the instrument in remote or local mode

:SERial

 

:BAUD {<speed>}

Sets the baud rate (speed)

:PARity {<parity>}

Sets the parity mode

CPU

 

:INFOrmation

 

:ETHernet

 

:TYPE?

Returns the type of Ethernet controller

:ONtime

 

LAST?

Returns time passed after last power on

TOTal?

Returns BB3’s total active time

:TYPE?

Returns the type of CPU

:MODel?

Returns the control board model identification

:OPTion?

Returns information about installed options on the control board

:DATE {<yyyy>,<mm>,<dd>}

Sets the date of the system clock

:DIGital

 

:INPut:DATA? [<pin>]

Reads the state of the digital port pins

:OUTPut:DATA [<pin>] {<state>}

Sets the state of the digital port pins

:PIN<n>

 

:FUNCtion {<function>}

Sets the selected pin’s function

:POLarity {<polarity>}

Sets the selected pin’s polarity

:TOUTput

 

:BUS[:ENABle] {<Bool>}

Enables/disables BUS-generated triggers on digital pins

:ERRor

 

[:NEXT]?

Queries and clears errors from the error queue

:COUNt?

Queries the error/event queue for the number of unread items

:INHibit?

Queries system inhibit state

:KEY

 

:DEFine {<key>, <block>}

Sets the definition of the key

:DELete {<key>}

Removes the definition of the key

:KLOCk

Disables front panel [lock/unlock] icon

:LOCal

Places the BB3 in the local mode

:PASSword

 

:CALibration

 

:RESet

Resets the calibration password to initial value

:FPANel

 

:RESet

Resets the front panel lock password to initial value

:NEW {<old>, <new>}

Changes system password

:POWer {<bool>}

Enters the BB3 into the standby mode

:PROTection:TRIP {<bool>}

Enters the BB3 into the standby mode in case of protection trip

:REMote

Places the BB3 in the remote mode

:RWLock

Places the BB3 in the remote mode and disables front panel [lock/unlock] icon

:TEMPerature

 

:PROTection

 

[:HIGH]

 

[:LEVel] {<temperature>[, <sensor>]}

Sets the OTP value

:CLEar [, {<sensor>}]

Clears the latched protection status of the over-temperature protection (OTP)

:DELay

Sets time-out period

[:TIME] {<delay>[, <sensor>]}

Sets the OTP programming delay

:STATe {<bool>[, <sensor>]}

Enables/disables OTP on the selected temperature sensor

:TRIPped? [<sensor>]

Returns status of OTP activation

:TIME {<hh>,<mm>,<ss>}

Sets the time of the system clock

:DTS {rules}

Defines daylight saving time (DST) rules

:ZONE {zone}

Defines time zone

:VERSion?

Returns the SCPI version number

TRIGger

 

[:SEQuence]

 

[:IMMediate]

 

:DELay {<delay>}

Sets the time delay between the detection of a trigger event and the start of any corresponding trigger action

:EXIT

 

:CONDition {<condition}

Sets channel’s condition when LIST execution stopped

:SOURce {<source>}

Sets the trigger source

:DLOG

 

[:IMMediate]

 

:SOURce {<source>}

Sets the internal data logger trigger source

 

 

Add a comment

Current version

r2B2

Status

Work in progress

PCB manufactured

Yes (r2B1)

PCB assembled

Yes (r2B1)

BOM

Yes (TME, Mouser, Digikey, Farnell, RS)

File repository

https://github.com/eez-open/modular-psu/tree/master/dcm220
(include Eagle, Gerber and BOM files)

License

TAPR v1.0

Contributions

C4.1 (Collective Code Construction Contract)

 

Fig. 1: DCM220 r1B2 prototype

 

Output power terminals
coupling capability (require BP3C backplane)

Series

Parallel

Split rails

Common ground

No

No

No

Yes

Feature list

  • Power input: 48 Vdc (e.g. Mean Well LRS-150F-48)
  • Max. output power: 70 W per channel
  • Voltage regulation (CV), 0 – 20 V. Voltage set resolution (U_SET): 12-bit, read resolution (U_MON): 15-bit
  • Current regulation (CC), max. 4 A. Current set resolution (I_SET): 12-bit, Current read resolution (I_MON): 15-bit
  • Output enable (OE) circuit with LED indicator
  • CC mode LED indicator
  • On-board power output terminals (Ø4 mm, 19 mm/0.75” pitch)
  • 10-pin connector for Vout- coupling with other Power boards
  • Galvanically isolated SPI bus for communication with the MCU board
  • I2C EEPROM for storing board specific configuration and calibration parameters
  • On-board STM32F373C8T6 32-bit ARM Cortex®-M4 MCU, 64 KiB Flash, 32 KiB SRAM, LQFP-48 package
  • Upgradeable firmware via DIB v1.0 UART lines
  • SWG/JTAG connector (optional)
  • Two temperature sensors
  • Dimensions: 145 x 95 mm, 2-layer PCB
Add a comment

 

Please note that the following list is preliminary.

 

SCPI command

Description

DCL

Requires the client (controller) to send a "DCL\n" string

*SRE

Sets the value of the Service Request Enable register

*WAI

Waits until all pending commands are completed

CALibration

 

:TEMPerature

 

[:DATA] {<new value>}

Enters the calibration value

INSTrument

 

:COUPle

 

:TRIGger {<mode>}

Selects a coupling between channels trigger systems

OUTPut

 

:DELay

 

:ON {<time>}

Sets the delay time for turning the output on

:OFF {<time>}

Sets the delay time for turning the output off

:DPRog {<bool>}

Controls down-programmer circuit

[SOURce[<n>]]

 

:CURRent

 

:SLEW

 

:FALLing

Sets the falling current slew rate

:RISing

Sets the rising current slew rate

:VOLTage

 

:SLEW

 

:FALLing

Sets the falling voltage slew rate

:RISing

Sets the rising voltage slew rate

SYSTem

 

:COMMunicate

 

:ETHernet

Ethernet communication parameters

:CONTrol?

Queries communication port for SRQ handling

:HOSTname {<name>}

Sets the Ethernet communication host name

:DIGital

 

:TOUTput

 

:BUS[:ENABle] {<Bool>}

Enables/disables BUS-generated triggers on digital pins

:ERRor

 

:ALL?

Queries the error/event queue for all the unread items

:CODE[:NEXT]?

Queries the error/event queue for the next item code

:TIME

 

:TIMer

 

[:STATe]

Sets the internal timer state

:COUNt

Queries the current value of the internal timer

 

 

Add a comment