Holmos is a digital holographic microscope. The software repository has more information about the project.
This repository contains instructions to build your own copy of the setup, and files describing the 3D-printed parts.
Unfortunately, shipping or selling kits is too complicated for our institute, so we cannot offer kits.
See shopping list. The steel rods need to be at least 600 mm long if you are using the reference design.
Unless you want to modify things, you can download .STL files directly from the reference_assembly
subfolder here.
Your printer's software should be able to read them directly.
Print one of each file, and you'll have everything you need.
If you are using parts with different diameters than the reference_assembly, modify the printable parts accordingly.
We developed this using Ultimaker printers and their Cura software, but any other printer should work.
Start by looking at reference_assembly.py
.
It contains a list of parts, and their z
positions along the optical axis.
Run the file, and it will generate a scad file showing the entire assembly (except rails).
In addition, a folder full of the individual parts is generated.
Print those parts, and assemble them at the positions given, and you should have a good starting point.
For instructions on individual parts, e.g. how to mount purchased parts in the printed mounts, see the instructions folder.
See instructions/adjustment.md in this repository, or browse the German student documentation
instructions/optics_design.md explains the optics design in some more detail. You can probably skip this if you just want to use the microscope.
Additional struts and crosses (e.g. Rpi_mount) can make the cage more stable.
A round_mounts.round_mount_light(20, opening_angle=0, cyl_length=40, ring_thick=2)
can help shield the camera against stray light and make the setup work better in bright environments.
The cage-based setup fits inside a tube (HT DN90).
To keep the setup from hitting the tube sides, print some cage.cage_circumference()
In a DN90 tube, the Raspberry Pi needs to be removed, and the movable mirror needs to be removed from the crane.
It can be stored in a crane_mirror(mirror_offset_x=0, crane_only=True)
for transport.
How tight the clips become depends on your printer, printer settings and the rods you are using.
base.test_rod_clamp_tightness()
can be used to generate a test object with several clips.
Edit Rods6mm_tightness
in global_settings.ini
to change the fit globally.
To modify the parts, you'll need to compile from Python to SCAD to STL:
To re-create all parts, run
python reference_assembly.py
Be aware that this might take a long time (more than an hour) depending on the resolution you choose in OpenSCAD. You can install the required python packages with pip3 install -r requirements.txt
. Also, make sure you have OpenSCAD installed in the location specified in global_settings.ini
To get scad files:
- A clone of this repository
- Python (only tested for python 3)
- Solidpython - usually available through
pip install solidpython
To convert from scad to stl: