I found this open source scanner out there on the internet the other day. They are providing beta software for an Ubuntu release. It might be fun to see what it would take to integrate it.
The HD Pro WebCam C920 along with all their later model cameras come with auto focus. This can be an issue when scanning. The CEBSCAN source has system commands it calls to deactivate auto focus and set manual focus. Ubuntu does not come with the v4ls libs so it may be necessary to install them. From the terminal window run the code below.
sudo apt-get install v4l-utils
The library v4l2-ctl is valid and available for both Linux and windows machines
The system commands can be run manually outside CEBSCAN source using any scripting language. Command lines are below. inside c++ its the <cstdlib>
system("v4l2-ctl -d /dev/video0 -c focus_auto=0"); system("v4l2-ctl -d /dev/video0 -c focus_absolute=30");
Since modification of the Fabscan software is so extensive due to the addition of vertical scanning and dual laser support any source file modified has had the first character of its name changed to “c” instead of the default Fabscan’s “f”. Current source code has been compiled exclusively on Ubuntu and has not been tested on any other platform. Keep this in mind when using control functions for the Logiteck camera specifically disabling auto focus functionality. Also it is apparent to anyone reviewing the code base that all laser stepper functions have been removed. In researching the feature I’ve determined it is not worth the overhead it generates both in code and extra hardware.
Upcoming Model Improvements –
- I have updated the tongue model to support a cleaner setting to adjust the laser angles. In some cases the lasers cannot target the turntable center as needed.
- Upcoming models also incorporate integration of a 6 wire coiled cable for managing the Z Axis movement.
Upcoming Coding Improvements –
The first of the automated Z-Axis control functions are nearing release which include automated upper and lower boundary identification and Z-Axis step scanning. Stepping allows for concentration on smaller scanning area and removal of model distortion based on the old Z-Axis fixed location. Any help on the beta testing of the Z-Axis code would be appreciated as currently it a solo coding project, please contact me if you are interested in helping out.
The choice of a Ramps 1.4 controller was based mostly on the popularity of the controller in the 3D printing community. I also wanted a controller that gave me a lot of room for expansion. I sourced the 4 parts in ebay (ATmega2560 board, Ramps 1.4 and 2 A4988 stepper drivers) for a total cost of under 45 dollars. The current firmware is located on the repository site C2SCAN in the Firmware folder.
To push the code to the controller just install and use Arduino Firmware IDE.
This Firmware is functional and currently controlling the turntable and Z Axis. however the Z Axis is controlled from the scanning software as a manual adjustment. Work is currently in process to add scanning incremental updating along this access along with sensing model height.
This project is to develop an 3D laser scanner using open source software to support the 3D printing community. Its primary focus is in the generation of “stl” files based of image scanning on a fixed turn table using red laser light and Point cloud processing.