We have completed the development and implementation of the software package for forced draft unit design calculations for «KMZ» JSC. Basically, the project was an extensive research work, because the modules of the software package included a design calculations library that had to perform various forced draft unit design calculations. Each customer’s request is different. Therefore it is impossible to choose one fan (FDU - forced draft units) that is the best possible for each case. We always have to evaluate various factors, such as dimensions, efficiency, generated noise, engine power, weight, rotation speed, price, operating cost and service life of the fan. This design calculations library helps to pick a fan that is the best for a customer.
Figure 1. Drafting of a TCO (technical and commercial offer).
Basically, we create a complete model of the forced draft unit with its characteristics, selection of the electric motors, materials, and over 50 more parameters. Each parameter has its own set, for example, the electric motors: manufacturer, power, rotation speed, line voltage, variable frequency drive compatibility, starting characteristics, rotor moment of inertia, permissible moment, the inertia of the driven mechanism, permissible shaft load, weight, outline dimensions, noise characteristics, heat extraction.
Figure 2. Layout for Data Input for Design Calculation of Characteristics of the Forced Draft Unit.
Height above mean sea level field: drop-down list. The values of equipment installation above mean sea level spaced at 100 m intervals are shown.
Barometry field: field for input of the atmospheric (barometric) pressure at the installation site. By default, its value is 101325 Pa. It is automatically adjusted when the height above mean sea level is selected.
Consumption field: field for input of the handled medium volume flow rate.
Pressure field: field for input of the total pressure to be gained by the forced draft unit.
Temperature field: field for input of the forced draft unit inlet handled medium initial temperature.
Density field: field for input of the forced draft unit inlet handled medium density. Impeller rotation speed field: field for input of the forced draft unit’s impeller rotation rate.
Discharge field: field for input of the forced draft unit inlet discharge and supercharge pressure.
Type Size field: field for input of the forced draft unit type size (impeller tip diameter). The type size automatically calculated by the program is shown in the background in the right part of this field.
Specific speed field: the specific speed calculated based on the parameters input is shown in the middle window. The fields located beside enable to input the range within which the list of available offers will be shown (Select forced draft unit button), and those which have a specific speed within the range set will be highlighted within the list of aerodynamic diagrams.
All curves (for example, the power curve) may be plotted by Bezier polynomial fitting. However, it can plot a curve through points somewhat other than those set. However, you can change the fitting type to splines, and the curve will be plotted exactly through the points of the series. If there are some releases in the data, splines will show them too, and Bezier will fit them.
Figure 3. Examples of Curves.
Technology Stack Used
Main software products used:
- C# programming language
- MongoDB non-relational database
For the system development, we selected the C# programming language, for several reasons:
- Windows operating system development with the option to transit to Linux or Mac OS at the customer’s request.
- Desktop application.
- Quick development and prototyping.
- Easy development and support.
- Good performance of the end application.
- All members of the development team have experience of work with the language.
We considered the following languages:
- C#
- C++
- Java
- Python
Python programming language was excluded from consideration because it did not satisfy items 2 and 5. We also turned down the C++ language, because it did not satisfy items 3 and 4. Java was rejected for non-compliance with item 6.
In terms of the auxiliary components, the following libraries were used:
- alglib.net
- Bezier
- DataGridExtensions
- Microsoft Visual Studio Installer Projects
- MongoDB Driver
- Newtonsoft Json
- ScottPlot
- WPF
We selected MongoDB’s non-relational database because it enables us to change the structure of data with much flexibility to meet the changing needs of the end-user.
System Architecture
Figure 4. Application Architecture.
The structure of the system architecture is modular, which enables easy replacement of any part of the system. This approach makes the work easier, because the development may be carried out by groups responsible for separate parts of the application. For example, the calculation core was vastly changed during the development, and this influenced the integration with the user interface to the least extent possible, while the other components did not require upgrading.
System Components
Besides the standard functionality for forced draft unit design calculation, another functionality, available to the administrators only, was added, namely, the diagrams editing. The complete cycle of work with the data of a diagram is similar to CRUD. There is the option enabling to manipulate the display (what to display and what not to display), and to easily edit the data of the curves using the mouse, instead of manually inputting the values, as in the previous system.
For a more esthetic display of data, several methods of interpolation have been used:
- based on the Bezier curves;
- based on the splines.
The system administrator can decide what type of fitting will suit a certain model better.
In terms of the approaches to the solution of a problem, we stuck to the following ones:
- Quick development sprints (quick prototyping and feedback).
- Simple but adaptive interface with the option enabling subsequent customization.
- Commitment to quality of the end product
- Implementation of the functional part first, and design of the interface then.
- The modular system of the project.
We also developed additional tools for KMZ, and this made the work with the system easier. Those were:
- Tool for conversion of the design calculation models to JSON, which helps to unify the design calculation models' data storage format, unlike the previously used format.
- The tool developed for the system administrator and enabling to easily add new users to the system.
Result of Works
Thanks to the development of this software package, «KMZ» JSC has obtained a software package that, having a large set of references (aerodynamic characteristics, noise characteristics, inertial characteristics, range of products, electric motors, outline drawings, templates of the documents, calculations of the node weight), plots precise characteristics of the forced draft unit, its cost and materials required, etc. This made the drafting of the commercial offers easier for the customer and enabled to keep a base of ready-made solutions.
There are plans to significantly extend the functionality and, basically, to transit to a unique production ERP platform. There are already plans for functionality that, after forced draft unit design calculation, will reserve the time of the CNC machines for their production.
The project was very interesting for us!
«KMZ» JSC offers a wide range of products in the field of industrial gas purification, energy-efficient smoke exhausters and superchargers to its customers. The experience accumulated and highly qualified technical specialists enable us to solve the tasks as accurately as possible, using state-of-the-art technologies in moving gas-air mixtures, upgrading of outdated equipment, increasing of service life and reducing of maintenance costs.
Customer’s review
«To complete the project of KMZ JSC, MST Company was picked, because its staff included specialists capable of solving the tasks set. I am thankful to MST Company for their professional competence and flexible approach to the solution of non-routine tasks!»
Отзыв клиента
В июле 2019 года компания ООО «Аэро-Трейд» искала подрядчика для выполнения работ по внедрению системы безналичной оплаты товаров самолетах авиакомпании «AZUR air». После тщательного изучения рынка, мы решили обратиться для реализации данного проекта в компанию ООО «МСТ Компани». Основной задачей было обеспечить каждый борт авиакомпании «AZUR air» терминалом, который сможет принимать платежи не только на земле, но и во время полёта.
В течении всего времени нашего сотрудничества, специалисты ООО «МСТ Компани» продемонстрировали отличные профессиональные навыки при подготовке проекта, и разработке документации. В результате мы получили гибкое и надёжное решение, которое удовлетворяет нашим требованиям.
По итогам работы с компанией ООО «МСТ Компани» хочется отметить соблюдение принципов делового партнерства, а также четкое соблюдение сроков работ и выполнение взятых на себя обязательств. ООО «Аэро-Трейд» выражает благодарность специалистам компании за проделанную работу в рамках внедрения системы безналичной оплаты на самолетах авиакомпании «AZUR air». И рекомендует компанию ООО «МСТ Компани» как надёжного партнёра в области платёжных решений.