I have built a laser piano roll cutter. it has a capstan pinch roller to move the paper. however i would like to make a version that uses an unmodified laser engraver that does not have a Z axis. i want to cut a page at a time and then advance to the next page. for this i would need to switch the y axis from one motor to another using gcode commands. i do not need air assist so i was thinking i could use the relay out for air assist to do the switching i have read that M8 controls air assist and that M9 turns it off. is this true? can i expect to be able to use M9 and M8 to toggle the relay without messing anything else up? can I use M0 with a delay parameter to be sure that the relay has time to switch? i need to use G1 Y for both cutting the page and also for feeding the paper to a new position in case this was not clear. only one will happen at a time. I have written the gcode generating program so i have complete control over what will be in the gcode
Like this sort of thing? The Quest To Make Player Piano Rolls Using lasers - Make:
yes a lot like that but i solved the paper feeding problem 20 years ago. i have scanned close to 10000 piano rolls of old brittle paper and figured out how to pull 100 feet of paper through the mechanism with very slight wandering. my machine will trim the edges to match the holes so even a little wandering is not a problem. also my program parses MIDI files and created continuous gcode files optimizing the cut path somewhat. it does not move 20 feet and then freak out. my newest idea for which i need to check a few capabilities of laser grbl and stock machines will be page based and fake the third axis by a way i just figured out maybe 4 hours ago. i have to admit that it is pretty elegant and clever and hopefully will work
Basically, that is true. M8 turns AA on, M9 turns it off again. Depending on firmware, you can also use M7. But M8 is more common.
M0 should work, at least it is listed in the grbl command description. Though I never tested it. I don’t think LB can automatically add it, you might need to add some custom end-gcode or something.
If you use a solid state relay, the delay between switching is minimal, I think, so it should not create much delay. You only need to switch the enable pin of the drivers.
I tested both M8 and M9 and M0 and they work as they should so my idea will work with one tiny possible problem. if the paper pull motor and the Y axis motor(s) are deenergized they could possibly drift by 1 step when re-energized. But that amount of error is probably acceptable since the smallest hole will be .050" and a step will be something like .005" so a ten percent error once in a while in just the holes that straddle a line is no big deal. i can (am probably will) use variable page lengths and not allow features to straddle the page line. a bit more post processing of the gcode but certainly doable.
switching enable pin will not do what i want. i still want the driver to run the alternate motor. my engraver does not have a third axis nor do many others and i want the system to work without one. I am going to test first with a mechanical relay. M0 seems to work so I can code in delays to allow for relay switching and paging. I tested M0 with P parameter and that seems to work.
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.