Mesuris is a french company that specializes in multibeam bathymetry, the science of measuring the depths and underwater landscapes of the ocean which makes possible the mapping of the seabed. Mesuris is also a software editor and expert in electronic system integration, develops, and distributes the POSIBLOC™ system, a tool that helps to install artificial blocks that make sea-dikes.
The building of a dike assisted with POSIBLOC™ system (photo Artelia)
Obeo developed their most recent software, BLOCKSfit™ which visualizes in real-time and in 3D the blocks used while making the sea-dikes.
The first need was being able to find the position and orientation of every block, using a cloud of dots and knowledge of which type of blocks was used during the construction of the dike so that they can pass them for review. This information was important to verify:
- The installation restrictions imposed by the supplier
- The integrity of the dike through time (eg: after a storm)
A first study ( Proof-of-Concept ) was successfully carried out by Obeo which validated a first version of the algorithm and also confirmed our technological choices. Naturally, Mesuris trusted us with industrializing a solution. So in response, we put together an agile team and made a first version of the software in 12 sprints.
And as an image is worth more than a thousand words, here’s a quick preview of the result:
BLOCKSfit™ Installation Review
After this first success, Mesuris asked Obeo to develop a new feature to BLOCKSfit, integrating information in real-time on their POSIBLOC system. This system can help guide the building cranes. By translating the data sent from different blocks (GPS, orientation, weight), the software can create a representation in real-time of the block in space. This makes it much easier to install the blocks. ( The block being underwater, so invisible most of the time. ) Furthermore, this data can directly be used with the first review functionality to validate work.
After the 8 Sprints necessary to construct this new solution ( while adding new features to the first version), the second version was put in production in fall 2020.
BLOCKSfit™ Placement
Let’s get technical
If you know Obeo, you know we absolutely love using Eclipse and EMF, and all the stars were aligned to use them in this product. Blocksfit is based on an E4 Eclipse product ( without any compatibility layers ). For the 3D engine and after a bit of research and testing, we used a very good 3D engine which is open-source (our DNA at Obeo since the beginning ) and developed in Java: JMonkey.
Here’s a general look at the technological architecture that was put in place:
The architecture of BLOCKSfit™
JMonkey 3D Engine
JMonkey revealed itself to be the perfect tool for the job, supplying solutions to all our needs. It allowed us ( with a bit of optimization here and there) to show clouds of millions of dots as well as scenes containing thousands of 3D objects.
A scene containing 55 million dots
Furthermore, its architecture makes it easily testable which made it easy for us to put in place unit tests on our integration server.
The Modeling Approach
The modeling approach, Obeo’s favorite, allowed us to:
- Reuse all the satellite technologies and gain in productivity (EMF Transaction, Edit, EEF…)
- Have a generic approach so that Mesuris can create and edit the configuration on their blocks
Network Gateway: Vert.x
To create our network gateway, we used Vert.x. As light as it is powerful, Vert.x allows us to manage all our messages from the sensors in an asynchronous and highly performant manner. Plus, the framework gives access to a test API which, once again, allowed us to create tests very quickly and so gave us the opportunity to go over certain points of the project.
Conclusion
We wanted to thank Mesuris for trusting us with this project which enabled us to expand our knowledge and skills in a domain we had not yet worked in and associating innovating technologies such as 3D and open-source software. Also working as an agile team allowed us to advance carefully into the project and test it every step of the way.
On the 21st of October 2020, I’ll have the pleasure of presenting this at EclipseCon 2020, and I’ll be going into more detail about the tech we used. Registering is free.