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...

Full description

Bibliographic Details
Main Authors: EKMAN, OLIVIA, FYRESKÄR, AXEL
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