Ciclop 3D Scanner Arduino Uno/CNC Shield v3 Wiring Diagram

Ciclop 3D Scanner Arduino Uno/CNC Shield v3 Wiring Diagram


The wiring diagram covers what needs to be connected to get the CNC Shield v3 to work with the Bd Horus 3d scanner software for the Ciclop 3D Scanner. 

For the Laser the positive leads need to connected to the Z.STEP/DIR:
The Z.STEP pin controls the Left Laser
The Z.DIR  pin controls the right  Laser

For the Lasers Negative leads, you can use any pins from END STOPS Z+  down to E-STOP. I tested this and any pin would complete the circuit for the Horus Software to turn on the laser. 


The A4988 Stepper driver will need to go into the X-axis and make sure that you line up the EN pin on the stepper driver with the EN pin on the stepper driver board. 

Pro Tip:
Do not use the firmware from Bd since this is firmware for their proprietary board. You will need to upload the Arduino Sketch from the github link below. If you use the Bd hex or update the software using the Horus software it will not work. 




Hardware Parts List:

StepStick Kit (4pcs) A4988 Stepper Driver-Reprap Prusa Mendel Sanguinololu RAMPS
UNO R3 Development Board MEGA328P ATMEGA16U2 For Arduino Compatible + USB Cable
A4988 Driver CNC Shield Expansion Board for Arduino V3 Engraver 3D Printer
NEMA 17 Stepper Motor 3D Printer ReRap Prusa Mendel CNC 2 Phase Bipolar
Line Lasers
12-36v Power Supply - this is what I am using, but I already had this

Total Cost Not Including Power Supply: 39.73
Total Cost including variable voltage power supply: 89.43


Software:

Horus Arduino Uno Firmware
Horus 3D Scanning Software

Total Cost: Free


Thingiverse Files For 3d Printed Parts:

Bd Ciclop 3D Scanner


Total Cost: Files are free and what ever Filament Costs

