Introduction

Discover how model-based software development in MATLAB Simulink accelerates embedded control projects with GOcontroll Moduline controllers.

Model based software development

Model-Based Software

Model-based software development is transforming how engineers design, test, and deploy control systems. Instead of writing extensive code line-by-line, developers create functional models that can be simulated, tested, and then automatically converted into executable code. For GOcontroll’s Moduline series of embedded controllers, this approach (especially when combined with MATLAB Simulink) offers unprecedented speed, flexibility, and reliability. Whether you’re designing industrial automation, agricultural machinery, or advanced vehicle systems, this workflow streamlines the journey from concept to implementation.

What is Model-Based Software Development?

Model-based software development (MBSD) is a design methodology where the functional logic of a system is expressed in a graphical, model-centric environment rather than traditional text-based programming. Instead of manually coding algorithms, engineers work with interconnected blocks, data flows, and simulation environments.

Key principles of MBSD include:

  • Graphical representation of control logic for better clarity.
  • Simulation before implementation to detect design flaws early.
  • Automatic code generation that reduces manual coding errors.
  • Reusable models that speed up development for similar applications.

For GOcontroll Moduline controllers, MBSD offers a perfect match: robust, field-ready hardware combined with a software workflow that’s efficient and developer-friendly.

MATLAB Simulink as the Development Environment

MATLAB Simulink provides the foundation for model-based software development with GOcontroll controllers. It offers:

  • A drag-and-drop blockset, including GOcontroll’s custom blocks for modules and onboard features.
  • The ability to simulate real-world conditions before deploying.
  • Live parameter tuning during testing.

GOcontroll’s Simulink blockset enables direct integration with:

  • Digital and analog I/O modules.
  • CAN and LIN bus communication.
  • System-level functions like CPU monitoring, voltage measurement, and LED control.

By using these blocks, developers can build fully functional control algorithms without writing a single line of low-level code.

Automatic Code Generation

Once the model is complete, MATLAB Simulink’s code generation tools compile it into C code optimized for the Moduline hardware. This is where MBSD really shines:

  1. Design the model using Simulink and GOcontroll blocks.
  2. Simulate and validate performance in a virtual environment.
  3. Generate code automatically using Simulink Coder.
  4. Deploy directly to the Moduline controller via the upload server over Wi-Fi.

Because GOcontroll controllers run embedded Linux, the generated binaries integrate seamlessly.

Advantages of MBSD with GOcontroll

Implementing model-based software development with GOcontroll Moduline controllers delivers multiple advantages:

  1. Faster Development Cycles
    Visual modeling and automatic code generation cut implementation time significantly.
  2. Fewer Programming Errors
    Simulation catches logic issues early, reducing costly debugging in the field.
  3. Easier Maintenance and Updates
    Especially for small companies it provides readability of the control logic on long terms.
  4. Hardware Flexibility
    Moduline’s modular architecture allows the same software model to run on different hardware configurations.
  5. Ideal for Small to Medium Production Runs
    Particularly valuable for custom machinery, prototypes, and low-volume industrial systems.

Real-World Applications

GOcontroll’s MBSD workflow excels in demanding applications:

  • Hydrogen storage control systems – precise real-time monitoring and valve control.
  • Agricultural automation – sensor-driven irrigation and harvesting logic.
  • Electric vehicle subsystems – battery management, motor control, and predictive maintenance.
  • Remote monitoring solutions – integrating sensors, data logging, and wireless communication.

Each scenario benefits from the quick iteration and high reliability of MBSD, critical when equipment downtime means financial loss.

Read here everything about the open source model-based software development.

Latest blog