Giter Club home page Giter Club logo

keysight_wfmbuilder's Introduction

WfmBuilder

GUI based Python program to send custom waveforms to a Agilent/Keysight 33600B

Example

Getting Started

Initial instructions:

Prerequisites

  • Python 2.7
  • pyvisa
  • matplotlib
  • numpy
  • PyQt4
  • pyqtgraph (beyond v3.0)

Installing

I suggest downloading WinPython as it will install many prerequisites. Use pip to install other preq's. Download .zip file or clone from GitHub url into local directory.

Operation

  • When GUI opens, it will scan for local GPIB, USB, etc. connections.
  • Select your intrument address from this list to connections
  • Hit "reset" button to reset instrument.
  • In the main window, you can now build a waveform using strings

Defining waveform 1) Alt. ramp, delay

  • Define waveform functions separated by space
  • Begin with 2 string qualifier, followed by variable number of csv inputs to be interpreted as floats:
dl1e05 #delay in seconds
rm45e6 #ramp in V/s slope
er1e4,0.05 #exponential ramp with time constant in s, and total time of section
cs5e6,1,0.5  #cosine builder, set period in Hz, start phase/pi, end phase/pi (1,2 = valley to valley) 

Defining waveform 2) Amp. step

  • Then define amplitude step for each waveform
0 1 2 1
  • This will turn boxes black, indicating you should hit 'enter' when selected to upload to the insturment. Instrument will turn off when uploading waveform, then go to the previous state.

Other options

  • Can change output load, sample rate, offset voltage, and of course turn it on/off.

Versioning

I use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

License

This project is licensed under the GNU GPLv3 License - see the LICENSE.md file for details

Acknowledgments

keysight_wfmbuilder's People

Contributors

dspen avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.