Fluke¶
Fluke3000
Industrial System¶
-
class
instruments.fluke.
Fluke3000
(filelike)[source]¶ The
Fluke3000
is an ecosystem of devices produced by Fluke that may be connected simultaneously to a Fluke PC3000 wireless adapter which exposes a serial port to the computer to send and receive commands.- The
Fluke3000
ecosystem supports the following instruments: - Fluke 3000 FC Series Wireless Multimeter
- Fluke v3000 FC Wireless AC Voltage Module
- Fluke v3001 FC Wireless DC Voltage Module
- Fluke t3000 FC Wireless Temperature Module
Fluke3000
is a USB instrument that communicates through a serial port via the PC3000 dongle. The commands used to communicate to the dongle do not follow the SCPI standard.When the device is reset, it searches for available wireless modules and binds them to the PC3000 dongle. At each initialization, this class checks what device has been bound and saves their module number.
This class has been tested with the 3000 FC Wireless Multimeter and the t3000 FC Wireless Temperature Module. They have been operated separately and simultaneously. It does not support the Wireless AC/DC Voltage Modules as the author did not have them on hand.
It is important to note that the mode of the multimeter cannot be set remotely. If must be set on the device prior to the measurement. If the measurement read back from the multimeter is not expressed in the expected units, this module will raise an error.
Example usage:
>>> import instruments as ik >>> mult = ik.fluke.Fluke3000.open_serial("/dev/ttyUSB0", 115200) >>> mult.measure(mult.Mode.voltage_dc) # Measures the DC voltage array(12.345) * V
It is crucial not to kill this program in the process of making a measurement, as for the Fluke 3000 FC Wireless Multimeter, one has to open continuous readout, make a read and close it. If the process is killed, the read out may not be closed and the serial cache will be constantly filled with measurements that will interfere with any status query. If the multimeter is stuck in continuous trigger after a bad kill, simply do:
>>> mult.reset() >>> mult.flush() >>> mult.connect()
Follow the same procedure if you want to add/remove an instrument to/from the readout chain as the code will not look for new instruments if some have already been connected to the PC3000 dongle.
-
class
Mode
[source]¶ Enum containing the supported mode codes.
-
capacitance
= '0F'¶ Capacitance
-
current_ac
= '03'¶ AC Current
-
current_dc
= '04'¶ DC Current
-
frequency
= '05'¶ Frequency
-
resistance
= '0B'¶ Resistance
-
temperature
= '07'¶ Temperature
-
voltage_ac
= '01'¶ AC Voltage
-
voltage_dc
= '02'¶ DC Voltage
-
-
class
Module
[source]¶ Enum containing the supported modules serial numbers.
-
m3000
= 46333030304643¶ Multimeter
-
t3000
= 54333030304643¶ Temperature module
-
-
connect
()[source]¶ Connect to available modules and returns a dictionary of the modules found and their port ID.
-
flush
()[source]¶ Flushes the serial input cache.
This device outputs a terminator after each output line. The serial input cache is flushed by repeatedly reading until a terminator is not found.
-
measure
(mode)[source]¶ Instruct the Fluke3000 to perform a one time measurement.
Parameters: mode ( Fluke3000.Mode
) – Desired measurement mode.Returns: A measurement from the multimeter. Return type: Quantity
-
query_lines
(cmd, nlines=1)[source]¶ Function used to send a query to the instrument while allowing for the multiline output of the PC3000.
Parameters: - cmd ('str') – Command that will be sent to the instrument
- nlines ('int') – Number of termination characters to reach
Returns: The multiline result from the query
Return type: Array of
str
-
read_lines
(nlines=1)[source]¶ Function that keeps reading until reaches a termination character a set amount of times. This is implemented to handle the mutiline output of the PC3000.
Parameters: nlines ('int') – Number of termination characters to reach Returns: Array of lines read out Return type: Array of str
-
scan
()[source]¶ Search for available modules and reformatturns a dictionary of the modules found and their port ID.
-
input_range
¶ Gets/sets the current input range setting of the multimeter.
The
Fluke3000
FC is an autoranging only multimeter.Return type: str
-
mode
¶ Gets/sets the measurement mode for the multimeter.
The measurement mode of the multimeter must be set on the device manually and cannot be set remotely. If a multimeter is bound to the PC3000, returns its measurement mode by making a measurement and checking the units bytes in response.
Return type: Fluke3000.Mode
-
relative
¶ Gets/sets the status of relative measuring mode for the multimeter.
The
Fluke3000
FC does not support relative measurements.Return type: bool
-
trigger_mode
¶ Gets/sets the trigger mode for the multimeter.
The only supported mode is to trigger the device once when a measurement is queried. This device does support continuous triggering but it would quickly flood the serial input cache as readouts do not overwrite each other and are accumulated.
Return type: str
- The