3D Lab Instrument Simulation

about project

Tecan required a high-precision 3D simulation of their laboratory robot that replicates the real instrument’s behavior from both firmware and mechanical perspectives. The objective was to develop a digital twin with a deviation of no more than 0.01% and latencies within 10 milliseconds. This simulation was essential for accelerating development cycles and reducing costs by enabling virtual testing and development of new equipment, ultimately shortening time-to-market.

The digital twin solution allows developers to test their code in real-time, simulate equipment behavior, and detect issues early without using physical hardware. The simulator provided a significant advantage by allowing developers to run automated tests on their local machines, leading to a reduction in both development time and costs.

Business Goals

  • 20% Faster Product Launch: Reduce development and market release times by 20%.
  • 30% Lower Development Costs: Reduce reliance on physical prototypes, cutting development costs by 30%.

Tasks

The results delivered by 3D Simulator:

  • 20% Faster Product Launch: Development and market release times were reduced by 20%.
  • 30% Lower Development Costs: The simulator reduced the need for physical prototypes, cutting development costs by 30%.
  • Reduced Testing Expenses: Automation and reduced reliance on physical equipment minimized testing costs.
  • Lower Marketing Costs: 3D Simulator allowed marketing team to arrange virtual demonstrations and led to reduced marketing expenses.
  • High Usage: 90% of employees now use the simulator in daily operations.

Techstack and standards:

  • Technologies/Standards: Real-time, Microservice architecture, Unity3D, C#, WPF, WCF, MEF, Pseudo real-time with 10ms latency, firmware simulation, I2C communication
  • Operating Systems: Windows 10, Windows 7
  • Device Type: PC-based laboratory robotics simulator
  • Drivers: Win10/Win7 kernel-level drivers
  • Domain Knowledge: Thermo shakers, bio shakers, ODTC, barcode readers, centrifuges, cooling modules, RGB light, liquid level simulation, collision detection and handling, IEC 62304 compliant, liquid handling

process

Project Implementation

Initial Request and Requirement Gathering

The client initially requested a 3D simulator to decrease the costs of the product development including both hardware and software development. The first release was monolithic, than moved to a modular architecture, which would allow better flexibility and easier integration of new features.

Evaluation and Planning

We gathered detailed requirements and information on how the laboratory device and robotic instrument operates in real-time from the client. Our team conducted an initial analysis, breaking down the requirements into specific tasks and creating detailed project estimates and prepared a comprehensive document with tasks, budget, and timelines, which was reviewed and approved by the client.

Requirement Specification Development

We broke down the functional requirements into smaller, manageable tasks with detailed specifications for development, testing, and documentation were created, ensuring full traceability in the project management system.

Development

The 3D simulation was implemented using Unity3D, while most of the business logic was developed in C#. The modular architecture allowed us to easily add new features without affecting existing functionality.

All stages of the simulator development adhered to the IEC 62304 standard, fully aligning our processes with those of the client. This integration allowed us to maintain a high level of consistency and compatibility, ensuring that our work seamlessly fit into the client’s existing development workflows.

Test Coverage and Automation

Early releases focused on manual testing according to IEC 62304 standards. We later transitioned to automated testing using SpecFlow, which allowed us to define test scenarios in a human-readable format.

Now we run over 2400 automated tests daily, covering regression testing and new functionalities. Manual tests are used for complex UI interactions, ensuring thorough test coverage.

Integration with Control Applications

We successfully integrated the simulator with Tecan’s control software in such a way that the control application cannot distinguish it from the real device.

The integration process involved continuous testing and close feedback loops with the client.

Documentation Development

Comprehensive documentation for each release was developed, compliant with IEC 62304 for Class A devices. This included verification documentation for each iteration.

Release Candidate Preparation

Each release candidate was thoroughly tested, with all test cases verified. Once all tests passed, the build was merged into the main branch and published as a release candidate.

Verification Process

We confirmed the functionality and compliance of each release candidate through automated and manual tests. Verification reports were generated, detailing the scope, coverage, and results of all tests.

Validation and Final Release

On the validation step we validated that each release candidate met the client’s requirements.

Final Release and Support

Finally, we officially deployed the validated release and continued to provide ongoing support, ensuring smooth operation and handling any future updates.

review

feedback from
our customer

In general, I consider Seaberry Technologies to deliver very well under the dynamic constraints we work (changing/fuzzy requirements, changing priorities etc.). It may make the planning difficult sometimes, but Seaberry is capable of adapting quickly. Also, as a customer, I feel that Seaberry has the right sense of urgency/importance and that problems are solved in a collaborative and pragmatic way.

Aleksandar Paravac
Software Project Manager

contacts

you have a project, and want to release it? contact us

If you hae questions or need any general information, please complete this form to request the information you need, it will be an honor to help you

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.