Inspiration

Millions of people sit for long durations of the day. Particularly students in the library during the exam period and professionals working in office environments. Sitting with poor posture contributes to a variety of back problems, which can decrease the sufferer's quality of life. Treatment of these conditions also has a significant effect on the economy of countries - the UK spends about £10 Billion annually.

Research examining the impact of businesses investing in improving the ergonomic environment for their employees found examples on the return on investment of 1675% on the initial investment. Another example found an estimated saving of $490,000 for a company that invested $57,000 to provide desks that enabling standing and sitting working positions.

Although these improvements are significant, traditional investments to improve ergonomics utilise equipment and/or training sessions. For businesses and people to get the most from these investments, they need to be actively engaged in improving their posture throughout the day. We believe Posturme is the right tool to bring about this necessary engagement!

What it does

Posturme provides notifications for the user when they have deviated from a position of good posture (neutral posture position) and, importantly, why their posture is incorrect. When they have good posture, points are earned continually during the active session on the app, which can then be traded in for rewards. Providing meaningful encouragement for people to adopt a healthy approach to sitting at their desk and other work environments.

How we built it

A flex-sensor located on the lower back of the user and accelerometers on the chest are used to determine the current state of the user's posture. The sensors are sewn onto a shirt and are also connected to an Arduino which will read the sensor outputs and convert them into binary values, with 1s representing the output values that are below the threshold set to determine what is good posture for that user. This is sent to a Raspberry Pi which in turn uploads the stream of 1s and 0s onto the cloud using Google Cloud PubSub.

Our web app then pulls these values from the cloud, which uses the stream of binary values to determine, if they have bad posture and what position they need to correct. The user will begin to earn points after every 5s of 'good' posture. If 'good' posture is maintained for longer periods, more points are earned and a counter increases towards a points multiplier. If at any point the average posture becomes 'bad' the user will be alerted by the app to 'Sit Straight!'. It will also reset a counter so that the user will need to have 5s of 'good' posture before earning points again.

After the hour session is complete, the app will remind the user it is time for them to have a break and 'Get up and have a walk'. As it is key that the user understands that no amount of perfect posture outweighs the need to have regular breaks.

Challenges we ran into

Integrating the hardware with the software was a major challenge as without the right data being collected and interpreted from the sensors, our decision making logic for determining good/bad posture would be inaccurate (and useless).

The next challenge encountered was finding an efficient method of interfacing the Raspberry Pi with the cloud pubsub server. We needed a method to send three states to the cloud and still be able to know what they represented. Another challenge was to send the states are regular intervals to ensure they were a good representation of the user's posture.

The original plan of using React-Native was adjusted due to a lack of experience in the native platform and certain libraries not being available, so we switched to using React. This enabled us to build a platform compatible for both web and mobile.

General issues with hardware including serial communication problems and variable type conversion (bytes to int). This was solved by coding the logic in c within the Arduino as oppose to using python in the Raspberry Pi environment. This especially reduced the computational load in the already heavily loaded Arduino.

Accomplishments that we're proud of

  • A fully functioning web-app, usable on mobile and web devices, that interfaces with our intelligent sensor hardware through accessing data pushed to the PubSub server.
  • Provides real-time metrics on the user's posture and gamifies posture correction
  • Fully-working hardware sensors that successfully interface with an Arduino and the Raspberry Pi.

What we learned

How to use a flex sensor and accelerometer technology, integrated into one intelligent device, to determine the current posture for the user and whether this aligns with what was calibrated as good posture.

What's next for Posturme

Further develop the calibration functionality of the product, enabling each unique user to calibrate Posturme for their unique posture. This would involve developing a simple calibration procedure for the user to follow, enabling accurate threshold values for the x, z and flex data to accurately determine when the user is no longer sat with good posture.

The sensors and other hardware are currently not optimised for our application, particularly due to their relatively large size. For the product to be optimised for wearable technology purposes, there will need to be a focus on miniaturising the technology used such that wearing the product is not uncomfortable and does not impact natural movements and sitting positions.

Our current prototype is based on mounting the hardware to a standard cotton t-shirt, which introduces inaccuracies due to there being movement between the shirt and user. To remove this artifact, the next prototype will use a tight base layer shirt as the mount for the hardware. Meaning there will be considerably less movement of the shirt layer relevant to the user's body.

Offer private platforms for employers to invite employees, introducing a competition element to improving their posture. On this platform, daily/weekly leaders will be shown within the team or office, providing motivation for those who would otherwise have lower participation. These platforms would also enable employers to add in rewards only available to their employees in the private space.

The individual user platform would also require collaboration with businesses to provide exciting rewards for users with the best posture. As the best user participation will likely require achievable goals that the user can map their progress against.

Share this project:

Updates