Rotary Knife Pipenetwork
Introduction
This Rotary Knife Pipenetwork Application Module details a sample Pipenetwork and corresponding PLC"Programmable Logic Controller" A Programmable Logic Controller, PLC, or Programmable Controller is a digital computer used for automation of industrial processes, such as control of machinery on factory assembly lines. Used to synchronize the flow of inputs from (physical) sensors and events with the flow of outputs to actuators and events Code that controls two Axis, a Feeder that moves material which has a sensorA sensor is a type of transducer that converts one type of energy into another for various purposes including measurement or information transfer connected to a fast inputThe inputs are taken into account at each cycle depending on the system periodicity (for example each millisecond). Under certain circumstances this can be insufficient when more accuracy is needed, or if a quick response is required from the system. To fill the gap, a drive may have some Fast Input connections (generally one or two). When an event happens that triggers a Fast Input (e.g. when a sensor sends a rising edge), the detection of a signal occurs faster (which can be 1000 times more accurate than the system periodicity). Then the timestamp associated with this input can be provided to the IPC to take corrective action to capture registration marks, and a rotary knife that will match linear speeds with the Feeder axis to cut the web of material. CAM profiles are used on both axes. With the Rotary Knife to make sure that linear speeds are matched while cutting, and that the knife slows down or speeds up to sync with the web due to its circumference being different than the desired distance between cuts. With the feeder axis, a CAM profile of constantly changing amplitude is used to make adjustments due to positions of registration marks to ensure that the knife is lining up with the material at the exact desired position.
These combinations of pipeblocks and PLC code can easily be modified for use in a variety of Flying Knife applications, by modifying the CAM Profiles and Machine Cycle times to fit machines with varying mechanics and desired material cut lengths.
Pipe Network
Figure 7-257: Rotary Knife Pipenetwork
The Axes are synchronized by using a common Virtual Master to command synchronized motion. The Master is set in modulo mode so that each period corresponds to the expected distance between knife cuts.
Figure 7-258: Knife Cam profile
Knife Axis
Knife_CAM pipeblock is used to control the speed of the Knife Axis. The Profile has an input amplitude equal to the period of the Master, but an output amplitude of 360 degs to ensure that knife makes one rotation for each section of material that needs to be cut. The shape of the CAM profile guarantees a constant velocity while in the cut window so the linear material feed and rotational Knife speeds are synched while a cut is being made. Outside of the cut window the shape of the CAM will speed up or slow down the Knife depending on its diameter in respect to the distance between material cuts. If the knife circumference is larger than the distance between cuts, it will need to be speed up while not cutting, and if the knife is smaller than the cut distance it will slow down outside of the cut window. Notice for this example how the output is from 0 to 360 deg for one rotation of the knife for each period of the Master, and the velocity slows almost to a stop while not in the cut window.
Feeder Axis
The Feeder Axis is first directly geared to the Virtual Master Axis so the web of material is constantly fed through the machine. Some slipping may occur with the material in the Feeder Axis, thus registration marks will be checked. The Trigger pipeblock will capture the location of the Virtual Master pipeblock whenever a registration mark is seen. An adjustment CAM is added in parallel to the main geared connection to the Virtual Master with the Feed_Offset_CAM pipeblock, and is used to adjust the speed of the Feed Axis while the Knife is outside of the cut window. This will either momentarily speed up if the material is behind or slow down if the feeder axis is ahead of its required position to cut the material at the correct position.
Figure 7-259: Feeder CAM Profile base shape
This is the shape of the Feeder Axis’ registration adjustment CAM Profile. The amplitude is adjusted each machine cycle due to calculations made on the error of each registration mark. If there is no error, the amplitude is set to zero and the CAM Profile has no effect on the Feeder Axis. If there is a positive error, a negative amplitude is set to slow down the Feeder Axis outside of the cut window to resynchronize with the Knife Axis.
Additionally, the COM_RotKnife Comparator pipeblock is used to check the Virtual Master position before changing the amplitude of the Feeder adjustment CAM Profile. Using the Comparator ensures that we only change the CAM Amplitude at a time when its output is zero, so we do not have any instantaneous jumping of the Feeder Position.
The Derivator pipeblock is used to smooth the command signal to the Feeder axis. The following CNV_Feeder convertor pipeblock is set to work in speed mode, in effect integrating the incoming signal to change it from a speed to a command position. By taking the derivative, and then immediately the integral of our signal, we prevent jumping that might have been caused by constantly changing the amplitude of he Feed_Offset_CAM Profile.
PLC Program Code
Name | How Used |
---|---|
MLTrigIsTrigged | Monitor for registration marks |
MLTrigGetPos | Read the high speed captured position |
MLPrfSetORatio | Change amplitude of CAM profile to make correct adjustment due to registration mark position |
Table 7-54: Key Function Blocks and Kollmorgen UDFBs used in the Rotary Knife Pipenetwork Application Module
The main section of PLC Code run during the Automatic mode of the Rotary Knife Module Execution is contained in three small If/Then conditions.
The first section of code checks to see if the user has commanded a new velocity for the Virtual Master, and if so command the machine to run at this new speed.
The second section monitors registration marks, and when one is monitored it captures the latched position of the virtual master and compares it with the desired position to cut the material at the desired location. The required position adjustment is calculated depending on if the material needs to be sped up or slowed down to resynchronize with the Knife Axis. The Fast InputThe inputs are taken into account at each cycle depending on the system periodicity (for example each millisecond). Under certain circumstances this can be insufficient when more accuracy is needed, or if a quick response is required from the system. To fill the gap, a drive may have some Fast Input connections (generally one or two). When an event happens that triggers a Fast Input (e.g. when a sensor sends a rising edge), the detection of a signal occurs faster (which can be 1000 times more accurate than the system periodicity). Then the timestamp associated with this input can be provided to the IPC to take corrective action Trigger monitoring the registration marks is also reset to monitor the next mark.
The last section of code waits for the Virtual Master to pass a specific reference position, signifying that it is safe to change the Feeder CAM Profile’s amplitude and not result in uncontrolled position jumping of the Axis.
//If speed entered is different then current speed, change to new speed
IF MasterSpeed <> OldMasterSpeed THEN
MLMstRun(PipeNetwork.MASTER,MasterSpeed);
OldMasterSpeed := MasterSpeed;
END_IF;
//Wait for Registration mark, set amplitude of cam adjustment move
IF MLTrigIsTrigged( PipeNetwork.TRIGGER ) THEN //Hit Registration Mark
Feed_Mark := MLTrigGetPos( PipeNetwork.TRIGGER );//Position of Master when reg mark seen
MLAxisRstFastIn(PipeNetwork.Feeder,MLFI_FIRST);//Reset fast input for next registration mark
MLTrigClearFlag( PipeNetwork.TRIGGER);
IF Feed_Mark >= 1133 THEN
Adjustment := -(2266-Feed_Mark) ; //Feeder needs to slow down if ahead of expected point
ELSE
Adjustment := + Feed_Mark ; //Feeder needs to speed up if its behind expected point
END_IF;
END_IF;
//Change Feeder CAM Profile Amplitude after passing the reference points
IF MLCompCheck(PipeNetwork.COM_RotKnife) THEN //Does Master Axis Pass reference position
MLCompReset(PipeNetwork.COM_RotKnife); //Reset comparator for next machine cycle
MLPrfSetORatio( Profiles.FeederOffset, Adjustment );//Change CAM amplitude to make reg adjustment
END_IF;
Control Panel
The KAS Program included in this Application Module has an internal control panel pictured above. The program starts off in the Standby state, where both Axes are disabled. When entering the Manual or Automatic mode, both Feeder and Knife axes are enabled. The Manual mode lets the user jog each axis at a specified velocity. Automatic mode lets the user run the Rotary Knife program for one cycle or continuously until a specified number of cuts have been made. The positions of each axis are constantly reported to the user.