VFFS Machine Omron
VFFS Machine Omron
VFFS Machine Omron
APPLICATION NOTE
Omron AT-WEST
Application Notes
CONTENTS
1. INTRODUCTION
1. INTRODUCTION
Later it is explained how Omron can meet the requirements and offer a solution that
fits the application.
Every part of the machine is discussed in det ail, it is explained the operation itself
and how to program this operation with the Omron solution. Some example
programs are provided too so, this document is a useful tool to help both, to select
the suitable Omron products according to your machine, and to program the
products as the main subroutines are pre-made.
2. MACHINE OVERVIEW
The pack is a soft plastic bag made from a roll of plastic film. See some
examples in the picture:
Fig. 1
Although there are many variations and every machine has differences
from another one due to the OEM technology, the pac kaging material
and the goods to be packed, we can say that the vertical form fill and
seal is one of the most standard ones in the packaging market.
External encoder
for slip Vertical
compensation sealer
UNWINDER
FEEDER
Dancer (10V
reference)
HORIZONTAL
SEALER
Fig. 2
Some parts of the machine are a must; some other varies depending
on the material used in the bags and on the goods to be packed.
BRIEF DESCRIPTION:
The bag m aterial comes from a plastic film coil that is unwound. This
plastic film is shaped into a tube by a mechanical mandrel while it is
feed, at the same time, the plastic tube is sealed vertically.
* * *
THE FEEDER
The heart of the machine is the film feeder. This axis consists of a
servomotor attached to some chain that feeds the plastic film to a
certain length, that is the bag length . If the plastic bag is transparent or
does not have a fixed printed pattern, the movement is just a simple point-
to-point movement, but if the bag has a defined pattern that you must
respect (and this is the most usual case), it is necessary to make the
movement adding a correction based in a printed mark.
Most of the machines have the option to work with mark and without
mark.
* * *
The bag material is a flat plastic sheet. To form the bag this flat sheet
must be shaped into a tube and side-sealed.
The tube is formed while the material is feed because the film is driven
through a mandrel with a specific shape.
The side sealing is done usually via two sealing heads heated at a
certain temperature. While the material is feed the sides of the plastic
tube passes through the sealer and makes the closed tube.
There is a mechanism that stops the sealing to avoid that the plastic
burns when the feeder is stopped due to excessive heating. One of the
systems is a small valve activated by a digital output
* * *
The horizontal sealer consists on two heated jaws. Those jaws may be
driven by a piston in the more simple machines or may be driven by a
servomotor when more precise control of the movement and timings is
required. This movement is performed after the feed movement, when
the bag tube is stopped.
The same movement seals the top of the previous bag and the bottom
of the current one and can, optionally, cut the bag. There is different
physical construction of the seal jaws, but the principle of operation is
always the same.
* * *
THE FILLER
The filler varies a lot depending on the material to fill. In fact, in some
cases it is considered as a separate machine. For products consisting
in small pieces like sweets or chips it is normal to weight and to dose,
for liquid products is more common a valve and a caudalimeter and, for
powder and viscous material it is used the so called “Auger filler”.
* * *
THE UNWINDER
One optional device is the unwinder. For the smaller machines, the
feeder movement is, at the same time, unwinding the plastic from the
coil. But this system is valid if the plastic coil is not very big and the
For bigger plastic coils and delicate material it is usual to have some
kind of unwinding system and a material accumulator. Those unwinding
systems tend to be very simple as no precision is required. Nor mally it
uses an AC motor with a frequency inverter.
The most common way to unwind is with an inverter and a PID system
where the reference is a fixed value and the feedback is an analogue
signal coming from a dancer arm in the accumulator.
* * *
SPECIFICATION EXAMPLE:
ITEM VALUE
Bag Width 50 mm minimum up to 380 mm maximum
Bag Length 100 mm minimum up to 550 mm maximum
Machine Speed 12 bag/min minimum up to 100 bags/min maximum
Power Requirements 220-240Vac single phase, 30 A
Film Width 800 mm
Maximum Roll Diameter 600 mm
Machine Finish Stainless Steel
Machine dimensions 1950mm L x 1250 mm W x 1450 mm H
Registration Registration
Film Feeder
Speed
Time
Horizontal
Seal Speed Time to seal bag
T
Time
Filler Speed
Time
Unwinder
speed
The feeder needs a point to point position control with the possibility of
a printed mark correction and the possibility to have an external
encoder for the real positioning.
This is the proposed Omron solution for the vertical form fill and seal
machines.
NS5-SQ11B-V2
ETHERNET TJ2MC64+TJ2-
FINS ECT04
ETHERCAT
G5-ETHERCAT
FILLER
FILLER Sensor for
Empty coil
Registration
G5-ETHERCAT mark
FEEDER slip E
compensatio UNWINDER
Dancer
FEEDER
G5-ETHERCAT HORIZONTAL
SEALER SEALER
MX2+3G3AX-
MX2-ECT
Fig. 5 UNWINDER
For this document we will assume that the embedded digital inputs and
outputs in the TJ2-MC04 are sufficient for the machine. If more inputs
or outputs are necessary, those can be added to the EtherCAT network
by using the Omron slice IO’s and the EtherCAT interface (GRT1-ECT).
If more I/O’s are needed, they also can be connected to the EtherCAT
network. For this we will use the Slice IO’s and the EtherCAT coupler:
GRT1-ECT.
The servodrives also have embedded Safety (STO) to match the safety
regulations in a simple way. Up to 8 servodrives can be connected to a
single safety relay.
MOTION CONTROLLER
SERVO SYSTEM
3x R88M-K75030H-S2 750W, 3000rpm servomotor
3x R88D-KN08H-ECT 800W, EtherCAT servodrive
3x R88A-CAKA005SR-E Motor power cable
3x R88A-CRKA005CR-E Motor encoder cable
3x R88A-FIK107-RE Filters
1x R88A-CNW01C IO connector (to connect the
registration)
3x R88A-CSK003S-E Safety connector cable (3m)
INVERTER
1x 3G3MX2-AB007 MX2 Inverter 1.1KW
1x 3G3AX-MX2-ECT EtherCAT interface
HMI
1x N25-SQ11B-V2 HMI with EtherCAT
OTHER
1x E3M-VG16 Fast photocell for registration
1x G9SB-2002A-24V Safety relay
3. MACHINE SECTIONS.
In this section it is described in detail the different sections of the machine and
the way of solving it with the Omron products. It includes technical description
of the different topics and references to the different program examples.
a. The filler:
When the movement has finished it must start the feeder movement to
feed a new bag.
Filler Speed
Filling in process
Fig. 7
Note: in this entire document we will draw the speed time curve because it is
easier to visualize but the commands we give are POSITION. The position in
this graph is the area below the speed curve.
'...
IF VR(mode)=automatic THEN
'...
WAIT IDLE AXIS(sealer)
MOVE(VR(fill_amount)) AXIS(filler)
WAIT IDLE AXIS(filler)
'...
ENDIF
'...
TECHNICAL HINT
In some Auger fillers for viscous materials like toothpaste, they combine
a fill mo vement and, after that, a sm all movement backwards to remov e
the last “drop” and avoid product accumulation in the dosifier.
The feeder has two working modes: Wi thout registration mark and with
registration mark.
Time
Fig. 9
TECHNICAL HINT
Why the registration is needed?
When we have a design that must be centered in the bag, showing the brand logo, etc, we
can never guarantee that we feed exactly the same distance that the design pattern. Of
course, we feed a length that is nearly the print pattern length, but the precision is never
infinite… And the error is accumulative!!
For example, if we have to feed a bag of 200mm but the real pattern is 200.1mm and we have
no correction, we are accumulating an error of 0.1mm per bag. Of course, in a few bags we
will not note the difference but, after 500 bags, we will have an error of 50 mm!!!
Using the mark, every bag we stop in a certain position respect on the printed pattern. The
correction is very small and do not affect to the dynamics. And besides, if we loose one
mark some other time, nothing happens, the error in one bag is very small and will be
corrected in the next one.
∆d 20∆d
100∆d D
If the mark is in such a position that is detected just at the end of the
bag, it may happen that sometimes is detected at the end of the current
bag and sometimes at the beginning of the next one. It is better to
avoid this situation, otherwise, it needs additional program code to
distinguish between both situations and make the right processing:
TECHNICAL HINT
How the G5 captures the registration.
The G5 has three fast inputs (EXT1, EXT2 and EXT3) with a delay of around 7µs and two
hardware latch circuits so, two registrations can be captured at the same time. In this
machine we will need just one. This latch captures in real time the position of the motor in
the moment that a rising edge appears in the selected input.
The encoder in the motor is a serial encoder that sends its position every 83 µs to the drive.
The position of the motor in the precise moment in which the mark arrived is the result of
the interpolation between two consecutive samples. The result is very accurate.
This value is sent to the motion controller via EtherCAT network to apply the correction in a
transparent way for the user.
Position
83µs Time
Once the sealer has sealed the bag and is opened and the product has
been filled, the feeder can start the operation. The steps, assuming we
work with mark are next:
'...
WAIT IDLE AXIS(sealer)
WAIT IDLE AXIS(filler)
BASE(feeder)
IF VR(with_mark)=1 THEN 'If we work with MARK
IF MARK=-1 THEN 'If trigger not ready
REGIST(1) 'Activate trigger
WAIT UNTIL MARK=0 'Wait until trigger is ready
ENDIF
ENDIF
MOVEABS(VR(bag_length))
IF VR(with_mark)=1 THEN
WAIT UNTIL MARK=-1 OR IDLE
IF MARK THEN
MOVEMODIFY (REG_POS+VR(mark_offset))
WAIT IDLE
VR(missed_marks)=0
ELSE
VR(missed_marks)=VR(missed_marks)+1
ENDIF
ELSE
WAIT IDLE
ENDIF
Normally the registration mark is separated from the drawing of the bag
design so, there is only one mark and no possibility of confusion.
But sometimes, the mark sensor not only detects the mark but also
detects parts of the bag design. In this case, to distinguish between the
correct mark and the bag design we use “inclusive windowing”, that is,
we define two absolute positions where we start looking at marks
(OPEN_WIN) and we stop looking at marks (CLOSE_WIN), every mark
that arrives outside of this window will be ignored. Of course, those
window positions are set via the HMI.
If the slip of the plastic film is very big (this happens in systems with big
coils, small or no accumulator and slippery materials) sometimes you
need to make the material feed based in a real measurement of the
plastic, instead of trusting in the motor encoder position.
For doing this, you can connect an external encoder measuring the
plastic directly to CN4 Connector in the G5 servodrive. The encoder
has to be an A, B line driver quadrature encoder.
TECHNICAL HINT
How the Full closed encoder works?
In many application we have a servomotor that is moving the material via a mechanical
transmission. Due to this mechanical transmission, the movement in the material do not
corresponds with the movement in the motor so we want to put an external encoder that is
measuring the real position of the material, and to make the positioning using this external
encoder as feedback.
The position loop uses the external encoder, but the other loops (speed loop and torque loop)
follow the motor encoder, as it is shown in the drawing.
As a recommendation, if the slip is quite big, it is recommended to decrease the gains in the
position loop.
External Encoder
- +
P PI
Position + -
Reference
Position Loop
Motor Encoder
To activate the “Full closed encoder” in the G5, you have to change
next parameters:
− Pn001 (Object 3001.00hex)=6 “Enable Full closed control”
− Pn323 to Pn328 for
the external encoder
setup
See the G5 manual f or
details.
There is no necessary
to make changes in the
application program.
Note, to change from/to
Full closed control and
other modes is
necessary to power off-
on the drive after
changing PN001 n001
parameter Fig. 10
'...
IF VR(mode)=automatic THEN
'...
WAIT IDLE AXIS(feeder)
MOVEABS(VR(close_jaws)) AXIS(sealer)
WAIT IDLE AXIS(sealer)
MOVE(VR(fill_amount)) AXIS(filler)
WA(VR(seal_time))
MOVEABS(VR(open_jaws))
WAIT IDLE AXIS(sealer)
WAIT IDLE AXIS(filler)
'...
ENDIF
'...
sealer homing:
DATUM((3) AXIS(sealer)
WAIT IDLE AXIS (sealer)
RETURN
NOTE: There are different pre-defined partterns in the TJ2-MC04 (check the
manual for details). Nevertheless, if none of the patterns cover the application
necessities, it is possible to create any other sequence via programming.
d. The unwinder.
Not all the machines have any unwinder device. In all cases it is any
kind of simple solution with an inve rter and an AC motor, changing the
speed and with some kind of accumulator system.
Here you can see a diagram showing this last configuration: Unwinding
with a PID.
PID
Inverter
Setpoint Calculation
P External
gain
A72 Process
Erro Freq Motor
r I gain .
+ A73
+
D Sensor
gain
A74
Fig. 12
Process Variable (PV)
Setpoint
via
EtherCAT
and
application
program.
Fig. 13
The advantage of one configuration like this one is that the unwinder
works independently of the rest of the machine.
Apart from the cyclic movements (automatic), the ma chine has other
working modes like the manual, where you can make Jog movements.
One possible solution for the machine that includes this is next:
WHILE TRUE
'...
IF VR(mode)=automatic THEN
BASE(feeder)
'Reset the position to zero
OFFPOS=-DPOS
WAIT UNTIL OFFPOS=0
IF VR(with_mark)=1 THEN 'If we work with MARK
IF MARK=-1 THEN 'If trigger not ready
REGIST(1) 'Activate trigger
WAIT UNTIL MARK=0 'Wait until trigger is
ready
ENDIF
ENDIF
MOVEABS(VR(bag_length))
IF VR(with_mark)=1 THEN
WAIT UNTIL MARK=-1 OR IDLE
IF MARK THEN
MOVEMODIFY (REG_POS+VR(mark_offset))
WAIT IDLE
VR(missed_marks)=0
ELSE
VR(missed_marks)=VR(missed_marks)+1
ENDIF
ELSE
WAIT IDLE
ENDIF
ENDIF
WEND
STOP
sealer_homing:
DATUM(3) AXIS(sealer)
WAIT IDLE AXIS (sealer)
sealer_home=1
RETURN
With this software tool you can make your application programs and
also you can access to the servodrives and inverter parameters from a
single connection point. It is also possible to make tuning, traces and
even frequency analysis in the servodrives.
All parameter in the appl ication like: oper ation speeds, lengths of the
movements, wait times, photocell offsets, etc. are programmed as
global variables that can be set and read from the HMI.
The simplified operation flow of the machine follows the next sequence:
Initialization and
configuration
Stop All
No Yes
Alarm?
Alarm monitoring
Other Monitoring
Fig. 14
As you can see from section 3, making an application program for the
Vertical Form Fill and Seal is not complicated. Sometimes it is more
time consuming to program all the sequence around the cyclic machine
operation, that is:
− To make the necessary configuration after power-up.
− To take care of the fault handling: stop the machine in the
right way and report alarms properly.
− Change from differentm modes smoothly (manual Å Æ
automatic).
SHELL program is a template provided by the softw are tool that the
user must modify to adapt to the particular machine operation. The flow
diagram is next:
At startup, the SHELL checks that all the expected hardware is present
(similar to the IO table in a PLC. If YES, it checks that all setting, drive
parameter and variables have the right initial values and starts the
main loop with the “Fault handling” sequence.
Then, you can focus all your efforts in the machine operation itself.
NOTES
OMRON ELECTRONICS DE MEXICO • SALES OFFICE OTHER OMRON LATIN AMERICA SALES
Apodaca, N.L. • 52.81.11.56.99.20 • 001.800.556.6766 • mela@omron.com 54.11.4783.5300
Omron Europe B.V. • Wegalaan 67-69, NL-2132 JD, Hoofddorp, The Netherlands. • Tel: +31 (0) 23 568 13 00
Fax: +31 (0) 23 568 13 88 • www.industrial.omron.eu
Cat. No. APTJ002-EN-01 01/12 Note: Specifications are subject to change. © 2012 Omron Electronics LLC Printed in U.S.A.