If your machine is not capable of sharing data via an ethernet port, you'll have to connect via IO. The MachineMetrics IO module collects and interprets signals which indicate, at the very least, that the machine is active, or the machine has finished making a part. There are various methods for capturing these signals depending on what type of machine you have. It is important to understand how your machine functions when considering which signals to choose to indicate Utilization and Part Count.
Please Note: This article is part of the Digital I/O connectivity process. For more details on the process as a whole, please review the Digital I/O Connectivity Guide
Here are some key questions you can ask yourself to understand the functions of the machine that will help you in selecting the method for connecting for Utilization and Part Count:
What function of the machine is a reliable indication that the machine is active?
What process occurs during a cycle that could indicate a part has been made?
Are there a combination of signals that could be used to indicate Utilization and Part Count?
What exactly is a “signal”?
The MachineMetrics IO module is capable of receiving low DC voltage (no higher than 40VDC) straight from the circuitry in the machine’s electrical cabinet, or from a sensor. Be it a current transducer monitoring a motor, an output terminal of a PLC that turns on a stack light, the coil of a relay that becomes energized when the work conveyor is activated, or the auxiliary dry contacts of a motor contactor - there are many electrical indicators of machine actions that can be received and interpreted by the MachineMetrics IO Module.
Topics covered in this article
There are various methods to capturing signals that indicate whether your machine is active, idle, or in alarm state.
The Green, Yellow, and Red stack lights on your machine are often a good indicator of whether your machine is active or idle. The stack light signals often come from screw terminals. If the signal is 0-24VDC, a wire can be connected directly to the AIN terminals of the IO module. Pictured below are the 24VDC stack light outputs on a Citizen lathe, labeled PATG (GREEN), PATY (YELLOW) and PATR (RED):
Often the stack light outputs will come from a PLC. Pictured below are the 120VAC Green, Yellow, and Red stack light outputs from a PLC output rack. Because these are high voltage outputs, a relay must be used to transfer the signals to the IO module:
Below is a visual representation of the change in voltage that occurs on the terminal of the IO module to which you’ve connected the Green Light signal. When the light is de-energized, the voltage on the terminal sits just above 0 volts. When the light is energized, the signal jumps up to over 10 volts (the IO Module reading has a visual ceiling of 10V). In this case we’ve set a voltage-threshold of 5 volts. When the voltage on the terminal is under 5 volts, the machine is considered “idle” (represented in blue on the timeline). When the terminal is energized and the voltage goes above the 5 volt threshold, the machine is considered “active" (represented in green on the timeline). This method can be used with the Red light signal to indicate Alarm State.
*It is important to note whether certain lights come on simultaneously, stay steady or blink, or some combination thereof.
The AC current transducer is a commonly used sensor to determine Utilization. The most common application of the CT is to monitor activity on a motor drive.
Pictured below is a current transducer installed within a machine's electrical cabinet, monitoring the spindle drive. It is important to clamp the CT around a single phase (any of the three will yield the same reading).
*Note that if there are multiple spindles (main, sub, etc.), a CT will have to be installed to monitor each in order to accurately determine whether the machine is active or idle.
Below is the visual representation of the DC voltage that is produced by a current transducer monitoring a spindle drive. When the spindle is inactive, there is no current flowing through the wire the CT is clamped around, and the voltage reading on the CT terminals is 0. When the spindle is doing work, the CT outputs a proportional DC voltage, as seen in orange. If this voltage crosses a specified voltage-threshold, the machine is considered ‘active’ (green on the timeline). The voltage threshold is set very low in this case to account for low speed spindle operations.
*Note that you are not limited to monitoring the spindle drive. In some cases monitoring one or several of the machine's axis drives is a better option for determining utilization.
Some machines have PLC outputs for various functions of the machine. In the example below, terminal A10 of terminal block CN308 is energized with 24VDC whenever the machine is active. In this case, it is possible to connect a conductor from said terminal directly to AIN0 of the IO Module. In this example, an alarm output is present, which can be used to indicate alarm state.
*Note that some PLC outputs become energized with high AC voltage, in which case a relay must be used to transmit the signal to the IO module.
To learn more about how to connect for Utilization, visit this article.
There are various methods for capturing signals that indicate that your machine has created a part.
Part Count Relay
Certain machines are equipped with a Part Count relay. This relay pulses briefly after every part on a specified M code embedded in the parts program. This is the most convenient signal for capturing Part Count.
Below is a visual representation of the change in voltage that occurs on the terminal of the IO module to which you’ve connected the signal from the "BFWK" relay. When the relay is de-energized, the voltage on the terminal sits just above 0 volts. When the relay is energized, the signal jumps up to over 10 volts. Each spike in voltage indicates that the parts program has seen M56; and has turned the relay on for .5 seconds. The IO module can be configured to recognize these spikes as parts, and increment the part counter. Each black dot indicates a part made.
Below is an example of a machine that has a counter relay. These counters are usually an option on machines, but are ideal for capturing part count because the M code that triggers them is already in the parts programs, and it is easy to capture a signal from a relay. In this case we connected to a pair of unused normally open dry contacts to transfer the work count signal to the Labjack.
Certain machines are equipped with spare relays which are turned on and off with M codes. These relays are ideal for our purposes because they do not perform any function for the machine, and can be used for the express purpose of capturing Part Count. Pictured below is a page of the wiring schematics for an HMC Mill. 28CR & 29CR are spare relays which can be turned on and off with M codes. If you use this method, the M codes associated with the relay you've connected to must be entered into the parts program.
One of the most ubiquitous pieces of equipment on a machine is the coolant pump. If your machine uses coolant, it has a coolant pump. The contactor, which delivers power to the coolant pump motor, is often the easiest way to collect a signal for the coolant pump. Because this pump can be manipulated using M code, it is a good way to capture Part Count. We can capture Part Count by programming the coolant to pulse on & off for a half second at the end of a parts program.
Below is a visual representation of the change in voltage that occurs on the terminal of the IO module to which you’ve connected the signal from the coolant pump contactor. When the pump is on, the 5VDC from the VS terminal is sent to the IO Module’s designated counter terminal, as indicated by the orange line at 5 volts. When the pump is off, the voltage drops. When the pump turns on for a specified amount of time - in this case .5 seconds - the IO Module is configured to see that spike as a part, and the counter increments. The black dot indicates a part made.
If the N/O or N/C auxiliary contacts are unavailable, the next best thing is to A1 & A2 coil terminals of that contactor and install your own relay.
To learn more about how to connect for Part Count, visit this article.
On certain machines, the conditions for Utilization and Part Count occur without having to add additional code to the parts program. Take for example these two signals from an injection molding machine. The top signal (sensor 1) is taken from the “Mold-Closed” relay, which, when energized (mold is closed), sends 24 volts to our IO module. Below is the signal (sensor 2) indicating the machine is in “Automatic-Mode”. Because this machine creates 100% of its parts in automatic mode, and the mold must be closed in order to make a part, it is safe to assume that each rising edge of the mold closed signal that occurs in automatic mode indicates that a part is being made. Notice the black dots that indicate parts made. For each rising edge of the mold-closed signal while the machine is in automatic mode, a part is counted. The very last rising edge of the mold-closed signal occurs while the machine is NOT in automatic mode, therefore a part is not counted.
On a grinding machine, Utilization is determined from a combination of the Green and Yellow stack light signals. When the machine is in-cycle, only the green light is on. However, when the machine is in op-stop the green AND yellow lights are on. Therefore it is necessary to capture both Green and Yellow stack light signals to differentiate between in-cycle and op-stop. The simple logic on the IO configuration script reads: “ACTIVE: green-light and not yellow -light”.
On the same grinding machine, Part Count is determined by observing the Green light signal, and the signal for the robot part gripper. This machine runs all of its parts in auto-mode (green light is on), where the robot will load and unload parts for hours at a time. The robot has two grippers, one which delivers raw material to the collet, and a second which removes the finished piece and drops it in the tray. When the machine is in cycle, the Green light is on. When we see the rising edge of the robot-gripper signal (which indicates the gripper has let go of a finished work-piece) and the Green light is on, the part counter increments.
Below are the signals that determine part count for a MORI SEIKI Mill. After each cycle, a parts-unloader extends to the sub spindle, and the sub spindle ejects the finished part into the catcher before it retracts and deposits the finished work piece into a collection tray. To prevent false counts during setup or maintenance when these mechanical functions may be actuated manually, we configured the Labjack to count parts using a combination of these two signals. If the part-ejector signal is energized while the part-unloader is extended (both signals are energized), the part counter increments. If the signal for the part ejector becomes energized but the unloader is not extended, the counter will not recognize a part.
Below are images of the "Work Ejector Out" and "Work Unloader Out" in the electrical schematics. The diode symbol is indicated because it is the easiest point of attachment to capture the signal.
Below are images of the method used to capture a signal from a diode on a circuit board. The spring-loaded diode clip terminal is inexpensive and very useful in machines where the only other way to capture the same signal would be from a ribbon cable - not fun! Be sure to attach to the proper side of the diode, as only one side becomes energized when the signal is active.
*Note that each machine will have a variety of signals (and combinations of signals) to choose from. It may be necessary to think creatively about the best ones to use to interpret Utilization and Part Count!
While there are standard methods of integrating your machine with the IO module, it is important to remember that even machines that are identical in appearance can have variations in the electrical cabinet. Choosing the proper signals for utilization and part count takes creative thinking and careful testing. In most cases, the signals to integrate with the IO module are there, good luck!
Please sign in to leave a comment.