When developing an algorithm for a control system, the engineer is faced with choices in how to realize the control system. At Pi Innovo, we look at the bigger picture when developing control system software. Using OpenECU, an engineer can choose to use simple, calibratable look-up tables; or utilize math and logic to represent the underlying behaviors (physics, chem, thermo, etc) of the system being controlled. Each approach has its place, but what is most effective is a balance between physics based control and look up table control. At Pi Innovo, we are accomplished in developing first principle physics based control systems. Specific examples include:
- Diesel aftertreatment – DOC and DPF thermo-chemical models
- Brake Based Electronic Stability Control (ESC) – wheel speed / vehicle speed model
- Internal Combustion Engine – Combustion air mass model
Once the control system design is documented and agreed, the team at Pi Innovo uses our decades of software development expertise, as well as libraries of existing proven software functions, to quickly construct our customer’s solutions. Commonly used functions are maintained in libraries and re-used to accelerate development and improve overall software quality.
Depending on the rigor required, Pi Innovo can conduct an array of software testing. Software-in-the-loop (SIL), Model-in-the-loop (MIL), and Hardware-in-the-loop (HIL) testing are all utilized when the rigor of the program demands it. Pi Innovo can develop fully automated regression test packages such that 100% of the software can be tested on HIL overnight. Many of our programs conduct lights-out testing; the engineering team checks in a new build of software at the end of the day that automatically kicks off a complete set of regression tests. On average this testing takes 8-15 hours to complete due to the rigor of the test plans.
Since Pi Innovo can provide full turn-key control system solutions including the ECU hardware, operating system, control system software, and production calibration development, the discipline at each level is considering the impact on the next.
- New circuit design: Can faults in this circuit be diagnosed?
- New I/O function: What is the application software user interface to this function?
- Will this software be difficult or time consuming to calibrate?
- Can it be easily tested?
- Using automation or scripts?
- Manual testing only?
- Does this software and calibration adapt to variation automatically?
- What is the change impact to a software update?
These questions drive decisions that make a more efficient product that will last longer with fewer defects.
Pi Innovo has expertise in a diverse range of control applications, including:
Pi Innovo engineers have supported a multitude of customers with engine controls ranging from motorsport, passenger car PFI gasoline engine, passenger car common rail diesel, dual redundant safety critical control for piston-engine aviation, heavy duty diesel, and large engine applications. Internal combustion (IC) engine control requires understanding of the engine hardware, thermodynamic principles, sensors, and actuators. Pi Innovo’s experience includes modern engine control topics such as Gasoline Direct Injection (GDI), Variable Valve Timing (VVT), Exhaust Gas Recirculation (EGR), Catalyst management, Selective Catalytic Reduction (SCR), and multi-injection.
Pi Innovo engineers have supported specialized control applications for adaptive damping and other variants of hydraulically-actuated vehicle suspensions. These applications require an understanding of vehicle dynamics, hydraulics, and physical principles. Using the Matlab Simulink model based controls toolchain, Pi has developed vehicle models for simulation purposes, to test and iterate control designs. When it is important to incorporate the actual system hardware, Pi creates a HiL system, such as a hydraulic test buck used to emulate a braking system, so that control approaches can be validated before access to the final vehicle is possible.
Pi Innovo engineers have specialized experience in the area of brake-based ABS, Traction, and Stability Controls. Similar to Suspension Control, these topics draw on vehicle principles, with even more emphasis on the tire and steering dynamics. These applications lead to challenges in accurately estimating parameters that cannot be directly measured, such as true speed-over-ground during a wheel skid, and unwanted vehicle side-slip.
Pi Innovo has delivered a number of vehicle control unit solutions for hybrid (both series and parallel) and pure electric vehicles. Engagements have ranged from ECU (and associated training) supply through to whole vehicle responsibility. Leveraging OpenECU hardware and Pi Innovo’s detailed understanding of electric vehicle systems, Pi Innovo engineers are able to quickly integrate new powertrain architectures into new or existing vehicle systems.
Pi Innovo engineers have experience with brushless motor applications, including sensor-less control techniques. Brushless motor control presents challenges which require design tradeoffs between cost, torque, speed performance, and electromagnetic noise. Selecting the appropriate hardware design and pulse-width modulation (PWM) control scheme is essential to meeting the customer’s end requirements.
Throughout these control applications, Pi Innovo engineers investigate the underlying physical principles of the system leading to flexible, broadly-applicable solutions. This approach is preferred over narrow control designs, which rely on exhaustive characterization of every operating condition.
In addition to controlling a mechanical system to achieve a desired behavior, Pi Innovo has experience from nearly every application regarding algorithm designs for diagnostic functions. For safety-critical and high-quality end systems, rigorous diagnostic functionalities become absolutely necessary, and require approaches including rationality and correlation between multiple measurements and estimates. In addition, some applications include prognostics, or functionality, that estimate the remaining useful life of the system, indicating the likelihood of a component or system failure before it actually occurs.