Skip to main content

dr4wbck

The Idea

Initialy our Idea was to build the AxiDraw but with a Capsten-Drive and in Core-XY style to not need to have a typical belt and only need a rope or fishing line (and we wanted to try out this cool new technic :D).
For this, we took big inspiration from the UrumbotXY 2.0 and first tried to imagine, how we need to align the bearings to get the desired movement.
We made some initial sketches to better understand, how the machine whould look like and what parts we needed.

20.jpg

Then we seperated the machine in different parts that needed to be designed and to be done. Also here you can see the inital concept, which was that the corner-bearings are placed on the middle carrier and the rope is fixed on the head. (and also here we planed to place the carrier bearings over the second axis)

10-sketch_top.jpg

We where a bit overwhelmed of all the tasks that needed to be done and first needed to get into managing the tasks and distribute the tasks in the team. So we split the work into thouse sub-tasks

  1. try out and get the RAMPS working with Printrun
  2. design the different parts of the x and y machine axis
  3. design a head for the pen with z axis
  4. produce and test the prototypes and needed parts

Initial Design

In the initial design, we kept the design simple so we could produce them fast and test out the mechanism.

So we build a simple motor bracket for the motor and the linear rails: 10-motor-mount.jpg

Then we produced the capston and pulley from the UrumbotXY 2.0: 06-idler.jpg

An Initial head for: 40-head.jpg

Then for the carriage we had a Metall Carriage already as a part, which was very sturdy. Here we needed to be carefull with the screws. But the wheels for the second axis where on top of the other wheels, which we couldn't implement and Ferdi advised against it. 13-carriage.jpg

The tail was designed with only one wheel, which may have bin one cause for our problem. 30-tail.jpg

Then we redesigned it to use both metall carriage, which was pretty sturdy. Also we used eccentric screws to tighten the rope. 14-carriage-new.jpg

Then we designed a head for initialy screw down and tighten the rope. 50-assembly.jpg

Also we produced a wire chain to connect the head with the board. In the end we noticed, that the chain was not that sturdy and was not that usable for our machine -.-. 90-cable.jpg

First Assembly

After designing and printing, we assambled everything... 05-gewinde.jpg

... cut threads, screwed everything down, assambled the capston drive rope... 10-assembly-rl.jpg

... and tried to operate it manually:

yay :D

And it worked nicely :P

Continuation & Redesign

When operating manually, we needed to hold it down so that it is stable, which was the first thing we improved.

10-mistakes.jpg

First just making a little angle in the motor bracket improved it a lot but still was oscillating...

... so we created a sideway stabilisation, which then was pretty stable. 30-new-foot.jpg

Here the head and the initial design for lifting holding and adjusting the pen.

10-head.jpg

Then we inkluded in the head and on the side an endstop for executing g-code.

And also a never produced new cariage for mounting the cable chains for the head.

20-carriage.jpg

LessonsSetting Learned

  • distributingup the workDrivers

    10-assembly.jpg

    image1-3.jpg

    10-power-supply-cover.jpg

    20-adjust-driver.jpg

    image1-5.jpg

    Setting up the Firmware

    Getting it Running

    2025-04-15__11-31-33.jpg

    #define BAUDRATE 250000
    

    2025-04-15__11-32-50.jpg

    Determine Steps per Millimeter

    // Enable one of the options below for CoreXY, CoreXZ, or CoreYZ kinematics,
    // either in athe teamusual isorder hardor 
      reversed
    • also#define findingCOREXY parts,//#define thatCoreXZ can//#define beCOREYZ operated//#define onCOREYX parallel//#define isCOREZX not//#define thatCOREZY easy

80-identify-steps-per-mm.jpg

/**
 
  • nothings* worksDefault outAxis asSteps expectedPer and things that can go wrong, will go wrongUnit (aslinear=steps/mm, toldrotational=steps/deg) so* before)
  • Override
  • wewith shouldM92 have* partitionedX, ourY, timeZ more[, efficiently,I then[, weJ whould{, haveK...]]], hadE0 a[, goodE1[, workingE2...]] product*/ on#define timeDEFAULT_AXIS_STEPS_PER_UNIT and{ not102, spend102, time400, on500 little,} not
  • necessary

    things

    Homing

    Generate toolpath using inkscape

    10.jpg

    20.jpg

    30.jpg