svenhb / GRBL-Plotter

A GCode sender (not only for lasers or plotters) for up to two GRBL controller. SVG, DXF, HPGL import. 6 axis DRO.
https://grbl-plotter.de/
GNU General Public License v3.0
693 stars 176 forks source link

Support conveyorized paper roll ? #109

Closed raercan closed 4 years ago

raercan commented 4 years ago

https://youtu.be/eO6vynBqP78

Plotters can use paper roll.

svenhb commented 4 years ago

I don't know what to implement. I would just add some footer-gcode to control axis 'B' to turn the paper-roll after finishing the cut.
You could also use as 2nd grbl-controller to control the paper-roll: https://github.com/svenhb/GRBL-Plotter/wiki#how-to-control-a-2nd-controller-with-grbl

raercan commented 4 years ago

Actually need huge draw area. Maybe u can slice x or y side . When completed bite again draw another bite. Ploter can draw part by part . Picture by picture. Bite by bite. ( Sorry my english ) thank you.

lianzaozi commented 4 years ago

In order to express my thoughts, I drew a schematic diagram to express, the following is a text description. If there is a 90 155 picture to be drawn, but the maximum working range of the machine is 45 48, after the file to be processed is imported into the software, the software automatically divides the motion area to be processed according to the size of the picture file and the set machine processing range. 6 copies, and then generate the corresponding 6 copies of GCode (I use the red dotted line in the figure to simulate the six copies of the software division). If the area 1 is processed first, the machine fixture axis automatically moves by +45 in the X direction after processing (the user without a fixture axis moves manually), and then the area 2 is processed. After the area 2 is processed, the machine fixture axis automatically moves in the Y direction by -48 (users without a fixture axis move manually) and then process area 3. Then move in X direction -45 machining area 4 ... I feel that this way I can solve large-format drawing work with a small working area. If there is a better solution, I like to communicate and solve the problem together.

111

raercan commented 4 years ago

https://www.youtube.com/watch?v=jMF-TktGB-8

i was imagined like this machine.

svenhb commented 4 years ago

Clipping is the 'magic' process to cut the graphic-elements. Clipping is only simple for line segments, so I will convert all circles and arcs into lines, before generating the partial graphics - let's say 'tiles'.

svenhb commented 4 years ago

Check the new tiling option in the new release

lianzaozi commented 4 years ago

There is a problem with the Clipping function. Below is the dxf file used for my setup and testing and the screenshot of the error.

setup image1

error form image2

test dxf file test.zip

lianzaozi commented 4 years ago

I know the cause of the error. The maximum area occupied by the geometric primitives in dxf is 297x210. When I divide it, I divide it at a distance of 100 in the X direction and 71 in the Y direction. Because 100x3=300>297, 71x3=213>210. So the software went wrong. I think when the user sets an incorrect split spacing, a pop-up window should prompt the user with some information. Or if you have a better way to avoid mistakes, you can follow your own ideas.

lianzaozi commented 4 years ago

The file I used for testing is test.zip, which has been uploaded in the comments above.

After I set the split spacing correctly, the software now works. But there will be straight lines in the blue area in the screenshot (image.png). I don't know what these straight lines represent. image2 image

lianzaozi commented 4 years ago

I don't understand why the software will move to P0, P1, P2, P3, P4, P5 these positions? The gif animation shows the process of software simulation. I selected these positions with blue boxes in the screenshot (image10.png).

image10 image2 gif1

svenhb commented 4 years ago

It's because of "Gcode before tile". Some how you need to move your paper to draw the next tile. I should have use other axis names... The grey horizontal and vertical lines should show the tile-raster - doesn't work in your example ;-(

lianzaozi commented 4 years ago

Your analysis is very correct, and I agree with your point of view. how you need to move your paper to draw the next tile, some equipment uses X and Y axis to move, some equipment uses air cylinder to move, and some equipment uses 4th axis and 5th axis... , I think the mechanical mechanism used to realize this movement can allow the user to decide according to his own equipment. If he uses the air cylinder to move, he can insert M code between the previous code block and the next code block. If his device is The axis allows him to define which axis names are used to move.

svenhb commented 4 years ago

My idea was to use a second Grbl controller to move a roll of paper (a small one from a cash register) for a real example, but until now I haven't had time to build the mechanics. https://github.com/svenhb/GRBL-Plotter/wiki#how-to-control-a-2nd-controller-with-grbl

svenhb commented 4 years ago

Check new release for fixed cut lines

lianzaozi commented 4 years ago

The software cutting function of version V1.5.0.2 cannot be used. After the cutting function is enabled, an error will be reported when opening the dxf file.

svenhb commented 4 years ago

There was a bug in the implementation of #132 Please check new release

lianzaozi commented 4 years ago

The cutting line of the software cutting function of version V1.5.0.3 is displayed normally, and the problem that the software cannot be used due to the wrong cutting distance set by the user has been solved.

svenhb commented 4 years ago

Ok, so implementation seem to work. Issue can be closed