Ciclop 3d scanner firmware


Ciclop based Laser Scanner — FabScanPi documentation

1. About Ciclop

2. Bill of Materials

The following list shows what you need to modify the Ciclop scanner for using the FabScanPi Software.

General components

  • 12V to 5V switching regulator
  • Raspberry Pi 3 B+ or higher
  • Raspberry Pi camera V2
  • Raspberry Pi Camera Connection Cable - 50cm
  • Micro SD Card ( >= 8GB)
  • Silent Step Stick Motor driver
  • 3D printed Camera Mount
  • 3D printed Raspberry Pi Mount

3. Ciclop Modification

Mounting Raspberry Camera

You can use a printed camera mount to mount the Raspberry Pi Camera to the ciclop. The Raspberry Pi Camera will replace the USB webcam.

Note

The Raspberry Pi camera has a better image quality than the ciclop USB webcam.

Replacing the Motor driver

It is recommended to replace the default motor driver of the ciclop with a silent step stick driver. You can use a TMC2100, TMC2208 or TMC2009. But you need to configure the TMC2xxx driver to run in 1/16 micro stepping mode. If you decided to use the TMC2100 driver all you need to do is removing the jumpers under the ciclop motor driver. For other TMC drivers read the manual at watterotts TMC guide.

The motor driver which was included in the kit has a red or green surface.

The picture shows a TMC2100 motor driver on the ciclop Arduino Shield.

Note

You can also use the default driver, but the usage of a TMC motor driver lets the turntable move much more silent and smooth. That leads you to much better calibration and scan results.

Connecting Raspberry Pi

Connect the Ciclop Arduino USB cable to the USB port of the Raspberry Pi. Then connect the Raspberry Pi camera ribbon cable to the Raspberry Pi.

Note

You can use a Raspberry Pi camera ribbon cable extension (50 cm).

You can use a Ethernet cable for Network connection or configure the Raspberry Pi’s wifi setting-up-wifi.

Warning

The Raspberry Pi 4 needs active cooling by a fan. Otherwise the scan process will stuck or fail.

Proceed with the Power Management.

The Power Management

The fastest way is using two power supplies. One 5V supply for the Raspbbery Pi and a second one with 12V connected to the Arduino for the motors.

Warning

Do not use the 5V supplied by the Arduino, because it does not supply enough current. The Arduino and even the Raspberry Pi may be demaged otherwise.

But if you want a setup with less wires, you should add a Step-Down converter like on the picture below.

The 5V output of the Step-Down converter is connected to the 5V and GND pin of the Raspberry Pi.

Connecting LEDs (WS2812)

It is recommended to connect a WS2812 LED-Ring or some WS2812 LED stripes for a better illumination of the object. You can use the 6 pin header on the original ciclop ZUM board.

5. Software Installation

Now you need to install the FabScan sotware. Please follow the Guide for Installing the Software.

6. Software Configuration

The image installation from the previous step already contains a default configuration for the FabScan. But some values need to be adjusted, depending on your hardware setup. You should recap your motor type, and the number of lasers at this point.

Note

If you don’t know how to edit a file by using a text editor on a Raspberry Pi console, you should read detailed chapter on How to Edit the Config File first..

Motor Config

You should be sure that the number of steps matches your motor. If you are using a NEMA17 motor, the common number of steps for a full revolution is 200 (1.8 degree per step). The motor driver is set to 1/16 step what results in 16*200=3200 steps. Most of the ciclop kits come with a 200 steps stepper motor.

Warning

It is important to set a correct value for your motor. A incorrect value can cause double/mirrored looking scans results. Even the calibration process might fail.

The example below shows a configuration for a 200 step stepper motor. The cilop turntable radius is 100mm. If you are using another turntable than the default one, change the radius.

"turntable": { "steps": 3200 "radius": 100, "height": 155 } 

Laser Config

Change the number of lasers to a number which matches your setup. If you are using just one laser then change numbers to 1, otherwise numbers should be 2. And be sure that interleaved is set to true.

"laser": { "interleaved": "True", "numbers": 2, "color": "R (RGB)" } 

Serial Connection

Be sure that the connector type is serial and the firmware is set to ciclop. The port should match the serial port where the ciclop board is connected. Mostly the port is /dev/ttyUSB0. The baudrate should be set to 14400 for the ciclop.

"connector": { "type": "serial", "firmware": "ciclop", "baudrate": 14400, "autoflash": "True", "port": "/dev/ttyUSB0", "flash_baudrate": 115200 } 

Calibration config

You need to change the calibration board config to the ciclop calibration board values.

"pattern": { "square_size": 13, "rows": 6, "columns": 10, "origin_distance": 35 }, 

Note

Read more about the calibration configuration in the advanced Advanced Configurations section.

Leave the rest of the file as it is.

7. Using the Software

You can proceed with the software First Steps with the Software . A more complete software manual can be found in the section Software User Manual. Don’t miss to read the section about Calibrating the Software.

Note

A precise calibration is the key for good scan results!

production and assembly of the control PCB – 2 – Renzo Mischianti

Spread the love

Support forum

