Citect Vs WinCC
Death match!
As a long time Citect user, I recently had the pleasure of attending a WinCC training program, the idea was that I could then train the rest of the people at our plant on this new SCADA/HMI system. For your entertainment, and possibly to help others make good choices for SCADA systems, I present my impressions of the two systems.
After initially posting this, I found it too long to be accepted by PLCs.net, so I will break it into parts.
Here is parts 0 to 3
0, Database Systems. WinCC is based on the MS SQL database. Citect is based on Dbase 3. From the point of view of running the SCADA systems, the major difference between the two databases is mainly the amount of computer resources they use. WinCC uses far more resources to do the same job. It slows the computer it runs on quite noticeably. I actually noticed the same thing when I loaded Citect Plant 2 Business on my PC, which also runs off a MS SQL database. Of the two systems, SQL should have less limitations and be more flexible. However, this does not seem to work out in practice. From a practical point of view, WinCC generally needs double the memory, a better CPU, and a far better graphics card than you need for an equivalent Citect machine.
1, PLC choices. WinCC is designed for the Siemens stable of PLCs. It can communicate with the S5, S7, TI and S7-200 range. I am also told that it can be used to communicate with other brands of PLC, such as Modicon and AB, however the drivers for these PLCs do not come with the standard package, and Siemens literature does not mention them as possibilities. For that reason, I would probably count WinCC as a Siemens only SCADA package. Citect, on the other hand, is designed to run with most PLCs on the market. To run with Siemens PLCs, you need to purchase a separate driver. This used to be NCM S7 purchased directly from Siemens, but now Citect market a product known as “PSDirect”. This product costs less than the Siemens driver, and seems to have no trouble communicating to a large number of PLCs simultaneously, un-like the Siemens NCM software which seems to need special hardware to get more than 8 PLCs on the network. This limitation of 8 PLCs also affects our plant WinCC installation when we are running the backup server while servicing the main server.
Overall, Citect tends to be better for non Siemens PLCs, with the two SCADA packages even for S7 range PLCs.
2, Communications. Setting up the communications to the drivers tends to show the age of the Citect SCADA system. WinCC is quite easy, as long as you want to communicate to a Siemens PLC. You simply navigate to the “Tag Manager”, right click to add a protocol, then navigate down the protocol to setup comms to your PLCs. The tags for the PLC are shown with in the PLC folder, all very similar to navigating in Windows explorer and using the file structure. Citect, on the other hand, probably originated its communications setup in the early days of Windows 2.0 running on DOS. You have to setup the IO server, and a range of Boards, Ports and IO devices manually. Each setup is different for each type of PLC, and you must carefully check your setup with the Citect manual to ensure you get it exactly right. A small mistake can lead to comical results, at least it is funny if you are watching and it isn’t you who is trying to get the system up and running. Luckily you only have to setup each device once on either system, and once it is working you don’t have to mess with it. Citect does have an advantage if you have to communicate with a mix of Modicon and Siemens, like we do. So the added difficulty in setting up has an advantage in being able to communicate with almost any PLC. This lack of user friendliness in setting up the Citect comms is simply due to the age of the software and that the communications setup hasn’t changed for at least 10 years, longer than WinCC has even been around.
Overall, WinCC has the advantage of user friendliness, with Citect having the advantage of flexibility.
3, Tags. The tag setups for the two systems also show the age of Citect. WinCC locates its tags within the Tag manager, with a structure similar to Windows Explorer. Each PLC is like a folder, with the tags located inside that PLC folder. Also, you can make sub folders (groups) within the PLC to make navigation and structuring easier. You cannot have two tags with the same name within the same PLC, the group system is only to make it easier to structure your project. Internal tags are handled the same way within an internal tag folder. Another nice feature of the WinCC package is the Structured Tags. These allow you to put together a set of tags in a pre-defined structure, making declaration of a large number of tags quite easy. Citect holds all of its tags in a single file, with no structure. All tags are located in the order of declaration, with all PLCs, and internal tags, mixed in together. It is possible to structure the tag layout, but this requires effort on the part of the programmer, along with a series of exports, imports and purges of the existing tag database. Again this shows the age of the Citect system. Internal tags with Citect are handled by setting up virtual PLCs, either in the memory or with in a hard disk. Disk PLCs will store tag values for long term, and can also be copied and saved for backup. I have sometimes used these as a quick and dirty way of saving setup information. WinCC does not have an equivalent.
Both WinCC and Citect have a tag cross reference facility. The Citect one is a recent addition that came out with Version 6.1. Previous to that you either had to have an old copy of Xtree gold or use the trick of deleting the tag you want to find and running a compile, then looking at the errors. One problem with the WinCC cross reference tool, however, is that it falls over on larger projects. Small projects with a few hundred tags work fine. A few thousand tags, and it will often just fail.
Both systems also allow configuration of tags in third party software such as Excel. WinCC even has an Excel macro that will import all the project information and allow changes then re-export. Unfortunately, this Macro is slow and only good for small projects. The WinCC project at my plant has 16,000 tags. I ran the Excel macro at 7 am in the morning, at 4:30 pm it was still only 30% done. I may try to run it over a weekend to see if it will actually work.
WinCC, if you link it to a Step 7 project, allows the direct linking to PLC tags.
Finally, WinCC has a design limit of 64,000 tags, whereas Citect is marketed as having no limit. Citect has been proven to run with as many as 500,000 tags in a single project. From my point of view though, I have never worked on a project for which the WinCC tag limit would be a problem.
Overall, WinCC has the nicer tag handling functions built into the software. However Citect has better functionality for importing and exporting tags and allowing third party software to do all the hard work. I personally still prefer Excel for creating large batches of tags quickly, and this is easier to do with Citect.