Tektronix Technical Forums are maintained by community involvement. Feel free to post questions or respond to questions by other members. Should you require a time-sensitive answer, please contact your local Tektronix support center here.

2612B Triggering Pulse Measurement

Models 2601, 2602, 2611, 2612, 2635, 2636
Models 2601A, 2602A, 2611A, 2612A, 2635A, 2636A
Models 2601B, 2602B, 2604B, 2611B, 2612B, 2614B, 2634B, 2635B, 2636B
Post Reply
jaime_g
Posts: 93
Joined: September 23rd, 2014, 6:14 am
Country: United States

2612B Triggering Pulse Measurement

Post by jaime_g » May 3rd, 2017, 7:00 pm

I am trying to measure the current gain (hFE) of an NPN transistor. SMU2612B CHA V+ is used to drive the base with a 1ms, 467µA pulse limited at 5V. SMU CHB V+ is used to provide 10V (limited at 10mA) at the collector terminal. CHA & CHB V- terminals are joined together at the emitter.

The oscilloscope trace shows the base and the collector voltage signals.
2612B NPN hFE Vb&Vc.jpg
2612B NPN hFE Vb&Vc.jpg (80.08 KiB) Viewed 10020 times
The SMU2612B is programmed with the following code:

Code: Select all

display.screen = display.SMUA_SMUB
display.smua.digits = display.DIGITS_4_5
display.smub.digits = display.DIGITS_4_5
smua.sense = smua.SENSE_REMOTE
smub.sense = smub.SENSE_REMOTE

-- Configure base pulse current source
smua.source.func = smua.OUTPUT_DCAMPS
smua.source.autorangei = smua.AUTORANGE_OFF
smua.source.rangei = 1e-3
smua.source.leveli = 0.0
smua.source.limitv = 5
smua.source.settling = smua.SETTLE_FAST_ALL

-- Configure collector-emitter voltage source
smub.source.func = smub.OUTPUT_DCVOLTS
smub.source.autorangev = smub.AUTORANGE_OFF
smub.source.rangev = 20
smub.source.levelv =10
smub.source.limiti = 10e-3
smub.source.settling = smub.SETTLE_FAST_ALL

-- Configure collector current measure
smub.measure.nplc		= 0.001
smub.measure.autorangei = smua.AUTORANGE_OFF
smub.measure.rangei = 10e-3
smub.measure.autozero = smub.AUTOZERO_ONCE
smub.measure.count = 1
smub.nvbuffer1.clear()

-- Configure base current 500µs pulse width
trigger.timer[1].delay =1e-3
trigger.timer[1].count = 1
trigger.timer[1].passthrough = false
trigger.timer[1].stimulus = smua.trigger.ARMED_EVENT_ID

-- Configure collector current measurement trigger
trigger.timer[2].delay = 500e-6
trigger.timer[2].count = 1
trigger.timer[2].passthrough = false
trigger.timer[2].stimulus = smub.trigger.ARMED_EVENT_ID

smua.trigger.arm.count = 1
smua.trigger.arm.stimulus = 0
smua.trigger.count = 1
smub.trigger.arm.count = 1
smub.trigger.arm.stimulus = 0
smub.trigger.count = 1

-- Enable base current pulse source trigger
smua.trigger.source.listi({467E-6})
smua.trigger.source.limitv = 5
smua.trigger.source.action = smua.ENABLE
smua.trigger.source.stimulus = 0

-- Enable collector current measurement trigger
smub.trigger.measure.action = smub.ENABLE
smub.trigger.measure.stimulus = trigger.timer[2].EVENT_ID
smub.trigger.measure.i(smub.nvbuffer1)

-- Return to 0V after pulse is complete
smua.trigger.endpulse.action = smua.SOURCE_IDLE
smua.trigger.endpulse.stimulus = trigger.timer[1].EVENT_ID

smub.source.output = smub.OUTPUT_ON
smua.source.output = smua.OUTPUT_ON
smua.trigger.initiate()
smub.trigger.initiate()
waitcomplete()
smua.source.output = smua.OUTPUT_OFF
smub.source.output = smub.OUTPUT_OFF
printbuffer(1, 1, smub.nvbuffer1)
SMU2612B CHB keeps reading 0. It seems the smub measurement trigger is not programmed correctly to initiate a collector current measurement when the transistor is conducting, i.e, Vc is nearly 0V.

Any thoughts on how I can fix the code?

Dave W
Tektronix Applications
Tektronix Applications
Posts: 294
Joined: April 26th, 2010, 12:01 pm
Country: United States

Re: 2612B Triggering Pulse Measurement

Post by Dave W » January 18th, 2018, 12:13 pm

It doesn't look like you configured SMUB with any sweep values. You program it to 10V which it clearly is before you initiate the trigger model, but then it drops back to 0V. After the trigger model finishes executing it goes back to the 10V you originally programmed. If you don't program SMUB with any sweep values, its source action will by default output 0V. Try adding to your code the following before you initiate the SMU trigger mdoels.

Code: Select all

smub.trigger.source.listv({10})
smub.source.limiti = 10e-3
smub.trigger.source.action = smub.ENABLE
smub.trigger.source.stimulus = 0

Post Reply

Return to “2600 Series SourceMeter”

Who is online

Users browsing this forum: No registered users and 2 guests