Help
  • Explore Community
  • Get Started
  • Ask the Community
  • How-To & Best Practices
  • Contact Support
Notifications
Login / Register
Schneider Electric
Community
Community
Notifications
close
  • Categories
  • Forums
  • Knowledge Center
  • Blogs
  • Ideas
  • Events & Webinars
Help
Help
  • Explore Community
  • Get Started
  • Ask the Community
  • How-To & Best Practices
  • Contact Support
Login / Register

Contact Support

Close

Ask our Experts

Have a question related to our products, solutions or services? Get quick support on community Forums

Email Us

For Community platform-related support, please email us

New Community Ranking System
Our Community ranking system has recently been updated. You may notice changes in user rankings and receive system messages or notifications. If you have questions about how the new ranking works, please refer to the announcement post for more details (click here).

Digital Twin

This knowledge base is addressing usage of software Experior, Machine Expert Twin and future Automation Expert Twin. These softwares are used to create smaller instances of digital twins for use in industrial automation, warehouse management, design & engineering with more..

Search in

Improve your search experience:

  • Exact phrase → Use quotes " " (e.g., "error 404")
  • Wildcard → Use * for partial words (e.g., build*, *tion)
  • AND / OR → Combine keywords (e.g., login AND error, login OR sign‑in)
  • Keep it short → Use 2–3 relevant words , not full sentences
  • Filters → Narrow results by section (Knowledge Base, Users, Products)
cancel
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Select a Country

Please select a country to continue with beta search.

  • Home
  • Schneider Electric Community
  • Knowledge Center
  • Digital Twin
  • Digital Twin
  • Label: Exp-6 PLC
Options
  • Knowledge Base Article Dashboard
  • Subscribe
  • Bookmark
  • Invite a Friend
Invite a Co-worker
Send a co-worker an invite to the portal.Just enter their email address and we'll connect them to register. After joining, they will belong to the same company.
You have entered an invalid email address. Please re-enter the email address.
This co-worker has already been invited to the Exchange portal. Please invite another co-worker.
Please enter email address
Send Invite Cancel
Invitation Sent
Your invitation was sent.Thanks for sharing Exchange with your co-worker.
Send New Invite Close
Labels
Top Labels
  • Alphabetical
  • Experior 6 85
  • Experior 7 57
  • Exp-6 Developer Guide 35
  • Exp-7 Developer 16
  • Exp-6 User Guides 16
  • Exp-7 Communication Protocols 11
  • Exp-6 Experior 11
  • Exp-6 Communication Protocols 11
  • Exp-7 Getting Started 10
  • Exp-6 Dev Environment 9
  • Exp-7 User Interface 9
  • Exp-6 Dev Assembly 7
  • Exp-7 Building Models 6
  • Exp-7 Working With Models 5
  • Exp-6 PLC 4
  • Exp-6 Getting Started 3
  • Exp-7 Importing Graphics 3
  • Exp-6 3rd Party Programs 2
  • Exp-6 Tips and Tricks 2
  • Remote Viewer 2
  • Exp-6 Model Modifications Examples 1
  • Previous
  • 1 of 3
  • Next
Top Contributors
  • Kasper.Vestrup
    Kasper.Vestrup
See More Contributors

Related Forums

  • Intelligent Devices Forum

Previous Next

Invite a Colleague

Found this content useful? Share it with a Colleague!

Invite a Colleague Invite

Label: "exp-6 plc"

View in: "Digital Twin" | Community

4 Posts | First Used: 2026-01-09

Digital Twin

Sort by:
Date
  • Date
  • Views
  • Likes
Options
  • Knowledge Base Article Dashboard
  • Subscribe
  • Bookmark
  • Invite a Friend
Label: "Exp-6 PLC" Show all articles

Siemens Fetch & Write

