Call us! 512-349-0334 or (877) INDUSOFT

Q&A Session from the InduSoft Web Studio Driver Configuration Demo

scada software

Q: ­When we communicate 5 or less than energy meter using modbus, current values shows right scanning rate, but when we communicate more than 5 energy meter update, the rate goes slowly. How can we overcome the slow scan rate? ­

A: When communicating with the energy meters, you are talking about a serial communication. The baud rate for these types of devices is usually not too high, which means that you may take around 100-150 ms to complete a single Transmiting/Receiving of data between IWS/CEView and the energy meter. When you have 5 of those, if we establish that each message exchanged with each of them take in average 120 ms, and remembering that serial communications synchronous and sequential, which means that we will communicate with each one of the energy meters at a time, you are talking about 120ms x 5 Energy Meters = 600 ms to complete a scan of the entire network of Energy Meters. Since the Main Driver Sheet has the scan rate hard-coded in 600 ms, this is time that makes it comfortable for the driver to scan the entire network. If you add more energy meters, it will take longer than 600 ms to communicate with all of them, and it will not be possible to keep the sequence and the scan rate of 600 ms.


Q: ­What is the best driver for Advantech ADAM 6000 units?­

A: The ADAM 6000 family speak Modbus over TCP/IP. Thus, our MOTCP driver is the recommended one to communicate with this family of devices.


Q: ­Does the order of data type in the main driver sheet matter?  (dints first, then bool, then real)­

A: No. In the Main Driver Sheet, the addressing sort is done in background. The user does not need to care about it; at least, not for communication purposes. You may want to organize the Main Driver Sheet for configuration and maintenance purposes.

Q: I’ve seen data freezing when doing multi-drop on RS485 when one of the controllers are not working properly. How do I prevent that?

A: When you have a serial communication, like in the case of the RS-485, the communication happens sequentially and synchronously. This means that we communicate with 1 controller at a time. Once we are completely done with that controller, we go to the next one, and so forth, until we cover all the controllers and go back to the first one.

Each controller may have several communication groups, depending on how the driver sheets are configured. The problem is that if you have 1 controller that is not responding, the default timeout time is 1000ms for each communication group. If you have, let’s say, 4 different groups, the communication may stay at least 4 seconds on that controller before moving forward to the next one. One solution is to disable to communications with a controller if it is down using the “Disable” field in the Main Driver Sheet or controlling the Read Trigger/Enable read when Idle fields in the Standard Driver Sheet. Then, you could either create a button on the screen to re-enable the communication with that specific device or create a script/scheduler to do that every couple of minutes or so.


Q: How do you address AB CONTROL SLC OR MICRO directly to the memory addresses

A: We have 4 communication drivers suitable for these 2 PLCs:

ABKE: DF1 Serial communication. It works with both SLC and Micro PLCs

ABTCP: DF1 over Ethernet. It works with SLC5/05 since it has a built-in Ethernet port

ABENI: used to communicate with the 1761-NET-ENI module, which is a converter from Serial DF1 to Ethernet/IP. This is usually the Ethernet solution for Micrologix 1000, 1200 and 1500.

ABCIP: Ethernet/IP for MicroLogix 1100 and 1400

In all these drivers, you configure the driver worksheets associating the InduSoft Web Studio tags to the PLC actual address, the same way as you configure on the PLC, i.e., N7:0, T4:10.ACC, C5:7.PRE, B3/99, and so forth.

Q: What are the key points to check when using serial to ethernet gateways, like Moxa?

A: When configuring the driver to use Serial Encapsulation, you can have a Tag to receive the status of that encapsulation. Use that tag to get the error codes if there are any. If the communication is failing, try to connect directly to the PLC using serial communication if possible, in order to confirm that the communication parameters are properly set. Secondly, sometimes I try to connect the Serial/Ethernet converter to another type of serial device to see if the converter is also properly configured. Several times, I have encounterd issues when the PLC communication requires RTS/CTS communication and the converter does not support that. We should always check with the manufacturer the limitations of each device.


Q: How do you set tags for IP addresses?

A: You can configure a tag name between curly brackets in the Station field of your driver sheets (both Main Driver Sheet and Standard Driver Sheet). For example, {PLCIPAddress}


Q: For control logix, is there an advantage to using the native Indusoft ControlLogix driver versus using Indusoft OPC to connect to the PLC through RSLinx?

A: The main advantage is that you eliminate one piece of software from your architecture, and you would not need to pay for RSLinx OPC Server license. We go directly to the PLC using the ABCIP driver. If you go through RSLinx, you will communicate though OPC to the RSLinx and then to the PLC.

Q: Is the plc max connections stated in InduSoft’s driver help file?

