585,927 active members*
3,876 visitors online*
Register for free
Login
Results 1 to 12 of 12
  1. #1
    Join Date
    Nov 2007
    Posts
    9

    Machine Monitoring "advanced"

    We are currently using eNetDNC to upload/download programs, which works great. But we are also attempting to use it for machine monitoring/data collection, which is turning out not so great. We have the eMonitor boards that are hard wired into cycle on/off. We have alot of cycle on/off signals being captured, due to the way the machines are being ran. We are not a high production shop that produces many parts within a shift. Also, we tend to start and stop, sometimes even startover our programs in certain areas to accomplish the machining of a large casting, this is where most of the cycle on/off is coming from.
    The problem we are seeing is that cycle off may not mean that the machine is down, as in nonproduction, the operator may be checking the cut, checking tooling, measuring, etc.
    We have tested the DPRNT function to try and capture some of this activity, but since we bounce around in the program so much, the DPRNT lines may not be "read". Also, it seems that the only thing that terminates a "cycle on" condition is a "cycle off" condition, according to eNetDNC. So event definitions are worthless using DPRNT if cycle off occurs before the DPRNT line, and if you switch, then the event definition does not terminate the cycle on condition.
    Has anyone ever had these types of conditions to deal with?
    I was thinking about supplementing eNetDNC by doing something in the machine ladder, or adding an additional small plc to create some intelligence to capture certain conditions. I was thinking maybe some "If........THEN......." statements or something to capture more conditions, then output them to the eMonitor board.
    Maybe capturing "single block signal" and "spindle on" in a IF THEN statement to keep a "cycle on" condition true just for the eMonitor board input?


    I think everything would be great if we ran parts back to back, running through programs nonstop, but we don't.

    Any help on this would be greatly appreciated!

  2. #2
    Join Date
    May 2004
    Posts
    4519
    I would think all you need is to capture the time of M30 (program end). Then match that with actual part count.

    Then fire a couple of people and I bet your production numbers go up.

  3. #3
    Join Date
    Feb 2009
    Posts
    6028
    Ive done it, but on only Mori's.

    MORI SEIKI GLOBAL WEB SITE | PRODUCTS | Network

  4. #4
    Join Date
    Nov 2007
    Posts
    9

    variety of controls

    We've got a variety of controls that we're dealing with. We've got Mazak, Fanuc, Siemens, maybe some others. The main one I'm concentrating on right now is a Fanuc 15TA, basically for test purposes. This is the oldest of them all, so if we can do something with this one, the rest may be easier.

    I'll have to look into the M30 idea, but we may not finish a part in one shift, if that matters with M30.

    I need some more brainstorming here.

  5. #5
    Join Date
    Aug 2009
    Posts
    684
    We have a similar scenario, so I added custom G codes at start and end of pgm to ensure that part was only counted once, and a G code at end of each sequence to check for rework. It does require strict program format to do it this way though...

    DP

  6. #6
    Join Date
    Nov 2007
    Posts
    9
    Quote Originally Posted by christinandavid View Post
    We have a similar scenario, so I added custom G codes at start and end of pgm to ensure that part was only counted once, and a G code at end of each sequence to check for rework. It does require strict program format to do it this way though...

    DP
    Can you send me an example of this? or post it?
    Thanks

  7. #7
    Join Date
    Aug 2009
    Posts
    684
    At the start of the program, before any processes, we have a g code that saves the cycle start time and initialises all cycle data. It only does this, however, if the 'cycle status flag' macro variable is zero. It ends by setting the flag to 1.

    Each process has an N number. Straight after the N number another g code macro will store the start time of that process. Each process has either M0 or M1 at the end. Just in front of this a third g code will save the time of that process into a corresponding macro variable, as well as updating the cycle total. If it is found that the variable was not initially zero, the same time would then be added to the 'cycle rework' macro variable.

    At the end of the program a fourth g code increments the part count and sets the flag back to zero. It only does this, however, if the flag was initially set to 1.

    That is a simplified version of how I tackled the issue, you may do something similar just to ensure M30/dprnt only happens once for each part. You may prefer to use N and M1 to call macros so that you don't need extra g codes, but I wanted to make sure no mdi operation or off the cuff programs affected the cycle data.

    DP

  8. #8
    Join Date
    Nov 2007
    Posts
    9
    Quote Originally Posted by christinandavid View Post
    At the start of the program, before any processes, we have a g code that saves the cycle start time and initialises all cycle data. It only does this, however, if the 'cycle status flag' macro variable is zero. It ends by setting the flag to 1.

    Each process has an N number. Straight after the N number another g code macro will store the start time of that process. Each process has either M0 or M1 at the end. Just in front of this a third g code will save the time of that process into a corresponding macro variable, as well as updating the cycle total. If it is found that the variable was not initially zero, the same time would then be added to the 'cycle rework' macro variable.

    At the end of the program a fourth g code increments the part count and sets the flag back to zero. It only does this, however, if the flag was initially set to 1.

    That is a simplified version of how I tackled the issue, you may do something similar just to ensure M30/dprnt only happens once for each part. You may prefer to use N and M1 to call macros so that you don't need extra g codes, but I wanted to make sure no mdi operation or off the cuff programs affected the cycle data.

    DP
    Thanks for the detailed information. Looks like this would be a pretty good solution, but we do not have macro capability on all the machines. Looks like the challenge is steering more towards monitoring outputs from the plc/pmc.
    Thanks again.

  9. #9
    Join Date
    Jul 2004
    Posts
    173

    Advanced MDC

    I think your on the right track and really need to wire in multiple points from the PLC to the system to captured the desired results. I would generally recommend, cycle light, spindle, axis movement as "spindle time". Single block, cycle and spindle could be something different, just "cycle time". Most systems only capture one type of time.

    The combo of Emonitor boards and Macros could be a good thing but tedious to maintain.

    Ideally with the other controls, if they have MT Connect, Focus, OPC they can spell this out pretty clearly and with some solutions you can update the PMC with a value to lock status for operators to tell you want is happening with downtime reason.

    How many I/Os do you have on the Emonitor boards? Is this something off the shelf you can modify the ladder on and do the IF/THEN you suggest?
    Greg Mercurio -Shop Floor Automations
    www.shopfloorautomations.com /619-461-4000

  10. #10
    Join Date
    May 2004
    Posts
    97
    Quote Originally Posted by themetalbarn View Post
    We've got a variety of controls that we're dealing with. We've got Mazak, Fanuc, Siemens, maybe some others. The main one I'm concentrating on right now is a Fanuc 15TA, basically for test purposes. This is the oldest of them all, so if we can do something with this one, the rest may be easier.

    I'll have to look into the M30 idea, but we may not finish a part in one shift, if that matters with M30.

    I need some more brainstorming here.
    What controls do you have? We can monitor some Siemens, Mazaks and Fanucs through the Ethernet port and give a load of information that is unambiguous including Feed Rates turned down etc.. It does depend on age. My advice for the older controls, accept the limitations - you will spend a lot of time and effort and frustration trying to eek out every signal from them. DPRNT & data acquisition modules work but can be time consuming to add. If your Mazaks are Fusion / Matrix, your Siemens is 840D (PCU50) and your Fanuc an i Series with FOCAS we just install some software, plug in a cable and away you go... no major program changes or signal finding required.

  11. #11
    Join Date
    Aug 2014
    Posts
    4

    Re: Machine Monitoring "advanced"

    Anything you can share about how to get monitoring data from the Mazak Fusion / Matrix controllers? I'm interested in writing my own monitoring software.

  12. #12
    Join Date
    Feb 2019
    Posts
    1

    How cost effective is NI CRIO based machine monitoring systems?

    Hey Guys, I want to know about NI CRIO based machine monitoring systems. What is that. How can I use this? Where should be use this? Can anyone tell me how cost effects on NI CRIO based machine monitoring systems? How can I track this.

    https://www.erbessd-instruments.com/

Similar Threads

  1. Replies: 5
    Last Post: 01-12-2014, 07:07 PM
  2. X Axis "Goes Off Pattern", "Awry", "Skewed", "Travels"
    By DaDaDaddio in forum Laser Engraving / Cutting Machine General Topics
    Replies: 1
    Last Post: 05-06-2013, 09:59 AM
  3. Thread Milling using "C" axis no "Y" on the machine
    By tejano4life72 in forum Mori Seiki lathes
    Replies: 7
    Last Post: 07-19-2010, 08:59 PM
  4. First Machine HELP...24"x36"x4" or Larger Setup w/ Gecko for under $3000
    By buschhoff in forum Want To Buy...Need help!
    Replies: 4
    Last Post: 03-21-2010, 12:37 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •