Type: BCS.Sym3.IDeviceIO

A Device IO object

        			io = Project.DeviceIOs.New();
        			io.EquipmentName = "Conveyor1";
        			io.EquipmentType = "Conveyor";
        			io.StartBit = 2;
        			io.Size = 2;
        			io.ScriptHandler = "HandleConveyorInput";
        			io.Identifier = "Running";
        			io.DeviceIOType = BCS.Sym3.DeviceIOType.Input;
        			io.DeviceName = "Device1";
        			io.MessageType = 101;
        			io.Comment = "This is a comment";
        			io.InvertedLogic = true;

Remarks: Available in Integrator and Operator

Properties


BaseProject

  • Description: Gets the project
  • Type: IBaseProject
  • Access: Read

Comment

  • Description: Gets/Sets a comment
  • Type: String
  • Access: Read and Write

Device

  • Description: Gets/Sets Device
  • Type: IDevice
  • Access: Read and Write

DeviceIOType

  • Description: Gets/Sets IO Type
  • Type: DeviceIOType
  • Access: Read and Write

DeviceName

  • Description: Gets/Sets Device name
  • Type: String
  • 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

ElementSize

  • Description: Get/Sets the size of the data element in the Device/PLC i.e. BYTE = 1, 16 bit WORD = 2, 32 bit DWORD = 4
  • Type: Int32
  • Access: Read and Write

Equipment

  • Description: Gets/Sets Equipment
  • Type: IBaseEquipment
  • Access: Read and Write

EquipmentID

  • Description: Gets/Sets Equipment id
  • Type: Int64
  • Access: Read

EquipmentName

  • Description: Gets/Sets Equipment name
  • Type: String
  • Access: Read and Write

EquipmentType

  • Description: Gets/Sets Equipment type
  • Type: String
  • 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)
            

Identifier

  • Description: Gets/Sets Identifier/Property
  • Type: String
  • Access: Read and Write

InternalName

  • Description: Gets internal name
  • Type: String
  • Access: Read

InvertedLogic

  • Description: Gets/Sets a boolean to invert the logic. Example for a EStop (false = ON)
  • Type: Boolean
  • Access: Read and Write

MessageType

  • Description: Gets/Sets Message Type
  • Type: Int32
  • 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

Overridden

  • Description: Gets or sets a value indicating whether this is override.
  • Type: Boolean
  • Access: Read and Write

PLCDevice

  • Description: This property is obsolete. Please use ‘Device’ instead
  • Type: IProgammableLogicController
  • Access: Read and Write

ScriptHandler

  • Description: Gets/Sets Script handler
  • Type: String
  • Access: Read and Write

Size

  • Description: Gets/Sets Size
  • Type: Int32
  • Access: Read and Write

StartBit

  • Description: Gets/Sets start bit
  • 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

UpdateRate

  • Description: Gets/Sets Update rate
  • Type: UInt32
  • Access: Read and Write

UserPropertyInstances

  • Description: Gets a list of all the instances of user properties.
  • Type: ObservableCollection`1
  • Access: Read

Methods


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

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

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.

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