The Open Hardware Project

In its beginning DAVID-laserscanner was designed to scan simply using a linelaser, a webcam and a reference scanning corner. So you can get scans with a surprising precision simply scanning by hand. You always have to keep in mind that you have this option. You do not need additional hardware, but it might help to increase speed, accuracy and to solve jobs, you can not do by freehand scanning.

This pages are an attempt to gather and construct Open Hardware useful for your scanning setup. Open Hardware means that it should be possible for a little skilled woman or man to rebuild this or that with simple parts available all over the world. Hardware for DAVID means electronics, mechanics and optical devices useful to build an automated 3D scanner.

You freely may use the technical designs, expand or modify them as you like. But remember the disclaimer(at bottom): You use this on your own risk. For the designers of these things, it would be a great help if you´d give some feedback. To do this please post a few lines in the DAVID-forum (http://www.david-laserscanner.com/forum/viewtopic.php?f=9&t=919)

As this is a WIKI page, this is always work in progress.


Electronics

Controlling your system with ARDUINO

Where to get parts

Arduino is an open hardware project itself http://www.arduino.cc/. You can build such a microcontroller by yourself from single parts, as well as to buy it. You may even produce a clone of the board commercially. So you can get different duinos (as e.g the Freeduino, Boarduino…). For it is widely spread in different DIY projects (interesting: 3D printer Repraphttp://reprap.org/bin/view/Main/WebHome; or a Mocap suite at: http://www.instructables.com/id/Puppeteer_Motion_Capture_Costume/) there are tons of example codes in the www. It uses an easy to learn programming interface based on the freeware Processing.

Another module used in this design is the Easydriver v.3. This is open hardware as well http://schmalzhaus.com/EasyDriver/, commercially produced by Sparkfun.

All other stuff you should get of your local electronics distributor. (A potentiometer, some resistors, a MOS maybe a CREE high power LED…)

Way of function

This design is based on the idea to keep the dialog between PC (DAVID) and the controller as simple as possible. For this communication the microcontroller listens to a serial COM port (which one, you see in the Windows device manager). So when, some day, DAVID might send this or that character to that port, the microcontroller will execute preset actions (stored in its firmware) as going to an initial position, running a scanning circle (laser on, motion, laser off, motion back), turning a turntable and more. This way it will be easy to use. To modify these action, you will have to alter the controllers firmware on your PC and load it to Arduino.

For all essential actions are stored on the controller, you may use the device as a standalone without PC as well. Pushing a button on the device by hand will start the actions as well. This way you´ve the option to use the controller together with a videocam to capture the 3D data without PC and postprocess them using the DAVID video grabber. It controlls two stepper motors: to move the beam and to turn a turntable.

List of functions:

- go to initial position ( when PC sends “i” or button is doubleclicked, endswitch)

- do a scanning circle ( laser on - travel - laser off - travel back; when PC sends “g” or button is clicked)

- stop the scanning circle ( laser off and go back to initial position; when PC sends “s” or button is clicked during circle)

- turn the turntable at a preset degree (when PC sends “t”)

- switch photolight on and off (when PC sends “l” or “d”)

- set the speed of lasermotion using a potentiometer on the board

Circuit

(test phase: the parts that drive the Cree LED and the voltage reduction to 3.3V are not tested yet)

davstep.jpg

Circuit on a breadboard

davstep_12_02.jpg

Arduino Code

sketch_davstep_12_02.zip}