Skip to main content

dr4wbck

The Idea

Initially, our Idea was to build a drawing machine similar to the AxiDraw, but with a capstan drive instead of a belt for driving. We just learned about this type of drive in the lecture and were eager try it out. The motion system would be an H-bot.
For the capstan drive, we took much inspiration from the UrumbotXY 2.0.

First, we met and thought about how to build the machine in general. We decided to use aluminum extrusions and wheels as linear guides. We made some initial sketches to better understand, how the machine whould look like and what parts we would need.

20.jpg

Here you can see the inital concept. The wheels for the linear guide as well as the v-wheels for guiding the rope are placed on the middle carriage and the rope is fixated at the head.

10-sketch_top.jpg

We split the work into the following sub tasks.

  1. Trying out RAMPS (a kit containing an Arduino for the firmware and drivers) and get it working with Printrun.
  2. Designing the parts for the tail and the motor mounts.
  3. Designing a head with a Pen holder and a mechanism to lift it.
  4. Producing and testing the prototypes and the parts needed.

Initial Design

The initial design, we kept the simple so we could produce them fast and test out the mechanism. We build a simple motor bracket for the motor and the linear rails: 10-motor-mount.jpg

Then we produced the capstan and pulley from the UrumbotXY 2.0 as well as a simple head. 06-idler.jpg 40-head.jpg

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

Lessons Learned

  • distributing the work in a team is hard
    • also finding parts, that can be operated on parallel is not that easy
  • nothings works out as expected and things that can go wrong, will go wrong (as told so before)
  • we should have partitioned our time more efficiently, then we whould have had a good working product on time and not spend time on little, not necessary things

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 the usual order or reversed
#define COREXY
//#define CoreXZ
//#define COREYZ
//#define COREYX
//#define COREZX
//#define COREZY

80-identify-steps-per-mm.jpg

/**
 * Default Axis Steps Per Unit (linear=steps/mm, rotational=steps/deg)
 * Override with M92
 * X, Y, Z [, I [, J {, K...]]], E0 [, E1[, E2...]]
 */
#define DEFAULT_AXIS_STEPS_PER_UNIT { 102, 102, 400, 500 }

Homing

Generate toolpath using inkscape

10.jpg

20.jpg

30.jpg