Mechanical design

Korean calligraphy drawing machine

This week we made a drawing machine which is specially designed for drawing Korean Caligraphy. In Korean caligrapy, There are wide lines and thin ones. So we need Z-Axis moves for drawing height control.

letter

This Korean word means "Seoul"

 

Test with a single node, 2 nodes, 3 nodes.

What I did at first was followed the instructions and test with example codes. I'm using MAC OSX.

1. download the zip file from gitgub website, unzip it, and change to the directory.

sudo python ./setup.py install


2. check my USB port It will looks like this : tty.usbserial-FTXW7FE2

ls /dev/tty.usb* 

3. change to the directory "examples/machines/htmaa" and change the code in 'singlenode.py'. change the portName to my USB port what I checked before.

4. Run.

python single_node.py 
    

 

Making node extension board

We used 4 nodes. two of them is y axis, so it has to have synchronized moves. So I made extension board to split the same signal. Maybe There was a problem with the electric power, but each of stepper driver node could handle 2 amps and 1 amp was enough to our stepper motion. Here is the eagle files.

the mothod for 4 stepper motors control by 3 gestalt nodes
Extension board, trace Extension board, outline
 

 

Making tool-paths

I wanted to make tool path automatically drawing letters included z-axis motion. Fortunately, there is a very similar toolpath called V-cut carve category in VCarve Pro or Aspire. It is a toolpath for V-bits.

1. I made a vector file in Illustrator CS6. write text, choose font, and create outline.

2. Export to DXF 2000

3. Import in Aspire 4.0, make V-carve / Engraving toolpath.

4. Save to Gcode.

create outline with the style font V-Carve, engraving tool
2D toolpath 3D toolpath

 

 

Failure

I wanted to make a GUI program with wxpython which makes gcode to normal array exchanger like [100,10,100] for send data to gestalt nodes. I found other lab's awesome work making toolpath with gcode and control machine with GUI. But It only use 2axis like xy plotter, but I needed one more axis, But there were two problems. First, the Gcode what I made has slightly different format with the other lab's work. So I had to change the code so that found cordinates automatically. Second, When I tried to modify any code in python, It makes a lot of error with indentations. I'm not familliar with python's indentation rools. So I failed to modify the GUI program and changing gcode's cordinates to gestalt toolpaths.

 

 

Making the toolpaths manually

xyz_test_koreanAlpha.py

Here is the toolpath what I made. This is included the drawing depth control. z-axis 0 means traveling on air, z axis -10 means touch paper and -13 means touch paper strongly.

[0,0,0], [30,90,0], [30,90,-10], [40,80,-13], [0,30,-10], [0,30,0], [30,60,0], [30,60,-10], [60,30,-13], [60,30,0], [60,60,0], [60,60,-13], [80,60,-10], [80,60,0], [70,100,0], [70,100,-10], [80,90,-13], [80,0,-10], [80,0,0], [140,85,0], [140,85,-12], [150,95,-12], [170,95,-11], [180,85,-12], [180,75,-12], [170,65,-12], [150,65,-11], [140,75,-12], [140,85,-11], [140,85,0], [120,55,0], [120,55,-13], [160,55,-10], [200,55,-13], [200,55,0], [160,55,0], [160,55,-10], [160,45,-13], [160,45,-0], [140,35,0], [140,35,-12], [190,35,-13], [180,20,-11], [140,20,-13], [150,0,-11], [190,0,-13], [210,20,-10], [210,20,0], [0,0,0]

draw korean letter Calculate toolpath manually:)
Calibrating for line thickness Output