Skip to main content

IMPROVING PLC PROGRAMMING THROUGH A NEW GRAPHICAL, OBJECT-ORIENTED AND BRAND- INDEPENDENT PROGRAMMING FRAMEWORK

Final Report Summary - PLC-PROG (IMPROVING PLC PROGRAMMING THROUGH A NEW GRAPHICAL, OBJECT-ORIENTED AND BRAND- INDEPENDENT PROGRAMMING FRAMEWORK)

Executive Summary:

PLC-PROG is much more than a software. It opens the way to the standardisation of program code in PLCs. Following the basis of the IEC 61131-3 Standard, PLC-Prog defines a visual language based on racks that permits the user to create complex PLC programs with simple drag and drop operations.
The PLC is still stuck in software development environments equivalent to late 80’s PC software development. This delay in evolution has meant an increase in the complexity of programming PLC devices, increased program development time and extreme brand dependency.
In this context, where problems of brand-dependence and ease of use strongly affect PLCs programming, PLC-PROG developed a truly automation PLC based Brand-Independent programming platform, which will provide a solution to SME-AG members and to the automation sector as a whole.
At this purpose, PLC-PROG incorporates the following innovations:
 A high-level automation language with full support for Object Oriented programming
 The programming will be carried out graphically over an Integrated Development Environment IDE (that is, the visual and integrated development platform). New and/or pre-existing components will be “dragged” and connected over the IDE, which will mirror the physical elements used in the construction of electrical control cabinets.
 A unified programming environment valid for different PLC brands. PLC-PROG will fully integrate the IEC-61131 standard set by the EC, increasing programming features in PLCs. Programs generated within the PLC-PROG framework will run potentially on any PLC brand compliant with the standard.
PLC-PROG, by adding post-processors for the main PLC brands, will fully cover all capabilities of the devices. Nowadays, this is a main issue as in most of PLC devices the standard only cover a limited set of features and this fact forces user to use the specific software provided by the PLC vendor. The easier way to reuse code is to program once and reuse it everywhere, and this is how PLC-Prog works. The user can create a single program, configure the physical inputs and outputs and export it to a desired brand. Easy, fast and debugged.
One of the bigger sources of errors and problems is to type the program code. In two main cases:
 to retype similar functionalities depending on parameters.
 to retype the code for a different PLC brand.
Using PLC-Prog this part is minimized drastically:
 The first problem is solved by using racks and functions. (about 20% time saving)
 The second problem is also solved because PLC-Prog includes a postprocessor for any brand that supports IEC 61131-3 Standard (at the moment Siemens, ABB and Schneider are fully supported). (about 80% time saving)
And extended tools have been created to debug the commissioning phase and to create a quick and effective SCADA screen for values visualization.
All these tools are based on the extended automation standard for communication: OPC DA and UA.
The post-processors are responsible for translating a PLC-PROG PLC program, which is fully compatible with the IEC-61131-3 standard, into a specific, non-fully compatible code, as needed by any of the target PLC brands in the market.
The post processor developed in the project is able to write automatically the final code for the control program to be downloaded into 5 different PLCs (ABB, PLCOpen XML, Telemecanique, Siemens or B&R), as it can be seen in the following figure. At this regard, it is worth to underline as two additional brands have been added in respect to the preliminary chosen ones, (namely: B&R and PLCOpen XML) since they are actually in use among some of the partners.
The PLC-PROG system has been tested with industrial processes (two water plants in Romania and one injection moulding machine in UK), in order to assess both the viability and the performance of the PLC-PROG programming tool. The validation performed in the last part of the project on the industrial processes has showed that the project technical objectives have been fully achieved, and in particular that:
 It is possible to create the code for an industrial application using PLC-PROG, with a programming time which, for an user already experienced in PLC-PROG use, can be estimated at least equal and in some cases lower than with a conventional language.
 It is possible to reuse the same program code with 2 or more different PLC brands with minimal effort, leading to an average reduction of the implementation time of 85%, which is an impressive result.
 It is possible to reuse existing code from old application and encapsulate it in PLC-PROG functions for further use.
 It is possible to create SCADA visualization of the PLC variables’ values with minimal configuration to embed in a SCADA software or Web Browser.
The combination of the features have been positively evaluated by the users from both an application and market point of view, and allow to state that:
• PLC-PROG saves program development time when using different PLC and SCADA brands because the same program can be easily adapted to supported brands.
• PLC-PROG saves program maintenance time when making modifications in the functions because the versioning system helps to restore/update functions easily.
• The learning curve is fairly short as the software is very intuitive. During the training sessions the attendants could create simple programs.
• PLC-PROG permits non expert users to create or maintain PLC programs.



