Skip to main content

A tkinter-based front-end GUI for trigger and monitoring hardware tests based on the MATS package

Project description

Tk Manufacturing Automated Test System (TkMATS)

The Manufacturing Automated Test System is a Python library which provides useful structure for test creation and execution, but does not provide a user-defined method of controlling that test environment. The purpose of this project is to provide the start button and to provide visual feedback as to the actual test that is executing. The implementation is done using a tkinter.Frame subclass which may be embedded into any tkinter-style window.

Installation

Installation is as easy as pip install tkmats.

Usage

You must set up your test so that it can successfully execute on the MATS. Once it is set up there, then you are just a couple of lines away from converting an ATE-based test to a TkMATS.

We will start with the example application located within the ATE repository. The high-level functional bits are copied here for reference:

# create the sequence of test objects
sequence = [CommunicationTest(), PumpFlowTest()]
ts = TestSequence(sequence=sequence, auto_run=False, loglevel=logging.DEBUG)

# start the test as many times as you wish!
for _ in range(3):
    ts.start()
    sleep(2.0)

Note that the test was simply started using the TestSequence.start() method. Since we are going to have a test frame that comes with TkMATS, then we won't require the automated start and can, instead, rely on the user button supplied. Our complete sequence could be as simple as:

# create the sequence of test objects
sequence = [CommunicationTest(), PumpFlowTest()]
ts = TestSequence(sequence=sequence, auto_run=False, loglevel=logging.DEBUG)

window = tk.Tk()

tkmats_frame = TkMatsFrame(window, ts)
tkmats_frame.grid()

window.mainloop()

Note that most of the added code is related to simply creating the window object within which the TkMatsFrame is to be embedded.

There are two tests that are executed here, one CommunicationTest and one PumpTest. Screenshots of various possible scenarios are shown here:

Communications Test Failure

Communications Test Failure Screenshot

Flow Test Failure

Flow Test Failure Screenshot

All Passing

All Passing Screenshot

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

tkmats-0.8.0-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file tkmats-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: tkmats-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.5

File hashes

Hashes for tkmats-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bf5c4aff9491dc5501713729ec4668c5a804b7afdc37f6a10957c107d564c1f9
MD5 ffd02ed91efcf0e918fbd378e3f00dd5
BLAKE2b-256 4bea7ae7f73cdd6388f8a4d9191c66942cdad661ebc6e3c802a52ec30ba928ce

See more details on using hashes here.

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