Thanks all for the answers on this. Andy, I’ll give your and Jon’s solutions some thought and try one of them. Thank you!
Gene, it’s a Bridgeport BOSS 5, which is a factory CNC knee mill heavily based on the standard Series 1. The head is virtually identical to a manual Series 1 machine except for the motor and quill arrangement. So all Bridgeports will reverse spindle speed on backgear. I understand the ratio is approximately 8.3:1, but I haven’t been able to verify that. Jon, I have two USC boards on the same parallel port. I think there is a bit of a clarity issue in the documentation here: http://www.linuxcnc.org/docs/html/drivers/pico-ppmc.html <http://www.linuxcnc.org/docs/html/drivers/pico-ppmc.html>. The loadrt command references parallel port addresses. Then the extradac=0xnn explanation indicates that a second board on the same parallel port should be referenced as 0x02. Then later, the pins enumerate as ppmc.<port>…. with <port> being the parallel port, not the board ID on the bus. I understood port to refer to the ID on the bus, so I assumed the second board would be ppmc.02…. instead of ppmc.00… with the channel or pin number enumerating consecutively. Which raises the question of how the inputs and outputs will be enumerated for the second board. Will the second board inputs enumerate as ppmc.00.din.16.in through ppmc.din.31.in and the outputs as ppmc.00.dout.08.out through ppmc.00.dout.15.out? I haven’t yet installed the second USC so I haven’t been able to test both on the same parallel port bus. Secondly, I had a few questions about your -1/+1 multiplication for the spindle speed. I just want to confirm that if I command an M3 S-1000 (assuming a plain configuration as shown in my current config), the spindle will run in reverse without any other input. > On Dec 12, 2020, at 11:53 AM, Jon Elson <el...@pico-systems.com> wrote: > > On 12/12/2020 08:12 AM, Matthew Herd wrote: >> Hi All, >> >> I’m sure there’s a simple answer for my question, but I haven’t been able to >> figure it out. Currently the configuration for the spindle forward and >> reverse outputs is as follows: >> >> # connect spindle fwd/rev to I/O controller >> net SpindleFwd <= ppmc.2.dout.00.out >> net SpindleFwd => spindle.0.forward >> net SpindleRev <= ppmc.2.dout.01.out >> net SpindleRev => spindle.0.reverse > ppmc.2 ??? You have THREE parallel ports with ppmc devices connected? > Generally, you set the I/O port address in the line that loads the ppmc > driver in the univ<xxx>_load.hal file, and it comes out as > ppmc.0.xxxxx >> I would like to selectively reverse direction depending on whether a >> backgear input switch is triggered. I see there is a gearchange component >> but I’m not clear on how to utilize it. > No, don't use gearchange. Use mux2 to select either -1.0 or +1.0 to a signal > depending on the backgear selector. Then, feed that to mult2 and multiply > that by the spindle speed command > (motion.spindle-speed-out) to feed the spindle-speed signal. If you already > have a mult2 in there with some value to scale the speed of the spindle, then > just use the mux2 to select between a positive and a negative of that value. > > I think this is the simplest way to do it, rather than reversing the way TWO > different outputs work. > > Jon > > > _______________________________________________ > Emc-users mailing list > Emc-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/emc-users _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users