In this article I would like to show my custom PCB for the Ciclop 3D scanner which is fully compatible with the original ZUM.

Ciclop 3D scanner electronic PCB soldering

I made my own PCB to replace the original ZUM SCAN one (bigger and more expensive). I also share it on PCBWay.

Ciclop 3D scanner board v1. 2 PCBWay

Ciclop 3D scanner PCB v12 photo prospective

PCB v1.0

This is a fully functional version (videos are made with this version) and it was the simplest. In version v1.2 I thought about adding a resettable PTC to avoid burning the engine (it never happens usually), I made my version with an old Epson Stylus Color 460 stepper motor.

I wrote a guide on how to reuse the old stepper motor “How to reuse 4 and 6 wires stepper motors for your projects“

As I said, the PCB is fully compatible with the original one. Zum scan is more complex, but all additional features is unused.

Ciclop 3D scanner board v1.0 schema

My version is for Arduino Nano, so It’s more little than the original one.

PCB Etching

I never used this technic, but I add to this step the svg file or PDF for production.

Ciclop 3D scanner etchingDownload

Milling PCB

I use this technic for my personal production, I think you can find interesting this series of articles “Cyclone PCB factory: how to build It” and “Milling PCB tutorial“.

Milling PCB: the Milling Process

First mill the copper bottom, then drill the holes.

Here the first traces pass.

And the finished work.

Milling PCB: clean the milled PCB

Than use sand paper to made the board flat and clean. This is my first version, in the next paragraph I add the updated version.

PCB v1.2

As I said, I later created a PTC resettable fuse board, (1.85A 30V) this simple component protects your stepper from the current problem. This card is fully compatible with the original one.

Ciclop 3D scanner board v1.2 schema

So to test the board I restart the whole milling process and here is the result

Ciclop 3D scanner board v1.2 milledCiclop 3D scanner board v1.2 milled sun

Here the new board active and mounted.

Ciclop 3D scanner new board v1.2 with resettable fuse at work

Order 10 PCBs for 5$ on PCBWay

You can order the PCB at PCBWay for few dollars here

Ciclop 3D scanner board v1. 2 PCBWay

Ciclop 3D scanner PCB v12 photo prospective front

PCB Assembly

Complete BOM

Here is the list of components.

21kΩ Resistor
1100µF Electrolytic Capacitor
1DRV 8825 (with one divider jumper) or a4988 Stepper Motor Carrier
2Generic female header – 15 pins
2Generic female header – 8 pins
1Generic male header – 4 pins
2Generic male header – 3 pins
1Barrel 5.5 power Jack (breadboard friendly)
1Generic female header – 5 pins
2Red (633nm) LED
1Arduino Nano (Rev3.0)
11.85A 30V Resettable Fuse PTC (Not needed on v1.0 board)
2NPN-Transistor 2n2222a
110kΩ Resistor

And here the links to the less common components

  • Arduino Nano

You can find It here AliExpress

  • A4988 Stepper driver

You can find It here AliExpress

  • 2x 1k resistor
  • 1x 10k resistor
  • 2x 2n2222 transistor

You can find It here AliExpress

  • 5. 5 Barrel for input voltage

Barrel Jack breadboard friendly on Aliexpress Breadboard friendly 5.5x2.1 - Aliexpress 5.5x2.1

  • In the new board you need only one more component the PTC Resettable fuse 30v 1.85A

You can find It here AliExpress

Solder the components on the milled PCB

Now we add the components to the board after the assembly process.

Here the PCB from PCBWay.

Ciclop 3D scanner PCB description

And here the result.

And here the finished PCB with compoents.

Ciclop 3D scanner PCB v12 with components

Now we must start to add all electronic cable, I explain how to in the next article.

I use 12v 2A power supply (to the barrel) to power a stepper driver.

Ciclop 3D scanner board installed

The USB connector is sufficient for laser and Arduino, but the power supply is for the stepper.

Thanks

  1. Ciclop 3D scanner: component printing and assembly
  2. Ciclop 3D scanner: production and assembly of the control PCB
  3. Ciclop 3D scanner: assembling electronic and wiring
  4. Ciclop 3D scanner: componens testing and calibration

Support forum


Spread the love

Ciclop 3D scanner - the devil is in the details!

Iro4ka

Loading

05/04/2015

40451

Reviews

In this article I will try to answer most of the questions received in PM on assembling the scanner.

Firstly, the scheme is very simple. Whoever is in the subject will immediately understand everything! ;)

Hex firmware and programmer in one archive https://yadi.sk/d/Osx0nHOTgQTmR. This programmer works directly through USB Arduino.

Board layout in layout5 https://yadi.sk/d/TSrsSwFGgLJz2 .

If you decide to print body parts on a printer, it is better to cut the webcam mound into three parts https://yadi.sk/d/O1D0PyyJgQTti . But you can also cut out the body parts from plywood and also connect them with M8 studs. And you can assemble a scanner from anything at all. Its main dimensions are the distance from the camera to the center of the table 310-315 mm, the ears for lasers are set at an angle of 30 degrees. to the camera plane, their length is 15 cm from the center of the camera to the lasers. If the lasers are installed on the same plane as the camera, the distance between the lasers should be 200+200=400 mm.

