Please use this identifier to cite or link to this item:
http://dspace.cityu.edu.hk/handle/2031/9155
Title: | Automatic Oscilloscope Measurements using Python |
Authors: | Yeung, Pak To |
Department: | Department of Electronic Engineering |
Issue Date: | 2019 |
Supervisor: | Supervisor: Dr. Gai, Xin; Assessor: Prof. Chung, Henry S H |
Abstract: | PC applications for oscilloscope control and measurements are very limited. LabVIEW is a very popular choice but cost thousands of dollars per year and can be difficult to modify due to its graphical programming approach. There are free oscilloscope software available such as NI-SCOPE, a powerful tool including 50 measurements and analysis, but only support National Instruments oscilloscopes. Tektronix offers OpenChoice Desktop application with wide range of hardware support for free but only provide very limited functionalities such as manually operated screen capture and data logging, while hardware calibrations and settings requires command typing. In light of this, this project aims to develop a free-to-use PC oscilloscope software with intuitive GUI supporting a wide range of Tektronix oscilloscopes that can outperform OpenChoice Desktop app and maximize features inspired by LabVIEW and NI-SCOPE. A python software is developed where backend I/O layer is supported by free-to-use National Instruments Virtual Instrument Software Architecture (known as NI-VISA). Python wrapper library PyVISA wraps NI-VISA for simple and efficient serial communication between the oscilloscope and the Python software. Using VISA resource object, read, write and query commands can be executed with reference to TBS1000 Series Programmer Manual. A frontend GUI using mainly TkInter and Matplotlib libraries is also developed to allow user to perform oscilloscope controls, measurements and data visualization using simple buttons and menus without having to type any commands. The python software developed successfully let user to perform connection setup, data acquisition, data plotting, data analysis, data logging, hardware calibration, and measurements control using an interactive user interface for semi-real-time measurements on a TBS1102B-EDU digital oscilloscope. |
Appears in Collections: | Electrical Engineering - Undergraduate Final Year Projects |
Files in This Item:
File | Size | Format | |
---|---|---|---|
fulltext.html | 148 B | HTML | View/Open |
Items in Digital CityU Collections are protected by copyright, with all rights reserved, unless otherwise indicated.