AI-based ultrasonic device for rolling bearing condition monitoring
Senzoro is an innovative startup which specializes in predictive maintenance for industrial machines using the combination of AI and ultrasound technologies. They develop solutions for analyzing rolling bearing’s sound with the help of a machine learning model.
Our client wanted to develop a device using an ADC for rolling bearing condition monitoring analysis that would convert ultrasound input data into digital format at a specific bit rate and frequency. Rolling bearings can usually serve up to one year, but they can wear when you least expect it causing harm to your production process. Senzoro aimed to create a device that could identify whether a rolling bearing has to be replaced or it can serve more.
Lemberg developed an ADC prototype using a Raspberry Pi 4, which was the most suitable board for the client's script and sound card drivers chosen for the project. Applying the client's algorithm, our engineers tested different kits to select the one that will process the sound within the specified time requirements. We adapted the provided script to diverse single-board computers (SBCs) to check which one was the most compatible with the algorithm. Finally, our team created a device that identified whether a rolling bearing worked properly or had to be replaced.
Lemberg and Senzoro agreed on a project-based cooperation model and followed a phased approach in project implementation. We set up weekly status meetings each Friday and maintained written communication. This workflow allowed us to communicate about any impediments as soon as possible. The client clearly outlined his requirements, and we paid more attention to the technical aspects of the project during our discussions. We devoted most of our efforts to the project's hardware part since machine learning integration required a comprehensive approach.
Our engineers started with searching for the right ADC board which could fall within a specific frequency requirement. Then, we selected hardware components that would be compatible with the client's machine learning algorithm. After considering a variety of development kits, we ended up choosing one with ready-made drivers for Linux. This plug-and-play chip served as a development kit that could be attached to a Raspberry Pi. The client gave us a file with a high sample rate, which comprised the sound of a worn out rolling bearing so that we could configure the prototype correctly. Our client preferred us not to modify the algorithm or, if needed, only add minimal changes. Our engineers managed to create a device without script adjustments.
At first, the client asked us to consider a Raspberry Pi Zero board. However, since it had a single-core CPU, it took too long to process data due to low performance. We also attempted to launch the algorithm on a Jetson Nano. Our team discovered that the Jetson's Linux core was much older than the Raspberry Pi’s one, and it was incompatible with sound card drivers. Besides, Jetson Nano board was more expensive than the Raspberry Pi. But the file on both boards was processed almost in the same amount of time, and the engineers decided to use a Raspberry Pi 4, which was compatible with sound card drivers, didn't require much time for sound processing, and cost cheaper. To avoid modifications of the script, we decided to create our own that would launch the client's script and extract the data. Our algorithm records short audio files and sends it to processing by starting the client's algorithm. After audio processing, the client's script indicates whether the rolling bearing functions properly.
The research part of the project was challenging. Our engineers were exploring the way the script functioned since it comprised various Python dependencies. The client's script was based on diverse libraries. We didn't know the version of the package and aimed to find the cause of errors. The algorithm output information as logs. The Lemberg team created a simulation of ultrasonic dynamics. The algorithm was supposed to define the simulated sound as "bad." We then placed an ultrasonic emitter that operated at the same frequency and recorded other samples to check how the script reacted to a "good" sound. In this way, we analyzed two states of the prototype — the red LED indicated that the rolling bearing was in poor working condition, while the green LED indicated the opposite.
How it works
The challenge we presented to Lemberg was huge and it involved a complex set of different disciplines not found in many companies. We were all impressed by the competency of each and everyone in their team. They have a very transparent co-working style and really share the responsibility that the desired product works.