Type: BCS.Sym3.Equipment.IConveyor
Represents a conveyor. Can be straight, curved, freeform or skew
Properties
AccelerateStartStopRequest
- Description: Start or Stop Conveyor by using Acceleration
- Type: Boolean
- Access: Read and Write
Acceleration
- Description: Gets or sets Acceleration Rate measured in the currently defined system units
- Type: Double
- Access: Read and Write
AccelerationEnabled
- Description: Enable or Disable Acceleration
- Type: Boolean
- Access: Read and Write
AccelerationTime
- Description: Gets or sets Acceleration Time in seconds
- Type: Double
- Access: Read and Write
AccumulationEnabled
- Description: Enable or Disable Accumulation
- Type: Boolean
- Access: Read and Write
AdjustmentValue
- Description: Gets or sets the amount the speed is adjusted within speed tuning measured in the currently defined system units.
- Type: Double
- Access: Read and Write
Alias
- Description: Gets or sets
- Type: String
- Access: Read and Write
ApplyRules
- Description: Gets or sets the flag to apply induction width rules. It only supports induciton to crossbelt sorter. By default, is false (no rules applied)
- Type: Boolean
- Access: Read and Write
- Example:
This example shows you how to set the flag
// set the flag to true
Project.Equipment["Conveyor1"].ApplyRules = true;
// set the flag to false
Project.Equipment["Conveyor1"].ApplyRules = false;
Arc
- Description: Gets or sets the angle of the arc, in degrees.
- Type: Double
- Access: Read and Write
AutoTuning
- Description: Gets or sets auto tune mode
- Type: Boolean
- Access: Read and Write
BaseColor
- Description: Gets or sets the color of the base of the conveyor.
- Type: IResourceColor
- Access: Read and Write
BaseProject
- Description: Gets the project
- Type: IBaseProject
- Access: Read
BaseVisible
- Description: Gets or sets whether the base is visible or not.
- Type: Boolean
- Access: Read and Write
BeginCutOffAngle
- Description: Gets or sets the cut off angle of the beginning of the conveyor.
- Type: Double
- Access: Read and Write
BeltDirectionAngle
- Description: Gets or sets the belt direction angle in degrees. Used by Skew Conveyor types.
- Type: Double
- Access: Read and Write
BillboardText
- Description: Gets or sets the billboard text.
- Type: String
- Access: Read and Write
BoundProperties
- Description: Gets the list of bound properties
- Type: ObservableCollection`1
- Access: Read
Children
- Description: Get list of children (only for MyEquipment instances)
- Type: List`1
- Access: Read
ClearanceTime
- Description: Gets or sets - TO BE DOCUMENTED
- Type: Double
- Access: Read and Write
Color
- Description: Gets or sets the color of the equipment
- Type: IResourceColor
- Access: Read and Write
ConnectionDestination
- Description: Gets or sets the destination equipment
- Type: IBaseEquipment
- Access: Read and Write
ConnectionDestinationDistance
- Description: Gets or sets the destination distance
- Type: Double
- Access: Read and Write
ConnectionSource
- Description: Gets or sets the source equipment
- Type: IBaseEquipment
- Access: Read and Write
ConnectionSourceDistance
- Description: Gets or sets the connection source distance
- Type: Double
- Access: Read and Write
ConveyorType
- Description: Gets or sets the type of a conveyor. It can be straight, curved, freeform or skew. By default, a conveyor is ‘straight’
- Type: ConveyorType
- Access: Read and Write
- Example:
This example shows you how to set the type
// set a conveyor to be curved
Project.Equipment["Conveyor1"].ConveyorType = BCS.Sym3.Equipment.ConveyorType.Curved
// set a conveyor to be straight
Project.Equipment["Conveyor1"].ConveyorType = BCS.Sym3.Equipment.ConveyorType.Straight
CurrentSpeed
- Description: Gets or sets current conveyor running speed measured in the currently defined system units
- Type: Double
- Access: Read and Write
Deceleration
- Description: Gets or sets Deceleration Rate measured in the currently defined system units
- Type: Double
- Access: Read and Write
DecelerationTime
- Description: Gets or sets Deceleration Time in seconds
- Type: Double
- Access: Read and Write
DefaultSpeed
- Description: Gets or sets conveyor default speed measured in the currently defined system units
- Type: Double
- Access: Read and Write
Direction
- Description: Gets or sets the direction of the equipment. In degrees
- Type: Double
- Access: Read and Write
DirectionOffset
- Description: Gets or sets the direction offset. In degrees
- Type: Double
- Access: Read and Write
DisplayBackFace
- Description: Gets or sets whether to render back face
- Type: Boolean
- Access: Read and Write
DisplayTypeName
- Description: Gets the display name of the type name of the object. It returns the english display name of the type name.
- Type: String
- Access: Read
DistanceTravelled
- Description: Gets The distance travelled by the transporter measured in the currently defined system units.
- Type: UInt32
- Access: Read
EnableEncoder
- Description: Gets or sets The flag to enable calculation for distance travelled by the transporter
- Type: Boolean
- Access: Read and Write
EndCutOffAngle
- Description: Gets or sets the cut off angle of the end of the conveyor.
- Type: Double
- Access: Read and Write
FixedWindowLength
- Description: Gets or sets - TO BE DOCUMENTED
- Type: Double
- Access: Read and Write
ForwardSpeedAdjustmentPE
- Description: Gets or sets the PE sensor used for Speed Adjustment in the forward direction
- Type: IBaseEquipment
- Access: Read and Write
HeadToHead
- Description: Gets or sets - TO BE DOCUMENTED
- Type: Double
- Access: Read and Write
HeadToTail
- Description: Gets or sets - TO BE DOCUMENTED
- Type: Double
- Access: Read and Write
Height
- Description: Gets or sets the height of the conveyor, in project units.
- Type: Double
- Access: Read and Write
Id
- Description: Gets the globally unique identifier (GUID) id of the object. This unique identifier is generated once at the object creation. This id will be kept unique for the entire life of the object, event after saving/loading the project.
- Type: Guid
- Access: Read and Write
- Example:
This example shows how to get the id of an object in a string format. The following script will output a string like 'b3122ae0-dcf7-43b6-b17c-5381afaca5cb'
strid = Project.Colors.Get("myColor").Id.ToString();
print(strid)
Indexing
- Description: Gets or sets - TO BE DOCUMENTED
- Type: Boolean
- Access: Read and Write
IndexingGap
- Description: Gets or sets - TO BE DOCUMENTED
- Type: Double
- Access: Read and Write
InheritedTypeName
- Description: Get typename, if this is a MyEquipment type from standard type, returns the typename of the inherited equipment
- Type: String
- Access: Read
IsFixedWindow
- Description: Gets or sets - TO BE DOCUMENTED
- Type: Boolean
- Access: Read and Write
IsUserDefined
- Description: Indicates if this equipment is a User Defined one
- Type: Boolean
- Access: Read
KeepProductOrientation
- Description: Gets or sets whether keep the product orientation when transfer
- Type: Boolean
- Access: Read and Write
Layer
- Description: Gets or sets the layer the equipment belongs to.
- Type: ILayer
- Access: Read and Write
LayerId
- Description: Gets or sets the layer ID the equipment belongs to.
- Type: Nullable`1
- Access: Read and Write
LeftSidePanelColor
- Description: Gets or sets the color of the left side panel of the conveyor.
- Type: IResourceColor
- Access: Read and Write
LeftSidePanelVisible
- Description: Gets or sets whether the left side panel is visible or not.
- Type: Boolean
- Access: Read and Write
Length
- Description: Gets or sets the length of the conveyor.
- Type: Double
- Access: Read and Write
LineColor
- Description: Gets or sets the color of the central line(s) of the conveyor.
- Type: IResourceColor
- Access: Read and Write
LineVisible
- Description: Gets or sets whether the central line(s) is visible or not.
- Type: Boolean
- Access: Read and Write
LineWidth
- Description: Gets or sets the total width of the central line(s).
- Type: Double
- Access: Read and Write
LogicalProcessor
- Description: Gets or sets the logical processor
- Type: ILogicalProcessor
- Access: Read and Write
MaxDistanceTravelled
- Description: Gets or sets the Max value for distance travelled by the transporter in the currently defined system units.
- Type: UInt32
- Access: Read and Write
MediumMin
- Description: Gets or sets the minimum medium product width for induction. It only supports induciton to crossbelt sorter. By default, is 0.561m
- Type: Double
- Access: Read and Write
- Example:
This example shows you how to set the Minimum Width of medium product
// set the minimum width for medium product
Project.Equipment["Conveyor1"].MediumMin = 0.21;
Menu
- Description: Gets or sets the associated menu
- Type: IResourceMenu
- Access: Read and Write
Metering
- Description: Gets or sets - TO BE DOCUMENTED
- Type: Boolean
- Access: Read and Write
Name
- Description: Gets or sets the name of the object. All objects of the same type have a unique name.
- Type: String
- Access: Read and Write
- Example:
This example shows how to get and set the name of an object.
// get the color name
colorname = Project.Colors.Get("myColor").Name;
// set the color name
Project.Colors.Get("myColor").Name = "myNewName";
NameSuffix
- Description: The project explorer will display this after the Name of this object.
- Type: String
- Access: Read
OperationMode
-
Description: Gets or sets the operation mode. Can be one of the following string value:
"ScreeningStationController" "CascadeController" "MergeSourceController" use this one for "Window Reservation" mode "InductorController" "ExternalController"
-
Type: String
-
Access: Read and Write
Parent
- Description: Gets
- Type: IBaseEquipment
- Access: Read and Write
PESensors
- Description: Gets the list of PE sensors
- Type: IList`1
- Access: Read
PESensorTrackingExclusions
- Description: Contains a list of all the PEs on the conveyor and a flag to indicate if they should be excluded from tracking. This is required for virtual PEs that are only present to aid in simulation logic. i.e. Diverters require a PE to indicate which product to divert when they are activated
- Type: ExclusionNodeList
- Access: Read
Priority
- Description: Gets or sets - TO BE DOCUMENTED
- Type: UInt16
- Access: Read and Write
ProductCount
- Description: Gets the number of product on conveyor
- Type: Int32
- Access: Read
Radius
- Description: Gets or sets the radius for a curved conveyor’s arc.
- Type: Double
- Access: Read and Write
Reversed
- Description: Gets or sets whether conveyor is reversed
- Type: Boolean
- Access: Read and Write
ReverseSpeedAdjustmentPE
- Description: Gets or sets the PE sensor used for Speed Adjustment in the reverse direction
- Type: IBaseEquipment
- Access: Read and Write
RightSidePanelColor
- Description: Gets or sets the right side panel color of the conveyor.
- Type: IResourceColor
- Access: Read and Write
RightSidePanelVisible
- Description: Gets or sets whether the right side panel is visible or not.
- Type: Boolean
- Access: Read and Write
Roll
- Description: Gets or sets the roll of the equipment. In degrees
- Type: Double
- Access: Read and Write
RollOffset
- Description: Gets or sets the roll offset. In degrees.
- Type: Double
- Access: Read and Write
Running
- Description: Gets or sets whether conveyor is running or not
- Type: Boolean
- Access: Read and Write
Sections
- Description: Gets or sets conveyor sections
- Type: ObservableCollection`1
- Access: Read and Write
Selectable
- Description: Gets or sets whether equipment is selectable.
- Type: Boolean
- Access: Read and Write
ShowArrows
- Description: Gets or sets the visibility of the arrows.
- Type: Boolean
- Access: Read and Write
SidePanelHeight
- Description: Gets or sets the height of the side panels in project units.
- Type: Double
- Access: Read and Write
SidePanelWidth
- Description: Gets or sets the width of the side panels in project units.
- Type: Double
- Access: Read and Write
SmallMin
- Description: Gets or sets the minimum small product width for induction. It only supports induciton to crossbelt sorter. By default, is 0.1m
- Type: Double
- Access: Read and Write
- Example:
This example shows you how to set the Minimum Width of small product
// set the minimum width for small product
Project.Equipment["Conveyor1"].SmallMin = 0.1;
SpiralHeight
- Description: Gets or sets the height for a spiral conveyor’s arc.
- Type: Double
- Access: Read and Write
StartDelay
- Description: Gets or sets - TO BE DOCUMENTED
- Type: UInt16
- Access: Read and Write
StartStopRequest
- Description: Gets or sets the Start Stop request flag of the conveyor
- Type: Boolean
- Access: Read and Write
StartStopStatus
- Description: Gets Start Stop Status Text of the conveyor
- Type: String
- Access: Read
SubSystem
- Description: Gets or sets the Sub System
- Type: ISubSystem
- Access: Read and Write
SurfaceColor
- Description: Gets or sets the color of the conveyor surface.
- Type: IResourceColor
- Access: Read and Write
SurfaceVisible
- Description: Gets or sets whether the surface is visible or not.
- Type: Boolean
- Access: Read and Write
TargetSpeed
- Description: Gets or sets conveyor target speed measured in the currently defined system units if negative, target speed will have no effect if positive or 0, the conveyor will accelerate/decelerate till it reaches target speed
- Type: Double
- Access: Read and Write
Template
- Description: Gets or sets the template
- Type: ITemplate
- Access: Read and Write
Tilt
- Description: Gets or sets the tilt of the equipment. In degrees
- Type: Double
- Access: Read and Write
TiltOffset
- Description: Gets or sets the tilt offset. In degrees
- Type: Double
- Access: Read and Write
TrackingMode
-
Description: Gets/Sets the tracking mode for the conveyor
cc1.TrackingMode = BCS.Sym3.Equipment.TrackingMode.Presence;
-
Type: TrackingMode
-
Access: Read and Write
TrackingWindow
- Description: Gets or sets the size of the tracking window (metres)
- Type: Double
- Access: Read and Write
TuningSampleCount
- Description: Gets or sets the sample rate used for speed tuning
- Type: Int32
- Access: Read and Write
TypeName
- Description: Gets the typename of the object. A type name doesn’t contain any space characters.
- Type: String
- Access: Read
UseAccelerationTime
- Description: Gets/Sets a boolean to use time as acceleration/deceleration If this boolean is true, AccelerationTime and DecelerationTime values will be used If this boolean is false, Acceleration and Deceleration values will be used
- Type: Boolean
- Access: Read and Write
UseHeadToHead
- Description: Gets or sets - TO BE DOCUMENTED
- Type: Boolean
- Access: Read and Write
UseHeadToTail
- Description: Gets or sets - TO BE DOCUMENTED
- Type: Boolean
- Access: Read and Write
UserPropertyInstances
- Description: Gets a list of all the instances of user properties.
- Type: ObservableCollection`1
- Access: Read
Visible
- Description: Gets or sets the visibility of the equipment
- Type: Boolean
- Access: Read and Write
Width
- Description: Gets or sets the width of the conveyor, in project units.
- Type: Double
- Access: Read and Write
X
- Description: Gets or sets the X position of the equipment
- Type: Double
- Access: Read and Write
XOffset
- Description: Gets or sets the offset in the X direction
- Type: Double
- Access: Read and Write
Y
- Description: Gets or sets the Y position of the equipment
- Type: Double
- Access: Read and Write
YOffset
- Description: Gets or sets the offset in the Y direction
- Type: Double
- Access: Read and Write
Z
- Description: Gets or sets the Z position of the equipment
- Type: Double
- Access: Read and Write
ZOffset
- Description: Gets or sets the offset in the Z direction
- Type: Double
- Access: Read and Write
Methods
ActionCreateHandlerGroup
Creates a handler group
ActionCreateOperatorGroup
Creates an operator group
ActionCreateProductSchedule
Creates a product schedule
ActionGenerateProduct
Generate a product
ActionGenerateProductRandom
Generate a product. Product size will be: Length : between 0.6m and 0.8m Width : between 0.5m and 0.7m Height : between 0.2m and 0.4m
ActionStart
Starts the conveyor
ActionStop
Stops the conveyor
AddSection(System.Double,System.Double,System.Double,System.Double)
Create and add a new section to the Sections collection length of the section measured in the currently defined system units.arc of the section in degreedirection of the section in degreetilt of the section in degree
ForceRename(System.String,System.Boolean)
Rename the object.
- Parameters:
- value: The new name.
- fireChangingEvent: If false, no change event will fire. In
particular, this disables the check for duplicate names, which can be
costly as it has to check every equipment. The caller is responsible
for ensuring that
value
is a unique name, or Bad Things will happen.
FromXmlString(BCS.IToolXmlToObjectHelper)
Init object from IToolXmlToObjectHelper. All properties found in the RootElement of IToolXmlToObjectHelper will be set with the value in the rootElement
- Parameters:
- xmlHelperObj: xmlHelperObj IToolXmlToObjectHelper
FromXmlString(System.String)
Init object from xml. All properties found in the xml will be set with the value in the xml file
- Parameters:
- xmlText: Xml string
FromXmlString(System.Xml.Linq.XElement)
Init object from root element. All properties found in the XElement will be set with the value in the XElement
- Parameters:
- objXml: objXml XElement
GetBoundProperty(System.String)
Gets a bound property by property name
- Parameters:
- propertyName: Property name
- Returns:
- Returns bound property. Null if not found
- Example:
This example shows you how to get a binding on a property if this one exists
// get control:
var td = Project.Windows["Window1"]["Text Display1"]
// bind property 'Value'
var boundProperty = td.GetBoundProperty("Value")
GetCopyPasteXml
Converts the object into an XML string including overrides for for copy/paste functionality
- Returns:
- the string that contains xml version of the object for copy/paste
GetPropertyValues
Get all properties and values that are different from default values
GetUserPropertyInstance(System.String)
Gets the user property instance of the specified name
- Parameters:
- userPropertyName: The user property name.
- Returns:
- Returns the user property instance object. If not found, the methods returns null.
- Example:
This example shows how to set the value of a user property by using this method
cc1 = Project.Equipment.Get("CC1");
// get the value of a user property using the method
userPropertyInstance = cc1.GetUserPropertyInstance("UserProperty1");
if(userPropertyInstance != null) {
userPropertyInstance.Value = 3;
}
GetUserPropertyValue(System.String)
Gets the value of a user property. A better way to get the value of a user property is to use the indexer operator [], see example. Instead of using the method ‘GetUserPropertyInstance’ and then access the ‘Value’ property of the returned value, this method simplifies the way we get the value of a user property.
- Parameters:
- userPropertyName: The name of the user property to set.
- Returns:
- Returns null if user property is not found. Otherwise returns the value of the user property.
- Example:
This example shows how to get the value of a user property using this method and also by using the indexer
cc1 = Project.Equipment.Get("CC1");
// get the value of a user property using the method
val = cc1.GetUserPropertyValue("UserProperty1");
// get the value of a user property using the indexer operator
val = cc1["UserProperty1"];
IsUserProperty(System.String)
Indicates if the object contains a user property with the name you specify
- Parameters:
- userPropertyName: user property name
- Returns:
- Returns true if the object contains a user property with the name you specified in parameter.
NewBoundProperty(System.String)
Creates a new bound property
- Parameters:
- propertyName: Name of property to bind
- Returns:
- If the property (propertyName) doesn’t exist for this object type, no bound property will be created so this method will return null.
- Example:
This example shows you how to bind a property
// get control:
var td = Project.Windows["Window1"]["Text Display1"]
// bind property 'Value'
var boundProperty = td.NewBoundProperty("Value")
// set expression:
boundProperty.Expression = "%caller.Name%_Running";
// create a mapping:
boundProperty.AddMapping("1", "It is true");
boundProperty.AddMapping("0", "It is false");
RemoveBoundProperty(System.String)
Removes a binding
- Parameters:
- propertyName:
- Example:
This example shows you how to remove a binding on a property
// get control:
var td = Project.Windows["Window1"]["Text Display1"]
// remove data binding on property 'Value'
td.RemoveBoundProperty("Value")
ReplaceEquipmentSpecificMarkup(System.String,System.String)
Gets a list of expressions that have had any markup replaced by the equipment specific tag identifier
- Parameters:
- expression: The expression that needs to be parsed for markup
- property: property name associated with the expression
SetUserPropertyValue(System.String,System.Object)
Sets the value of a user property. A better way to set the value of a user property is to use the indexer operator [], see example. Instead of using the method ‘GetUserPropertyInstance’ and then access the ‘Value’ property of the returned value, this method simplifies the way we set the value of a user property.
- Parameters:
- userPropertyName: The name of the user property to set.
- value: If the user property is not found, this methods does nothing.
- Example:
This example shows how to set the value of a user property using this method and also by using the indexer
cc1 = Project.Equipment.Get("CC1");
// set the value of a user property using the method
cc1.SetUserPropertyValue("UserProperty1", 3);
// set the value of a user property using the indexer operator
cc1["UserProperty1"] = 3;
ToCSVString(System.Char)
Returns the object in a CSV string.
- Returns:
- A string that contains properties of the object in a CSV format.
ToXmlString
Converts the object in an xml string
- Returns:
- the string that contains xml version of the object
Examples:
//******************************************************************************
// HOW TO : Conveyor
//
//******************************************************************************
//------------------------------------------------------------------------------
// How to create equipment
//------------------------------------------------------------------------------
// create a new conveyor
var newEntity = Project.Equipment.NewConveyor()
//------------------------------------------------------------------------------
// How to access equipment
//------------------------------------------------------------------------------
// get by name using method 'Get'
var entity1 = Project.Equipment.Get("CC1")
print("Get entity by name: " + entity1.Name)
// get by name using operator []
var entity2 = Project.Equipment["CC1"]
print("Get entity by name: " + entity2.Name)
// get by index:
var entity3 = Project.Equipment[0]
print("Get entity by index: " + entity3.Name)
// get all conveyors
var entities = Project.Equipment.Conveyors;
if (entities != null) { print(entities.Count); }
//------------------------------------------------------------------------------
// How to loop
//------------------------------------------------------------------------------
// loop through all equipment types:
var entities = Project.Equipment.Objects;
for (var i = 0; i < entities.Count; i++) {
print(entities[i].Name);
}
// loop through all conveyors
var entities = Project.Equipment.Conveyors;
if (entities != null) {
for (var i = 0; i < entities.Count; i++) {
print(entities[i].Name);
}
}
//------------------------------------------------------------------------------
// How to delete
//------------------------------------------------------------------------------
// remove entity
var equipment = Project.Equipment.Get("CC1")
Project.Equipment.Remove(equipment)
//------------------------------------------------------------------------------
// How to edit common properties
//------------------------------------------------------------------------------
equipment.Alias = "the alias";
equipment.X = 1;
equipment.Y = 2;
equipment.Z = 3;
equipment.Direction = 4;
equipment.Tilt = 5;
equipment.Roll = 6;
equipment.Selectable = false;
equipment.Layer = Project.Layers.Get("Layer1");
equipment.DisplayBackFace = false;
equipment.XOffset = 1;
equipment.YOffset = 1;
equipment.ZOffset = 1;
equipment.DirectionOffset = 1;
equipment.TiltOffset = 1;
equipment.RollOffset = 1;
// get parent name
print(equipment.Parent);
// set operation mode:
equipment.OperationMode = "ScreeningStationController";
equipment.OperationMode = "CascadeController";
equipment.OperationMode = "MergeSourceController";
equipment.OperationMode = "InductorController";
equipment.OperationMode = "ExternalController";
//------------------------------------------------------------------------------
// How to edit conveyor properties
//------------------------------------------------------------------------------
var conveyor = Project.Equipment.Get("MyEquipment")
// set properties
conveyor.ConnectionSource = Project.Equipment.Get("TTS1");
conveyor.ConnectionSourceDistance = 0.1;
conveyor.ConnectionDestination = Project.Equipment.Get("CC11");
conveyor.ConnectionDestinationDistance = 0.2;
conveyor.Height = 1;
conveyor.Width = 1;
conveyor.SidePanelHeight = 1;
conveyor.SidePanelWidth = 1;
// conveyor type, can be one of the following:
conveyor.ConveyorType = BCS.Sym3.Equipment.ConveyorType.Straight;
conveyor.ConveyorType = BCS.Sym3.Equipment.ConveyorType.Curved;
conveyor.Length = 1;
conveyor.Radius = 1;
conveyor.Arc = 1;
conveyor.BeginCutOffAngle = 1;
conveyor.EndCutOffAngle = 1;
conveyor.Reversed = true;
conveyor.DefaultSpeed = 1;
conveyor.CurrentSpeed = 1;
conveyor.Running = true;
var count = conveyor.ProductCount;
conveyor.SurfaceColor = Project.Colors.Get("Sym3 Red");
conveyor.SurfaceVisible = true;
conveyor.BaseColor = Project.Colors.Get("Sym3 Red");
conveyor.BaseVisible = true;
conveyor.LeftSidePanelColor = Project.Colors.Get("Sym3 Red");
conveyor.LeftSidePanelVisible = true;
conveyor.RightSidePanelColor = Project.Colors.Get("Sym3 Red");
conveyor.RightSidePanelVisible = true;
conveyor.LineColor = Project.Colors.Get("Sym3 Red");
conveyor.LineVisible = true;
conveyor.LineWidth = 2;
conveyor.ShowArrows = true;
conveyor.ClearanceTime = 1;
conveyor.Indexing = true;
conveyor.IndexingGap = 1;
conveyor.Metering = true;
conveyor.StartDelay = 1;
conveyor.UseHeadToHead = true;
conveyor.HeadToHead = 1;
conveyor.UseHeadToTail = 1;
conveyor.HeadToTail = 1;
conveyor.Priority = 1;
conveyor.IsFixedWindow = true;
conveyor.FixedWindowLength = 1;
// call actions
conveyor.ActionStart();
conveyor.ActionStop();
conveyor.ActionGenerateProduct();
conveyor.ActionCreateProductSchedule();
conveyor.ActionCreateHandlerGroup();
conveyor.ActionCreateOperatorGroup();