AVT <-> Automation Engine
This report explores the integration of Advanced Vision Technology (AVT) with Esko's Automation Engine to optimise print quality control in packaging and label printing processes. AVT's advanced print inspection systems offer comprehensive defect detection and process control functionalities, while Esko's Automation Engine streamlines workflow management. During my internship at AV Flexologic, I had the invaluable opportunity to delve into the integration of AVT and Automation Engine within the context of packaging and label printing solutions. Working closely with various companies and exploring cutting-edge machinery and technology at the Flexo Xperience Center in Atlanta, I conducted a study to understand the intricacies of merging AVT's advanced print inspection systems with Esko's Automation Engine.
This research was completed on May 2nd, 2024 under Dr. Charles Tonkin, Chair of the Department of Graphic Communications, Clemson University and Director of the Sonoco Institute of Packaging Design & Graphics, as a part of GC 8910: Master's Thesis Research.
My approach to this research is very practical, understanding every concept from the root level. I hope this study helps the students of Graphic Communications to develop a deeper understanding of how the system works.
AVT
AVT by Esko refers to a range of advanced print inspection systems developed by AVT (Advanced Vision Technology) that have been integrated with Esko's packaging and label printing solutions. AVT specialises in print process control, quality assurance, and press control systems. These systems are designed to ensure high-quality printing with automatic defect detection and enhanced process control.
The AVT Jupiter, for example, is a leading solution for web printing applications, providing automatic inspection and quality assurance across various printed materials, helping to detect defects in real-time and enhance productivity. The system is equipped with high-definition cameras and specialized features like haze detection.
Similarly, the AVT Helios system offers 100% automated inline inspection specifically for labels and narrow web printing. It supports a wide range of materials and includes features that automate job setup, monitor production, and generate reports to ensure consistent quality.
In 2020, Esko, a global developer of integrated hardware and software solutions for the print, packaging, and label industries, merged with AVT Inspection Systems. This merger aimed to enhance the connectivity of the packaging and labelling value chains by integrating their technologies, thus improving the ease of setting up print inspection systems and enhancing overall operational performance and customer satisfaction.
Setting a job in AVT’s engine
The first thing you would need to set are the job parameters.
Set dimensions
Select your file from the server
Set the barcode
You are set!
Automation Engine
Automation Engine by Esko is a comprehensive prepress workflow software designed to enhance automation across various printing techniques like digital, flexo, offset, and gravure. This software helps streamline prepress processes by standardizing procedures, reducing time spent on tasks, and minimizing pre-production errors. It offers features like automatic job creation, data organization, step and repeat, and job reporting, which collectively aim to improve operational efficiency and reduce costs.
The software is particularly beneficial for print service providers and brands looking to leverage automated workflows to maintain high-quality outputs and manage color effectively. Automation Engine supports integration with Management Information Systems (MIS) and is available in a SaaS (Software as a Service) model, allowing users to reduce storage costs and manage job data more effectively via cloud storage solutions.
For detailed insights on how Automation Engine can specifically benefit your operations or to explore its full range of capabilities, visiting Esko's official website or contacting their support for a personalized demonstration would be beneficial.
Types of Automation Engine Servers
Automation Engine on Premises
Automation engine server software is installed on Windows Server computers in your company's LAN.
Managed by Automation Engine/ IT administrator.
Automation Engine on SaaS
Automation Engine server is installed centrally in a data centre.
The look and feel are similar to that on premises setup.
dedicated Esko staff managers the installation in the data centre (IT updates) All the rest (including configuration) is done by Esko’s Automation Engine specialist/Administrator.
Accessibility
Automation Engine Pilot Client
Classic client application for local installation, all features available. Admin can simplify features for different user profiles.
Browser Client
Browser page that connects to Automation Engine server. All popular browsers supported (Google Chrome, Internet Explorer, Firefox, Opera, Safari). Offers less functionality but a much simpler user interface.
From within ArtPro+ or Adobe Illustrator
When connected to an Automation Engine server, these applications offer direct dialogues to work with Automation Engine (browsing, launching and tracking).
Fig. 2.1. ArtPro+ works with Automation Engine
From Other Systems
From an MIS/ERP system - These systems can Automation Engine tasks. Check or set statuses, send or receive files. Automation Engine offers an extensive set of tools to work with - Access points, XML, JSON, JDF, JMF, web services, SQL query, regex, etc.
File Location
Automation Engine server can work with files in the LAN on a dedicated server or on the Automation Engine server computer itself. Local shares of data that Automation Engine is configured to work with are called Containers. Automation Engine SaaS can also work with data stored in Esko Cloud. Automation Engine server can store resources like curves, screens, fonts, profiles, marks, etc.
AVT <-> Automation Engine: How Does it Work
AVT systems, such as AVT Jupiter and AVT Helios, are designed to detect printing defects and imperfections in real-time during the printing process. These systems provide detailed inspection across various printing applications, identifying issues like color variations, mis-registration, and other defects that can affect the quality of the printed materials.
Automation Engine, on the other hand, serves as a robust prepress workflow server that automates and standardises pre-production processes. It manages tasks such as job creation, step and repeat, and imposition, and it integrates seamlessly with other production tools to ensure efficient, error-free production workflows.
When combined, AVT's inspection systems can directly communicate with Automation Engine, allowing detected issues to be automatically fed back into the prepress process. For example, if AVT's system identifies a print defect, this information can be used by Automation Engine to adjust the workflow or alert operators, thus preventing further waste and ensuring quality outputs. This setup is particularly beneficial in settings where high quality and precision are crucial, such as in label and packaging printing.
Back to Basics
Within the Automation Engine, a Container is a network share that contains the data that Automation Engine can work with. Containers can be located on your Automation Engine server/ or on a separate file server.
Launching a File
Literally as simple as, right click -> New Task
Fig. 3.1. Opening New Task
Fig. 3.2. Selecting a Ticket
Fig. 3.2. Selecting a Ticket
This window will show you all the settings related to this task. We go to the XML tab, uncheck the Create XML report option and Launch the task. We could also save this task for later.
Fig. 3.2. The task is executed on the server.
Fig. 3.2. You will see that the output file is ready.
Note that using “Launch With” you can immediately launch the task without opening the ticket.
Fig. 3.3. Use “Launch With” to launch task without opening the ticket
Fig. 3.4. Relaunch a task from this window
Smartnames
A Smartname is a variable that refers to a value. You use it by inserting it in input fields across Automation Engine.
Fig. 4.1. The brackets signify Smartnames
Workflows
Fig. 5.1. Example of a workflow
What can you do:
Create a workflow from scratch
Modify a workflow
Add copies or references to a ticket
Add Sticky Notes
Fig. 5.2. Understanding a workflow
Creating a Task from scratch
Note that if you don’t have access right, you won’t be able to see this icon.
Fig. 6.1. Creating a task
You can see all the Tasks in the Tasks Panel.
Fig. 6.2. Workflow window
AVT AutoSet
AVT’s AutoSet module automates job set-up by streamlining pre-press to pressroom connectivity from the Esko Automation Engine to AVT’s inspection system.
For color measurement, the digital link between X-Rite’s ColorCert color and AVT’s Spectralab in-line color measurement device automatically sets up a job for in-line color measurement and generates color scorecard reporting on color quality performance after printing. This integration delivers better visibility into color performance based on measurable, objective results for increased color consistency.
External System sending commands To Automation Engine
Create an Automation Engine Job and set Job parameters: An Automation Engine Job represents a job order that you get from the business system. So it is logical not to create those Automation Engine Jobs manually but to get your instructions from that system in an automated digital way. All the parameters should then be picked up in a highly automated workflow.
Automation Engine sending commands To an External System
Setting Job or Product status in that external system:
Automation Engine can send such feedback automatically. And based on that new status, the external system may also decide to start its own automatic workflow.
Automation Engine: Access Points
An Access Point launches a workflow after it detects a signal from 'outside'. Automation Engine offers many types of Access Points. The most classic example is a Folder Access Point, which is also often referred to as a 'hot folder'.
Fig. 7.1. Access Points
A connection between your Automation Engine server and (one of) these systems is of course digital and can be one-directional, bi-directional or, in case more than 2 systems are connected, even triangular.
Not only Access Points can contact an external system. There are also 2 Automation Engine tasks that are dedicated to interacting with external systems. Contrary to Access Points, their interaction can be bi-directional. Besides retrieving data from external systems, these tasks can also be used to provide feedback to external systems. This will be described in more detail later. However, these 2 tasks are typically used because the workflow needs this interaction before it continues. The result of these tasks will be used in the next steps of the workflow. As usual, this can be creating Jobs or Products, or getting values for SmartNames to be used in that workflow.
The Interaction with Database task
Automation Engine can use this task to read a value from an external database. For example: an operator starts a workflow to Step & Repeat and output. The workflow asks the database of the production planning system on which press this job will be printed. This is needed to know the layout size and also any dot gain curve. This press choice can be decided very late, so it might not have been part of the Job parameters that were created earlier.
Note: Reading from an external database is also possible by using a simple SmartName query or by using a Database Access Point. Automation Engine can also use this task to write directly into the database of the external system.
For example to inform it on the new status of a Job or Product. When that system can not read XML messages with such information, then you can consider having Automation Engine write this information directly into the database of that system.
Interaction with External system using JDF
Job Definition Format is a standard language based on XML. It was created by the CIP4 group to help standardise system integration in the printing industry.
This task will submit a JMF to a JDF enabled device or system.
The task takes a JMF as input. The output of the task is the JMF response of the JMF controller to this message.
Options:
JMF Controller: This is the HTTP address of the JMF controller.
In a SaaS setup
To enable an Automation Engine SaaS server to communicate to a local device that supports HTTP JDF/JMF, it would require that that device exposes its HTTP port, which is something your local IT could refuse for security reasons. To solve this, the Automation Engine SaaS server can use this task to communicate with that local device via the local Agent. The task ticket has an extra option.
Agent
Select the local Agent. Learn about the Agent here.
Examples of such local devices with an HTTP JDF/JMF interface are an AVT inspection system, a Xeikon digital press, etc. This communication can be set up via your Esko SaaS support staff.
Fig. 8.1. Workflow for AVT inspection
Here is an example of a simple workflow for AVT inspection.
Fig. 8.2. Workflow Parameter Values
Automation Engine tries to match the data with these predefined values.
Fig. 8.3. Content of the XML
So, let’s see how we can set these.
Note: Automation Engine has training programs for this. In my opinion, editing the JSON/XML files is not impossible to learn; there is a learning curve; it IS extensive enough for Esko to provide a training programme for this.
Working with JSON/XML files
Fig. 8.3. Content of the XML
When Automation Engine is to receive information from a web service, that application may prefer to directly send JSON data to Automation Engine instead of first converting it into the more generic XML format.
The JSON file could be of the JSON 'Object' type or of the JSON 'Array' type. This task can convert such JSON data into corresponding XML data, the format that Automation Engine has many tools for.
When Automation Engine is to send information to an external web service, that application may prefer to receive JSON data instead of XML. This task can convert XML into corresponding JSON data.
Defining the content of the XML
The Create XML File task offers a blank canvas where you need to define all the content of the XML that you want to create. In the below example you see a combination of self written XML code (blue) and some SmartNames (green). Click on + [ ] insert SmartName to pick a SmartName from the list. Alternatively, right-click and choose a SmartName from the offered categories.
Fig. 8.4. Content of the XML
Let’s just say that these XML files are the core of running a task. After setting up work parameters for ink values, separations, trap etc. Automation Engine tries to match these parameters with the data collected from inspection systems such as AVT. Note that, what it matches, can also be edited.
Fig. 8.5. Editing parameters
Fig. 8.6.1 Different pattern elements to create a regular expression
Adding Parameters
There are basically 3 ways to create new parameters:
creating them one by one, using the Add button.
loading multiple parameters from a file, using the button.
duplicating an existing parameter, using the button.
Once you specify the output format and set up the input files, you can start adding parameters that represent the values that you wish to insert from the task's input files into the output file.
To add parameters, proceed as follows:
Click Add underneath the Parameters list. The Add Parameter dialog prompts.
Enter a Name for the new parameter.
Select the Input File that contains the value for the parameter.
Specify where the value for the parameter is located in the selected Input File.
In case you selected an XML Input File, specify the XPath Expression of the value in the input file to be used as the value for the parameter. If you selected an example XML file for the XML input file, you can easily create the XPath Expression using the Edit button. This will open the XPath Builder. For more information on XPath Builder, see The XPath Builder.
Fig. 8.6.2 You can easily create the XPath Expression using the Edit button
In case you selected a CSV Input File, specify the Field number and the Line number of the field in the input CSV file to be used as the value for the parameter. If you selected an example CSV file for the CSV input file, you can select the desired field using the Select Field button.
Separator. If the XPath expression returns multiple elements, decide what character you want to be used as a separator.
Formatting Options. If you suspect that the chosen value might have leading and/or trailing spaces, select Remove leading and trailing spaces.
If you want to save the created parameter as a SmartName, then click Save as SmartName. In the prompted dialog, enter a comprehensive Name and Description and choose whether or not you want this SmartName to be Private.
Click OK to add the parameter to the Parameters list.
The created Parameter is now in the Parameters list. You can now insert the created parameter in the output XML or CSV.
Each input XML file has its own root element. You can define here what you want as the root element in the output XML file. See an example where this root element was set to 'ink':
If this field is left empty, then the tag name of the root of the first input file will be used.
Example:
You have these 2 XML files:
One XML file lists ink attributes of a (first) ink of a PDF:
Creating XPath Expressions
Usually you will not define the XPath expression by typing it in the task window yourself. Use the Edit button to open the XPath Builder. This tool will help you create your own correct XPath expression by clicking the variable elements. By selecting parts in the window with Example XML Content, you will see the resulting XPath expression automatically appear in the top part of this tool.
Fig. 9.1. Creating XPath Expression
Selecting the option Select siblings allows you to automatically select the right level.
In the above example, the user selected the level 'production item'. The selection is shown in yellow. The siblings are also automatically selected and are shown in grey. The correct XPath expression that is needed to split that level of elements will automatically appear in the top part of this tool. You can easily build complex expressions with this tool, such as:
Selecting elements conditionally.
Selecting an element from a specific 'namespace'.
Creating A Job
Fig. 10.1. Creating Job
For most of the fields in this task, you can choose to set a SmartName or a combination of
SmartNames. You can also use an XPath expression to extract values from an XML file. Click to use the Xpath Builder or if you are an expert in XPath, type them in yourself.
Order ID: This field must have a value. You can not leave it empty.
Sub Order ID
Name: In the screen shot example, we combined 2 SmartNames with some absolute text ( _ ).
Description:
Due Date: The format needs to be compliant with ISO 8601(YYYY-MM-DDThh:mm:ssTZD) . For example: 2014-07-28T12:00:00+01:00
Project ID:
Tip: Some users use this field to define the name of the project on Esko WebCenter that
corresponds with this Job.
Category: For this field, you can also choose a category from the list.
Tip: The categories in the list are all those that were already used in a Job.
Custom Fields: The custom fields that appear here are the ones that you defined in Configure > Jobs > Job Setup (maximum 6). Alternatively to using a SmartName or XPath, choose a value from the list.
Job Folder: The system needs to know where to create the actual folder for this Job.
Note: Beware that you do need to define a complete network path here, not just a folder name.
You have these choices:
Use the SmartName [Smart Job Location] to use this setting as defined in Configure > Jobs > Smart Job Location.
Click to browse to the desired job location.
Click to browse to a folder in a container, and then use SmartNames to define a subfolder.
Inks
Setting up the inks for the new Job can only be done if the input file is an XML file and if the ink properties are stored in attributes of XML elements. In the example below the XML input file contains an element "Farben" (German for "inks"). This is an array of "Farbe" elements, each describing an ink.
The Create Job task will create an ink in the new Job for each of these elements in the XML. The table in the dialog defines how to map XML attributes of each element to an ink property.
Fig. 10.1. Ink information
Load Ink Information from an XML element. Enable this and then choose how you will load this specification: You have these 2 options:
XML element Name: Indicate the XML element that contains the ink specification. In above
for example the ink info is described in the element Farben.
XPath expression: Alternatively, use an XPath Expression to the XML element containing the ink information. For example: /CreateJob/Farben
For each job ink parameter, specify the corresponding XML element that is used in the XML file. To do this, select the parameter and click Edit.
Ink name
Ink type
Ink book
Angle
Ruling
Dot Shape
Printing Method
Parameters
To add custom parameters to the job you are creating, click Add and enter its Name and Value. Both fields are SmartName enabled. Typically, the Name will be an absolute value and the Value is a SmartName that extracts the custom parameters from an XML file.
Barcodes
You can Add or Remove parameters for multiple barcodes.
For each barcode, you can set the following parameters by adding a SmartName or an XPath expression. Some also offer to select a value from a list.
Fig. 11.1. Set a Smartname for each barcode
Analyse your Input XML file
For this I used a sample template file.
These temples should help with writing basic XML’s to inspect different aspects of your print file.
Analyse your Input XML file
AVT AutoSet is a feature within Automation Engine, a powerful workflow automation solution used in the printing industry. AutoSet essentially automates the process of setting up print jobs by intelligently analysing job content and applying predefined settings to optimise production efficiency.
The integration of AVT AutoSet with Automation Engine streamlines the setup process by automatically configuring parameters such as color management, imposition, and quality control based on the specific requirements of each job. This not only saves time but also reduces the likelihood of human error, resulting in higher accuracy and consistency in print production.
Working with Automation Engine and AVT AutoSet can vary in difficulty depending on your familiarity with the software and the complexity of your printing projects. While mastering the intricacies of Automation Engine may require some time and training, the user-friendly interface and intuitive design of AVT AutoSet make it relatively easy to use once you become accustomed to it.
Regarding XML files, working with them may initially seem daunting if you're not familiar with markup languages. However, Automation Engine simplifies this process by providing tools and templates for creating and editing XML files within the workflow. With a bit of practice, picking up XML manipulation within the context of Automation Engine becomes more manageable.
From this assignment, I learned the importance of workflow automation in the printing industry and how tools like AVT AutoSet can significantly streamline production processes. Additionally, by talking with industry professionals, I gained first hand practical experience in utilising Automation Engine's features, including XML file handling, which enhances your skills and proficiency in print workflow management.
References
AVT AutoSet - Automatic Job Preparation for Print Inspection. (n.d.). Esko. Retrieved May 3, 2024, from https://www.esko.com/en/products/avt-autoset
AVT Helios - 100% Print Inspection for Labels and Narrow Web. (n.d.). Esko. Retrieved May 3, 2024, from https://www.esko.com/en/products/avt-helios
AVT Jupiter - Best-in-Class Process Control for Packaging Web Printing Applications. (n.d.). Esko. Retrieved May 3, 2024, from https://www.esko.com/en/products/avt-jupiter
LEARNING. (n.d.). Learning.esko.com. Retrieved May 3, 2024, from https://learning.esko.com/
Livestorm. (n.d.). Discover AutoSet: the time saving Esko & AVT digital link | Esko. App.livestorm.co. Retrieved May 3, 2024, from https://app.livestorm.co/esko/discover-autoset-the-time-saving-esko-and-avt-digital-link-apac-nov/live?s=6b0c5131-d985-459b-b57a-1e59bc88aad5#/qa
Print Inspection | Why Choose Esko. (2024, April 23). Esko. https://www.esko.com/en/why-esko/print-inspection