Skip to content

Repository of Desktop app for The Gas Flow Control System. Gas Flow Control System is a comprehensive solution designed to revolutionize vacuum heat treatment technology.

License

Notifications You must be signed in to change notification settings

OlegSirenko/Monitoring_GasFlowControl

Repository files navigation

Build multiple platforms Codacy Badge

Monitoring for Gas Flow Control System

Overview

The Gas Flow Control System is a comprehensive solution designed to revolutionize vacuum heat treatment technology.

This project encompasses three key components:

  • a desktop application for precise hardware control,
  • an embedded system for on-site operations,
  • a web interface for real-time data access from any device.

Our aim is to enhance accuracy, efficiency, and user experience in controlling gas flow, paving the way for the next generation of vacuum heat treatment processes. This project is currently in the preparation phase for its upcoming release. Stay tuned for more updates!

This repository is first part of project: Desktop application.

Important!!!

This application COULD BE used not only for Gas Flow Control System. The API of this app at the moment is very simple.

References and Sources

How to install

Windows machines:

  • Go to Releases tab
  • Download the Installer.zip
  • Run the Setup_GasFlowControl.exe
  • Follow the instructions in the installer
  • Run the executable GasFlowControl.exe.

Executable with all necessary files will be placed in the Program Files directory. Also, Installer creates shortcuts on the desktop and in the start menu

Linux machines

How to use

The first time you opened the application you will see this:

first start

When the Microcontroller (or multiple microcontrollers) connected to server application you will see that plot appeared:

Plot Window

You can enable PID regulation with button Enable PID configuration: PID_example After clicking on Enable PID configuration the second line will appear on the plot: PID_regulation.png

You could chnage theme by clicking File -> Dark or File -> Light in the change style section.

light_theme.png

Microcontroller sends only one number as an actual Data from one sensor. You can find the working example at the SensorOutTest.py

Building

Linux machines

Firstly you need to install CMake with dependencies

sudo apt update 
sudo apt upgrade
sudo apt install git make openssl libssl-dev 
git clone https://github.com/Kitware/CMake.git
cd CMake/
./bootstrap && make && sudo make install

If you're using the latest Debian or Ubuntu

sudo apt-get install libsdl2-dev

if you're NOT using the latest Debian or Ubuntu

Install SDL2 from source (if you're not using the latest Debian or Ubuntu)

git clone https://github.com/libsdl-org/SDL.git -b SDL2
cd SDL
mkdir build
cd build
../configure
make
sudo make install

When cmake and SDL2 was installed we could start building the application

sudo apt install libgl1-mesa-dev libglfw3-dev ninja-build  
git clone --recursive https://github.com/OlegSirenko/Monitoring_GasFlowControll.git 
cd Monitoring_GasFlowControll
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_MAKE_PROGRAM=ninja -G Ninja -S . -B ./cmake-build-release
cmake --build ./cmake-build-release --target GasFlowControlMonitoringApp -j 6

After successful build you can run application using:

cd cmake-build-release 
./GasFlowControlMonitoringApp

To create an AppImage file you need to run the shell script: run.sh

cd ../Deploy/AppImage && ./run.sh