A: Yes. But the MAX connections are usually defined by the PLC. There are devices that support only 1 or 2 simultaneous connections. Others, support up to 128. So, it is always a limitation of the controller.


Q: Is there a tag editor to see and edit the tags?

A: Yes. Under the “Global” tab, the first leaf on the top of the Tree View is the “Project Tags”, where you can open the “Datasheet View” and work on your tags


Q: With the Mudbus TCP (MOTCP) driver with the secondary driver sheets, when you use the Write Trigger of “Second” are all tags in this driver sheet written to or just the tags that have had a value change in the InduSoft tag database?  – eg if you press a button in your InduSoft program

A: If you use “Second” on the “Write Trigger”, we will write the entire sheet every second. It is not recommended unless you are really sure that this is what you want. If you want to write a tag when it changes, use the “Enable Write On Tag Change” field.

Q: We use kepware in our site to talk with intouch . How you go about communicating between these two? What about Intouch suitelink

A: I am not sure I am in a position to discuss InTouch, since I am not a specialist on it. But basically, communication-wise, it will be OPC Communications, and you will need to have 2 licenses: 1 for InTouch runtime and 1 for KepServer. With InduSoft, you would probably need only the Runtime license since we have the communication drivers as part of the product.

SuiteLink works only with InTouch. It is like a dedicated communication driver. I do not have data to compare the performances, but I believe that would be quite similar. The advantage of our own communication drivers is that they are part of the core of the product while SuiteLink is a separated piece of software communicating with the main core.


Q: Is there a limitation on how many different drivers you can talk to at once?

A: The limitation will be on the license. Depending on the target system that you are licensed for, you are allowed to have a certain number of different drivers, e.g., for 150 tags, you can have 1 communication driver. For the 1500 tags, 3 drivers and, for 512k and up, an unlimited number of drivers.


Q: Is it faster if we use OPC and Drivers together ?

A: it would depend a lot on the OPC Server and the driver that you are referring to. Some drivers are faster than others, and some OPCs are slower than others.

Q: What is the maximum number of tags in the Main driver sheet of the MOTCP driver?

A: Currently, the Main Driver Sheet supports up to 16000 rows


Q: ­Do we have the same TX/RX Byte limitation system for M340 and S71200 PLC ?­

A: Yes. Every protocol has a limitation on the number of bytes a message can handle.


Q: ­How can you configure drivers that have to use special cards in the pc?­

A: it depends on the card. For instance, to the DH+ network, you have to install the SST card, configure it using SST’s tools and then you can configure the driver as any other AB driver, placing the I/O address the same way you do on the PLC, like N7:0, T4:0.ACC, and so forth.

For our HILDP and HDPS driver, which speaks Profibus DP Master/Slave through the Hilscher card, you configure the card using Syscon software from Hilscher and then it is seen by the other Profibus nodes as I/Os. So, you cannot reach Siemens native addresses like Timers and Counters. You are simply an I/O module that you can write to the outputs and read the inputs.


Q: ­What are the differences in the OPC drivers?­

A: Actually, the OPC is a completely separated task. If you are talking about our OPC Client module and you have an OPC Server, the communication will happen using the technology called DCOM where Client calls functions from the Server and vice-versa.

On the proprietary communication drivers, we prepare a buffer and send them to the PLC, and then analyze the response, without having any other type of software or technology in between.


Q: ­Could you please tell us how to configure TOSHIBA driver PROT1?

A: Actually, all you need to do is take a look in our PROT1.PDF file where you will find all the information you need to configure the communication between InduSoft products and the PROSEC T1 Toshiba PLCs.


Q: When is the Tag Spy agent able to read array of Struct which not has started index 0. In TwinCAT, we can create an array with a self created struct, but it is only readable in IWS 7.0 Sp1 if the array starts from [0..end point] not if it is created as [2..endpoint]?

A: Using the TWCAT driver, you can associate InduSoft tags with any TwinCAT variable. For arrays, you still need to associate each array position to an InduSoft tag. If you are using InduSoft Array Tags, this does not mean you do not have to associate the Tags. For example, you can associate an InduSoft tag called “Pressure[1]” with a TwinCAT array variable “PressureTank[2]”.

Only on the specific Header for the TWCAT driver, where you can associate tags to a specific TwinCAT array variable, you would have to have that array variable starting in 0 [0..end]

For the new feature called Tag Integration, you cannot import TwinCAT array variables if they do not start with 0.


Q: How do we know which drivers use 3rd party APIs? Is it mentioned on the driver info?

A: Yes. Whenever a driver needs a 3rd-Party API, it will be described on the driver’s documentation (PDF file)


Q: When I use an array in the communication mapping table, do I have to list all the members of the array, like A[1] A[2]….?

A: Yes. You have to associate each array position on the controller to an InduSoft Tag, even if that InduSoft tag is also an array


