Skip to main content

VISA or Socket communication module for Rohde & Schwarz instruments

Project description

RsInstrument module provides convenient way of communicating with R&S instruments. By default, you need an underlying VISA-C installation, but starting with version 1.3.0, you can also use just a socket communication.

  • Example of a HiSLIP connection initialization: io = RsInstrument('TCPIP::192.168.56.101::HISLIP', True, True)
  • Example of a non-VISA Socket connection initialization: io = RsInstrument('TCPIP::192.168.56.101::5025::SOCKET', True, True, 'SelectVisa=SocketIo')

RsInstrument offers all the required tasks you are going to need when remote-controlling your instrument:

  • Initializing a new session with setting all the required VISA and instrument registers depending on the session type
  • Identification of the instrument, supported models, evaluation of the instrument options
  • Special actions, e.g. Self-test, reset
  • Typical text communication - Write / Query / Query
  • OPC-synchronised actions - Write / Query with OPC. The synchronization mechanism can be: Status byte polling / *OPC? query, Service Request
  • Asynchronous events-driven OPC-synchronised actions. After the instrument has finished the operation, a registered event handler is invoked
  • Binary data transfer - Write / Query bin data
  • Transfer of files between PC and Instrument, the size is unlimited
  • Binary or ASCII arrays transfers - adaptable querying of float / double / integer arrays The response is processed correctly regardless whether it arrives as binary data or ASCII data
  • Instrument status checking (SYSTem:ERRor?) after each command. This can be switched OFF if desired
  • Optional feature of sending (*OPC?) after each Write command
  • Multi-thread locking of the session, also available throughout multiple RsInstrument instances
  • Sharing of the already openeed session with another RsInstrument instance, so the physical VISA session is still only one
  • Logging of the communication
  • Generating events if:
    • instrument reports an error
    • Operation Register event has occured
    • Questionable Register event has occured
    • big transferred data (write or read) are split into segments. This allows for showing the transfer progress, or in case of read operation processing partial data without having to wait for the complete response.

Version history:

Version 1.3.0.28 (18.08.2020)

  • Implemented SocketIO plugin which allows the remote-control without any VISA installation. Usage: io = RsInstrument('TCPIP::192.168.56.101::5025::SOCKET', True, True, 'SelectVisa=SocketIo')
  • Implemented finding resources as a static method of the RsInstrument class. Usage: instruments = RsInstrument.list_resources("?*")

Version 1.2.0.25 (03.08.2020)

  • Fixed reading of long strings for NRP-Zxx sessions

Version 1.1.0.24 (16.06.2020)

  • Fixed simulation mode switching
  • Added Repeated capability

Version 1.0.0.21

  • First released version

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

RsInstrument-1.3.0.28.tar.gz (55.5 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page