Project Context and Objectives:
During the last 20 years the automation sector has experienced an incredible expansion, which was hardly imaginable just 10 years ago; today, the monitoring and even the control of a factory located thousands of miles away has become possible, as well as the reception of production data, values of efficiency, consumption, etc. of a given real-time production is now possible directly on a mobile phone. Nowadays, the business competitiveness is incredibly increased and the costs must be reduced significantly in order to keep a valuable market position.
In this context, the PLCs have made great progress as for performance and complexity. They are designed to replace the hard-wired from relays, timers, counters, etc. substantially saving wiring and maintenance operations, and at the same time allowing the installations to have higher flexibility at the sole programming cost. Developments in the field of programming started from programs that could be fully understood only by the programmers themselves, these programs proving very expensive to maintain and implying huge dependence on the programmer.
In this situation, any necessary modification of the PLC program to be performed by a person other than the original programmer normally resulted in a complete re-programming. It is known that it is extremely easier to create a new control program than trying to understand and interpret a program created by another author.
The problem has been now minimized in large companies - such as the ones operating in the automotive sector - by structuring the control program using templates. This allows a maintenance activity which is independent of the programmer. The responsible engineering staff for process automation and industrial installations must be composed of several different experts capable of programming PLCs brand by brand, if PLCs programming is to be optimized and made efficient.
There is no automatic conversion, up to now, that allows a control program to be converted into different PLCs brands. The programmer is the only person who can manage the conversion, and perform it manually.
Actually, every PLC brands supporting IEC-61131-3 work with different standard programming languages, from graphical to text ones. The most popular for a generic end-user, and the most diffused, is the so-called “Ladder” or “contact diagrams” due to its similarity with the electrical line diagrams. On the other hand, some text languages are also widely used by skilled programmers for their potential, even if these languages are barely known by the end-users.
At this scope, PLC-PROG Project aims to provide a single programming tool for PLCs which are compliant with the standard IEC 61131-3 to finally solve all the problems mentioned above related to PLCs programming.
This programming tool for PLCs was targeted to have the following features:
• to be valid for all the PLC brands which are compliant with the IEC 611131-3 standard, among which we can find the most diffused in the automation market: Siemens, Telemecanique, ABB, B&R, Phoenix Contact, Beckhoff, etc. Using PLC-PROG tool you won’t need to be an expert in programming each single proprietary software of each specific brand, since the same project can be exported to any of the aforementioned brands.
• to be based on a graphical programming methodology showing evident analogies with the physical elements generally present in electrical installations and electrical panels in the plant, so that the maintenance staff in the facility is able to interpret, modify and even schedule the different operations, being the program based on the assembly of objects like in a switchboard.
• No need of specific programming skills while using PLC-PROG, as the tool only needs the assembly of different objects corresponding to the physical elements displaced in an electrical box; advanced users will perform the programming of a new functionality - which is not developed yet - in case this functionality appears to be necessary.
• to be based on the object-oriented programming that has shown such outstanding results in the computers world. The key is to create objects that represent existing electrical objects such as a relay, a PID controller, filters, etc. Thanks to the properties of the object oriented programming (polymorphism, inheritance, encapsulation, use of templates, etc.) it allows objects reusability.
• to perform both the monitoring and the visualization from the tool or even from SCADA commercial packs, through an insertion of an object ActiveX or Applet which provide an insuperable functionality and versatility of the tool itself.
The unique selling proposition of PLC-PROG is to be the first tool applied to PLC programming to take advantage of a completely brand independent and user-friendly OO approach, granting a reduction of the development times and an increase in the reliability of the developed programs.
This was meant to be achieved thorugh the following objectives:
 the development of a graphical approach to developing and documenting PLC programs in an intuitive manner;
 the development of post-processors for translating a PLC-PROG project into native PLC code for 3 major PLC brands compliant with the IEC-61131 standard;
 the development of post-processors for integrating the PLC-PROG project into 3 major SCADA commercial programs;
 the development of the basic virtual modules for proper PLC software development;
 the development of Supervisory Control and Data Acquisition modules (OO-SCADA) for granting communication and data integrity between SCADA and PLCs;
 the validation of the quality of the system.

Project Results:
3.1. PLC-PROG solution
Programmable Logic Controller (PLC) or programmable controller is a digital computer used for automation of electromechanical processes, such as control of machinery on factory assembly lines, amusement rides, or light fixtures. PLCs are used in many industries and machines.
Early PLCs were designed to replace relay logic systems. These PLCs were programmed in "ladder logic", which strongly resembles a schematic diagram of relay logic. This program notation was chosen to reduce training demands for the existing technicians. Other early PLCs used a form of instruction list programming, based on a stack-based logic solver.
PLCs are essential components of modern life, running everything from simple soft drink or candy machines to industrial equipment and highly sophisticated medical diagnosis and treatment equipment. However the PLC is still stuck in software development environments equivalent to late 80’s PC software development. This delay in evolution has meant an increase in the complexity of programming PLC devices, increased program development time and extreme brand dependency.
In this context, where problems of brand-dependence and ease of use strongly affect PLCs programming, PLC-PROG project intends to develop a truly automation PLC based Brand-Independent programming platform, which will provide a solution to SME-AG members and to the automation sector as a whole.
Specifically, all the associations involved in the project (SEPE, BPF and GAIA) have agreed that innovation in PLC software development, in terms of modernization of the development itself and maintenance of PLC programs, and the ability to handle the large number of brands on the market, is a common need to automation sectors and big brands won’t drive the evolution of PLC programming environments due to their own particular interests. Considering all of these issues, the Consortium believe a Collective project has great significance for the development of the PLC-PROG system, providing critical mass for initial dissemination and exploitation from the beginning for the success of the product.
At this purpose, PLC-PROG incorporates the following innovations:
 A high-level automation language with full support for Object Oriented programming
 The programming will be carried out graphically over an Integrated Development Environment IDE (that is, the visual and integrated development platform). New and/or pre-existing components will be “dragged” and connected over the IDE, which will mirror the physical elements used in the construction of electrical control cabinets.
 A unified programming environment valid for different PLC brands. PLC-PROG will fully integrate the IEC-61131 standard set by the EC, increasing programming features in PLCs. Programs generated within the PLC-PROG framework will run potentially on any PLC brand compliant with the standard.
Moreover, PLC-PROG innovative character and technological challenge has several advantages, the main of which being: PLC-PROG should improve various efficiency levels in development and maintenance, with respect to present PLC programming systems.
Currently, a number of different products are available for PLC programming, and most of them are brand-dependent. The products generally include the PLC programming, simulation and elements for the connection of the computer and other devices, for example:
 CodeSys: Controller Development System is a comprehensive software tool for industrial automation technology. The runtime system turns any device into an IEC 61131-3 controller programmable with CoDeSys. It is intended to be brand independent, although the interface is not graphical and is based on line code programming.
 TwinCat: Software for PLC programming and monitoring. TwinCAT PLC offers all the languages in the IEC 61131-3 standard and has a powerful development environment for programs with code size and data regions that far exceed the capacities of conventional PLC systems.
 Siemens STEP 7 Lite: STEP 7 Lite is designed for traditional PLC applications with centralised I/O. STEP 7 Lite is designed for non-networked automation applications using the SIMATIC S7-300 PLC, the C7 all-in-one PLC and HMI, and the intelligent CPUs of the ET200 distributed I/O family.
 OMRON: The CX-One Integrated Tool Package provides an environment to operate the Support Software required for all processes, from FA system design to operation and maintenance.
 Hitachi Pro-H: Pro-H is universally usable 32 bit programming software for all Hitachi H-Series PLC that provides for a flexible choice of editors.