The following section shows how to use the Siemens Fetch and Write protocol to program and run the basic psychics model example.   Click on the Communications tab on the right of the Experior window, just below the Catalogs tab Now right click on the first line and select Siemens and then click Fetch   Next, on the second line down, do the same again only this time select Write   Now it is time to configure the two communications devices Select the Fetch device first and fill out the Properties like so   Next select the Write device and configure the Properties like so   Now to setup the I/O for the devices that require it. For the moment just the addresses will be used The I/O is laid out below along with the associated items: INPUTS 1.1 Motor Control “Switch” 1.2 Feed Load “Button” & Feed Load “Sensor” (2nd Sensor in system) 1.3 Load In System “Sensor” (1st Sensor in system) OUTPUTS 1.1 Motor Drive Control 1.2 Feeder “Feed Load” Control 1.3 Load In System “Lamp” Let’s set up the Inputs first Select the switch called Motor Control in the Control Panel In the Properties panel, below PLC Input expand the properties by clicking the arrow to the left of where it says On/Off    Enter the Byte No. as 1 and the Bit No. as 1 Now select the push button Feed Load In the Properties scroll down to PLC Input and expand the section by clicking the arrow to the left of where it says Pushed   Enter the Byte No. as 1 and the Bit No. as 2 Now select the second sensor that was added to the model earlier In the Properties scroll down to PLC Input and expand the section by clicking the arrow to the left of where it says Blocked   Enter the Byte No. as 1 and the Bit No. as 2 Now select the first sensor that was added to the model As before scroll down to PLC Input in the Properties and expand the section called Blocked by clicking on the arrow   Enter the Byte No. as 1 and the Bit No. as 3 Now, if the Inputs tab at the bottom of the screen is selected, the list of the inputs in the model can be viewed   Now to add the Outputs to the system Select the Motor by clicking any of the red arrows in the model In the Properties scroll down to where it says Operations and expand the section for Forward (Output) by clicking on the arrow to the left of it   Enter the Byte No. as 1 and the Bit No. As 1 Now select the Feeder, that is the triangle/arrow located on the first straight that was added to the model Scroll down the Properties to the section PLC Output and expand the section for Feed by clicking on the arrow to the left of it   Enter the Byte No. as 1 and the Bit No. As 2 Lastly select the Lamp in the Control Panel In the Properties scroll down to PLC Output and expand the properties under Lighting by clicking the arrow to the left of it   Enter the Byte No. as 1 and the Bit No. As 3 Now if the Outputs tab at the bottom of the screen is selected the list of the outputs in the model can be viewed  
View full article
Kasper.Vestrup Explorer
‎2026-01-09 01:46 AM

Labels:
  • Exp-6 PLC
  • Experior 6
225 Views

Allen Bradley Communication

Experior communicates with Allen Bradley PLCs through the CIP protocol. The CIP protocol works by sending tables of data between Experior and the PLC. The datatype of these tables can be BOOL, SINT, INT, DINT or BIT64.   The PLC must have corresponding tables that contain the same datatype. At the start of the scan the values of PLC input tables can be mapped over to the correct variables in the PLC program. At the end of the scan the relevant output values can be mapped to the output tables.   The advantage of this approach is that input and output values will not change mid-cycle.   Experior Setup  First right-click in the communication panel and select EtherNet/IP – CIP   Select the connection. The properties for the connection will be shown in the properties window The property of interest is the Size property. This property defines the data type of the tables for this connection. The corresponding tables in the PLC must be of the same datatype   Next create a lamp and a button in the Control Panel. Select the lamp   The properties window will either have a category called PLC Input or PLC Output (depending on if you chose the lamp or the button).   The Connection id property defines which connection is being used. Slot defines what table is being used. In this case Local_1, can be changed to anything. Address defines what entry of the table is being used (starting from 0). Bit No. defines that bit of the selected Address will be used (starting from 0). Bit No. can only be chosen for PLC input/outputs that are of the type bool.   Set a value for the Address and Bit No. Do the same for the other component in the Control Panel.   PLC setup Each table that is created in Experior has two corresponding tables in the PLC – one for inputs and one for outputs. This means that in the button and lamp example, both can use the same Address and Bit No. in the same table since they will be sent/received from two separate tables in the PLC. Experior will expect the PLC to have tables corresponding to the tables that are in Experior. The tables in the PLC must be names as follows:   Exp_datatype_Input_Experior table name Exp_datatype_Output_Experior table name     An example in Studio 5000
View full article
Kasper.Vestrup Explorer
‎2026-01-09 01:36 AM

