Hello everyone !
We are students in an engineering school and for one of our project, we were asked to propose a connected wristband to measure in real time and for long period multiple signals thanks to a PPG sensor (HR, HRV, SPO2, body temperature, detect is the band is worn). In order to do that, we fisrtly made a FAST diagramm of our project to see all the things that needed to be done and how to get it done.
Then we got the Arduino Nano 33 BLE Sense and the MAX 30 100 PPG Sensor. Thanks to multiple links, mainly the one form the Last Minute Engineers, we recovered a simple code and a library to use the PPG sensor. With this code, we could retrieve the Heart Rate and the SPO2 values. The problem was that the value retrieved were not very precise with some abnormal values (less than 40 bpm or more than 150 bpm measured in a calm situation).
So we decided to change the way we would measure the heart rate and the variability of the heart rate. We used one of the available function, OnBeatDetected, to update the time at which the last Hear Beat was detected. This way, we could add the number of heart beat measured and add the time to a counter. When this counter reached 30 seconds, we would multiply the number of heart beat by 2, giving us the number of heart beat for a minute, so the heart beat measure. We would also read every 5 seconds the time between the last 2 heart beat, giving us the HRV mesaure.
Once this was done, we enabled the BLE of the arduino and send the data collected to NRF Connect for Mobile. This was the easiest way to retrieve the datas and see the updated value directly on our smartphone. The following images show you the result we obtained on NRF Connect.
After checking that our values were correct, we continue our prototype to ensure it could work autonomously. We needed to supply the Arduino with a constant 3.3V Voltage. We were given a 1000mAh battery, whcih delivers between 3V and 4.7V. We connectred this battery to a mini-USB battery charge to allow it to be charged when needed. The one thing that was needed to be done was to allow the arduino to be supply with a constant voltage of 3.3V. That is why we added between the Vout of the charge battery and the Vin (3.3V) of the arduino a 3.3V Voltage Regulator (pololu). You can see the result right here (for the measure shown, you have firstly the HR, then the HRV, then the skin temperature and finally the SpO2).
We also changed a little bit the first code to write a CSV file when the arduino was connected. We used puTTY to wrtie the CSV file as soon as it was connected to the arduino using the serial port.
To ensure that our wristband could be worn, we had to optimize the space in order to get a wearable product in the end. We designed the PCB to allow space optimisation
Due to a lack of time and problems with the PCB, we couldn't get our final prototype to work correctly like the previous one. Nevertheless, we decided to use the time remaining to try and make the wristband the way we wanted it to look, given our client a proper look at the solution we designed.
Comments
Please log in or sign up to comment.