Ik ontwikkel aangepaste pid- en lqr-regelalgoritmes in cpp
MSc, Automation and Control Engineering, RD Robotics Control Systems engineer
Over deze dienst
Los instabiele, trage of oscillerende regelkringen op met aangepaste, wiskundig gevalideerde regelsoftware in moderne C++ of Python.
Wat ik lever:
- Systeemidentificatie: Overdrachtsfuncties en state-space modellen afgeleid van jouw experimentele CSV-logboeken (stap/frequentierespons).
- Industriële discrete PID: Tustin/Euler-implementaties met anti-windup (klemmen/back-calculatie), derivaat low-pass filtering en feedforward compensatie.
- Optimaal control (LQR / LQG): Discrete state-space formulering, synthese van state-feedback gain matrix en state observers (Luenberger / Kalman).
- Validatie & stabiliteitsrapport: Bode-plotten, gain/phase marges, settling time en overshoot-analyse.
- Code specificaties: Schone, standalone C++ klassen (.hpp/.cpp) zonder dynamische heap allocatie op verzoek (bare-metal MCU vriendelijk). Getest op STM32, ESP32, ARM Cortex, Linux IPCs, Raspberry Pi en ROS / ROS 2 knooppunten.
Stuur me een bericht voordat je een bestelling plaatst om je plantdynamica, doel sampling tijd en hardwarebeperkingen te bespreken.
Veelgestelde vragen
Automatische vertaling
Moet ik speciale software (zoals MATLAB/Simulink) gebruiken om jouw deliverables uit te voeren?
Nee. Alle code wordt geleverd als standalone, standaard C++ (of Python) bronbestanden zonder proprietaire runtime of licentieafhankelijkheden.
Kan de C++ code draaien op bare-metal microcontrollers zonder dynamisch geheugen?
Ja. Op verzoek wordt de implementatie strikt zonder heap allocaties (malloc/new) geschreven, met gebruik van statisch geheugen en vaste arrays, geschikt voor bare-metal STM32, ARM Cortex of MISRA-conforme omgevingen.
In welk formaat moet mijn experimentele data zijn?
Een eenvoudig CSV-, TXT- of Excel-bestand met timestamps, het regelinputsignaal (bijvoorbeeld PWM, spanning, commando) en de gemeten plantoutput (bijvoorbeeld RPM, positie, temperatuur).
Kun je controllers ontwerpen voor gekoppelde multi-variable (MIMO) of niet-lineaire systemen?
Ja. We kunnen state-space representaties formuleren voor MIMO-opstellingen of lineariseren rond specifieke bedrijfsinstellingen voor gain-scheduled control. Stuur me eerst een bericht om je plantdynamica te evalueren.
Kan de controller worden geïntegreerd in een ROS / ROS 2 node?
Ja. De regelklasse is modulair geschreven, waardoor het eenvoudig is om deze in een rclcpp node of aangepaste timer callback te wikkelen. Laat het me vooraf weten als je een volledige ROS 2 workspace wrapper nodig hebt.