Labels:
  • Exp-6 PLC
  • Experior 6
151 Views

Adding an OPC Server and Symbols

As an alternative to using Fetch/Write, an OPC Server can also be used to test a model. This guide shows how to use an OPC Server to program and run the basic psychics model example.   KEPServerEX from Kepware and its predefined variables will be used for this example.   The server should be running on the PC before this exercise is attempted. First, click on the Communications tab on the right of the Experior window, just below where the Catalogs are displayed Now right click on the first line and select OPC   Select the newly created OPC Server and in the Properties panel edit it like so   If something other than Kepware is being used than that will appear in the dropdown instead The symbols and associated items are listed in the table below INPUTS Boolean1 Motor Control “Switch” Boolean2 Feed Load “Button” & Feed Load “Sensor” (2nd Sensor in system) Boolean3 Load In System “Sensor” (1st Sensor in system) OUTPUTS Boolean1 Motor Drive Control Boolean2 Feeder “Feed Load” Control Boolean3 Load In System “Lamp” Select the switch called Motor Control in the Control Panel In the Properties panel, below PLC Input expand the section by clicking the arrow to the left of where it says On/Off     In the Symbol field click the drop down button The structure of the OPC Server then appears as a drop down enabling the user to scroll through and select the correct symbols For this example the Booleans under K Registers is used Expand the folder that contains the symbols Select the symbol Boolean1 to have it added to the properties of the item Now select the push button Feed Load In the Properties scroll down to PLC Input and expand the section by clicking the arrow to the left of where it says Pushed Expand the folder that contains the symbols Select the symbol Boolean2 to have it added to the properties of the item Now select the second sensor that was added to the model In the Properties scroll down to PLC Input and expand the section by clicking the arrow to the left of where it says Blocked Expand the folder that contains the symbols Select the symbol Boolean2 to have it added to the properties of the item Now select the first sensor that was added to the model In the Properties scroll down to PLC Input and expand the section by clicking the arrow to the left of where it says Blocked Expand the folder that contains the symbols Select the symbol Boolean3 to have it added to the properties of the item Select the Motor by clicking any of the red arrows in the model In the Properties scroll down to where it says Operations and expand the section for Forward (Output) by clicking on the arrow to the left of it Expand the folder that contains the symbols Select the symbol Boolean1 to have it added to the properties of the item Now select the Feeder, that is the triangle/arrow located on the first straight that was added to the model Scroll down the Properties to the section PLC Output and expand the section for Feed by clicking on the arrow to the left of it Expand the folder that contains the symbols Select the symbol Boolean2 to have it added to the properties of the item Lastly select the Lamp in the Control Panel In the Properties scroll down to PLC Output and expand the section under Lighting by clicking the arrow to the left of it Expand the folder that contains the symbols Select the symbol Boolean3 to have it added to the properties of the item When finished the Inputs and Outputs tabs should look like so      
View full article
Kasper.Vestrup Explorer
‎2026-01-09 01:31 AM

Labels:
  • Exp-6 PLC
  • Experior 6
129 Views

PLC Input and PLC Output

