DMC was approached by the customer to take over ownership of existing code for a multi-axis therapeutic bed. The customer had created this code in house to accompany their new production bed, but as requirements evolved, the code had become too complex for their engineers, with limited programming experience, to maintain or develop.
DMC was able to ramp-up on the code quickly and work with the existing architecture in order to provide the needed programming expertise without compromising the project schedule. DMC also was able to offer hardware and software experience to troubleshoot the overall system during development.
Due to diverse needs, such as coordinated multi-axis moves, software safety routines, and various business requirements, DMC created code that divided programming logic from business logic. This enabled business requirements to be easily added upon a reliable, low-level control structure. Thus, the desired performance of the bed was achieved while increasing maintainability and eliminating bugs and errors.
An important feature in this process, considering the beds’ intrinsic need to be safe and reliable when used by patients, was also to ensure the robustness of the safety algorithms. DMC’s industry experience allowed all of the projected failure modes to be addressed, and unanticipated modes to be discovered and handled as well. This included implementing soft limits, filtering noisy signals, and architecting complex routines to handle obscure, hard to detect events.
As a final piece of the project, DMC also added enhanced features to the existing platform, such as better calibration, intuitive engineering scaling, and an integrated test mode. By designing high level functions like these into the code early on, the results anticipated and covered the customer’s needs for a supportable product. These features provided the finishing touches to the rest of the development work done by DMC and helped move this product line towards a successful launch.