22 comments:

  1. Could you check the link for the power supply? It appears that a portion of it was cut off. Thank you for the write up, it was exactly what I was looking for!

    ReplyDelete
    Replies
    1. Thanks for letting me know the link was broken. I updated the link for the power supply that I am using. You could probably get by with a 12-15v wall wart as well since that may be a bit cheaper. Here is the link again in case the link is messed up:
      http://www.ebay.com/itm/30V-2A-Variable-DC-Power-Supply-Precision-Adjustable-Digital-Regulated-Lab-Grade-/301588699538?pt=LH_DefaultDomain_0&hash=item4638165992

      Delete
  2. hey i am having trouble getting my stepper motor to work. i bought everything you had listed except for the power supply i bought a 12v wall wart. it has a red, blue, black and green wire and i cannot seem to get them wired right. do you have a suggestion on which wire goes to which pin?

    ReplyDelete
    Replies
    1. Hi Charles,

      Typically Black will be power and Green will be the grounding wire. I would recommend that you grab a multimeter connect the black to the positive lead and the ground lead to the green wire and then plug in the wall wart to see if you have 12 volts. if you do then you can snip the blue and red leads. Do you have a link to where you got the wall wart at? Or maybe a model number?

      Delete
  3. The wiring diagram covers what needs to be connected to get the CNC Shield v3 to work with the Bd Horus 3d scanner software for the Ciclop ... i3dscanner.blogspot.de

    ReplyDelete
  4. Need help desperately - as motor is not moving at all
    And getting message in Horus software as"Check Motor Direction and Pattern Position and try again error" and motor not at all responding in control bench mode

    We built the ciclop using Arduino Uno + laser driver and stepper motor driver on a prototyping shield.

    Items used are :
    1. Original Arduino UNO V 3.0
    2. A4988 driver stepstick + NEMA17 motor
    3. 2 Line laser modules - driven through ULN2003 from UNO
    4.Logitec C270 HD webcam
    5. 3D printed and assembled scanner

    Electronics assembled on a Arduino prototyping shield

    Pin connections are :

    Motor Step - Uno pin number 12
    Motor Dir - Uno pin number 13
    Motor Enable - Uno pin number 9 (with 10K pull-up resistor)

    Laser 1 - Uno pin number 2
    Laser 2 - Uno pin number 3


    After assembling the shield , we have loaded 'firmata' sketch and used firmata.exe (firmata testing program), and enabled one -by-one the relevant pin and ensured motor can rotate and also laser can be switch on or off - this is just to ensure all the wiring is ok.
    In this everything worked fine.

    Now downloaded firmware from the link given in https://github.com/snhack/horus-fw

    Ensured in config.h file "CPU_MAP_ATMEGA328P_CNCV3 " is selected
    And the pin numbers are properly populated as told above

    #ifdef CPU_MAP_ATMEGA328P_CNCV3 // Arduino Uno for CNC Shield V3

    // Serial port pins
    #define SERIAL_RX USART_RX_vect
    #define SERIAL_UDRE USART_UDRE_vect

    // Define laser pulse output pins. NOTE: All laser pins must be on the same port.
    #define LASER_DDR DDRD
    #define LASER_PORT PORTD
    #define LASER1_BIT 2 // Uno Digital Pin 2
    #define LASER2_BIT 3 // Uno Digital Pin 3
    #define LASER3_BIT 4 // Uno Digital Pin 4
    #define LASER4_BIT 7 // Uno Digital Pin 7
    #define LASER_MASK ((1<<LASER1_BIT)|(1<<LASER2_BIT)) // All step bits

    // Define step pulse output pins. NOTE: All step bit pins must be on the same port.
    #define STEP_DDR DDRD
    #define STEP_PORT PORTD
    #define X_STEP_BIT 12 // Uno Digital Pin 12
    #define STEP_MASK (1<<X_STEP_BIT) // All step bits

    // Define step direction output pins. NOTE: All direction pins must be on the same port.
    #define DIRECTION_DDR DDRD
    #define DIRECTION_PORT PORTD
    #define X_DIRECTION_BIT 13 // Uno Digital Pin 13
    #define DIRECTION_MASK (1<<X_DIRECTION_BIT) // All direction bits

    // Define stepper driver enable/disable output pin (all axis)
    #define STEPPERS_DISABLE_DDR DDRB
    #define STEPPERS_DISABLE_PORT PORTB
    #define STEPPERS_DISABLE_BIT 9 // Uno Digital Pin 9
    #define STEPPERS_DISABLE_MASK (1<<STEPPERS_DISABLE_BIT)

    // Define probe switch input pin.
    #define PROBE_DDR DDRC
    #define PROBE_PIN PINC
    #define PROBE_PORT PORTC
    #define PROBE_BIT 5 // Uno Analog Pin 5 ?????????????????????
    #define PROBE_MASK (1<<PROBE_BIT)

    #endif


    -------------
    In Horus software version 0.1.2.4 - the board is detected fine, and during startup FW returns "Horus 0.1 [‘$’ for help]"

    But when tried just to move the motor in Horus software under Control Workbench - in motor control , the motor does not respond at all ! even when "enable" buton on that screen and the "move" button is pressed
    Then we tried entring $X (which FW responds as "Unlocked") then we tried for motor movement still it will not move ! But after issuing $X - Laser on/off works fine (before that laser was also not working)
    Also when we try to calibrate it says "Check Motor Direction and Pattern Position and try again error"
    What could be the problem can you please help us to resolve this
    1. What are the pre-request for the the motor to move first of all (at least in Control workbench mode)

    What are we missing here....

    Can anyone help us....

    ReplyDelete
  5. I'm getting closer to firing mine up, just waiting for my stepper motor to arrive, hopefully this week. I've uploaded the firmware to the Arduino board, and wired lasers according to the above diagram. During normal operation, the camera is plugged into the computer running Horus, the 12 Vdc supply is powered. Is the USB cable from the Arduino board also connected to the computer at that time?

    ReplyDelete
    Replies
    1. Hi Flipdave

      you will definitely want to have the arduino usb cable plugged into the PC running Horus. The Horus software will not start without the arduino connected running the Horus firmware.

      Delete
  6. Thanks for the response Dom! I got my stepper motor today, and had many problems getting up and going.

    I'm running with a arduino uno board with a CNC Shield V3.0 like described above. It's wired as per the picture and instructions above. When I originally launched Horus, I had no laser control or stepper control. I changed the CPU_Map.h file as follows:

    //----------------------------------------------------------------------------------------
    #ifdef CPU_MAP_ATMEGA328P_CNCV3 // Arduino Uno for CNC Shield V3

    // Serial port pins
    #define SERIAL_RX USART_RX_vect
    #define SERIAL_UDRE USART_UDRE_vect

    // Define laser pulse output pins. NOTE: All laser pins must be on the same port.
    #define LASER_DDR DDRD
    #define LASER_PORT PORTD
    #define LASER1_BIT 4 // Uno Digital Pin 4 Driver Z-STEP
    #define LASER2_BIT 7 // Uno Digital Pin 7 Driver Z-DIR
    #define LASER3_BIT 4 // Uno Digital Pin 4
    #define LASER4_BIT 7 // Uno Digital Pin 7
    #define LASER_MASK ((1<<LASER1_BIT)|(1<<LASER2_BIT)) // All step bits

    // Define step pulse output pins. NOTE: All step bit pins must be on the same port.
    #define STEP_DDR DDRD
    #define STEP_PORT PORTD
    #define X_STEP_BIT 2 // Uno Digital Pin 2
    #define STEP_MASK (1<<X_STEP_BIT) // All step bits

    // Define step direction output pins. NOTE: All direction pins must be on the same port.
    #define DIRECTION_DDR DDRD
    #define DIRECTION_PORT PORTD
    #define X_DIRECTION_BIT 5 // Uno Digital Pin 5
    #define DIRECTION_MASK (1<<X_DIRECTION_BIT) // All direction bits

    // Define stepper driver enable/disable output pin (all axis)
    #define STEPPERS_DISABLE_DDR DDRB
    #define STEPPERS_DISABLE_PORT PORTB
    #define STEPPERS_DISABLE_BIT 0 // Uno Digital Pin 8
    #define STEPPERS_DISABLE_MASK (1<<STEPPERS_DISABLE_BIT)

    // Define probe switch input pin.
    #define PROBE_DDR DDRC
    #define PROBE_PIN PINC
    #define PROBE_PORT PORTC
    #define PROBE_BIT 5 // Uno Analog Pin 5 ?????????????????????
    #define PROBE_MASK (1<<PROBE_BIT)

    #endif

    I now have laser control for both lasers and really crappy stepper operation. can't complete Auto Check or calibration. The stepper is really noisy and jumpy. not sure where to go from here.

    Thanks,
    Dave

    ReplyDelete
    Replies
    1. Thanks a lot
      you saved my time

      Delete
    2. Hi,Iam using arduino with cnc shield v3 for my ciplop 3d laser scanner. When I press the laser button in the horus software their is no response in it.after I'll used this program I' got compilation error for this program . please help me to rectify this problem
      Thanks..

      Delete
  7. Dom;
    I'm a lot closer now, I changed the header file again and got it like the above file. Stepper is moving smoothly now, but still can successfully pass the auto check or calibrate steps. Could be my lighting possibly. Should the lasers be on when your conducting either one of those steps Auto Zcheck, or Calibrate Step? Mine are not during either action. Also, what is the "Probe" bit 5 analog pin for?

    Dave

    ReplyDelete
    Replies
    1. Dom;
      I got everything working! Finally! The problem with auto check and calibration was my checkerboard pattern. I changed and went to a smaller pattern; same number of rows and columns, but slightly smaller. That did the trick, thank God, I was pulling my hair out, and at 64, I don't have much to pull out
      ,
      Dave

      Delete
    2. Flipdave and Dom.

      My stepper dont work correctly! Make a lot of noise and miss the passes. I turn the screw in the pololu driver, but the motor still with noise and poor torque.
      I am using a 12v 1.5A power supply and NEMA 17.

      Please help me!

      Delete
  8. Dom,
    Today I was finish my Ciclop following your recommendations. Every is well, but I have one problem with the stepper movement: it's too high, and in the calibration I can't calibrate good, because they randomly jumping.
    I was moved the driver screw, but only have very little changes better, and on the scanning takes very large steps (I think it's a 4 steps in one) that make the scanned figure finish every time how a round figure (that only seems my original!)...
    I'm desperate because I've tried all ways and can not get better. I think it's a problem of the Arduino firmware...., but I'm not a programmer.
    I tried too to change the arduino, but the problem persists.....
    Any idea for this?.

    Thank you! and a good job!.

    ReplyDelete
  9. Hi Dom

    I have one of these and I am having trouble getting perfect scans. I am getting a double image but have checked everything. Are your scans clean and useable?

    Hey Agustin did you put the 3 jumpers under the stepstick ? Then you can make the steps smaller using Horus there is a setting for step angle ,acceleration and speed

    Glynn

    ReplyDelete
  10. i have the same scanner and i cant get the motor to work, i have checked the parts are the correct types and have checked voltages from the power supply is at 12v 1.5a but when i check the voltage at motor its down to 3.7v and i cant work out why or how to fix ;(

    Any advice please guys n gals

    TIA

    ReplyDelete
  11. Hi mark there is a current limiting potentiometer on the step stick try turning that.

    ReplyDelete
  12. Hi, I am having difficulties downloading the Horus Firmware and was wondering if you had any advice. I have been trying to use this link, https://github.com/bqlabs/horus-fw which has gotten me no where so far. I would love some help, thanks!

    ReplyDelete
  13. Hi, use this link to download load the firmware(http://domoticx.com/mechanica-firmware-horus-arduino-cnc-shield/).and do the instructions given in the website . connect the 2 laser's phase in x step and y step respectively and negative as given in above picture (in propslayer fab) , put the A4988 driver x axis connection and don't forget to use 3 jumpers below.

    ReplyDelete
  14. Thanks a lot for sharing this amazing knowledge with us. This site is fantastic. I always find great knowledge from it. Corsets Malta

    ReplyDelete
  15. These machines can be appraised for purposes of collateral lending, buy/sell agreements, family law, and insurance purposes. What's important to understand when valuing CNC machines is their versatility and the way that versatility weights value. additive manufacturing vs traditional manufacturing

    ReplyDelete

 

Blogger news

Blogroll

About