Recipe Book Tag
A Recipe Book holds a collection of recipes, where a recipe is a set of values (ingredients) to write to a PLC. The Recipe Book provides a way to view, add, modify, delete, or write recipes (implemented using the Recipe Page, a user interface that you build or an API Application Programming Interface. The technical details of the VTScada language.). Sets of recipes are stored in a CSV Comma Separated Value. A file format used to transfer information. file.
If you are building your first recipe, start by reading Recipes and Batch Processing before creating recipe-related tags and widgets.
Several Recipe Books can use the same CSV file if they want to share recipes, where each Recipe Book talks to its own PLC. Each recipe must be given a unique name. It is also possible to store different versions of the same recipe in the Recipe Book.
Import and export capabilities allow recipes to be managed externally using either Microsoft Excel® or Access®. If an external database of recipes exists, a new Recipe Book can have all of its RecipeIngredient tags automatically created by using the Import facility in the Tag Browser.
If the PLC has the concept of starting a batch using a selected recipe, the Recipe Book can start the batch after writing the recipe to the PLC, and it can watch for the PLC to indicate that the batch is complete. The Recipe Book’s value is TRUE (1) while a batch is running. Otherwise it is FALSE (0). If the tag is not configured with both a Start Address and a Done Address, the tag's value will always be FALSE.
The user interface for building, managing and running recipes is provided by the The Recipe Page. You are advised to use this rather than attempt to build a custom UI with the component widgets.
A Recipe Book can be triggered to write a recipe via its Start widget (best found within the Recipe Page), or via any Recipe Trigger tag that exists under the Recipe Book.
The Recipe Book will log information each time a recipe is written to a PLC, including the start and end time (if the PLC is capable of indicating a batch has completed), the recipe name and version, a user-entered "batch number", a note, and the user who initiated the write. Each ingredient IO tag will also log the values they write to the PLC. Additionally, each event of a batch starting and stopping is recorded to the System Event Historian. These events can be viewed in the Alarms Page, History list. You can choose to disable logging to your selected Historian, but not logging to the System Event Historian.
Each new Recipe Book will be given a set of Recipe Ingredient tags automatically:
- Batch Number
- Recipe Name
- Recipe Version (If the Recipe Book is configured to support versioning.)
Recipe Ingredient Tag - Stores the set of possible ingredients for a recipe.
Recipe Proportions Tag - Can be a multiplier applied to one or more ingredients (for example, to double a batch), or percentage for ingredients whose quantities must add up to a certain value.
Recipe Trigger Tag - Provides a way to start a recipe batch automatically.
The ID tab of every tag includes the same common elements: Name, Area, Description, and Help ID.
Name:
Uniquely identifies each tag in the application. If the tag is a child of another, the parent names will be displayed in a separate area before the name field.
You may right-click on the tag's name to add or remove a conditional start expression.
Area
The area field is used to group similar tags together. By defining an area, you make it possible to:
- Filter for particular tag groups when searching in the tag browser
- Link dial-out alarm rosters to Alarm tags having a particular area
- Limit the number of tags loaded upon startup.
- Filter the alarm display to show only certain areas.
- Filter tag selection by area when building reports
When working with Parent-Child tag structures, the area property of all child tags will automatically match the configured area of a parent. Naturally, you can change any tag's area as required. In the case of a child tag, the field background will turn yellow to indicate that you have applied an override. (Orange in the case of user-defined types. Refer to Configuration Field Colors)
To use the area field effectively, you might consider setting the same Area for each I/O driver and its related I/O tags to group all the tags representing the equipment processes installed at each I/O device. You might also consider naming the Area property for the physical location of the tag (i.e. a station or name of a landmark near the location of the I/O device). For serial port or Roster tags, you might configure the Area property according to the purpose of each tag, such as System or Communications.
You may define as many areas as you wish and you may leave the area blank for some tags (note that for Modem tags that are to be used with the Alarm Notification System, it is actually required that the area field be left blank).
To define a new area, type the name in the field. It will immediately be added. To use an existing area, use the drop-down list feature. Re-typing an existing area name is not recommended since a typo or misspelling will result in a second area being created.
There is no tool to remove an area name from VTScada since such a tool is unnecessary. An area definition will exist as long as any tag uses it and will stop existing when no tag uses it (following the next re-start).
Description
Tag names tend to be brief. The description field provides a way to give each tag a human-friendly note describing its purpose. While not mandatory, the description is highly recommended.
Tag descriptions are displayed in the tag browser, in the list of tags to be selected for a report and also on-screen when the operator holds the pointer over the tag’s widget. For installations that use the Alarm Notification System, the description will be spoken when identifying the tag that caused the alarm.
The description field will store up to 65,500 characters, but this will exceed the practical limits of what can be displayed on-screen.
This note is relevant only to those with a multilingual user interface:
When editing any textual parameter (description, area, engineering units...) always work in the phrase editor. Any changes made directly to the textual parameter will result in a new phrase being created rather than the existing phrase being changed.
In a unilingual application this makes no difference, but in a multilingual application it is regarded as poor practice.
Help Search Key
Used only by those who have created their own CHM-format context sensitive help files to accompany their application.
Recipe Book tag properties, I/O tab
...
File Name
The file in which the recipes will be saved. By default, the name of this file will match the Recipe Book tag you are creating. You are advised to change the name if the recipe file will be used by multiple Recipe Books.
I/O Device
Select the communication driver, through which recipe values will be sent to the PLC. (Communication Driver Tags)
Scan Rate
Controls the scan rate of all child I/O tags used by the recipe ingredients.
Start Address / Start Value
Both the Start Address and the Stop Address are optional. If not provided, VTScada cannot tell you when the batch starts or stops, but ingredient values will still be written.
If the PLC has the concept of starting a batch using the selected recipe, the Start Address and Start Value parameters should be configured. When the RecipeBook is instructed to write its selected recipe (via UI or API), the Start Value will be written to the Start Address after the set of ingredients values has been written to the PLC.
The Start Values is typically 1.
Done Address / Done Value
If the PLC can indicate that the batch is complete, the Done Address and Done Value parameters should be configured. If configured, the batch is considered to be running when the value being read from the Done Address does not match the Done Value. The batch is considered complete when the value matches the Done Value.
Be sure that the PLC will write a value to this address other than the Done Value at the start of each run.
The act of starting and of stopping each batch is recorded in both the event history and in the process I/O history for the Recipe Tag. Logging to the Historian can be switched off.
Batch Number Address
If the batch number is written to the PLC as part of each run, then you will need an I/O tag to store the value and write it to the PLC. That tag is created automatically if you provide the I/O address in this field.
Allow versioning of recipes
Select for recipes that have more than one version. For example there may be a recipe for a basic product that can be made in different ways depending on the ratio of various ingredients.
Allow Update of Running Batch
Select if you intend to allow operators to update recipe ingredient values in the PLC while a batch is running.
Recipe Book tag properties, Historian tab
Historian
If an Historian tag is selected, this tag's run-time values will be saved for use in reports and the Historical Data Viewer. Historian configuration and advanced logging options are described in the discussion of the Historian Tags.
Logging can be disabled, but the System Event Historian will always record the time, date and current operator when each batch is started.
There are consequences if you change the selected Historian tag after you have begun collecting data. If you switch to a new Historian (perhaps for organizational or load sharing purposes), the data collected for this tag by the previous Historian will become inaccessible. Historian selection and configuration should be done during the project design stage.
The following widgets are available to display information about your tags: