Citect Vs WinCC - Long

Doug_Adam

Member
Join Date
Sep 2002
Location
Perth
Posts
948
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.
 
Parts 4, 5 and 6

4 Graphics. The big difference between the two graphics packages are that WinCC uses vector graphics, and Citect uses bitmaps. This actually turns out to not make that much of a practical difference except in resource usage. The real differences lie in implementations rather than the underlying structure.

Firstly, WinCC is supposed to have a real time zoom function that can be used to zoom into areas of the plant. This function was not covered in my training, and all projects that I have seen with WinCC also lack this functionality. It seems to be more of a marketing tool than of any practical usage.

WinCC also allows you to update graphics pages in real time running, a feature that Citect is only at the initial stages of adopting.

WinCC also has more flexible graphics pages arrangements with their “Picture Window” feature. This allows sub pages to be displayed within a main page and makes navigation and updating templates very easy. Citect has a template pages, however these lack WinCC’s flexibility and can sometimes be troublesome to update if you need to make changes. Picture windows are a function that I miss, having moved back to Citect.

On the other hand, WinCC is almost hopeless for setting up Popup screens. With Citect, popups are easy and quite flexible. You can also have multiple popups open at the same time. This does not seem to be so amazing, unless you have had experience with WinCC. With WinCC each popup has to be setup as a picture window in every page where it may be called. This can increase you workload greatly.

Other features, WinCC includes layers, which Citect doesn’t have. WinCC also allows you to manipulate the XY coordinates of an object within the object properties, making accurate alignment and positioning easy.

Between the systems, both have their advantages and disadvantages, and both systems have features I like which are not available on the other.



5, Alarms. WinCC loses some of its user friendliness with its alarm setup. The WinCC alarm logging setup is on another application that is called from WinCC explorer. As well as setting up for a trigger tag, WinCC allows a reset tag to reset each alarm individually, and also tags can be setup to monitor the alarm and acknowledge status. The alarm display is setup on a normal page with an alarm control template added as a sub window. There is really only one type of alarm, and all alarms have to be setup as digital alarms. Classes and types allow different colours and filtering to be used.

Citect has a larger range of available alarms, including analogue and some alarms optimized for SPC. However the age of Citect shows when setting up the display and logging of the alarms. This requires a carefully typed text string to determine the display format, whereas the WinCC setup is purely graphical.

One major annoyance with WinCC is that the alarm summary is limited to 1024 alarms. You cannot go back beyond this. The alarms are held in the SQL database, at least I am lead to believe this, however you need to have a good grip on writing SQL queries to extract this information. From this, I found that it is difficult to go back to analyze a sequence of events leading up to problems from the night before. While Citect has some similar limitations, if you have setup your alarm device log correctly, Citect will have saved the old alarms in a text file. While this is more primitive than an SQL database, it is much easier for those who are not good at SQL to search through and extract information.

Overall, I find that WinCC is easier to setup alarms, while Citect is more flexible and easier to use and more useful in a running plant.



6, Trends, WinCC divides its tag logging into 2 classes, fast and slow. WinCC also has tools designed to ensure that the logs fit within the allocated space on the hard drive. The logs are stored in SQL. Citect stores its tag logs as trends, and has set them up in binary files. Unfortunately, the trends are in a Citect format so you need to be running Citect to view any trend files. Citect does have an export function allowing a designated area of a trend to be exported to a text file, which can then be opened with Excel, for example. Citect also has in-built trending for SPC functions. Citect’s trends also do not take up much space, so with modern hard drives you often have decades worth of trending capacity on your PC.
 
Parts 7 to 10

7, Project Structure. Our WinCC project is a combination of several projects provided by a few different suppliers, and then combined together. With Citect, this approach to setting up your project is simple. If you have several projects from several supplier and you want to combine it into a single project, you simply create a master project that calls all the others as sub projects. You setup a menu page at navigates to the main page of each sub project, and you are done. The whole process can be done in half an hour. The only thing to watch out for is to ensure that there are no identically named tags or pages across the projects. This is easy if you setup a naming convention and enforce it.

