ErgoDesk : Automatic height adjustment of a desk
The purpose of this project was to track the posture of a person sitting by a desk, and then use the information to adjust the desk to achieve an optimal height for the user. The solution was to track the angle of the users forearm relative to the desk’s horizontal plane, which should be around zero...
Main Authors: | , |
---|---|
Format: | Others |
Language: | English |
Published: |
KTH, Mekatronik
2018
|
Subjects: | |
Online Access: | http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-233051 |
id |
ndltd-UPSALLA1-oai-DiVA.org-kth-233051 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-UPSALLA1-oai-DiVA.org-kth-2330512020-01-30T03:41:40ZErgoDesk : Automatic height adjustment of a deskengErgoDesk : Automatisk höjdjustering av ett skrivbordEKMAN, OLIVIAFYRESKÄR, AXELKTH, MekatronikKTH, Mekatronik2018mechatronicsautomatic desk heightergonomicscomputer visioncolour trackingmekatronikautomatisk skrivbordshöjddatorseendefärgspårningergonomiMechanical EngineeringMaskinteknikEngineering and TechnologyTeknik och teknologierThe purpose of this project was to track the posture of a person sitting by a desk, and then use the information to adjust the desk to achieve an optimal height for the user. The solution was to track the angle of the users forearm relative to the desk’s horizontal plane, which should be around zero degrees for an ergonomic posture. Two Light Emitting Diodes (LEDs) in different colours were attached to the user, one at the elbow and one at the wrist. The LEDs were tracked with a camera connected to a laptop running Open Source Computer Vision Library (OpenCV). Window tinting was placed on the camera lens so that only the LEDs and other strong light sources were visible. By using OpenCV, coordinates for the two LEDs were given. With the coordinates found, the angle of the users arm could be calculated and the height of the desk evaluated. Information about necessary height adjustments were sent from the laptop to an Arduino via Bluetooth. The Arduino then controlled a stepper motor by sending signals to a stepper driver, making the motor rotate, thus adjust the height of the desk. The desk was a single leg laptop desk. The leg consists of two tubes. The lower, outer tube was connected to the foot while the upper inner tube, which ran freely in the outer tube, was connected to the tabletop. The height was adjusted with a lead screw positioned parallel to the leg.The nut on the lead screw was connected to the outer lowertube. When the motor rotated so did the lead screw, lifting the table top up or lowering it. Syftet med detta project var att undersöka om det är möjligt att i realtid spåra en persons hållning vid ett skrivbord, och använda den informationen för att justera skrivbordet höjd och nå en optimal höjd för användaren. Lösningen var att spåra vinkeln på användarens underarm relativt skrivbordets horisontalplan, som bör vara runt noll grader för en ergonomisk ställning. Två lysdioder i olika färger placeras på användaren, en på armbågen och en på handleden. Med hjälp av OpenCV spårades lysdioderna med en kamera kopplad till en dator. Solfilm sattes på kameralinsen så att endast lysdioderna och andra starka ljuskällor var synliga. Genom att använda OpenCV togs koordinaterna för lysdioderna fram. Med koordinaterna kunde vinkeln på användarens underarm beräknas och skrivbordets höjd utvärderas. Information om nödvändiga höjdändringar skickades från laptopen till en Arduino via Bluetooth. Arduinon kontrollerade en stegmotor genom att skicka signaler till en stegmotordrivare, vilket fick motorn att rotera och justera skrivbordets höjd. Skrivbordet var ett enbent laptopställ. Benet bestod av två rör. Det nedre yttre röret satt fast i foten och det övre inre röret satt fast i bordsskivan, och löpte fritt i det yttre röret. Höjden justerades med en gängstav som satt parallellt med benet. Muttern satt ihop med det nedre röret. När motorn roterade gjorder också gängstaven det, vilket antingen pressade upp bordsskivan eller sänkte den. Student thesisinfo:eu-repo/semantics/bachelorThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-233051TRITA-ITM-EX ; 2018:63TRITA ITM EX 2018 ; 63application/pdfinfo:eu-repo/semantics/openAccess |
collection |
NDLTD |
language |
English |
format |
Others
|
sources |
NDLTD |
topic |
mechatronics automatic desk height ergonomics computer vision colour tracking mekatronik automatisk skrivbordshöjd datorseende färgspårning ergonomi Mechanical Engineering Maskinteknik Engineering and Technology Teknik och teknologier |
spellingShingle |
mechatronics automatic desk height ergonomics computer vision colour tracking mekatronik automatisk skrivbordshöjd datorseende färgspårning ergonomi Mechanical Engineering Maskinteknik Engineering and Technology Teknik och teknologier EKMAN, OLIVIA FYRESKÄR, AXEL ErgoDesk : Automatic height adjustment of a desk |
description |
The purpose of this project was to track the posture of a person sitting by a desk, and then use the information to adjust the desk to achieve an optimal height for the user. The solution was to track the angle of the users forearm relative to the desk’s horizontal plane, which should be around zero degrees for an ergonomic posture. Two Light Emitting Diodes (LEDs) in different colours were attached to the user, one at the elbow and one at the wrist. The LEDs were tracked with a camera connected to a laptop running Open Source Computer Vision Library (OpenCV). Window tinting was placed on the camera lens so that only the LEDs and other strong light sources were visible. By using OpenCV, coordinates for the two LEDs were given. With the coordinates found, the angle of the users arm could be calculated and the height of the desk evaluated. Information about necessary height adjustments were sent from the laptop to an Arduino via Bluetooth. The Arduino then controlled a stepper motor by sending signals to a stepper driver, making the motor rotate, thus adjust the height of the desk. The desk was a single leg laptop desk. The leg consists of two tubes. The lower, outer tube was connected to the foot while the upper inner tube, which ran freely in the outer tube, was connected to the tabletop. The height was adjusted with a lead screw positioned parallel to the leg.The nut on the lead screw was connected to the outer lowertube. When the motor rotated so did the lead screw, lifting the table top up or lowering it. === Syftet med detta project var att undersöka om det är möjligt att i realtid spåra en persons hållning vid ett skrivbord, och använda den informationen för att justera skrivbordet höjd och nå en optimal höjd för användaren. Lösningen var att spåra vinkeln på användarens underarm relativt skrivbordets horisontalplan, som bör vara runt noll grader för en ergonomisk ställning. Två lysdioder i olika färger placeras på användaren, en på armbågen och en på handleden. Med hjälp av OpenCV spårades lysdioderna med en kamera kopplad till en dator. Solfilm sattes på kameralinsen så att endast lysdioderna och andra starka ljuskällor var synliga. Genom att använda OpenCV togs koordinaterna för lysdioderna fram. Med koordinaterna kunde vinkeln på användarens underarm beräknas och skrivbordets höjd utvärderas. Information om nödvändiga höjdändringar skickades från laptopen till en Arduino via Bluetooth. Arduinon kontrollerade en stegmotor genom att skicka signaler till en stegmotordrivare, vilket fick motorn att rotera och justera skrivbordets höjd. Skrivbordet var ett enbent laptopställ. Benet bestod av två rör. Det nedre yttre röret satt fast i foten och det övre inre röret satt fast i bordsskivan, och löpte fritt i det yttre röret. Höjden justerades med en gängstav som satt parallellt med benet. Muttern satt ihop med det nedre röret. När motorn roterade gjorder också gängstaven det, vilket antingen pressade upp bordsskivan eller sänkte den. |
author |
EKMAN, OLIVIA FYRESKÄR, AXEL |
author_facet |
EKMAN, OLIVIA FYRESKÄR, AXEL |
author_sort |
EKMAN, OLIVIA |
title |
ErgoDesk : Automatic height adjustment of a desk |
title_short |
ErgoDesk : Automatic height adjustment of a desk |
title_full |
ErgoDesk : Automatic height adjustment of a desk |
title_fullStr |
ErgoDesk : Automatic height adjustment of a desk |
title_full_unstemmed |
ErgoDesk : Automatic height adjustment of a desk |
title_sort |
ergodesk : automatic height adjustment of a desk |
publisher |
KTH, Mekatronik |
publishDate |
2018 |
url |
http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-233051 |
work_keys_str_mv |
AT ekmanolivia ergodeskautomaticheightadjustmentofadesk AT fyreskaraxel ergodeskautomaticheightadjustmentofadesk AT ekmanolivia ergodeskautomatiskhojdjusteringavettskrivbord AT fyreskaraxel ergodeskautomatiskhojdjusteringavettskrivbord |
_version_ |
1719310645304754176 |