Skip to content

Commit e4275ac

Browse files
Merge pull request #1144 from TrungNguyenDuc/Add-stage-for-Newport-Slit-and-Newport-300-mm-stage
Add stage for newport slit and newport 300 mm stage
2 parents a857470 + 921cc8f commit e4275ac

File tree

5 files changed

+820
-18
lines changed

5 files changed

+820
-18
lines changed

docs/source/02_user_guide/01_supported_hardware/camera.rst

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,7 @@ Iris 15
180180
Ximea
181181
--------------------------------
182182

183+
183184
MU196MR-ON
184185
~~~~~~~~~~~~~~~~~~~~~~~~~~~
185186

@@ -191,16 +192,32 @@ MU196MR-ON
191192
microscope_name:
192193
camera:
193194
hardware:
194-
type: ximea
195+
type: ximea.MU196XR
195196
serial_number: 111
196-
camera_connection: PMPCIECam00
197197
defect_correct_mode: 2.0
198198
delay: 1.0 #ms
199199
settle_down: 0.1 #ms
200200
flip_x: False
201201
flip_y: False
202-
203-
202+
gain: 1
203+
pixel_size_in_microns: 1.4
204+
readout_port: 0
205+
readout_speed: 1.0
206+
settle_down: 0.0
207+
speed_table_index: 0
208+
supported_readout_directions: ['Top-to-Bottom']
209+
supported_sensor_modes: ['Normal']
210+
supported_trigger_sources: ['External']
211+
trigger_active: 1.0
212+
trigger_mode: 1.0
213+
trigger_polarity: 2.0
214+
trigger_source: 2.0
215+
x_pixels: 5112
216+
x_pixels_min: 192
217+
x_pixels_step: 24
218+
y_pixels: 3840
219+
y_pixels_min: 2
220+
y_pixels_step: 2
204221
|
205222
206223
------------------

docs/source/02_user_guide/01_supported_hardware/stage.rst

Lines changed: 61 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,10 @@
22
Stages
33
======
44

5-
Our software empowers users with a flexible solution for configuring
6-
multiple stages, catering to diverse microscope modalities. Each stage can be
7-
customized to suit the specific requirements of a particular modality or shared
8-
across various modalities. Our unique approach allows seamless integration of stages
9-
from different manufacturers, enabling users to mix and match components for a truly
10-
versatile and optimized setup tailored to their research needs.
5+
Our software empowers users with a flexible solution for configuring multiple stages, catering to diverse microscope modalities. Each stage can be customized to suit the specific requirements of a particular modality or shared across various modalities. Our unique approach allows seamless integration of stages from different manufacturers, enabling users to mix and match components for a truly versatile and optimized setup tailored to their research needs.
116

127
.. Note::
13-
The software provides configure specific hardware axes to software axes. This is
14-
specified in the configuration file. For example, if specified as follows, the software
15-
x, y, z, and f axes can be mapped to the hardware axes M, Y, X, and Z, respectively.
8+
The software provides configure specific hardware axes to software axes. This is specified in the configuration file. For example, if specified as follows, the software x, y, z, and f axes can be mapped to the hardware axes M, Y, X, and Z, respectively.
169

1710
.. code-block:: yaml
1811
@@ -586,6 +579,65 @@ identical. The voltage signal is delivered via the data acquisition card specifi
586579
587580
----------------
588581

582+
583+
Newport
584+
-------
585+
Newport offers motion control solutions for various applications in microscopy. Our software supports two Newport stage controllers that provide accurate positioning capabilities.
586+
587+
Conex Controller
588+
~~~~~~~~~~~~~~~~
589+
590+
The Newport Conex Controller series offers compact, integrated motion control solutions that come pre-wired with dedicated controllers for quick, out-of-the-box operation. While the Conex series offers four `different controller types with various drive technologies <https://www.newport.com/c/controller-&-stage-kits>`_, we have used it to drive a `TRA6CC <https://www.newport.com/p/TRA6CC>`_ (Linear Actuator, DC Servo, 6 mm Travel, TRA6CC and CONEX-CC Controller) connected to a `M-SV-0.5 <https://www.newport.com/p/M-SV-0.5>`_ adjustable width slit that is positioned conjugate to the back pupil of the illumination objective. This setup allows precise and automated control of the illumination numerical aperture.
591+
592+
. collapse:: Configuration File
593+
594+
.. code-block:: yaml
595+
596+
microscopes:
597+
microscope_name:
598+
stage:
599+
hardware:
600+
-
601+
name: slit
602+
type: conex.ConexStage
603+
serial_number: 126
604+
port: COM4
605+
axes: [S]
606+
axes_mapping: [S]
607+
s_min: -10000.0
608+
s_max: 10000.0
609+
s_offset: 0.0
610+
611+
|
612+
613+
--------------
614+
615+
ESP302 Motion Controller Controller
616+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
617+
618+
The Newport `ESP302 Motion Controller <https://www.newport.com/f/esp30x-3-axis-dc-and-stepper-motion-controller>`_ is a versatile, 1-, 2-, or 3-axis motion controller that provides precise positioning capabilities for a wide range of Newport stages.
619+
620+
. collapse:: Configuration File
621+
622+
.. code-block:: yaml
623+
624+
microscopes:
625+
microscope_name:
626+
stage:
627+
hardware:
628+
-
629+
name: delay_stage
630+
type: newport.NewportStage
631+
serial_number: 127
632+
axes: [theta]
633+
axes_mapping: [1]
634+
port: "192.168.1.90"
635+
baudrate: 5001
636+
timeout: 5.0
637+
|
638+
639+
---------------
640+
589641
Synthetic Stage
590642
---------------
591643
If no stage is present for a particular axis, one must configure the software to use a synthetic

