Calgary/constructing printer
From 2007.igem.org
Projects | Design: Wet Lab | Design: Printer | Design: Software | Testing | Construction: The Wetlab | Protocols | Final Result of E.co Lisa |
Video of Us Beta Testing of The Printer
In conjunction with the wetlab component our project also requires a mechanical component. This is both the physical printer system and the software that allows our printer to draw images from the computer. The plotter is operated by two stepper motors, one composing its x axis and the other its y axis. A laser diode is mounted on the x axis severl inches above an area at least the width and height of a standard petri dish. This mechanism allows for very finely controlled and reliable movements that allow our laser to trace very precise shapes. Further the printer is capable of retracing its path in a completely reliable manner as this may be necessary to induce enough agarase expression to see produce the image.
The Printer System works as follows...
Meet Lenna. This is a picture that has classically been used in computer graphics studies and it is the benchmark for our system. This is what we will be trying to draw on to our bacteria using the printer system. |
As much as a shame as it was to take away all that beautiful color this is the next step in how our picture gets from the computer screen to the E. coli. What we are looking at now is the picture after is has been run through the edge detection algorithm provided by Inkscape. Inkscape is an Open Source vector graphics editor, with capabilities similar to Illustrator, CorelDraw, or Xara X, using the W3C standard Scalable Vector Graphics (SVG) file format. |
After the edge detection software from Inkscape has finished the resulting file is saved as a scalable vector graphic(SVG). Which results in the less than lovely image to the left. This is an xml file that describes the entire picture. |
Next we designed a custom software application to a parse the SVG into an NS-Bezier description. The NS-Bezier description of the image is interpreted by three types of objective C objects: lineTo, moveTo and curveTo. Each of these objects are interpreted by another application we designed, PlotterPilot. |
PlotterPilot is responsible for ineracting with our physical printer. The printer will move in the path defined by the image and draw with the laser on the bacteria in the petri dish. After that the rest is up to the bacteria. |