ufo-kit / concert

Concert is a light-weight experiment control system
http://ufo.kit.edu
GNU Lesser General Public License v3.0
13 stars 4 forks source link

Laboratory Model #118

Closed tfarago closed 10 years ago

tfarago commented 10 years ago

We wanted to have a way of saying that e.g. a beam should move 10 pixels. That means we need to somehow model the laboratory, i.e. take into account the detector system in order to be able to map movement in real coordinate system to some other of users choice. I don't think adding this to motors themselves is a good solution, because that breaks their abstraction. We need to provide something on top of that, but on that we already agreed. So, let's get creative...

matze commented 10 years ago

Also adding that to the camera itself would be break that abstraction, because a camera's pixel size does not change just because it's put into a detector system.

But before going into modeling the whole lab, it would be a good idea to break it down into individual components, e.g. the detector system. In my naive imagination a detector system would get a camera object (from which it will read the pixel size), lens objects and a "description of the arrangement" in order to spit out the relation between a physical unit and the perceived movement on the detector. Unfortunately, I don't know how complex detector systems can be but … someone probably knows.

@ludovico86, @ALiOz: I just want to get your attention ;-)

tfarago commented 10 years ago

Actually, I will talk to users to get more opinions on what they actually want. Will get back to this.

ludovico86 commented 10 years ago

I thought about it, but I'm not sure what to say about it. Optical systems can become quite complex, but I think from concerts point of view the things that matter are the electrically controllable properties.

Best thing for my beam-centering algorithm would be a class / an object that could provide me with an camera-image (recalculated to compensate potential distortion of the optical system) with information on the real size of a pixel (defined by the size of a pixel of the detector and the magnification of the optical system) and a way to move the camera on the plane of the detector surface (e.g. a callable function/procedure of said class/object that provided with a x/y-vector in pixel-coordinates controls any needed motor to move accordingly in pixel-coordinates).

A way to get an undistorted image with realworld pixelsize is in general favorable, because it would allow for automated measurement.

matze commented 10 years ago

Review literature and existing projects.