Belt-drive systems engineering toolkit

Modernizing mathematically complex
legacy applications
Industry:

Services:

Desktop development
Custom web development
Mobile software development
UI/UX design
Legacy code migration
1

Project overview

In 2019, Abto Software began a long-term cooperation with a leading manufacturer in the machinery industry. Our client is a public corporation designing on-demand power transmission solutions serving agriculture, automotive, construction, and other large sectors.

Abto Software was involved in migrating outdated technologies (VBA, VB6, and LISP) to the .NET framework. After the legacy products were converted, we helped the client go cross-platform and added new functionality to boost overall productivity.

2

Main goals

At the first stage of our long-term cooperation, we focused on the following issues:

  • The aging of the legacy software lead to:
    Severe risks of potential data corruption
    Potential risks of customer support deterioration
  • The utilization of Visual Basic 6, which is no longer being supported, lead to:
    Operational risks
    Intermittent crashes, which caused work loss
    System vulnerabilities, which caused security threats
  • Additional code was executed in VBA, which sensibly complicated troubleshooting and maintenance
  • Matlab and AutoCAD routines required costly software licenses

At the next stages, as the outdated tools were migrated to modern .NET 6 (LTS version), we moved on to:

1. Cross-platform development

2. Implementing on-demand, additional functionality

3

How the solution works

The solution is a desktop application providing multiple specialized modules for streamlined belt-drive design. The product is built based on C# .NET 6 WPF along with MVVM architecture.

 

The platform is designed to serve the company’s internal needs:

  • There are 6 modules that support the specification and engineering of complex belt-drive systems, which are being distributed across multiple major sectors
  • 2 of 6 modules are also available publicly – external end-users might use these modules to perform own calculations and order custom-built solutions precisely tailored to their specific needs

The toolkit provides specialists with the following functionality: 

  • A comprehensive design guidance
  • A complete, automatically synching product and pricing catalog
  • Project and design creation
  • Derivatives creation 
  • Design calculation
    Geometry properties
    Belt life
    Shaft load
    Tensioning information
    Energy savings
    Cost savings
  • PDF format report creation and export

Along with:

  • User and permission management
  • Version control
  • Automatic updates
  • Automatic backups 

Design modules in detail

Module 1

2-point drive design software (available publicly), rewritten from Windows Forms, used to:

  • Review multiple potential solutions for defined and existing industrial drives
  • Estimate resulting cost savings

Module 2

Multi-point and serpentine drive design tool (available publicly), rewritten from Windows Forms, used to:

  • Automatically calculate belt tension, belt length, shaft load, and more
  • Receive recommendations on multiple critical factors 

Module 3

This module, rewritten from Microsoft Excel:

  • Is used to design motorcycle and scooter drives
  • Provides recommendations on the best-suiting belts

Module 4

This module, rewritten from outdated VB6, MATLAB and MS Excel:

  • Is built to analyze the layout of accessory belt drives
  • Includes several additional features (belt rib fatigue life, vibration analysis and simulation, and more)

Module 5

Rewritten from outdated VB6, this module is built to analyze the layout of synchronous belt drives.

In particular:

  • Belt-tensioner interaction
  • Installation conditions
  • Tolerance stack-up
  • Thermal behavior

Module 6

Rewritten from outdated VBA and LISP AutoCAD plugin, this module is used to design teeth profiles.

The tool helps to:

  • Forward generate profiles from hob to pulley
  • Backward generate profiles from hob to pulley
  • Wrap mold into rack
  • Un-wrap rack into mold

Mobile functionality in detail

The platform’s mobile version provides the following functionality:

 

1. An easy-to-navigate 2-point drive design module, which allows users to:
Select desired belt products
Fill in drive details 
Consider service and equipment as well as other important conditions
Create and export reports

 

2. Premises’ management – this section allows to:
Add/merge/edit premises
Add drives
Review distributors
Search co-workers

 

3. Tensioning calculation – by using this tool, the user can run tensioning calculation in 3 different modes:
By choosing standard parameters from the product catalog
By measuring belt frequency without calculating tension 
By entering custom parameters

 

4. RPM calculation – by using the flashlight, the user can measure belt RPM

 

5. Sound meter – by using the microphone, the user can measure noise levels in decibels

 

6. Distance meter – by using the camera, the user can calculate geometric parameters

abto software
abto software
4

Our contribution

We covered:

  • Business analysis to further successfully handle:
    Legacy migration from outdated Microsoft Visual Studio 6.0 (Microsoft VB)
    Cross-platform development
    Functionality extension
  • Visual Basic 6.0 modernization (initial analysis, roadmapping, preparation, Visual Basic 6 migration, quality assurance, software development)
  • Unit testing
  • Automated testing
  • Architecture refactoring
  • Custom desktop, web and mobile development

Our team also provided additional services to ensure smooth implementation of the delivered functionality, which includes:

  • Thorough testing and debugging
  • VB6 to .NET performance optimization services
  • Technical support and maintenance
  • The creation of detailed user manuals
5

Main challenges

Main challenges faced during the project include the following matters:

 

1. Some algorithms had to be rewritten to a modern language precisely

To prevent regression issues, we covered the most important parts with both unit and automated tests.

 

2. Some algorithms, previously provided by the old framework, had to be rebuilt from scratch

To handle this part, we involved skilled engineers that have extensive knowledge and experience in the field of computer science.

 

3. Custom algorithms

In collaboration with the client company’s product engineers, we implemented industry-specific calculations.
By leveraging extensive expertise in R&D, specifically in computer vision, we provided the possibility to conduct drive measurements by using Apple ARKit.

 

4. Cross-platform development

To ensure easy maintenance, we shared a common business logic in C# across platforms:

  • Essential functions are extracted to common data libraries
  • As changes are introduced, those functions are being automatically included across platforms

 

abto software

Tools and technologies

Tech stack:

  • C#
  • .NET 6
  • .NET 7
  • WPF
  • MVVM Light
  • MahApps.Metro
  • Blazor
  • Xamarin
  • ASP.NET Web API
  • Wout Ware CadLib

Tools:

  • Visual Studio 2022
  • TFS
  • Figma
  • TestFlight

Timeline:

  • January 2019 – ongoing

Team:

  • 1 project manager
  • 1 business analyst
  • 1 CV specialist
  • 4 software developers
  • 1 technical lead
  • 1 QA engineer
  • 1 UI/UX designer
  • 1 technical writer
6

Value delivered to business

Abto Software was working towards converting slow functions, all written in different programming languages. This allowed the business to stay highly adaptable to the fast-changing market.

 

In the course of further cooperation, our team successfully designed and implemented additional functionality. Besides that, we provided website and mobile development to expand the capabilities of the in-house staff and increase overall competitiveness through a cross-platform approach.

 

At the first stage, we modernized outdated tools and consolidated them within one solution, which allowed clients to:

  • Save considerable license costs for 75% of users
  • Resolve major runtime issues
  • Optimize new employee training by standardizing the workflow and providing comprehensive manuals
  • Minimize prospective maintenance and development costs

At the current moment, we’re covering web and mobile development to grow the client’s target audience.
 
So, is VB6 to .NET migration worth it? For sure.
 
Contact us to modernize your application and future-proof your operations.

Categories:

Contact Us

To find out more about Abto Software expertise, request a quote or get a demo of your custom solution.

  • Clicking this button, I agree to the processing of my personal data.

Contact us

Tell your idea, request a quote or ask us a question