File Exchange

image thumbnail

aa4cc/flying-ball-in-hoop

version 1.0.0.0 (21.3 MB) by Martin Gurtner
Files associated with Flying Ball and Hoop model we developed at FEE CTU in Prague.

2 Downloads

Updated 08 Dec 2017

GitHub view license on GitHub

Here, you can find all the files associated we Flying Ball and Hoop model we developed at Czech Technical University in Prague. You can find CAD files of all the components, simulation models in Simulink, trajectory optimization codes, controllers solving various tasks implemented in Simulink and many other things.
Hoop and ball model is, as the name suggests, a model consisting of a ball and hoop. The ball can freely rotate in the hoop, and the hoop is attached to a motor which allows us to exert a torque on the hoop. This model is used for demonstration and teaching of linear control theory where the goal is to damp the undesired oscillations of the ball. In other words, the goal is to calculate a torque acting against the oscillations based on the measured position of the ball.

Our improved version of Ball and Hoop model is shown in the figure below. In addition to the classical task of damping oscillations, it also allows some more challenging tasks like, for instance, Loop The Loop task. For more details see our paper describing two such tasks in detail [1].

Please bear in mind, that the project is still a work in progress and thus the M-files and Simulink schemes will get better over time. If you find yourself in doubts, why certain part are implemented the way they are, do not hesitate to contact me.

[1] M. Gurtner and J. Zemánek, “Ball in double hoop: demonstration model for numerical optimal control *,” IFAC-PapersOnLine, vol. 50, no. 1, pp. 2379–2384, Jul. 2017.

Cite As

Martin Gurtner (2020). aa4cc/flying-ball-in-hoop (https://github.com/aa4cc/flying-ball-in-hoop), GitHub. Retrieved .

Comments and Ratings (1)

Murat Belge

MATLAB Release Compatibility
Created with R2017a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Communities

m

m/calib

m/calib/vgg

m/control/downPos

m/control/getItUp

m/control/trajStab

m/control/upPos

m/estim

m/identification/Copy_of_exp03_prbs

m/identification/Copy_of_exp03_prbs/vgg

m/identification/exp01

m/identification/exp01/vgg

m/identification/exp02_prbs

m/identification/exp02_prbs/vgg

m/identification/exp03_prbs

m/identification/exp03_prbs/vgg

m/raspi/sobjects/Odrive

m/tmp

m/trajOptim

m/trajOptim/costAndConstrFunctions

m/utils

model

m/calib

m/control/downPos/real_rpi

m/control/getItUp/real_rpi

m/control/getItUp/simul

m/control/trajStab/real_rpi

m/control/trajStab/simul

m/control/upPos/real_rpi

m/estim

m/hybridModel

m/identification/Copy_of_exp03_prbs

m/identification/exp01

m/identification/exp02_prbs

m/identification/exp03_prbs

m/raspi/sobjects