Based on the information and technology analysis carried out on the above listed solution, together with the ones listed in the previous section of this document, it is possible to state that:
the most similar ones to PLC-PROG are CodeSys and TwinCat. These products are limited only to the IEC 61131-3 standard being this the main disadvantage in front of PLC-PROG as the standard IEC 61131-3 only covers a part of the capabilities of a PLC.
PLC-PROG, by adding post-processors for the main PLC brands, will fully cover all capabilities of the devices. Nowadays, this is a main issue as in most of PLC devices the standard only cover a limited set of features and this fact forces user to use the specific software provided by the PLC vendor.
What is PLC-PROG?
PLC-PROG is much more than a software. It opens the way to the standardisation of program code in PLCs. Following the basis of the IEC 61131-3 Standard, PLC-Prog defines a visual language based on racks that permits the user to create complex PLC programs with simple drag and drop operations.
The main purpose is to reuse code making PLC program’s design, development and commissioning easier and faster. All the functionalities are encapsulated in functions and mounted in racks, so the user just need to configure the program as desired.
The easier way to reuse code is to program once and reuse it everywhere, and this is how PLC-Prog works. The user can create a single program, configure the physical inputs and outputs and export it to a desired brand. Easy, fast and debugged.
One of the bigger sources of errors and problems is to type the program code. In two main cases:
 to retype similar functionalities depending on parameters.
 to retype the code for a different PLC brand.
Using PLC-PROG this part is minimized drastically:
 The first problem is solved by using racks and functions (about 20% time saving).
 The second problem is also solved because PLC-PROG includes a postprocessor for any brand that supports IEC 61131-3 Standard (at the moment Siemens, ABB and Schneider are fully supported). (about 80% time saving)
And extended tools have been created to debug the commissioning phase and to create a quick and effective SCADA screen for values visualization.
All these tools are based on the extended automation standard for communication: OPC DA and UA.
3.2. PLC-PROG building components
The preliminary RTD activities implemented has been devoted to building the foundations of PLC-PROG:
I. The root components that every PLC-PROG component inherits.
II. The polymorphic connectors that allow the inter-communication between PLC-PROG components (c0) and their corresponding scaled aggregations (c1, c2, etc.)
III. The generic structures that operate on PLC-PROG components: cards, racks, etc.
They are the components that the GUI presents to the programmer for building a PLC-PROG program, the components that the end user monitors in the SCADA components, and the elements that are post processed to assembly a Brand specific code. (REFER TO THE SECTION 3.2 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF PLC-PROG BUILDING COMPONENTS).
3.3. PLC-PROG IDE
The objectives of the project are mainly the development of a visual integrated development environment (IDE) integrating object oriented (OO) features. It must contains tools to facilitate all kind of users (experts and non-experts) to program easy and complex PLC applications. The result is PLC-PROG: a software to program PLCs. It contains a visual editor based on the concept of rack and a set of tools to help the user when creating the program.
The Graphical User Interface integrates a Debugger Tool that allows to monitor and to modify all of the PLC values during the PLC cycle. This tool is extremely useful for debugging the programs and commissioning the installation; its environment is graphical and presents the same aspects of the GUI.
(REFER TO THE SECTION 3.3 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF PLC-PROG IDE).
3.4. SCADA approach
The development of any industrial application cannot exempts to provide the user with an interface for monitoring the activity and control it; these operations are usually done by a SCADA application. PLC-PROG’s aim it not that of offering a complete SCADA system, for at least two reasons:
1. SCADA systems are very complex and the development of one complete and usable application is far from our possibility and our scope in PLC-PROG.
2. Each user already has a SCADA system, and our objective is absolutely not to replace this system but to integrate our work with the existing. In fact, the industrial environment is less flexible respect to some other sectors, so the only opportunity we identified for PLC-PROG system to gain a portion of this market is to act for a soft introduction, without revolutions.
In order to offer the “integration with the already on the market SCADA systems”, we must control our portion of code (running into a PLC) with something that could be integrated.
At the beginning of the project the only approach that we had identified for its novelty was that of working with ActiveX, whist during the project implementation, other possible solutions appeared to be more suitable due the introduction of the PLC UA architecture in the market and the new functionalities that appeared to be present in the new generations of PLCs.
During the proceedings of the project a new OPC-UA protocol appeared pm the market. This new protocol tries to switch the intercommunication carrier (between PCs and PLCs) from DCOM (Microsoft’s technology, proprietary and so old to be deprecated by Microsoft itself since the appearance of Window Vista in the 2007) to sockets, the standard carrier for all internet communications (open, standard and cross platform).
The initial approach to develop a set of ActiveX (one for each base function on the IEC 61131) and then build in an automatic way the SCADA page that contains the needed components.
Each of those ActiveX components should use the SCADA OPC-DA communication engine to get/set process information from/to PLC’s server.
This approach demonstrated great limits, in particular for what concerns the automatic page generation: the only available way to realize that task was use the ATL interfaces that some producer “offer” in its owns SCADA packet.
Those ATL interfaces are handles for controlling SCADA graphical designer but are developed for internal use only (for this “offer” was between quotes), so they are:
 Mainly undocumented.
 Different for each producer
 Not even available
 Continuity and compatibility of the ATL are not guarantee
