-
Notifications
You must be signed in to change notification settings - Fork 3
/
notes.txt
56 lines (51 loc) · 2.56 KB
/
notes.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
General notes
-------------
Some advice for Tk programming here:
http://stackoverflow.com/questions/17466561/best-way-to-structure-a-tkinter-application
http://apprendre-python.com/page-tkinter-interface-graphique-python-tutoriel
http://fsincere.free.fr/isn/python/cours_python_tkinter.php
Reorganization
--------------
It could make sense to have several programs instead of a big one:
0) Simple camera program with pointer (plus) [DONE: camera_gui]
1) Manual calibration program, no camera. [DONE but not tested: manual_calibration]
2) Basic manipulation program without camera. [DONE: simple_manipulator]
A simple program with no camera.
* Microscope: positions
* Manipulators: Go, calibrate (secondary)
optionally: change pipette (but maybe not: just home, move up in z, back in X)
* No saving of configuration
3) Automatic calibration program based on computer vision.
4) Clickable manipulation program with camera feed.
The advantage is that independent camera software can then be used
(unless we find the way to open a camera feed when the camera is already in use).
Automatic calibration
---------------------
0) Motor range calibration
* Motors are moved completely until the ends are reached.
1) Primary calibration
* We first need the user to put the pipette (or in fact any object held by the manipulator)
in microscope view.
* We may locate the tip as the point of maximum local contrast (or a corner detection algorithm);
alternatively we use the method from Wu et al. (2016);
alternatively we do not try to locate the tip, as this is for primary calibration.
* We take a photo, which we use as template. Here we might want to extract a small image around the
tip.
* We do a first calibration with small movements to stay in view.
* Template is used to locate the pipette on screen + autofocus.
* We do a second calibration with larger movements.
* We move using the first calibration to put the pipette in view.
* No need to move the pipette in center (only locating on screen).
2) Secondary calibration
* We move the pipette in axis.
* We descend the pipette fast until in view (view changes).
This works for pipette changes, but not for larger drifts/shifts.
* We locate the pipette (template) (no need to center it).
Paramecium GUI
--------------
The grip: we want to grip the cell with two electrodes:
* Go makes the two electrodes reach the focal plane with, say, 20 um separation,
minus 10 um on the X-axes. This could simply be a synchronous go.
* Grip advances by 10 um (or say a step), both electrodes. This is basically a simultaneous
step.
* Maybe ungrip.