TUD-RST / methodnet

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Methodnet – A Formalized Representation of Control Theoretic Methods

General Information

This repository contains software which aims to support problem solving in the field of automatic control by providing suitable access to domain specific knowledge, e.g. in form of a method-network.

The user interface is implemented as a django web application.

While code and interface are written in English, the contents of the method net are currently authored in German.

Click here to visit an interactive demo of the web application right in your browser.

Disclaimer: This software is still in early stage of development and not yet officially released. The project should be seen as a starting point and not a complete solution. Please join the Discussion page to begin contributing.

Screenshot

Screenshot showing web interface

Research context

An artice on this topic is being presented at VDI Mechatronik conference 2021 under the title “Formal Semantic Representation of Methods in Automatic Control” by Robert Heedt, Carsten Knoll, Klaus Röbenack (TU Dresden, Institute of Control Theory).

Abstract:
Written knowledge about automatic control theory is hard to access as it requires familiarity with the exact terminology. Therefore, we propose the “method net”, a supplement to classical knowledge representation, consisting of types and methods in a graph structure. From that, a schematic solution procedure can be generated for a specific problem. Trajectory tracking control for a triple pendulum is used to demonstrate how the proposed methode supports knowledge transfer.

Development

Frontend

  • We use NPM for management of Javascript libraries.
  • Install all dependencies (specified in package.json): npm install (in the main directory)
    • → This creates a directory node_modules which is comparable to the virtual env directory in python
  • We use esbuild to build a bundle (single file with project code and all dependencies) that is then served from ackbas_core/static/ackbas_core/main.js.
  • Frontend code lives in ackbas_core/ts (Typescript which will be compiled to JS during build).
  • Build : run npm run build.
  • Watch mode : run npm run watch to start esbuild in watch mode, which recompiles the Typescript code automatically when it changes.

Backend

  • The backend is written in Python using the Django framework
  • Dependencies are listed in requirements.txt and installed with pip install -r requirements.txt
  • Run the Django server locally with python manage.py runserver
  • The start page is then served on http://localhost:8000/
  • Run the provided unit tests with python manage.py test

Further relevant docs

About

License:GNU General Public License v3.0


Languages

Language:JavaScript 95.1%Language:CSS 3.9%Language:Python 0.6%Language:TypeScript 0.2%Language:TeX 0.1%Language:HTML 0.1%