So the approach resulted hard to be applied to a reasonable set of SCADA products and with unacceptable uncertainties for future availability.
For these reasons we modified the approach upside-down: instead of developing a set of ActiveX and use the communication engine of the SCADA system, we created a single Java Applet (with its own communication engine, but this time OPC-UA) and used a simple HTML to display all in a standard browser (or an Internet Explorer ActiveX) included in a SCADA page.
This way the resulting product allowed to achieve a number of advantages:
• It’s “much simpler” to realize and maintain
• The Applet can be run either locally or remotely.
• It doesn’t need a web server but it can be introduced into a Web site.
• It‘s simple to be configured.
• The Applet can be used directly and immediately as a “inline debugger”.
• It doesn’t introduce communication delays.
• It’s usable in (virtually) any device and any OS.
• Requirements on the end devices are acceptable (only a Sun-Java engine is required).
• A Web page can be introduced in practically any existing SCADA system.
• To use the applet into a SCADA system is very simple.
But also some disadvantages:
• It offer a limited grade of graphical customizations: the graphic is inside the Applet.
• Commercially available SCADA applications will not be able to read UA data directly from the Applet.
The new prospective permits to collapse this enormous set of micro-functions (that are not really useful for the SCADA user) in Racks like the IDE view. Each Rack represents a Function Block in a high level language where Inputs and Outputs lose dimension and type to became “entities”, “events” and “messages”.
In this way, SCADA and IDE views overlap and the use of both instruments becomes easy.
Web applets work like China’s boxes:
• The web browser loads the HTML file that is substantially a programming code
• The HTML commands the browser to reserve a portion of its window to the Java engine
• The HTML informs the Java engine where the Applet to load is located
Our system works with some additional complications:
1. On the left side (at highest level) we introduce an ActiveX that contains an Internet Explorer Web Browser object like a transparent frame. The reason will be clearer in the following sections, but fundamentally was for simplifying the beginners on the IDE usage.
2. On the bottom side our Applet communicates with the PLC, reads and writes data and displays the SCADA page.
Despite to this apparent complication, the use of the ActiveX and the Applet is simple like clicking an hyperlink. To show it into a Browser’s page, simple double-click the HTML that you will find into the “exported SCADA folder” and this will be the result:
At the same way, to show it into any kind of SCADA system in projecting mode, it is needed to simply introduce the desired page into the PlcX component and, then, resize it as required. (REFER TO THE SECTION 3.4 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF SCADA APPROACH).
3.5. Versioning (or revision control system)
“Software versioning is the process of assigning either unique version names or unique version numbers to unique states of computer software” (Wikipedia).
In other words “… it is the management of changes to documents, computer programs, large web sites, and other collections of information. Changes are usually identified by a number or letter code, termed the "revision number", "revision level", or simply "revision". For example, an initial set of files is "revision 1". When the first change is made, the resulting set is "revision 2", and so on. Each revision is associated with a timestamp and the person making the change. Revisions can be compared, restored, and with some types of files, merged” (Wikipedia).
We need a versioning system for administer the multiply version of each User Defined Function (UDF) that the user can create/modify.
Those UDF are functions created by the user for solve a complex problem starting from a more simple set of objects and are great resources for future projects and for this reason they must be exportable, should be roll-able back.
To explain what UDF can be, we can think to an axes control made by:
- One engine control;
- One position measure;
- Two proximity sensors.
With those basic component you can create the Axis Control UDF.
Joining 5 Axis Control UDF component the user can create an Arm Control UDF.
…or modify and complicate it for other scopes.
A versioning system is usually designed to work in one of these two ways:
1. distributed, with a central manager owning the Database and a set of client… (Subversion-like)
2. locally, with all the information needed into the data packet… (Word revision-like)
The PLC-PROG system developed in the project applies a different and absolutely unusual approach: it works locally, has single/multiply export capabilities but has no full data inside the data packet.
Moreover, the versioning system is window-less (the interface was the IDE program) and a communication mechanism was implemented.
We solved the problem dividing the problem in two pieces, the main folder that contains all UDF with all their versions and a working directory set, loaded by the UDF versions used in the opened project. When the user opens a project, the IDE puts it into a specified folder (surveyed by the versioning system); inside the project file there are all UDF’s names and relative version so the versioning is able to fill the working folders with the right UDFs and permits the IDE to use it.
The versioning module surveys the working set directory continuously and responds to commands (specific files into a specific folder), modification of the existing files (for modified UDFs) and appearance of new files for import operations and new UDF.
These are the principal functions implemented and how they work:
• roll-back some UDF (IDE asks the versioning to do that with a command)
• modify an existing one (the versioning notice the change and creates a new version for the modified UDF into the main DB)
• add new one (the versioning notice the new UDF and insert it into the main DB)
• export part or all the main DB (IDE asks the versioning to do that with a command)
• import a set of UDF (exactly like can add new one).
(REFER TO THE SECTION 3.5 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF VERSIONING(OR REVISION CONTROL SYSTEM)).
3.6. Post-processors for three targeted major commercial brands
The post-processors are the coworkers in the dark. This subsystem is integrated in the Graphical User Interface and works in the background to facilitate the work of the end-user.
The post-processors are responsible for translating a PLC-PROG PLC program, which is fully compatible with the IEC-61131-3 standard, into a specific, non-fully compatible code, as needed by any of the target PLC brands in the market. It has been developed in order to convert the standard code produce by PLC-PROG tool into the native code for three specific brands of PLC: ‘Step 7’ of Siemens, ‘SoMachine’ of Telemecanique, and ‘Codesys V2.3’ of ABB, as well as two additional brands have been added in respect to the preliminary chosen ones, (namely: B&R and PLCOpen XML) since they are actually in use among some of the partners.
This application has been checked satisfactory with the 3 pilot’s plants. (REFER TO THE SECTION 3.6 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF POST PROCESSORS FOR THREE TARGETED MAJOR COMMERCIAL BRANDS).
3.7. Application and validation of the PLC-PROG system in pilot plants
The PLC-PROG system has been tested with industrial processes (two water plants in Romania and one injection moulding machine in UK), in order to assess both the viability and the performance of the PLC-PROG programming tool. Indeed, in this specific framework of activities, different plc brands have been used in each selected installation, but all the programs have been generated within the same PLC-PROG system, and the finally, the brand-dependant code has been automatically generated by using the post-processor tool, integrated in the PLC-PROG environment. The IEC-61131-3 functions and most of the technological functions developed within the WP3 have been successfully reused in the three installations in order to assess the openness of PLC-PROG.
1. 3-axis industrial machine
The 3 axis-machine was made available by UPV partner and it integrates 3 individually controlled
position axis, one with encoder feedback and the other two with analog position sensor feedback.
The three motors are fed by a single variable speed drive, which is switched by three contactors in function of the axe that it is in movement.
Each axe has a different position sensors such as an encoder for measuring the speed or an analog potentiometer. Edge and zero-position digital sensors are mounted on each axe.
The machine has also a panel button and a touch panel to operate it locally in manual or automatic mode; both elements work simultaneously.
The machine is provided with a local PLC, not compliant with the IEC-61131-3 standard, that controls the machine, and has been programmed with traditional tools.
To make the PLC-PROG tests using three different PLC brands, the machine has been equipped with three fast connectors for easy exchange between the selected PLC brand (local control in traditional way, ABB, Siemens or Telemecanique, the last three programmed using PLC-PROG tool).
PLCs: we have the three brands of PLCs that are supported by PLC-PROG: Siemens, Telemecanique, and ABB.
The same PLC-PROG control project of the three axis machine can be downloaded to any of the 3 PLCs installed in the machine, and their performance compared with the old program. Any changes to the PLC-PROG program can be so inmediately downloaded to any of the desired PLC.
2. Water extraction plant or waste water treatment plant
The second demo was provided through one of the plants made available by one the participants (Mikon) in Romania. The application was controlled by using a PLC of the brand ABB: the model PM573 with a module of 8 digital inputs/8 digital outputs and a modules of 4 analog inputs/4 analog output. It can be configured and the i/o can be set as digital or analog.
The application was used for:
 showing the electrical cabinet where the ABB PLC has been installed for demo purposes
 showing the program created in PLC-PROG to control the application
 showing the post-processed program in ABB software
 showing the SCADA in which the operation can run the application
 running the application and explain the data visualized
