Links - 2011 Aug 22

Opencamlib cutter shapes

If you calculate toolpaths around a very narrow and 'pointy' triangle you will get toolpaths in the shape of the inverse cutter - the "Inverse Tool Offset". Here I've plotted the basic operations, in red/blue drop-cutter which drops the cutter down along the z-axis until it contacts the triangle, and in cyan waterlines which are the results of a push-cutter operation that pushes the cutter at constant z-height along the x/y axis into contact with the triangle.

There are four basic cutter shapes: (1) Cylinder, (2) Sphere('Ball'), (3) Toroid('Bull'), and (4) Cone. The triangle contact can be divided into tests for contact with (a) the three vertices of the triangle, (b) the facet of the triangle, and (c) the three edges of the triangle. That's 4x3 = 12 contact/collision-test functions that have to be written (a few, particularly the facet-tests, can be combined into one base-class method).

Once the basic cutter shapes work it is possible to combine them through CompositeCutter. The bottom row shows cutters with a central part corresponding to the top row of cutters, and a conical outer part.

The point of this exercise is of course not only to plot inverse-tool-shapes, but to be able to calculate toolpaths for these and other CompositeCutter tool shapes. This will become more interesting if/when the cutting-simulation starts working and it will be possible to compare for example surface-finish vs. cutting-time of a BallCutter operation vs. a BullCutter operation.

Lambda exonuclease video

The fourth paper from my thesis, entitled "Dual-trap optical tweezers with real-time force clamp control", has just been published online by Review of Scientific Instruments: http://link.aip.org/link/doi/10.1063/1.3615309

Here's a video from the paper. We are holding on to two micron sized plastic spheres with laser-beams (shown in the video as green/cyan cross-hairs). The lower beam/trap is stationary while the upper one is steerable. A ca 16um long DNA-molecule (invisible) is tethered between the beads.The experiment is performed in the presence of lambda exonuclease, an enzyme that "eats up" one strand of the DNA leaving just a single-stranded DNA-tether between the beads.

In the first part of the video a force-extension curve (bottom panel) is obtained using manual control. We stretch out the molecule by moving the upper trap upwards and check that the force-signal looks like it should when we have a single DNA-molecule of the right length between the beads.

In the second part, after t = 20 s, the tether is held force clamped at 3.4 pN (force shown in top panel). We're keeping the force constant with a PI-controller implemented on an FPGA that reads the force-signal from the lower bead and updates the position of the upper trap at around 200 kHz. As the molecule shortens the controller needs to move the upper trap/bead lower in order to maintain a 3.4 pN tension in the molecule. The video is at normal speed (1X) while the force extension curve is measured. During 13 min of force-clamp control the video is sped up 25-fold. During this time the exonuclease digests one strand of the double-stranded DNA molecule. When held at 3.4 pN of tension, single-stranded DNA is significantly shorter than double-stranded DNA. So the gradual conversion from a double-stranded tether to a single-stranded tether is seen as a decrease in the extension, i.e. a shortening of the distance between the plastic beads (middle panel). The tether broke at t = 880 s. Scale-bar 5 ?m.