Treadmill speed control
Abstract
The goal of this project was to devise a tracking device to control a treadmill by creating a feedback loop based on the subject’s position on the treadmill. We first implemented a control library to send commands to our ForceLink.nl N-mill from a computer over serial port. This was used to design an experiment to model the dynamics of the treadmill: markers were set on the belt and tracked using a camera while the treadmill went through accelerations and decelerations. The speed changes were shown to fit a sigmoid function with stable parameters. Camera and Kinect sensors were used to track the subject using the treadmill. Camera tracking failed due to challenges posed by the setup’s constraints. Kinect tracking used plane subtraction and Point in Polygon algorithm to isolate the subject in the input data. Depth data was used to compute world coordinates of the subject and pass these on to the automatic controller. Boundary control, and position control were both put to the test. The latter gave good results whilst the former caused the treadmill to accelerate and decelerate too sharply.
Results
The main achievements were:
-Development of the communication library
-Description of the treadmill’s dynamics
-Setup of background subtraction algorithm
-Basic feedback loop on treadmill speed
Further work could include the inferred dynamics in the speed correction, and make the user detection more robust.