We found that this approach with WinCC is not easy. WinCC allows only one project, and seems to be setup to allow only one programmer at a time. WinCC is not setup to allow parallel development of your project, at least not without a great deal of care and careful management. Our effort at combining these multiple projects took more than a month and there are still a few bugs we can’t work out. WinCC seems to be designed with no thought to make large projects easy to setup. As pointed out earlier, some of WinCC’s tools also fail once the project exceeds a certain size. Citect was designed for large projects, with multiple developers. Generally, if each small Citect project is running OK, your large project will also run OK.



8, Server/Client setup. Both packages are similar in their setup, allowing stand alone machines, Servers with clients, and redundant servers. The major difference between the two setups is that WinCC generally runs the project off the server, whereas Citect servers only process data, with each client running its own project, which can be either the full project or one or more sub projects of the full project. WinCC method has the advantage of updating the project on each client the instant the server project is updated. Citect’s main advantage is low network resource usage. I have run a fair sized Citect Client/Server setup quite well on a 10mbps Ethernet network. The disadvantage with Citect is that each client project has to be individually updated if any changes are made.



9, Licensing, Citect license only the run time copies of their software. This is licensed via a hardware dongle. If your PC fails, transferring the license to a new one is as fast as pulling the dongle from one machine and adding it to another. Citect require the same licenses for the server and the clients, it is for that reason that the clients are often setup on sub-projects whereas the server has the complete project. This can be expensive if you have a lot of clients.

WinCC, has licenses for both the Runtime and Configuration versions. The configuration licenses are not cheap either. However, for client/server setups, only the server needs the full run time license for the number of tags configured. Clients require only the minimum 128 tag licenses. This can produce a bit of a cost saving if you have a large number of clients.



10, Overall impressions. I find WinCC to be slow, resource hungry, and many of its functions start failing once you get to the larger sized projects. It also seems to be limited to interfacing only with Siemens PLC. Citect on the other hand, is generally quick and more capable in most performance areas. Both SCADA packages are capable of handling the needs of most users.

At this point in time, I still prefer the Citect package, although I don’t think that choosing WinCC is a mistake if you are going to use Siemens PLCs for your project.
 
Thanks for that. An excellant and detailed comparison.

I hope it finds its way to both Citect and Siemens so that they can improve their products.

I have lived with Citect from the DOS days and find it rather annoying that some of its original bugs still persist. Still Citect remains the product we "Love to Hate"

For the last 6 years I have used Siemens PLC's together with Citect SCADA watching and waiting for WinCC to "come of age"
I will probably wait a little longer.
 
citect is not user friendly

citect programming language is cicode.....compare to another scadaprog language it a difficult.................

then graphichs......they dont have any symbols.

totally it is not user friendly scada

it is one of the waste scada

starting itself citect users are telling that it has super genie facility....they dont know all scada software has more than
these facilities.................................................
i dont know wat is that advantage
 
citect multimonitor

For a project in citectv6.1 scada I have a computer CPU with
two monitors with different resolutions....
one is 1024*768(XGA mode)
another is 1360*768

Is it possible to work in citect SCADA?
citect6.1 supported extend mode?
can i limit the mouse operation?
 
Re 1. PLC Choices.
I am positive that WinCC can communicate with *any* PLC as long as there exist an OPC server for it.
Siemens dont provide a long list of campatible PLCs but on the other hand they dont exactly hide that you can use OPC.

This quote I would like to have detailed:
[...] un-like the Siemens NCM software which seems to need special hardware to get more than 8 PLCs on the network.


Myself, I had a go with Citect approx 9 years ago. I liked it, especially the super genies. Win 3.11 + Pentium 75MHz + 16 MB RAM and it worked quite well.
My main reason for deselecting Citect is the prohibitive cost.
700 alarms costs me 1400 tags (alarm + ack bit). And that meant a v-e-r-y expensive license.
I use WinCC Flexible today, and I can have as many alarms as I like for a cost of 2 or 3 array tags. With Protool Pro I had 2000 alarms for free.
Not a comment with the comparison of Citect against WinCC, but I find that Citect lacks a product or licensing scheme for OEMs that have many small projects rather than a few large projects.
 
Great, detailed comparison.Not only a comparison, but also gives information about both SCADA softwares. helped a lot, thanks...
 