Chinese lasers with a focusable lens should be adjusted to project the thinnest line and the focusing thread sealed with instant glue (cyacrine). Otherwise, the calibration of lasers can be lost from the slightest shock, as these lenses hang on the thread in the laser body.

Calibration must be done strictly in order, including camera calibration with different positions of the calibration chess field in space. It is better to calibrate the lasers several times and choose the closest repeating values.

That's pretty much all you need to get started with the Ciclop 3D scanner for the first time. :)

Subscribe to the author

Subscribe

Don't want

42

Article comments

More interesting articles

D!al Up

Loading

10/17/2022

4836

37

Subscribe to the author

Subscribe

Don't want to

Hello everyone. The photo in the header is for those who start talking about the frivolity of my...

Read more

Fox

Loading

07.10.2022

3024

23

Subscribe to the author

Subscribe

Don't want

A long time ago, you can say in another life, I got excited about buying a photopolymer printer. From one...

Read more

nk.xcfg

Loading

05/10/2016

38282

117

Follow author

Follow

Don't want

“A good tester won't even launch the app.” (heard at work) Based on real...

Read more

Ciclop 3D scanner.

With my own hands.

Ciclop 3D Scanner by bqLabs
http://www.bq.com/gb/products/ciclop.html
http://diwo.bq.com/en/ciclop-released-2/
Firmware code https://github.com/bq/ horus-fw
Firmware HEX http://diwo.bq.com/en/horus-fw-released/
Firmware Hex Fill http://russemotto.com/xloader/

Cyclops Building Experience "Ciclop 3D Scanner - Devil in the details!"

Discussion of my research on TriDeshnik http://3deshnik.ru/forum/viewtopic.php?f=8&t=15

What do I need to build

Cleaned it from supports. You can download a blank part. While I will cut into three parts for twisting with screws.

Cut into three parts for twisting with M3x10 screws. Download archive with stl models.

General connection diagram of the stepping engine driver

Connection to Arduino Nano

Laser We Connect D2+GND, D3+GND

9000 9000 9000 9000

111 Table assembly


3 - M3x10 screw 5 pieces
4 - M3 nut 1 piece
6 - M8x30 bolt 3 pieces. Screwed into the disc (10). You can take the M8 screw "in the secret" and screw it in from top to bottom, tightening it with a nut at the bottom.

LASERS installation and fixation

2 - m3x10 Washing screw of laser housing, 2 pcs
3 - m3 Gaika 2 pieces
4 - laser 2 pieces Association

- M8x400
2 - M8 nut 28 pcs.
3 - M8 washer 18 pcs. Routed between the nut and the plastic part
4 - Cable duct. Can be replaced with electrical tape
5 - M8x292 threaded stud 1 piece
6 - M8x170 threaded stud 4 pieces. Hold lasers. I think it's wiser to put thinner studs here
7 - Cable channels 3 pieces. Can be replaced with electrical tape or heat shrink

Checkerboard pattern holder assembly

2 - M3 nut 2 pcs
3 - M3x10 screw 2 pieces
4 - plywood cardboard
5 - chess paper-sticker. pdf, svg

Assembly video

Until I started assembling it seems to me that this is enough for the assembly. In the course of the infa will change and be supplemented.

Assembly


Brutal bearing0003

As a result, I will have to do it on Arduino Uno, since I miscalculated with Nanami.

I've already stumbled on connectors in UNO;)

We've arrived. Horus does not see UNO's COM port.

And in the device manager, instead of Arduino UNO, it says Ch440. It looks like you have to reflash the bootloader.

Here is the correct scheme for flashing UNO (Duemilanova) via MEGA 2560. Only I have a 100 microfarad conduit (probably will do). I will check.

Arduino UNO bootloader firmware steps ( Duemilanova), via Arduino Mega:
[ Click to read ]
step 1 - Nothing is connected to Mega except USB cable. Launch the Arduino IDE. We set the Mega parameters: Board, Processor, Port.

step 2 - Go to menu File -> Samples and click ArduinoISP. The sketch of the ArduinoISP programmer is loaded into the editor. Press the round button with an arrow to the right "Upload" and upload the sketch to Mega.

step 3 - Disconnect Mega from everything and connect to UNO (Duemilanova) according to the scheme (above). And we also stick a capacitor (I have 100 microfarads). We connect Mega via USB to the computer.

step 4 - Now in the Arduino IDE set the parameters for UNO (Duemilanova): Board, Processor, Port

step 5 - Go to Tools -> Programmer and click on "Arduino as ISP". Now our Mega has become a programmer.

step 5 - Flash bootloader on UNO (Duemilanova) via Mega. In the Tools menu, click "Burn bootloader". Both boards should have blinking LEDs. Ready. We disconnect everything.

I tried to reflash Bootloader according to the scheme in UNO. Everything blinked and flooded, but in the end nothing came of it. Apparently the fuses are wrong.
The Arduino Nano got free and I connected it to the computer.


Learn more