Software design

Develloping software is a major part of our business. Depending on the application area we use several languages. In most languages substantial libraries have been built up over the year, making the development of new project significantly faster. 

Windows / MacOS software: Delphi

Delphi is our language of choice for develloping anything that runs on a computer, tablet, phone and even for some web applications. Together with the FMX framework, Delphi supports compiling a single source for multiple platforms, We use this feature mainly for supporting both Windows and MacOS for desktop applications. Database support is also a strong point of Delphi, transparently supporting the entire spectrum from Oracle to Sqlite and NoSql databases. These applications range from user interfaces for machine interaction, such as formula management for dispensing equipement, to MRP, PointOfSale and certified software for medical applications.

Electronics firmware: C++ / Visual Studio Code/ PlatformIO

C++ is the languages of choice for develloping firmware running on the electronics boards we design. It is widely supported, so many hardware dependend libraries can be used to control all types of sensors, communication protocols, TFT touch screens, etc.. It’s also a very fast compilable language with excellent object orientation support, allowing large projects with code that remains manageable for years to come. Using a RealTimeOS framework and parallell processing, high-speed pulse counting and implementation of advanced control algorithms are common tasks. In combination with Visual Studio Code, PlatformIO and our debugging hardware for different chipsets, we can reduce the development time and improve quality thanks to real-time debugging.

Web client and server side software: PHP / MySql / Delphi / FireStore

For connecting our machines and IoT devices to the internet we typically use PHP 7. This is supported on any web server, is easy to install and transfer and is widely supported throughout the industry. For the client side we typically use Delphi, either compiled to JavaScript running in any browser, or as a desktop program. For our IoT device’s client side we use C++.

PLC programming: Sysmac Studio, etc.

Compared to the tons of possibilities, fast response times and unlimited posibilities when developing firmware for our own electronics, programming most PLC’s feels like a step back in time… However for many industries using a PLC is a must. In case you’re thinking about develloping a new machine then check out the Electronics Design and Product Development pages. Using your own electronics may be more interesting than you think.

When develloping PLC software the programming environment is mostly determined by the PLC brand. We have programmed many PLC types over time like Omron, Siemens, Panasonic, Telemechanique, ABP and Koyo. In our experience the combination of Omron and Sysmac Studio is definitely one of the better choices.