There is a central building where the water filters are installed as well as the Control room where the operators will control the whole installation. The pumping station is situated about two meters under and accessible via a ladder through the blue trapdoor.
Inside the trapdoor there is a pipe installation with a water pump, a flow meter, a level meter and the electrical cabinet where the PLC is mounted. This pump (among others) is used to bring the water inside the building to be treated. The PLC is used to control the pump automatically regarding some conditions such as level or remote starting command.
Summarising, the performed validation has showed that the project technical objectives have been fully achieved, and in particular that:
 It is possible to create the code for an industrial application using PLC-PROG, with a programming time which, for an user already experienced in PLC-PROG use, can be estimated at least equal and in some cases lower than with a conventional language.
 It is possible to reuse the same program code with 2 or more different PLC brands with minimal effort, leading to an average reduction of the implementation time of 85%, which is an impressive result.
 It is possible to reuse existing code from old application and encapsulate it in PLC-PROG functions for further use.
 It is possible to create SCADA visualization of the PLC variables’ values with minimal configuration to embed in a SCADA software or Web Browser.
The combination of the features have been positively evaluated by the users from both an application and market point of view, and allow to state that:
• PLC-PROG saves program development time when using different PLC and SCADA brands because the same program can be easily adapted to supported brands.
• PLC-PROG saves program maintenance time when making modifications in the functions because the versioning system helps to restore/update functions easily.
• The learning curve is fairly short as the software is very intuitive. During the training sessions the attendants could create simple programs.
• PLC-PROG permits non expert users to create or maintain PLC programs.
(REFER TO THE SECTION 3.7 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF APPLICATION AND VALIDATION OF THE PLC-PROG SYSTEM IN PILOT PLANTS)


Potential Impact:
4.1. Socio economic impact
According to the main market analyst organizations at worldwide level, such as: IMS Research, ARC Advisory Group and TechNavio; last years have been extremely difficult for most PLC suppliers.
As main consequence of the world economic crisis started in 2008, it was forecast that the market will not recover until the second half of 2012. Moreover, it was underlined as no region was insulated from the effects of the economic downturn: Europe, the Middle East and Africa (EMEA), the largest market for PLCs, were the most regions badly affected. The main factor behind that was that Germany, the most important market for PLCs in EMEA, suffered the largest contraction during the global recession. In fact, after a sharp fall in the German export business, improvement in activity was forecast to be slower than elsewhere, especially until the middle of 2010. Conversely, the 2009 market contraction was least marked in Asia; this market was forecasted to grow the fastest from 2008 to 2013, with a revenue CAGR of 6%. That was due to improved prospects in China and India, in part reflecting substantial macroeconomic stimulus and a faster-than-expected turnaround in capital flows.
However, last trends estimated for the next future: “Western Europe is the most important market for EMEA, as Germany led the way and was the first country coming out of the recession. Germany will continue to be the market leader in the PLC market and be the main driving force for future demand. The emerging markets in Eastern Europe, where automation level is relatively low but growth is rapid, will make up for some of the negative growth regions. As the EMEA market is mature, the PLC growth in EMEA will be relatively slow at 10.4% growth in 2011. This region is expected to retain a single digit growth rate over the next few years. China and India will lead growth next years with an future annual growth of around 20%. In Americas the overall market is projected to enjoy a growth rate of more than 11% the following years”.
As showed in the graphic above (REFER TO FIG.49 OF THE SECTION 4.1 OF THE ENCLOSED PDF FILE),the same market trend’ forecast is also confirmed in the report provided by another of the main market analyst organization (ARC Advisory Group), which has stated in one of the most recent publication the following : “the economic growth that had started in 2010 continued in 2011. While demand for automation remained strong for PLCs and PLC-based PACs during the first half of 2011, the pace of growth slowed as the year progressed, caused by the escalating sovereign debt crisis in a number of industrialized countries as well as specific concerns about some of the economies in southern Europe. Despite the looming financial crisis in Europe and instability in the Middle East, there are crucial factors that will continue to drive the use of automation, fueling PLC and PLC-based PAC market growth”. Moreover, it continues stating that: “the industrial objectives, such as: improving plant or machinery utilization, yield, product quality, availability, safety, and delivery performance, strongly influence capital investments in automation. Automation suppliers, especially PLC and PLC-based PAC suppliers, are well positioned in this environment as this equipment is widely employed across all industrial segments as companies face challenges to raise productivity, lower product costs, reduce plant operating expenses, and increase return on investment”.
In this context, and in order to validate this positive trend, it is also worth to mention briefly the market forecast indicated by the TechNavio's analysts : “the Global Programmable Logic Controllers market to grow at a CAGR of 9.1 percent over the period 2011-2015. One of the key factors contributing to this market growth is governmental regulations and policies. The Global Programmable Logic Controllers market has also been witnessing the increasing demand for integrated programmable logic controllers. However, the high cost of customer switching could pose a challenge to the growth of this market”.
The presented data allow us to agree on the final conclusion stated by these main market analysts claiming that: “althought the PLC suppliers and their industrial customers are currently very uncertain whether growth will continue, considering the risks to the world economy, the PLC market will still grow in the next three-year period, mainly because many large and important PLC markets, such as Germany, France, China and the US, are still performing well at the turn of the year. In addition, emerging markets, such as Brazil, and India, which already account for half the entire PLC market, will be the main driving force for future growth”.
The programmable logic controller (PLC) was originally designed to replace hardwired systems composed of hundreds or thousands of relays, cam timers, drum sequencers, and dedicated closed-loop controllers. Updating these relay-based systems to accommodate changes and additions in the controlled machines and processes was a lengthy and expensive process, requiring electricians to add components and perform extensive rewiring. Troubleshooting was a nightmare, as problems could occur among thousands of connections, switch contacts, and hundreds or thousands of components.
New architectures are expanding capabilities, blurring the line between programmable automation controllers and PLCs. And at this scope, all the selected article have provided clear explanation how advances in processing power have enabled PLCs to execute more functions in less time at lower cost, such that PLC functionality now often approaches programmable automation controller (PAC) power.
Leading advances of modern PLCs
1. Additional features incorporated in PLC CPU, eliminating external components
2. High-speed serial or Ethernet communications to remote wired or wireless I/O
3. Wide choice of I/O form factors
4. Custom functionality and faster execution, allowing PLC to take on more tasks
5. Advanced instruction reduce PLC programming time
6. Superior memory mapping improves data handling
7. Data structures simplify programming and maintenance
However in this context, it’s worth to note that, although OOP has demonstrated its capability for handling complex software development problems in an elegant way and for producing flexible, reusable software components, no single PLC incorporates all of the features listed. Rather, different products from various suppliers have various combinations of strengths and weaknesses, and no one product is the best fit for all applications.
Some practical examples have been developed through the years for the application of an object-oriented methodology to PLC programs. An example is reported in a publication showing how the standard IEC 61131 can be applied to the development of the control software of a medium complexity manufacturing machinery.
At this scope, it is worth to report what is also stated by Codesys in relation to this last technological aspect; specifically that the industrial controllers (PLC) are mostly programmed in the languages of the IEC 61131-3 standard. While some developers cannot wait to use OOP for PLCprogramming, others may be skeptical about the adequacy of OOP for their PLC-projects.
In order to address both parties, an object-oriented programming tool like the PLC-PROG should satisfy the following requirements:
 Integration in a PLC development environment: Integrated with the object-oriented programming itself, one should have integrated configuration of I/Os, direct access to I/O signals, and online debugging functionality with variable forcing and online change.
