How to configure PPMC with EMC2 on 3 axis milling
You need to link the chosen PPMC HAL pins to the EMC2 Hal pins which have the functions you need.I need help where to attache wire for Eswitch, power on/off. collant on/off. home button, manual jog pandent, manual home switch , tool change ,cycle start .
Typically this involves adding "net" statements to your HAL file. (The hal files are inside the emc2/configs/ directory in your home folder. )
Assuming you are using the Axis or TkEMC interface, and that is up and running, then I suggest looking in Machine->Show Hal Config to see what pin names are available, and make a note of their exact spelling (paying special attention to the difference between "_" and "-" as word separators.)
For example, you probably have a pin called ppmc.0.in-00 and ppmc.0.in-00-not which show the status of input pin 00 on the PPMC board. If you select this pin in the "Watch" tab of Macine->ShowHalConfig then you ought to see it change state.
Choose the one wired to the e-stop, and verify that both in and in-not toggle when you operate the e-stop.
Now look for a pin called iocontrol.0.emc-enable-in.
To check that it works you can type commands in the entry box at the bottom of the "Show" tab. Type
setp iocontrol.0.emc-enable-in 0
That should trigger an e-stop condition.
Check which pin of the ppmc inputs goes FALSE (0) when E-stop is pressed then in the HAL file add a line like:
net e-stop ppmc.0.in-00 => iocontrol.0.emc-enable-in
Note that the "e-stop" signal name can be anything you want to call this link, and that the => is purely for human readability and can be omitted.
Notes on Halshow here: www.linuxcnc.org/docview/html/hal_halshow.html
The HAL pins you can use: www.linuxcnc.org/docview/html/config_emc2hal.html
Extra HAL pins if a function you want isn't there: www.linuxcnc.org/docview/html/gui_halui.html
How to use HAL here: www.linuxcnc.org/docview/html/hal_basic_hal.html
That button exists in the GUI, do you really need a hardware version?If machine over travel than I like to set up a switch that I use to press and hold so EMC dont see that machine is over travled and I can manual get machine out of over travel zone.
also want to switch for spindle on/off/ cw/ ccw
Easy enough, see the middle link (motion.spindle-on, motion.spindle.forward, motion.spindle.reverse.
like to have switch for orient the spindle so my tool fit in spindle in one direction only even if I am doing it manually.
Hmm, now, that is a more difficult question. How you do that depends on how the machine works. Does it have any spindle alignment hardware? If not then you need a spindle encoder and a motor drive capable of moving the spindle at almost zero speed. A typical VFD probably won't work.
Please Log in or Create an account to join the conversation.
sorry.. only realised now you figured it out... well done. for your limit switches etc, try running pncconf in terminal window. this gave me much clearer understanding of pins etc.
Pncconf will be useless for a Pico Systems product. There is no auto configuration program, but
the machine/show hal configuration menu allows you to see all the hal pins and signals.
Jon
Please Log in or Create an account to join the conversation.
For example, you probably have a pin called ppmc.0.in-00 and ppmc.0.in-00-not which show the status of input pin 00 on the PPMC board. If you select this pin in the "Watch" tab of Macine->ShowHalConfig then you ought to see it change state.
Choose the one wired to the e-stop, and verify that both in and in-not toggle when you operate the e-stop.
Now look for a pin called iocontrol.0.emc-enable-in.
Actually, it will be ppmc.0.din.00.in
or
ppmc.0.din.00.in-not for the logical complement of that signal. The number following the din.
will range from 00 through 15 for the first DIO board.
The emergency stop chain is on ots own pins, and you don't need to program that at all. it is all
on the DIO board's web page at pico-systems.com/dio.html
There is a green LED that lights to indicate the E-stop chain is a closed
circuit. There is a bunch of hal code in the setup file ppmc_io.hal that
makes the E-stop work, and it needs to be kept in the exact order as in the sample
files.
The default file sets up SSR8 to enable the servo amps when in the "machine on" state.
You can just use Axis to see the various limit switch conditions.
Jon
Please Log in or Create an account to join the conversation.
In that case the docs here: www.linuxcnc.org/docview/html/drivers_pico_ppmc.html are not entirely clear.
Actually, it will be ppmc.0.din.00.inandypugh wrote:For example, you probably have a pin called ppmc.0.in-00
Please Log in or Create an account to join the conversation.
Yes, that document is derived from the OLD version. I have updated it, at least in the PDF, and it was supposed to become thejmelson wrote:
In that case the docs here: www.linuxcnc.org/docview/html/drivers_pico_ppmc.html are not entirely clear.
Actually, it will be ppmc.0.din.00.inandypugh wrote:For example, you probably have a pin called ppmc.0.in-00
main document when 2.5 is released. But, now I see the entire hardware interfaces section has been removed from the integrator's manual, but seems to be here : www.linuxcnc.org/docview/devel/html/drivers/pico_ppmc.html
This has lost the clarification on what hal pins and parameters apply to specific Pico Systems boards and other
details that were not clear.
As for the digital inputs, yes, I think there's a mistake there, I will try to get it fixed tonight. The true-reading input
has a ".in" at the end, the inverse-reading input has ".in-not" at the end.
Jon
Please Log in or Create an account to join the conversation.
Yes, that document is derived from the OLD version. I have updated it, at least in the PDF, and it was supposed to become the
main document when 2.5 is released. But, now I see the entire hardware interfaces section has been removed from the integrator's manual, but seems to be here : www.linuxcnc.org/docview/devel/html/drivers/pico_ppmc.html
This has lost the clarification on what hal pins and parameters apply to specific Pico Systems boards and other
details that were not clear.
As for the digital inputs, yes, I think there's a mistake there, I will try to get it fixed tonight. The true-reading input
has a ".in" at the end, the inverse-reading input has ".in-not" at the end.
Jon
Yea, the Integrators manual is a mess and missing large chunks of information that Integrators need as well as the HTML for 2.5. So there is really no point in having the PDF's split up in the way they are but...
Just remember to add to the lowest branch that the information applies to as all merges are upward. Never change master if it applies to a branch.
John
Please Log in or Create an account to join the conversation.
jmelson wrote:
OK, I have corrected the mistakes and committed to the master of docs/src/drivers/pico_ppmc.txt
Just remember to add to the lowest branch that the information applies to as all merges are upward. Never change master if it applies to a branch.
John
This document can only be accessed from the "Documentation for the unreleased development version"
(of course the changes won't get there for a day or so....)
What is the git command to push this info the the 2.4.6 version of the docs as well?
Thanks,
Jon
Please Log in or Create an account to join the conversation.
The docs in 2.4.x still use Lyx so to change something in those docs you need to either have an 8.04 machine with a 2.4 checkout and use Lyx or open the .lyx file with a text editor and make your changes. Or you can tell me what you want changed in 2.4 and I can make change it for you.
It does sound to me that you put your change in master and not 2.5, if that is the case it will not be included with 2.5 by default. I always open a terminal before editing a doc and do a git branch to see what is the current branch that I'm working on.
The Docs for 2.5 are here:
www.linuxcnc.org/docview/2.5/html/
I added a link to the 2.5 html docs to the Documents page to make it easier to check.
John
Please Log in or Create an account to join the conversation.
Well, maybe it doesn't make sense to spend much effort on that.Jon,
The docs in 2.4.x still use Lyx so to change something in those docs you need to either have an 8.04 machine with a 2.4 checkout and use Lyx or open the .lyx file with a text editor and make your changes. Or you can tell me what you want changed in 2.4 and I can make change it for you.
I still am very limited in what I can do in git. Yes, I think I did put it in master. Is there a simple way to
It does sound to me that you put your change in master and not 2.5, if that is the case it will not be included with 2.5 by default. I always open a terminal before editing a doc and do a git branch to see what is the current branch that I'm working on.
also move these files the 2.5? I really need the git syntax, I've tried reading the git documents but am not able to make much sense of them.
Thanks, that should help.The Docs for 2.5 are here:
www.linuxcnc.org/docview/2.5/html/
I added a link to the 2.5 html docs to the Documents page to make it easier to check.
John
Jon
Please Log in or Create an account to join the conversation.
OK, I have corrected the errors in the master version of the docs, at :As for the digital inputs, yes, I think there's a mistake there, I will try to get it fixed tonight. The true-reading input
has a ".in" at the end, the inverse-reading input has ".in-not" at the end.
Jon
www.linuxcnc.org/docview/devel/html/drivers/pico_ppmc.html
I am still working on getting this merged to the 2.5 branch so it goes out in the distribution.
Jon
Please Log in or Create an account to join the conversation.