There are two operation manuals for the DME1600: the User’s Manual and the Remote Interface Manual (this manual). The manuals are intended for users of the DME1600 and their • In this manual, the DME1600 6-1/2 Digit Multimeter is also instructors.
Common Commands ............Appendix A Error Messages ........... 44 B Sample Programs ........46 Program 1: Making a single measurement by using a MEASure? command ..........Program 2: Using CONFigure commands for math func- tions................Program 3: DEVQUERY function......DME1600...
Page 4
This page left blank intentionally. DME1600...
Selecting the Remote Interface The DME1600 has USB(USBTMC) and GPIB remote interfaces. You can use either interface but not both at the same time. Select the remote interface you want to use from the front panel. USB interface Press MENU.
Doing the following may damage the connected device: CAUTION Do not connect a normal USB interface device to the DME1600’s USB connector when pass/fail signal output is enabled. When pass/fail signal output is enabled, you cannot use USB for remote control. Use GPIB instead.(Only for models with GPIB cards installed.)
Page 8
Pass/Fail Output from the USB Connector Pass/fail output from the USB connector (continued) Using the CONFIG key Press CONFIG. Press LIMITS (SHIFT+RATIO). Press PREV or NEXT to select OUTPUT. Press ENTER. Press PREV or NEXT to select ENABLE or DISABLE. Press ENTER.
The messages that the PC sends to the DME1600 are commands. The messages that the DME1600 sends to the PC are responses. Commands are used to execute functions or change settings on the DME1600 or to query the DME1600’s settings or status. Responses are used to return the DME1600’s settings or sta- tus.
{ and } symbols in the actual program. Character strings inside [ and ] indicate optional data. When optional data is not sent with the program, the default value is sent. Do not include the [ and ] symbols in the actual program. DME1600...
“OFF” and “0” as indicating false Boolean values. The DME1600 recognizes parameter values of “ON” and “1” as indicating true Boolean values. The DME1600 only responds to Boolean parameter queries with “0” or “1.” The following is a command that contains a Bool- ean parameter.
Page 13
For most commands, you can enter MINimum or MAXimum as the parameter. For example, instead of selecting a voltage range, you can use MIN to specify the minimum voltage range or MAX to specify the maximum voltage range. Example VOLTage:DC:RANGe {<range>|MINimum|MAXimum} DME1600...
The MEASure? commands lack flexibility, but using them is the simplest way to program DME1600 measurements. After you select the measurement function, range, and resolution, the DME1600 automatically sets the other parameters, makes measurements, and sends the results to the output buffer.
Page 15
Starts period measurement with the specified range and resolution settings. Measured values are sent to the output buffer. In period measurement, the DME1600 uses a single range for all input and output signals from 0.33 s to 3.3 s. If no signal is applied, the measured period is zero.
5 1/2 digits. Therefore, only the front panel display is affected by the specified resolution parameter. Command CONFigure:CURRent:AC {<range>|MIN|MAX|DEF},{<resolution>|MIN|MAX|DEF} CONF:RES Sets the measurement function to 2-wire resistance measurement and sets the range and resolution. This command does not start measurement. DME1600...
Page 17
Sets the measurement function to period measurement and sets the range and resolution. This command does not start measurement. In period measurement, the DME1600 uses a single range for all input and output signals from 0.33 s to 3.3 s. If no signal is applied, the measured period is zero.
TEMPerature Command [SENSe:]FUNCtion “<function>” [SENSe:]FUNCtion? Response In response to FUNC?, the DME1600 returns the measurement function that is currently being executed. <function>:RANG Returns the range of the selected measurement function. For frequency and period measure- ments, the range applies to the signal’s input voltage, not its period (use FREQuency:VOLT- age or PERiod:VOLTage).
Page 19
K indicates Kelvin. The default value is “Cel.” Command [SENSe:]UNIT {Cel|Far|K} [SENSe:]UNIT? Response In response to UNIT?, the DME1600 returns the unit used for temperature measurement. TCO:TYPE Sets the thermocouple type. The default setting is “K.” Command [SENSe:]TCOuple:TYPE {E|J|K|N|R|S|T}...
Page 20
Sets the offset voltage of the real reference junction. Command [SENSe:]TCOuple:RJUNction:REAL:OFFSet {<value>|MINimum|MAXimum} [SENSe:]TCOuple:RJUNction:REAL:OFFSet? [MINimum|MAXimum] Response In response to TCO:RJUN:REAL:OFFS?, the DME1600 returns the offset voltage of the real reference junction. TEMP:RTD:TYPE Sets the RTD type used for RTD temperature measurement. The default setting is “PT100.” Command [SENSe:]TEMPerature:RTD:TYPE...
Page 21
Measurement Configuration Commands Command [SENSe:]TEMPerature:RTD:ALPHa {<value>|MINimum|MAXimum} [SENSe:]TEMPerature:RTD:ALPHa? [MINimum|MAXimum] Response In response to TEMP:RTD:ALPH?, the DME1600 returns the alpha coefficient for the RTD type. TEMP:RTD:BETA Sets the beta coefficient for the specified RTD type. Command [SENSe:]TEMPerature:RTD:BETA {<value>|MINimum|MAXimum} [SENSe:]TEMPerature:RTD:BETA? [MINimum|MAXimum] Response In response to TEMP:RTD:BETA?, the DME1600 returns the beta coefficient for the RTD type.
Page 22
Measurement Configuration Commands TEMP:SPRTD:AX Sets the A coefficient. Command [SENSe:]TEMPerature:SPRTD:AX {<value>|MINimum|MAXimum} [SENSe:]TEMPerature:SPRTD:AX? [MINimum|MAXimum] Response In response to TEMP:SPRTD:AX?, the DME1600 returns the A coefficient. TEMP:SPRTD:BX Sets the B coefficient. Command [SENSe:]TEMPerature:SPRTD:BX {<value>|MINimum|MAXimum} [SENSe:]TEMPerature:SPRTD:BX? [MINimum|MAXimum] Response In response to TEMP:SPRTD:BX?, the DME1600 returns the B coefficient.
Page 23
(default setting; 5 1/2 digits), or 1 s (6 1/2 digits). The default setting is “0.1.” Command [SENSe:]PERiod:APERture{0.01|0.1|1|MINimum|MAXimum} [SENSe:]PERiod:APERture? [MINimum|MAXimum] Response In response to FER:APER?, the DME1600 returns the gate time (or aperture time) for period measurement. DET:BAND Sets the minimum input signal frequency. The default setting is “20.” A slow, medium, or fast AC filter is selected according to the specified frequency.
Page 24
Turns auto gain on or off. The default setting is “ON.” The results for OFF and ONCE are sim- ilar. When auto gain is set to OFF, the DME1600 does not perform a new offset measurement until it is in a trigger-wait state. When auto zero adjustment is set to ONCE, an offset mea- surement is performed immediately.
Page 25
Command ROUTe:STATe? Response In response to ROUT:STAT?, the DME1600 returns 0 (means it hasn’t been inserted yet.), 1 (means the 10-channel scanner card was inserted.), 2 (means the 20-channel scanner card was inserted.), or 3 (means the thermocouple scanner card was inserted.).
Page 26
ROUT:SCAN:TIMER Sets the scan interval (in units of seconds). Command ROUTe:SCAN:TIMER <value> ROUTe:SCAN:TIMER? Response In response to ROUT:SCAN:TIMER?, the DME1600 returns the scan interval. ROUT:SCAN:COUNT Sets the scan count. Command ROUTe:SCAN:COUNT <value> ROUTe:SCAN:COUNT? Response In response to ROUT:SCAN:COUNT?, the DME1600 returns the scan count.
Command CALCulate:FUNCtion {PERCent|AVERage|NULL|LIMit|MXB|DB|DBM} CALCulate:FUNCtion? Response In response to CALC:FUNC?, the DME1600 returns PERC, AVER, NULL, LIM, MXB, DB, or DBM. CALC:STAT Turns the selected math function on or off. The default setting is “OFF.” Command CALCulate:STATe {OFF|ON}...
Page 28
CALC:NULL:OFFS Saves a null value to the DME1600’s null register. Before you save a value to the math regis- ter, you must turn the math function on. The null value can be set to a value from 0 to ±120 % of the maximum range.
Page 29
In response to CALC:DBM:REF?, the DME1600 returns the dBm reference value. DATA:FEED RDG_STORE Sets whether values measured with the INITiate command are stored to the DME1600’s internal memory (default setting). The default setting (DATA:FEED RDG_STORE,“CALC”) is for up to 2000 measured values to be stored to the memory when the INITiate command is executed.
DME1600 to the trigger-wait state so that it will start measuring when it receives a trigger. The INITiate, READ?, or MEASure? command will set the DME1600 to the trigger-wait state. INIT Changes the triggering system state from the “idle state” to the “trigger-wait state.” After the DME1600 receives the INITiate command and the necessary trigger conditions are met, it will start measuring.
Page 31
TRIG:COUN Sets the number of triggers that the DME1600 receives before it returns to the idle state to a number between 1 and 50000. You can specify the INFinite parameter to make the DME1600 receive triggers continuously. The trigger count is ignored in local mode.
In response to SYST:BEEP:STAT?, the DME1600 returns “0” (OFF) or “1” (ON). SYST:ERR Queries the DME1600 error queue. Up to 20 errors can be stored in the queue. Errors are retrieved in first in, first out (FIFO) order. Each error line can be up to 80 characters long.
Page 33
Command L1 SYSTEM:IDNSTR Changes the character string that is used to identify the DME1600 from remote applications (the character string can contain up to 39 characters). You can put information such as the maker and product names into the character string.
STAT:QUES:EVEN?, and *CLS). The reset command (*RST) and the device clear command do not clear the bits in the event registers. When you query an event register, the DME1600 returns a decimal value corresponding to the binary-weighted sum of all the bits set in the register.
The enable register is cleared in the following situations. • When you turn on the power after configuring the DME1600 using the *PSC 1 command • When you execute an *SRE 0 command The status byte enable register is not cleared when you turn on the power after configuring the DME1600 using the *PSC 0 command.
Page 36
The serial poll clears the “Request Service” bit (bit 6) in the status byte summary register. Other bits are unaffected by the poll. Serial polling does not affect the DME1600’s throughput. IEEE-488.2 does not guarantee synchronization between the bus controller and the device.
Page 37
*OPC command, this bit is set to 1. If you send the *OPC command after a command to load a messages from the DME1600’s output buffer, you can use the “Operation Complete” bit to determine when the message is available.
• Unless the SYSTem:ERRor? command is used to retrieve errors from the error queue, the errors in the DME1600’s error queue are recorded as error states (bits 2, 3, 4, and 5 in the standard event register). • Reading overload states are always reported in the standard event register (bit 3) and the questionable data event register (bits 0, 1, and 9).
SCPI Status System Questionable data register The questionable data register reports information about the quality of the DME1600’s mea- sured results, such as overload states and the results of upper and lower limit testing. Through the enable register, all states are reported in the questionable data summary bit.
Status Reporting Commands SYST:ERR Queries the DME1600 error queue. Up to 20 errors can be stored in the queue. Errors are retrieved in first in, first out (FIFO) order. Each error line can be up to 80 characters long. Command SYSTem:ERRor? STAT:QUES:ENAB Enables bits in the questionable data enable register.
Page 41
After the command is executed, the “Operation Complete” bit (bit 0) in the standard event register is set. Command *OPC *OPC? Response In response to *OPC?, the DME1600 returns “1” to the output buffer after the command is executed. *PSC Sets the power-on status. The default setting is “1.” Command *PSC {0|1}...
See *RST under “Status Reporting Commands.” p.33 *SRE See *SRE under “Status Reporting Commands.” p.41 *STB See *STB under “Status Reporting Commands.” p.41 *TRG The trigger command. This is a substitute command for the IEEE 488.1 get message (Group Execute Trigger). Command *TRG DME1600...
“-350, Too many error.” As long as no errors are deleted from the queue, no additional errors can be stored, and the DME1600 will show “+0, No error.” The error queue is cleared when the power is turned off or a *CLS (clear status) command is executed.
Page 45
The multimeter cannot store an overload reading (9.90000000E+37) as the math reference for null or dB measurements. The math state is turned off as a result of this condition. 550 Command not allowed in local The multimeter received a READ? Command while in the local mode. DME1600...
Sure? command In the following example, a MEASure? command is used to measure the AC current once. This is the simplest method for programming DME1600 measurements, but it is also the least flexible. This sample program is written in Visual Basic.
Page 47
= viClose(fList) Exit Sub End If Rem send Clear command '*CLS'-- Clear DME1600 status register stat = viWrite(sesn, "*CLS", 4, ret) If (stat < VI_SUCCESS) Then MsgBox "System command error. (*CLS)", vbExclamation, "DME1600 multimeter device test"...
In the following example, CONFigure commands are used for dBm calculation. The CONFigure commands are slightly more flexible than the MEASure? commands. You can use these commands to gradually change the DME1600’s settings. This sample program is written in Visual Basic.
Page 49
= viClose(fList) Exit Sub End If Rem send command -- Set DME1600 to 1 amp ac range stat = viWrite(sesn, "CONF:VOLT:AC 1,0.001", 20, ret) If (stat < VI_SUCCESS) Then MsgBox "System command error.", vbExclamation, "DME1600 multimeter device test"...
Page 50
Sleep (3000) ' wait for math processing Rem fetch the measure data stat = viRead(sesn, readin, 128, ret) If (stat < VI_SUCCESS) Then MsgBox "Read in data error.", vbExclamation, "DME1600 multimeter device test" stat = viClose(fList) Exit Sub End If Rem set to local mode stat = viWrite(sesn, "system:local", 12, ret)
// Load the NI-VISA library for USBTMC device hUSBTMCLIB = LoadLibrary ("visa32.dll"); if (!hUSBTMCLIB) MessageBox(NULL, "NIVISA for USBTMC library not found.", "DME1600 multimeter device test", MB_OK); return; // Link the libraries signed long (__stdcall *PviOpenDefaultRM_usb)(unsigned long *vi);...
Page 52
MessageBox(NULL, "NIVISA for USBTMC library not ready.", "DME1600 multimeter device test", MB_OK); return; printf("\n ###### Start C++ Example program. ######\n"); printf(" We check the DME1600 multimeter on USB port and\n"); printf(" identify the first connected DME1600 device.\n\n"); // Open Device -- Resource Manager status = PviOpenDefaultRM_usb(&m_defaultRM_usbtmc);...
Page 53
= PviSetAttribute_usb(m_instr_usbtmc, VI_ATTR_TMO_VALUE, m_Timeout); if (!hUSBTMCLIB) printf("DME1600 device connect failed.\n"); return; // Write command "*IDN?" and read the DME1600 identification string len = 64; pStrout = new char[len]; ZeroMemory(pStrout, len); strcpy(pStrout, "*idn?"); status = PviWrite_usb(m_instr_usbtmc, (unsigned char *)pStrout, 6, &nWritten);...
Page 54
// Set configure Current DC, range 0.1A strcpy(pStrout, "CONF:CURR:DC 1,0.01"); status = PviWrite_usb(m_instr_usbtmc, (unsigned char *)pStrout, 20, &nWritten); Sleep(3000); // Fetch the DME1600 measure value ( screen value ) // Set Voltage DC measure strcpy(pStrout, "CONF:VOLT:DC 0.1,0.1"); status = PviWrite_usb(m_instr_usbtmc, (unsigned char *)pStrout, 21, &nWritten);...
Need help?
Do you have a question about the DME1600 and is the answer not in the manual?
Questions and answers