Advantage: PLC-application development has many specifics, which exiting C++ development tools available for many target-CPUs do not address.
 Multi-paradigm programming: Object-orientation should be optional. Code programmed in the classical, procedural way should be mixable with object-oriented code.
Advantage: this offers the sceptics a stepwise and reversible transition.
 OOP by extension of the IEC: Object-oriented PLC-programming should be supported by extending IEC programming with a small set of standard object-oriented features.
Advantage: not having to learn a completely new language avoids a steep learning curve for PLC-programmers.
 Multi-lingual: Object-oriented programming should be supported in all languages of the IEC 61131-3, not just in the textual IEC-language “ST” most similar to C++ and other known object-oriented languages.
Advantage: textual languages cannot represent clearly certain important aspects of PLC applications, like state machines and complex Boolean connection networks.

4.1.1.Web site
A project website (http://www.plc-prog.eu/) representing the first communication tool and main channel towards the target industrial audience of PLC-PROG technology has been designed and developed according specifications and further improvement suggestions.
It contains different sections to explain the project and the product, the concept and objectives, images, news, events, public documentation and access to private area, wiki and social networks. On the web site it is possible to download public documents and deliverables.(REFER TO THE SECTION 4.2.1 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF WEB SITE).
4.1.1.Corporate Video, Brochure and poster
A Corporate Video is available on
• project’s website http://www.plc-prog.eu/video
• Youtube channel http://www.youtube.com/watch?v=MlLqD5RExMQ&feature=youtu.be.
Projects’ brochure and poster can be downloaded from the website at the following links:
http://www.plc-prog.eu/files_general/1329385979_triptic_web.pdf
http://www.plc-prog.eu/files_general/1329385979_poster_web.pdf
(REFER TO THE SECTION 4.2.2 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF CORPORATE VIDEO, BROCHURE AND POSTER).
4.2.3.Pages on social networks for PLC-PROG project
Specific PCL PROG pages were created on the 2 most important existing social and professional networks Facebook and LinkedIn.
From the project’s website, it is possible to access the pages dedicated to PLC-PROG at the following links:
https://www.facebook.com/pages/PLC-Prog/143398389113402
http://es.linkedin.com/pub/plc-prog-software/47/462/35
(REFER TO THE SECTION 4.2.2 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF PAGES ON SOCIAL NETWORKS FOR PLC-PROG PROJECT)
4.3. Exploitation of results
4.3.1.PLC Application
Description of result
This result is a comprehensive assembly of the basic modules for PLC development and of the SCADA OO modules for communication. The complete PLC-PROG system has been tested and validated during the project.
The whole project is based on the general objective of developing an integrated framework for PLC programming development.
This is carried out by means of a number of intermediate objectives that will constitute a unique technological solution:
• Development of a PLC programming framework valid for a number of PLC and SCADA (Supervisory Control and Data Acquisition) brands.
This includes:
i) the development of a graphical approach to developing and documenting PLC programs in an intuitive manner;
ii) the development of post-processors for translating a PLC-PROG project into native PLC code for 3 major PLC brands proving compliant with the IEC-61131 standard;
iii) the development of post-processors for integrating the PLC-PROG project into 3 major SCADA commercial programs.
• Development of the basic virtual modules for proper PLC software development. The number of modules will be determined (no less than 20 for each of the test cases), and, by the beginning of the third year, a number of basic PLC development modules will be included in the PLC-PROG system.
• Development of Supervisory Control and Data Acquisition modules (OO-SCADA): these activities have been organized so as to generate the modules for communication between PLC and SCADA. In this way, communication and data integrity between SCADA and PLC are granted.
• Validation of the quality of the system. This step will be described after the validation has started, in the second draft of this document.
Possible exploitation
As already stated in the previous version, the PLC-PROG system has an outstanding innovation character with respect to state-of-the-art PLC programming tools and processes in use in the industrial sectors. The expected exploitation for this framework sees the PLCs of industrial machines programmed by means of PLC-PROG. The integral control developed of this machine has been tested, including the control and optimisation of the automated process, the acquisition and storage of the main process parameters to optimise it, the man-machine interface to operate and supervise the machine both locally and remotely, and the communication with factory wide intranets to exchange information with quality. The exploitation strategy for such a complete and commercially valuable result has been discussed with the whole partnership.
At this stage, it is agreed that both SMEs and the SME-AGs partners within PLC-PROG will be involved in the exploitation of this result - owned by the Associations, while the RTDs will have a supporting role only for the technical related aspects.
The possibility to patent this result in the EU countries of the Consortium has been evaluated. However, all the main results in the field of both PCs and PLCs programming, like the PLC-PROG software, are not considered patentable results in the EU.
The only country allowing to patent a software application is USA, which is, at this stage, out of the project target, and the procedure proves highly expensive; this is main reason why the Consortium members will not take into consideration the application for a patent on the PLC developed application at least a very preliminary exploitation stage.
However, copyright enforcement and trade mark registration have been proposed for PLC-PROG applications; a deep analysis of the effective functioning and comfort in the use of the programming environment have been performed and the following assessment led to a clearer context for copyright/trade mark registration actions. Stated this, the interest of the SMEs/SME AGs regarding this action is high and has been explicitly discussed during the exploitation sessions held during this last year of the project. (REFER TO THE SECTION 4.3.1 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF PLC APPLICATION).
4.3.2.PLC-PROG Code Generator
Description of result
The post-processors allows to translate a PLC-PROG project into a native PLC code for the three main brands of PLC that proved compliant with the European IEC-61131 standard. The development of predefined templates for the post-processors have been finalized during the third year of the project.
The structure of PLC-PROG system has been described in principle in the documents reporting about the architecture, the functioning and the PLC programs development schematics.
The code generator plays an important role in the functioning of this innovative system: in fact, the development of the program starts in the IDE with a graphical approach. On the PLC side the system translates the graphical view into generated code in a .txt format, which comes to be adapted in a second time by the post-processors for the chosen brands.
Possible exploitation
The project partners evaluated the possibility to protect this software result by Copyright, so as to prevent any part of PLC-PROG programming framework from being copied or replicated.
At the moment, no action has been undertaken for this protection; application and evaluation of the copyright application process for this result was already performed during the second year of activity, and it was agreed among the partners to further investigate how the code generator in PLC-PROG could be protected behind the end of the project. (REFER TO THE SECTION 4.3.2 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF PLC CODE GENERATOR).
4.3.3 PLC-PROG Post Compilers
Description of result
The Multi-Brand Compiler System, once the code has been generated from the Generator described in Result no. 2, allows to adapt the .txt to each specific brand characteristics, and this programming list is finally compiled into the machine code by the specific brand compiler.
Possible exploitation
The Multi-Brand Compiler System, as well as the previous two results of PLC-PROG, has been planned to be protected by Copyright, even if no action has been undertaken for this protection. Indeed, the relative application have been agreed among the partners, and further investigation of how this result could be protected has been planned to be carried out after the end of the project. (REFER TO THE SECTION 4.3.3 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF PLC-PROG POST COMPILER).
4.3.4.Exploitation Strategy
In order to support and justify the strategy designed for the exploitation of the PLC-PROG project results, it is worth to preface as the current main beneficiaries (both AGs and SMEs involved) confirmed strongly own belief and, therefore direct commitment, about the relevant impact achievable by the adoption and deployment of PLC-PROG system, mainly in terms of increase in SMEs’ competitiveness, economic benefits for the members of the Consortium and impact on standards. In particular:
 PLC-PROG system will provide the SMEs that use automation with a cost effective, practical PLC programming tool, optimising resources and resulting in increased profitability and competitiveness.
 the PLC-PROG system will not only hasten the development cycle, but mostly reduce the errors and number of “bugs” that are almost inherent in modern software development by allowing the use of pre-built and fully tested objects (or modules).
 it will also significantly enhance the knowledge-base with the use of the OO approach and improve the efficiency and productivity of automation engineers, reducing programming times and installation errors.
 Brand-independence feature will allow partner SME end-users to more easily update their facilities by taking advantage of new, lower cost and more productive PLC models launched in the market by any brand, resulting in better price-performance ratios.