src/navigate/config/configuration_database.py

Lines changed: 19 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
"Hamamatsu ORCA Fusion": ("HamamatsuOrcaFusion", "hamamatsu"),
55
"Hamamatsu Flash 4.0": ("HamamatsuOrca", "hamamatsu"),
66
"Photometrics Iris 15B": ("Photometrics", "photometrics"),
7+
"Ximea MU196MR-ON": ("MU196XR", "ximea"),
78
"Virtual Device": ("Synthetic", "synthetic"),
89
}
910

@@ -172,8 +173,10 @@
172173
"Applied Scientific Instrumentation": ("ASI", "asi"),
173174
"ASI MFC2000": ("MFC2000", "asi"),
174175
"ASI MS2000": ("MS2000", "asi"),
175-
"Analog/Digital Device": ("NI", "ni"),
176+
"NI Analog/Digital Device": ("NI", "ni"),
177+
"Newport Conex Controller": ("Conex", "conex"),
176178
"Mad City Labs": ("MCL", "mcl"),
179+
"Newport ESP302 Motion Controller": ("Newport", "newport"),
177180
"Physik Instrumente": ("PI", "pi"),
178181
"Sutter Instruments": ("MP285", "sutter"),
179182
"ThorLabs KCube Inertial Device KIM001": ("KIM001", "thorlabs"),
@@ -469,7 +472,11 @@
469472
"frame_config": {"ref": "hardware"},
470473
}
471474

472-
galvo_device_types = {"Analog Device": ("NI", "ni"), "ASI Device": ("ASI", "asi"), "Virtual Device": ("Synthetic", "synthetic")}
475+
galvo_device_types = {
476+
"Analog Device": ("NI", "ni"),
477+
"ASI Device": ("ASI", "asi"),
478+
"Virtual Device": ("Synthetic", "synthetic"),
479+
}
473480

474481
waveform_types = {
475482
"Sine": "sine",
@@ -527,7 +534,10 @@
527534
],
528535
}
529536

530-
zoom_device_types = {"Dynamixel": ("Dynamixel", "dynamixel"), "Virtual Device": ("Synthetic", "synthetic")}
537+
zoom_device_types = {
538+
"Dynamixel": ("Dynamixel", "dynamixel"),
539+
"Virtual Device": ("Synthetic", "synthetic"),
540+
}
531541

532542
zoom_position_widgets = {
533543
"zoom_value": ["Zoom Value", "Input", "string", None, "Example: 16x"],
@@ -576,7 +586,11 @@
576586
"n_modes": ["Number of Modes", "Input", "int", None, "Example: 32", 32],
577587
}
578588

579-
laser_device_types = {"Analog Device": ("NI", "ni"), "ASI Laser": ("ASI", "asi"), "Virtual Device": ("Synthetic", "synthetic")}
589+
laser_device_types = {
590+
"Analog Device": ("NI", "ni"),
591+
"ASI Laser": ("ASI", "asi"),
592+
"Virtual Device": ("Synthetic", "synthetic"),
593+
}
580594

581595
laser_hardware_widgets = {
582596
"wavelength": ["Wavelength", "Input", "int", None, "Example: 488", 488],
@@ -676,4 +690,4 @@
676690
"ASIMFC2000": "MFC2000",
677691
"GalvoNIStage": "NI",
678692
"Thorlabs": "KIM001",
679-
}
693+
}

0 commit comments

Comments
 (0)