LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Tektronix Oscilloscope TDS 3054B Driver Problem

Hi,
 Currently I am working with a TDS 3054B, it is a digital phosphor oscilloscope. I need to project a vi interface threw LabView 8.0 to remotely control the oscilloscope. I went to the National Instruments Homepage and downloaded the instrument driver:
 
 
 It is a Plug and Play (project-style), this project already have the vi that I need to control remotely the oscilloscope threw serial interface.
 This project has the following overview:

Instrument Driver Technology: LabVIEW Plug and Play (project-style)
Manufacturer: Tektronix
Supported Language(s): LabVIEW 8.0
Supported Model(s): Tektronix TDS 3012, 3012B, 3014, 3014B, 3024B, 3032, 3032B, 3034, 3034B, 3044B, 3052, 3052B, 3054, 3054B, 3064B
Model(s) Tested: TDS 3054, TDS 3054B, TDS 3064B
Interface(s): GPIB, Serial, Ethernet
Firmware Revision Tested: v3.26, v3.35 (TDS 3064B only)
 
 It support my oscilloscope model but it was not tested on my model.
 
 I opened the project in LabView 8.0 and this project has 3 Examples:
Tektronix TDS 3000 Series Auto Setup Waveform Acquire.vi
Tektronix TDS 3000 Series Dual channel Waveform Acquire.vi
Tektronix TDS 3000 Series Single channel Waveform Acquire.vi
 
 I decided to start working on the Tektronix TDS 3000 Series Auto Setup Waveform Acquire.vi. I connected the oscilloscope with my computer threw serial interface, and tested on Max the connect (everything OK!!), then I opened the project and the example Tektronix TDS 3000 Series Auto Setup Waveform Acquire.vi. I run this example and it started to display a waveform but after few seconds it shows the following message:
 
Error -1074003951 occurred at Tek TDS 3k Initialize
Possible reason(s):
LabVIEW:  (Hex 0xBFFC0011) Identification query failed.
---
Invalid Response to Instrument ID Query.
 
After searching on the ni forums I realized that was a Query problem and it was easy to fix it, I searched the vi that was responsible for this query, the name of the vi is Initialize.vi and is a vi from the public part of the lvlib. I opened this vi and removed the query option.
When I run again the  Tektronix TDS 3000 Series Auto Setup Waveform Acquire.vi, it shows a new error message:
 
Error -1074002421 occurred at an unidentified location
Possible reason(s):
 tktds3k GetRawWaveform
The wafeform data returned does not meet the specified format.
 
Does anyone has the same problem ? Can anyone help me ?
Regards,
Rodrigo
0 Kudos
Message 1 of 21
(9,879 Views)
Rodrigo,
 
In the tktds3k Initialize.vi, did you just set the ID Query? input to False with a T/F constant, or did you modify the vi.  The vi may be looking for the IDN string from the scope, but getting waveform data, which is causing the error.
 
I use those VIs with a TDS3012B and LV7 without problems.
 
Mike 
Message 2 of 21
(9,872 Views)

I use this driver for the TDS3034 scope, I was not completly satisfied with the driver however and modified several of the VI's. The one VI I had issues with was the GetRawWaveform, it is only setput ro retrieve BINARY data from the scope. If you have the scope set up to output ASCII data this VI will Error as it is looking for the specific header in the binary format. The main issue I had with binary format on my scope is for some reason I could not explain the voltage/div value affected the number of sample points the scope returned. I have absolutly NO IDEA why, so I just modified the GetRawWaveform VI to format the ASCII data.

This driver (in my opinion) is not written well and not complete in some aspects, however, with some minor modifications it will work.

Andrew Alford
Production Test Engineering Technologist
Sustainable Energy Technologies
www.sustainableenergy.com
Message 3 of 21
(9,868 Views)

Hi,

Sorry for the late answer, i opened the vi GetRawWaveform and in the case structure the condition is if is binnary format "#", if wish to compare to ascii format what is the condition ?

Regards,

Rodrigo

0 Kudos
Message 4 of 21
(9,810 Views)
Here is a picture of the FALSE condition I modified, eg not Binary so it has to be ASCII.

Message Edited by AndrewAlford on 01-13-2006 12:00 PM

Andrew Alford
Production Test Engineering Technologist
Sustainable Energy Technologies
www.sustainableenergy.com
Message 5 of 21
(9,809 Views)

Hello AndrewAlford,

 

Can you please explain the modification you did, I am new to LabView and I can not follow what is going on inside this False Case.

 

Some rare instances I had Dual channel example working without time-out report, on the same day it doesn't work, when it worked I used Ch1 on the scope's sample signal and Ch2 two on a DC source with 15 Volt. I have the same settings for both channels, scope shows 15 V as standalone device, on LabView screen 10 Volts ???

 

Any advice help, appreciated.

 

Hasan

 

PS. if possible can I have a copy of modified getraw*.vi

0 Kudos
Message 6 of 21
(9,720 Views)

In the original GetRawWaveform VI the False case has nothing in it. The scope sends a header with the binary data format, if you select ASCII the scope sends a comma seperated string of ASCII characters representing numbers. I modified this VI strictly for my application so I hardwire a constant of 10000 data points as I never reduce the number to 5000. So the For loop parses the String of 10000 ASCII characters into an array of decimal numbers.

The scope will timeout if you haven't set the triggering channel properly. If you are using the Dual waveform example you need to ensure the that your signal will meet the trigger conditions, if the trigger conditions are not met the scope does not provide any data and this is why the vi will timeout.

 

Andrew Alford
Production Test Engineering Technologist
Sustainable Energy Technologies
www.sustainableenergy.com
Message 7 of 21
(9,705 Views)
Hi
I want to print a graph from TDS 3054B oscilliscope and dont have a printer that support the osc.
Does anyone know any software ,as when i save it on a floppy disk i can have the same and exact graph on the osc.
Thank you
 
0 Kudos
Message 8 of 21
(9,042 Views)
Your question is way off topic but if you want to print a waveform and since you are presumably using the LabVIEW driver, why don't you just print the waveform that is displayed on your pc?
0 Kudos
Message 9 of 21
(9,030 Views)

Andrew,

I implimented your ASCII change to the GetRawWaveform file which got rid of the time-out issues I was seeing. Thank you. I now get intermittent data return though. In all cases the scope displays the waveform, but I intermittently get any real data in my comma delimited ASCII file. The file has 5 columns for time, and channels 1 through 4.  In the cases that I don't get data, all 5 columns contain 10K zeros. Do you have any ideas why?

Thanks,

Del Anderson

Albuquerque, NM

0 Kudos
Message 10 of 21
(8,419 Views)