Awesome writeup. I can tell you though that WinCC Flexible, at least, will connect to AB PLCs without any special effort. This was two years ago, and I was connecting to CompactLogix. At that time, WinCC Flex couldn't connect directly to Logix5000 so it used the normal AB workarounds to connect Logix5000 systems to any legacy HMI; that would also allow it connect to an SLC or Micro without difficulty since that's what it thought it was talking to anyway. I don't recall if we needed a special driver from Siemens, or if it was an OPC link (might have been!) but it wasn't expensive and it wasn't al all hard to set up and use.

I used WinCC Flex for two jobs; Flex runs on the Siemens CE-box panels (similar to AB PanelView Plus). We found that yeah, WinCC Flex is a resource hog, but the graphics were good, the tag management and connection was easy- in fact I don't even remember anything about doing it- and for small projects, which is what I used it on (20-30 screens, under 1000 tags) it was ok. We did find that we had to use the "better" of their two CE boxes at that time, but I think they upgraded the processors to be the same in each offering so that wouldn't apply now.
 
Paul T.

For your information WinCC Flexible will support Ethernet/IP in the next version. WinCC Flexible supported DF1 from the onset, but for ControlLogix you have/had to map the tags as PLC5 tags.

WinCC on the other hand also had a host of native drivers for non-Siemens systems, but from v.6 onwards only OPC is supported for non-Siemens systems.
 
Excellent commentary Doug. Took quite a long time I am sure and is very concise.

I will have to let one of my customers know about the new Siemens driver. He has a project with about 110,000 tags in Citect now.

Just as a matter of interest I believe the Citect project at Olympic Dam in South Australia is now over 1,000,000 tags. HUGE!!!

Ajmul, you can use VB and ActiveX with Citect as well as ATAPI - pretty fair range of choices. Symbole are located in exampls projects and there are plenty around the internet for free. Just use bitmaps.
 
A few additional notes:

- Thanks Bob for pointing out that Olympic Dam is now up to 1,000,000 tags.
- OPC Tag connection, missed that reference. Of course this will allow WinCC to communicate with many other brands of PLC.
- The version of WinCC I was using for comparison was WinCC version 6.0, sp3. Citect was Version 6.1. I know the WinCC version was not the latest, but its all I have at the moment.
- I did not comment on WinCC flexible. I have occasionally used it, but most of my experience was on Protools, which I thought was quite a good software package.
- I would be nice to get some blow by blow comparisons for other SCADA packages too.
 
Thanks - very informative read. It felt like you were Citect biased from the beginning (ie, describing a crappy 10 year old communication setup as a sign of "experience" - Citect can, and should, update things like that). I don't take the bias to be a bad thing - it's interesting to hear what you like about your package of preference and I'm sure the quirks of WinCC weighed in on that decision. I also read this as written by a Citect expert comparing his package to a WinCC novice.

The Xtree gold comment brought back memories of my father's computing quirks - I'm sure he'd still swear by it. No need for these new darn-fangled Windows Vistas (and automatic car windows)! But let's forget about coming to me to print to "LPT1" on his old DOS app to his networked printer. I guess we can selectively define "progress".

I did want to comment on point #0. From my perspective, running on an IT supportable database is more important than the db being lightweight. For a project of your scale (16k+ tags), penny pinching memory shouldn't be much of an issue. I'm not sure why it was heavier wrt the CPU and video card for you. Lightweight is valuable, though.
 
Last edited:

Similar Topics

Dear all, i have a complete project in citect. my client has a requirement of same scada in wincc flexible 2007 how can i reduce my time to make...
Replies
0
Views
3,343
Hello, I have a running project on Citect v5.42 and simatic net v6.4 I have created a new spare PC and loaded all software like Citect, station...
Replies
0
Views
50
Hello everyone, In a factory where we installed Citect 7.20 the computer began to show the first signs of end of life. They never considered...
Replies
0
Views
48
I have a running backup of Citect and plc and I want to make a spare PC station so I have installed the win XP and somatic net v6.0 and import the...
Replies
3
Views
103
I am trying to display a variable within a cicode function onto a graphics page. This function queries a SQL database. I can get the value onto a...
Replies
3
Views
190
Back
Top Bottom