Q: Is there any downside to selecting multiple communication channels on the Ethernet driviers ?  We usually use a dedicated Ethernet channel between PLC and HMI – do I still gain speed in this case by using multiple requests?

A: There is no downside on using multiple connections on the Ethernet drivers. The only limitation would be on the Hardware size. This feature uses more RAM memory. On WinCE devices, where the RAM memory is considerably smaller than on most PCs, you should be careful when using multiple connections.

The only other point to be considered is that the Controllers may have a limited number of possible connections. If the Driver consumes all of them, you may not be able to go online with a Programming Software.

Q: What happens if i choose Screen scan, but I have trending or dataloggin on that variable? Is the trend or datalog updated if the screen with that variable on it is not open?

A: The Tag will be not be updated unless it is being displayed in a screen. Alarm and Trend tags should always have its scan configured as “Always”


Q: Is it possible to access subroutine level tags in the driver sheet?

A: Yes. Depending on the driver, you have different syntaxes to access these variables. On ABCIP (ControlLogix), you would start the I/O Address field with the type, followed by the word “Program”, and then the program name, dot, variable name. For instance, DINT:PROGRAM:MainProgram.Timer1.ACC

On TwinCAT and CodeSys, you just start the I/O Address with the POU name, followed by a dot and the variable name. For instance, Main.Timer[1].StartTime


Q: How do you count connections? A driver takes 2?

A: The Ethernet driver, by default, takes 1 connection unless you manually configure the advanced settings to use more than one.

Q: What priority is the read and write in the MDS, tags sequence?

A: When using the Main Driver Sheet, the driver will create the reading groups by itself in memory, depending on the tag types configured in the worksheet. There is not a specific criteria on which group will come first on the read queue. When a Write command is requested, the driver finishes reading whatever group it is reading and, before starting reading the next group, it will write to the PLC, and then start reading again.


Q: What is the maximum number of tags that can be defined in a driver sheet?

A: On the Main Driver Sheet, you can have up to 16000 tags. On a Standard Driver Sheet, 4096

Q: How do we (Users) know when Indusoft has updated a driver?

A: We create a post in our Web Site blog and social media channels, such as Twitter, Facebook, LinkedIn and our mailing list. Just subscribe to them, or check in now and again.


Q: 1 driver can only handle 8182 tags? If there are more, have to be another driver?

A: The driver can handle way more tags than this. On the Main Driver Sheet only, you can have 16000 tags and, on each Standard Driver Sheet (SDS), you can have 4096. Since you can have many SDS you can have more than 400,000 tags in the driver sheets


Q: What driver I can to use to communicate with AB Micrologix1000 via RS232 port?

A: That would be the ABKE driver, in the SLC500 mode.


Q: Communication with unity? Modbus Ethernet?

A: You can use our MOTCP driver.


Q: How do you open the viewer for the virtual groups?

A: You have 2 ways to see the virtual groups that are being created by the Main Driver Sheets.

  1. Right-click on the driver icon on the System tray bar and you will see a popup menu with the option: “Virtual Groups”. Click on it, and you will have an idea of how many groups are being created and some of the tags, headers, etc…
  2. If you want to know exactly what each Virtual Group contains, you can edit the project’s .APP file using a text editor. Find the section called [Options], and add the entry DumpDriverSheets=1

Once you do that, run the driver, switch back to the development environment, go to the “Open” icon in the “Quick access toolbar”, on the file type select “Driver files (*.drv)”, and go to the WebDump folder of your project. You will be able to open these worksheets which are a dump of the Virtual Read Groups


Q: What does the scope refer to when you make the tag?

A: This is related to Thin Clients. “Server” scope means that the tag will have the same value on both the local application and on remote Thin Clients such as the Secure Viewer and Web Thin Clients. “Local” scope will place its own value on each Client instance, for instance, Loop counters, selections, and so forth.


Q: How do you configure the standard driver sheet to run as fast as possible?

A: The fastest a Standard Driver Sheet will read will happen when you configure the “Enable Read When Idle” field to a value greater than 0. Then, it is going to be up to the protocol to perform its peak performance. Some drivers can reach update rates for up to 20 ms, others cannot be faster than 100 ms.


Q: TagIntegration to Beckhoff (to my knowledge) – is running via Main Driver sheet. Does that mean Tag Integration is limited to 4096 tags?

A: No. The actual limit is 16000 Tags in the Main Driver Sheet.


Q: Would it be better to make one driver sheet that writes and ones that reads? So, two separate standard driver sheets?

A: It really depends on your project. I, personally, like to separate at least some of these tags. But it is important that the tags that will be written to be read as well, so you can be sure that they are in sync with the PLC values.

Leave a Reply