In this vision, the main interest for the 3 Associations involved: GAIA, SEPE and BPF; is the opportunity to offer to their members alternative programming products and their “customised” applications (additional and specific functions, modules and libraries) as well as a set of additional and professional services aimed at assuring an high level of customers/users satisfactions (such as: technical support and assistance, coaching and training sessions, etc...) besides a continuous updating about the most relevant outcomes and finding coming from the several PLC domains.
On the other hand, the SMEs currently involved will also benefit directly from the adoption of the PLC-PROG system which will allow them to gain competitiveness and to increase profitability by improving PLC performance, providing support through operator specific information and graphic design accessibility, lowering operating costs and enhancing maintenance management. Moreover, this other main category of beneficiary will be actively involved in the exploitation strategy by providing own technical expertises for supporting the SME AGs’ provision and, therefore, to assure the most completed set of capabilities in the PLC programming and application fields.
Based on these results’ exploitation purposes, the entire Consortium carried out an assessment analysis of the main results planned in order to define an exploitation strategy aimed at valorising all capabilities and expertises available in a valuable way as well as to assure a prosecution of the activities even behind the end of the project.
As main outcome of this process, the 3 SMEs Associations assessed the approach which foresees to set up a clusterised new entity which will be able to act as main interface among the industrial environment (demand side) and the research and scientific community (supply side). In particular, this PLC-PROG cluster activities shall be driven by promoting the scientific and technical exchange, and information between universities, enterprises and common final users in the field of PLC programming and industrial automation as well as, the maintenance and further development of the programming platform resulting from the research project.
Based on the main outcomes coming from the market search and business analysis performed during the project, the Consortium to evaluated the most effective legal entity to be established in order to assure the highest level of project results valorisation and partners’ benefits.
In particular, a trade off analysis was provided between 2 main business legal forms: the Joint Venture (mostly a Co-operative Joint Venture) and the Associations Cluster (mostly based on the establishment of Framework Agreement) with the aim to address the final choice toward the type of legal entity able to assure the implementation of the most profitable commercialized strategy for the set of products identified by the PLC-PROG partners.
At this regard, and based on the main interactions occurred among the main beneficiaries as well as all the legal constraints considered, it is possible to anticipate that the most suitable option at this stage is the establishment of a Base Framework Agreement, reflecting the way by which the PLC-PROG system will be commercialized and, therefore, the business agreements to be defined among the AGs (co-owners of the results) and the associated SMEs (main licensees), which will act as technical services providers.
As following step, the entire Consortium worked on the design of a valuable business model (refer to the PLC-PROG exploitation strategy diagram) identifying the business and cooperation flows among the main beneficiaries and their relative type of interaction (agreements) and on the basis of the following objectives/assumptions ,
• Maximising the expected benefits coming from development and adoption of the PLC-PROG platform by putting in place all the expertises and knowledge available within the Consortium.
• Creating a cooperative working framework involving all the partners, even behind the end of the research project, with the aim to confer to the SME AGs an active exploitation role and, therefore, to give the primary opportunity to their SMEs to acquire relevant technical and commercial advantages in own market segments.
• Establishing the Quality Assurance programs and Perform Quality Control of the promoted Open Source system, and its further extensions.
• Maintaining and updating the guidelines for using the PLC Open Source License and closely monitoring of the market for compliance and unauthorised use of the PLC-PROG programming middleware.
• Supporting the establishment and the expansion of a PLC community (made up of final users, software developers, industrial and research organizations) in order to increase the promotional lever of the PLC-PROG results as well as a wide use and adoption of the system developed.
At this scope, it is worth to underline that:
 the design process has been carried out in order to assure a completely coverage all the needed role and expertise identified in the targeted value chain (from the production to the customer services operations) aimed to the commercialization and diffusion of the PLC-PROG system implemented;
 the business model obtained represents the optimal condition to exploit the project results taking into account only the expertise and capabilities of the involved partners (including the RTD Performers);
 the evaluation to get involved other Third Parties as services provider (mainly referring to the commercialization and maintenance operations) after the end of project is also in considered in order to assure a proper starting-up of the activities related to the distribution and commercialization of the product and services defined.

