What's new
What's new

Question on Centroid controller (M400S)

The Dude

Hot Rolled
Joined
Oct 19, 2010
Location
Portland, OR
We have a mill that does some glass coring/grinding with a Centroid M400S "console" and it also has an I/O board (PLCRLY2). We have a home-grown coolant pumping system that, if we lose pressure during coring, may eat up an expensive core bit that has a long lead time. We're making some improvements to the coolant system and would like to incorporate pressure monitoring. An m-code turns on the pump but the pressure doesn't build up until you're actually coring for a few seconds (goes from about 10 or 15 up to about 60 over about 10-20 seconds). While coring we use a peck cycle (all done with one specific subroutine on various programs of which there are about 10 total).

So, is there any easy way to write some "hold" logic (put the machine in a cycle interrupt) based on a single pressure switch? We'd like to have it interrupt if the pump is turned on, peck cycle routine is started and then interrupt if the pressure doesn't reach 60 psi say within XX seconds. Is that just getting too complicated?

Any help is appreciated,
The Dude
 
Hi Dude,
What you want to do is not too bad to code into the PLC logic. I did something similar with a hydraulic pump. If it didn't reach pressure by a certain time it generated an error. Your programs can wait after the coolant is turned on for it to be up to pressure. Of course if the pressure dipped for too long, (say the coolant pump failed) then you'd have to decide what a 'graceful exit' from the drilling cycle would be. Perhaps it would be just triggering ESTOP from the PLC. Or perhaps something with more finesse.
Regards,
J-B52
 
Hi Dude,
What you want to do is not too bad to code into the PLC logic. I did something similar with a hydraulic pump. If it didn't reach pressure by a certain time it generated an error. Your programs can wait after the coolant is turned on for it to be up to pressure. Of course if the pressure dipped for too long, (say the coolant pump failed) then you'd have to decide what a 'graceful exit' from the drilling cycle would be. Perhaps it would be just triggering ESTOP from the PLC. Or perhaps something with more finesse.
Regards,
J-B52

Thanks JB, is the programming part of each and every CNC program or is it kind of in the background? I do PLC programming and understand CNC to some extent. If I crack open the manual for this thing, is it relatively easy to figure out?

The Dude
 
Marc Leonard at CNC Services Northwest in Bellingham is the person you should talk with. Marc knows Centroid.

Yes he does, but he is hard to get a hold of. I left a message with him about the time I first posted this and still haven't heard back. Ironically, the guy in our shop who asked for this is in contact with him about some other things so I told him he (Mark) could help us with this. That's the last it was mentioned about here so I guess it's not that high of a priority (i.e. we'll just run until it breaks).

The Dude
 
Hey The Dude,
It's definitely possible. There are different ways. One is to modify your pump on macro to wait for one of the SV94_95 memory bits, and have your PLC program set that bit after it detects coolant pressure is up. The PLC would also have to be programmed to monitor the pressure sensor and generate a fault if pressure dips. You could get fancy and allow for very short dips, say a few tenths of a second, then if you don't get pressure back in a half second, go ahead and fault and issue a spindle stop. The PLC CAN be made to do all of this. It's actually in your documentation, but you might need a bit of programming in your DNA to do it.

I might be able to be of a little more help, give me a shout when you have the pressure sensor installed and have tested it with a DVM before connecting it to the Centroid board.

Good Luck and Regards,
JB52
 
Sorry man, I missed that reply. 'relatively easy'? depends. I'd say if you do PLC programming, you can get it. It does not have to be part of any CNC program, you just generate a report and give it a name (so you can get back to where you are), then, you'll modify a file called MPU.SRC, and compile it with MPUCOMP.EXE. This will make a new PLC routine which the centroid controller will run in the background.

So, there's two parts to this. First, the pump-on macro will need to sit and wait till the PLC code tells it pressure is up and it's OK to proceed. So the PLC and the custom pump-on macro will talk through a common memory bit (which you will assigned by the PLC). When the bit's set by the PLC, pressure is up.

The second part is when the PLC is sitting in the background looping through it's code and watching that pressure bit. Your code will be basically:
IF !PressureInputBitOK THEN SET other_fault

There are a number of faults you'll see in the PLC code (File: MPU.SRC), and if you poke around you'll find what the other_fault does, I think it does a general stop, and I'm 99% sore it stops the spindle and all axis. You can make it trigger a software generated estop, I think that's what it does anyway.

The JB52. ;-)
 








 
Back
Top