Experior.Core.Communication.PLC.Input and Experior.Core.Communication.PLC.Output are classes used to communicate with a PLC.   When they are added to an assembly and made available through a property in the Property window then the Experior user will be able to link the Input with an available connection and specify the address or Byte/Bit depending on the Size. By default this is DataSize.BOOL and hence corresponds with one bit.   You can obtain the corresponding connection through the Connection property and get the address/byte/bit through the properties Byte and Bit (in case the Size is not a DataSize.BOOL the starting address can be found in the Byte property and the Bit property will be “None”).   DataSize Size   The Size property returns what type of data is defined to be exchanged using Input/Output. By default this is DataSize.Bool.   Other possible values are: DataSize.BYTE this is a single byte (8bits) DataSize.WORD this is unsigned 16 bits DataSize.INT this is signed 16 bits DataSize.INT16 this is signed 16 bits DataSize.UINT16 this is unsigned 16 bits DataSize.DWORD this is unsigned 32 bits DataSize.DINT this is signed 32 bits DataSize.INT32 this is signed 32 bits DataSize.UINT32 this is unsigned 32 bits DataSize.STRING this is an array of characters DataSize.ARRAY this is an array of bytes DataSize.FLOAT this is a floating point DataSize.REAL this is a floating point DataSize.UINT64 this is unsigned 64 bits DataSize.INT64 this is signed 64 bits   When the Size property is either DataSize.STRING or DataSize.ARRAY then the length of the string/array can be specified in the Length property.   In the example below the creation of different input output objects is illustrated. In addition, the usage of events to react upon receiving of input and sending of a string messages is shown.   [Serializable] [XmlType(TypeName = "Experior.Catalog.ExampleAssemblies.ExampleInputOutputInfo")] public class ExampleInputOutputInfo : AssemblyInfo { // we add our Output and Input objects into the corresponding info object of // the assembly so that is completely saved (serialised) and restored (deserialised) // when saving and loading the model it is in. public Output outputbit; public Output outputdata; public Input inputbit; public Input inputdata; public int maxnumberofcharacters=12; } public class ExampleInputOutput : Assembly { public ExampleInputOutput(ExampleInputOutputInfo info) : base(info) { if (info.outputbit == null) { //create Output object by default the size is one bit info.outputbit = new Output(); // give it a description info.outputbit.Description = "Block/Unblock"; } //add the output to the environment so that it becomes visible in the Output window Add(info.outputbit); // send the initial value // 0 when NoNC is Normally Open // 1 whent NoNC is Normally Closed info.outputbit.Off(); if (info.outputdata == null) { info.outputdata = new Output(); info.outputdata.Description = "Send Barcode"; } info.outputdata.Size = DataSize.STRING; info.outputdata.Length = MaxNumberOfCharacters; //add the output to the environment so that it becomes visible in the Output window Add(info.outputdata); // create a Input object to receive a signal (usually from the PLC) if (info.inputbit == null) { info.inputbit = new Input(); info.inputbit.Description = "SignalA"; } info.inputbit.On += new Input.OnEvent(inputbit_On); info.inputbit.Off += new Input.OnEvent(inputbit_Off); info.inputbit.NoNcChanged += new Register.NoNcChangedEvent(inputbit_NoNcChanged); //add the input to the environment so that it becomes visible in the Input window Add(info.inputbit); // create a Input object to receive a signal (usually from the PLC) if (info.inputdata == null) { info.inputdata = new Input(); info.inputdata.Description = "LoadDestination"; } // we will receive a string of maximum MaxNumberOfCharacters info.inputdata.Size = DataSize.STRING; info.inputdata.Length = MaxNumberOfCharacters; info.inputdata.OnReceived += new Input.ReceivedEvent(inputdata_Received); //add the input to the environment so that it becomes visible in the Input window Add(info.inputdata); } void inputdata_Received(Input sender, object value) { if (value != null) { // because inputdata.Size = DataSize.STRING the value we receive will be a string so we can cast it to a string string data = (string)value; Experior.Core.Environment.Log.Debug.Write("Received " + data); Experior.Core.Environment.Log.Write("Received " + data); } Experior.Core.Environment.Diagnostic.Message("Inputdata was defined at adress " + sender.Byte ); Experior.Core.Environment.Diagnostic.Message("Inputdata has value " + sender.Value); } void inputbit_Off(Input sender) { // this will be called when we received an Off message for the input bit // this is 0 when NO (NormallyOpen) or 1 when NC (Normally Closed) Experior.Core.Environment.Diagnostic.Message("Input " + sender.ToString() + " off value " + sender.Value, System.Drawing.Color.Green, Core.Environment.DiagnosticAction.STICKY, Core.Environment.Signs.Warning); } void inputbit_On(Input sender) { // this will be called when we received an Off message for the input bit // this is 0 when NO (NormallyOpen) or 1 when NC (Normally Closed) Experior.Core.Environment.Diagnostic.Message("Input " + sender.ToString() + " on value " + sender.Value, System.Drawing.Color.Green, Core.Environment.DiagnosticAction.TEMPORARY, Core.Environment.Signs.Check); // send a message to info.outputdata OutputData.Send("Hello World!"); } void inputbit_NoNcChanged(Register sender) { Experior.Core.Environment.Diagnostic.Message("Input " + sender.ToString() + " changing NO/NC value to " + sender.NC, System.Drawing.Color.Green, Core.Environment.DiagnosticAction.ALARM, Core.Environment.Signs.None); Experior.Core.Environment.Diagnostic.Message("Input was defined for byte " + sender.Byte + " and bit " + sender.Bit); } public override void Dispose() { if (((ExampleInputOutputInfo)info).inputbit != null) { ((ExampleInputOutputInfo)info).inputbit.On -= new Input.OnEvent(inputbit_On); ((ExampleInputOutputInfo)info).inputbit.Off -= new Input.OnEvent(inputbit_Off); ((ExampleInputOutputInfo)info).inputbit.NoNcChanged -= new Register.NoNcChangedEvent(inputbit_NoNcChanged); } if (((ExampleInputOutputInfo)info).inputdata != null) { ((ExampleInputOutputInfo)info).inputdata.Received -= new Input.ReceivedEvent(inputdata_Received); } base.Dispose(); } public Input InputBit { get { return ((ExampleInputOutputInfo)info).inputbit; } set { ((ExampleInputOutputInfo)info).inputbit = value; } } public Input InputData { get { return ((ExampleInputOutputInfo)info).inputdata; } set { ((ExampleInputOutputInfo)info).inputdata = value; } } public Output OutputBit { get { return ((ExampleInputOutputInfo)info).outputbit; } set { ((ExampleInputOutputInfo)info).outputbit = value; } } public Output OutputData { get { return ((ExampleInputOutputInfo)info).outputdata; } set { ((ExampleInputOutputInfo)info).outputdata = value; } } public int MaxNumberOfCharacters { get { return ((ExampleInputOutputInfo)info).maxnumberofcharacters; } set { ((ExampleInputOutputInfo)info).maxnumberofcharacters = value; } } public override string Category { get { return "ExampleInputOutput"; } } public override System.Drawing.Image Image { get { return Common.Icons.Get("Cube"); } } }
View full article
Kasper.Vestrup Explorer
‎2026-01-09 01:29 AM

on ‎2026-01-09 01:29 AM

Labels:
  • Exp-6 PLC
  • Experior 6
164 Views
To The Top!

Forums

  • APC UPS Data Center Backup Solutions
  • EcoStruxure IT
  • EcoStruxure Geo SCADA Expert
  • Metering & Power Quality
  • Schneider Electric Wiser

Knowledge Center

Events & webinars

Ideas

Blogs

Get Started

  • Ask the Community
  • Community Guidelines
  • Community User Guide
  • How-To & Best Practice
  • Experts Leaderboard
  • Contact Support

    Ask our Experts

    Have a question related to our products, solutions or services? Get quick support on community Forums

    Email Us

    For Community platform-related support, please email us

Subscribing is a smart move!
You can subscribe to this board after you log in or create your free account.
Forum-Icon

Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.

Register today for FREE

Register Now

Already have an account? Login

Terms & Conditions Privacy Notice Change your Cookie Settings © 2026 Schneider Electric

Welcome!

Welcome to your new personalized space.

of

Explore