Route for Commercialization and Promotion
In this context, it is worth to underline as the proposed exploitation model has been designed according to a specific distribution model (Open Source) selected by the Associations as well as a well composed set of PLC-PROG product and services:
1. PLC-PROG system: it will be offered and distributed in open source modality to the members of the PLC-PROG cluster and external users, and it includes the IDE, all the libraries and functionalities implemented during and behind the project. At this stage, 2 potential commercialisation scenarios have been identified according to the needs of the potential users/client:
I. PLC-PROG cluster’s member: this type of user involves all the current members of the 3 Associations and the new ones will decide to join in. These members could make an unlimited use of system (and its potential updates and new components) within the same current subscription fees already paid to own Association through the acceptance of the use license’s terms. In additional, they will have available a professional assistance service, training material, free participation at courses and coaching workshops, reduced consulting fees for the development of specific SW components or libraries.
II. PLC external users: this category involves all the users will decide to not join in the AGs but are interested to use the system in any case for own specific needs. In this scenario the AGs will provide a customised offer of products services against the payment of subscription fees. These fees will be defined on the temporal basis (i.e. annual fee) or in relation to the number of sectorial functionalities and libraries requested (i.e. wood, plastic, metal, etc...); they will also include the relative assistance services as well as training material and participation at courses/workshops.
2. PLC-PROG professional services: since the users of PLC-PROG could need to request the development of “customised” components or the provision of technical and training consultancies for their business scopes and operation field, the AGs, with the support of the SMEs involved, will design and provide a set of professional consulting services on demand, mainly aiming at:
I. developing specific SW components and sectorial libraries, including the opportunity to make use of a dedicated technical assistance and maintenance services:
 consultancy, tech support and certification of engineers will be available through specialized dedicated companies and it includes the validation of new objects, design and best practices, and support on applications;
 tech support includes online and offline 1-2-3 levels of support on product;
 centers must include competence with laboratory with the different PLCs supported.
II. organizing targeted training courses or coaching workshops, including the provision of relative material. The Training is necessary for the proper use of PLC-PROG and it can be done at 2 levels:
 Basic Level (1 day)
o This is a 1-day basic training to start with PLC-PROG
 Certified Training Course (2 days)
o Certification is necessary to ensure quality of the projects for the end users
o This training includes an exam
o Certification promotes PLC-PROG community
o A list of certified engineers and companies will be published
o A Certification program, materials and promotion must be created
At this purpose, a proper assessment was provided by the Consortium with the aim to define a valuable pricing strategy on basis of the exploitation and distribution strategy identified for the future commercialization and distribution of PLC-PROG products and services; in particular, the following preliminary assumption were agreed:
Basic PLC-PROG version
-Free version
-Includes only IDE
-Limited in functionality
-No certification
-No support
-Designed for testing and evaluation
-Valid for 1 year renewable
Professional PLC-PROG version
-Includes IDE + PostProcessor + SCADA
-Annual price under contract
-300 € year for 1 user
-500 € for > 5 users
-1000 € year for > 5 users
-Includes 1 free basic training
-Includes tech support
-Valid for 1 year renewable
PLC-PROG Corporative version
-For maintenance purposes
-Only for end users
-No date limit
-Price: tbd
Basic Training
-1 day
-200 €
-Includes training materials
Certified Training
-2 days
-800 €
-Includes training materials
The strategic decision to adopt an open source software marketing and distribution channels will greatly increase the like hood that PLC-PROG reaches the broadest market possible, and levels the playing field with the larger, better-heeled competitors, whilst, as detailed above, the revenue model for AGs will be one based on a service revenue stream rather than a licence revenue stream (e.g. specific program extensions or technical support for PLC-PROG end-users). In fact, the PLC-PROG open source software will be copyrighted, but released under licences which allow free re-distribution.
Moreover, a proper trade mark analysis will be carried out after PLC-PROG project, and initial distribution will take place through the partners' existing customer base, as well as through contacts developed during the dissemination activities of the project. At this purpose, it is worth to underline as the efficient provision of the defined products and services will be assured by the PLC-PROG AG’s beneficiary through the creation of a proper web platform which will act as main interface of dialogue and distribution channel with associates and external clients.
The operational management and the maintenance of this platform, as well as the development of its further improvements and functionalities, will be handled by the AGs directly, which could also count on the technical capabilities and expertises assured by the SMEs (LOGITEK, MIKON, DOTSOFT), as well as on the scientific advises coming from the group of RTD Performers. (REFER TO THE SECTION 4.3.4 OF THE ENCLOSED PDF FILE FOR A MORE DETAILED DESCRIPTION OF EXPLOITATION STRATEGY)




List of Websites:
Project website: www.plc-prog.eu

Coordinator details
Name: Mr. Valerio Grosso
Organisation: Labor Srl
Address: Via Giacomo Peroni 386- 00131 Roma (Italy)
Web site: www.labor-eu.net
Tel: +39 06 40040354
Fax+39 06 40040357
E-mail: v.grosso@labor-roma.it


SME Associations participants:
• Association of Industries For Elextronic and Information Technologies in the Basque Country - GAIA (SPAIN) http://www.gaia.es
• Federation of Hellenic Information Technology and Communication Entreprises – SEPE (GREECE) http://www.sepe.gr
• The British Plastics Federation – BPF (UK) http://www.bpf.co.uk


SME participants:
• MIKON SYSTEMS (ROMANIA) http://www.mikon.ro/
• LOGITEK SA (SPAIN) http://www.logiteksa.com
• DOTSOFT OLOKLIROMENES EFARMOGES DIADIKTIOY KAI VASEON DEDOMENOM AE (GREECE) http://www.dotsoft.gr
RTD Performers:
• LABOR SRL (ITALY) www.labor-eu.net
• UNIVERSIDAD POLITECNICA DE VALENCIA (SPAIN) http://www.upv.es/
• CENTRE DE RECERCA I INVESTIGACIO DE CATALUNYA S.A. (SPAIN) http://www.cric.cat