Iot
Iot
Iot
Igor T. M. Mendona
Embedded and Distributed System Group - IFSC- Brazil Mauro Ramos Av, 950. 88020-300. Florianpolis SC
Adriano Regis
Embedded and Distributed System Group -IFSC- Brazil Mauro Ramos Av, 950. 88020-300. Florianpolis SC
ABSTRACT
The integration between programmable logic controllers (PLCs) and supervision and control softwares has been a critical factor for industrial production management. The goal of this work is to show a new approach for development of an integration framework for industrial processes using the best practices of Service Oriented Architecture (SOA) and the recent integration technology called Devices Profile for Web Services (DPWS). The main result is a functional prototype used in a small-scale bottle filling industrial process, using DPWS technology. Through this scenario was possible to validate the models feasibility on the industrial environment, making the models performance evaluation and observing the characteristics of notification, description, discovery, reporting and control messages.
Keywords
Internet of Things, Manufacturing Automation, DPWS, Web Services.
1. INTRODUCTION
The growing need for effective integration and secure data collection from devices installed on the workshop in order to improve the decision making in corporations, demands innovative concepts of production management to increase flexibility and modularity of systems. This is only possible using information technology and communication. The future of manufacturing industry can be characterized mainly by frequent change of market demands, the time to market pressure, the continuous flow of new emerging technologies and especially the global competition. Thus, it is of great importance to adopt flexible and adaptable technologies [1]. The operating cost of a plant is strongly linked to the facilities installation and maintenance. Whenever an industrial process is altered due to the replacement or modification of a product, reconfigurations should be performed with risks of production interruption, increasing the operating costs. Existing technologies have contributed so far to the development of industrial processes, but its features do not include the new requirements demanded by industries. According to Souza [2] the main problem is that these technologies depend on each device having a controller driver to communicate with a system database. This driver provides information for the communication device with a given system. These solutions are restricted to the system and device supported by these driver or resource, and strongly depends on the connectivity between the device and the database. There is a need for technologies to improve workshop integration with information management systems, with a
direct, independent and transparent platform. A recent alternative is the use of Service-Oriented Architecture (SOA) that, according Papazoglou [3]: "It is the characterization of distributed systems, where the system's functionality is exposed through an interface that allows description, location and invocation through a standardized format." The SOA has as main objective, the ability to connect a wide variety of systems without the use of proprietary software in order to achieve a truly open interoperability. SOA by itself is a concept that allows two programs that were written in different languages and are running in different operating systems, to communicate in an easier integration by adopting an open and independent platform. Within this context, this paper aims the development of a model for the integration between existing devices in industrial environments with supervision and control softwares using an actual paradigm, The Internet of Things [4]. In order to achieve this, we used the concepts of Service Oriented Architecture using the Devices Profile for Web Services DPWS [1].
2. INTERNET OF THINGS
In the present study, we adopted a new approach to integrate data collected in the workshop with enterprise information management systems, using as intermediary software layer (middleware) by use of Web technologies and software architectures that adhere to a new paradigm of development called "Internet of Things" - IoT.
2.1 Definition
According Atsori [4], IoT is a new paradigm that is gaining importance especially in the modern system of wireless communication and identification systems for radio frequency tags (RFID). This new approach favors the development of applications that integrate physical systems such as sensors, actuators, mobile devices and smart phones with an environment of cooperation and interoperability. In this sense, IoT appears as a "glue" that allows integrating diverse environments. Devices used in everyday life, like sensors and actuators are integrated via the Internet communication systems wired or wireless. Among the main elements used in the implementation of IoT there are the adoption of intermediary software layer (middleware) based on SOA and should be performed in the physical device. In this work, the Devices Profile for Web Services (DPWS) specification was adopted as a middleware to develop an application based on IoT. The implementation of DPWS adopted in this work was based in the DOT NET Micro Framework (NETMF) ported to a development platform
20
International Journal of Computer Applications (0975 8887) Volume 51 No.11, August 2012 based on a microcontroller with compatible ARM 7 core, called NETduino Plus. The so-called hosting service is an important part of the DPWS model. Several of the non-functional aspects that work in the evolution of application services are concentrated on hosting service components, on the form of built in services. Services that enable dynamic discovery and exchange of metadata (WSDL interfaces and their attachments as WSPolicy, XML Schemas) are examples of these services based on the component device. The engine itself of the Protocol SOAP 1.2 is also part of the component hosting services. The hosted services are specific WS applications and provide the behavior of the application. A device may have several hosted services, each having their own endpoint and that's where the name hosted service comes from. These hosted services are devices dependent. To simplify the use of its hosted services, the discovery service also can be included. The hosted services involve four areas: discovery services, event services, description and messaging services. Dynamic Discovery Services are used by devices to advertise their services on a network and be discovered by customers. The WS-Discovery protocol uses the stack of SOAP on the UDP / IP multicast to transmit and listen to the messages of discovery. On W3C Recommendation [7] are defined the publishing services (event sources) and the data record on an event source. The combination of application services included with these services allow customers to sign up and receive asynchronous messages (events) produced by hosted services. Metadata for hosted services are available to customers through the use of WS-Metadata Exchange specifications. The message exchanges occur following the specifications of SOAP 1.2, as previously reported. The header information follows the WS-Addressing specification, enabling their availability for any transport protocol (HTTP, SMTP, TCP, UDP, etc.).
3. DPWS
The DPWS defines a minimum set of functionalities that allows devices with limited computational resources to execute Web Services (WS). This minimal set is basically formed by an exchange of secure messages provided by discovery services, notification services, events services, description services, allowing direct implementation on embedded devices, in general, without compromising compliance with the standardization of WS.
3.1 Architecture
The DPWS protocol stack is shown in Figure 1 and is composed of standard protocols and some WS extensions. An important detail, shown in Figure 1, is that the specification for the DPWS [5] defines that it needs SOAP and WSDL in version 1.2.
Specific Protocol Stack WS-Discovery WS-Eventing
SOAP 1.2 WSDL 1.1, XML Schema HTTP 1.1 UDP TCP IPv4/ IPv6
3.2 Standardization
The DPWS specifies the SOAP-over-UDP and Web Services Dynamic Discovery [5]. It was initially developed by a consortium composed by Microsoft, Ricoh, Intel and Lexmark, currently standardized by OASIS, through a technical committee under the alias WS-DD. Currently the three specifications are in version 1.1
Invocation
Event Services
- Subscription management
Discovery Services
- Local metadata publishing - Remote metadata cache - Address map
HTTP port
Soap 1.2 WS-Addressing WS-Transfer WS-MetadataExchange WS-Eventing
The messages sending over the Internet is difficult due to the presence of firewalls [9][10];
21
International Journal of Computer Applications (0975 8887) Volume 51 No.11, August 2012 Another technology like DCOM is the Common Object Request Broker Architecture (CORBA) that is platform independent, but contains some deficiencies among other DCOM applications. With this in mind, the integration of PLCs with other devices in the industrial environment, using cross-platform technology that includes features as: self-description of their function, self-discovery, and events orientation, is the main challenge of this work.
22
International Journal of Computer Applications (0975 8887) Volume 51 No.11, August 2012
Security Service
create context send policy
Policy Locator
search registry
Policies cache
MANAGER
Security context
notify
Policy Processor
create
Security Engine
send
Encryption
request request
Signatures
Figure 5. Features Security Service Table 1 describes the Security Service modules presented in Figure 5 and the features of the elements shown in the same figure. Encryption and signature modules are implemented as a need for the application developed in the device and other modules are fixed elements of the architecture. The reason for the variation of signatures and encryption APIs is the diversity of existing encryption algorithms. Each device may have its implementation according to their computing power and security requirements. Table 1. Security Service Modules Figure 4. PLC Web service Class. The service was modeled in the form of class "CLP Service", which inherits the features of a hosted service "Dpws Hosted Service". Modules Encryption and Signature APIs Function These modules are available in the form of libraries and are responsible for data encryption and decryption and rules for signing and verification, respectively. It implementation will vary depending on the needs and capabilities of the device. For each secure channel established with the device, is created a security context stored in the form of security policy (WS-Policy). This module keeps the policies metadata repository of the service interfaces that compose the devices recent knowledge. This component is used for storage and retrieving policies. It identifies and stores in the local cache the policies shared with known peers devices. Performance comparison of policies. In the process of establishing a secure channel, this module will create a valid security context. Encrypts, decrypts, sign and verify signatures in SOAP messages according to the WS-Security. Link between the components responsible for making decisions and answers to their peers. This module intercepts the messages and defines the need to implement mechanisms and policies that act on the messages.
Policies Locator
Policies processor
Security Engine
Manager
23
International Journal of Computer Applications (0975 8887) Volume 51 No.11, August 2012
5. RESULTS
To evaluate the proposed manufacturing management system based on DPWS, it was assembled a prototype bottle filling system according to the diagram in Figure 6.
service. Through it, we can get and set the valve opening time and amount of bottles to be stored per tray. It is also possible to obtain the number of bottles through a triggered event by every completed tray. The performance evaluation of the data exchange in an Ethernet 100 Mbps network was performed. In order to evaluate the performance of the DPWS messages exchange it was used the software Wireshark [15]. This software is a network analyzer that captures packets sent and received from the network card, documenting the arrival or departure of a package.
Figure 6. Test Apparatus. The process starts with the engine running, which is stopped when the bottle reaches the sensor valve (SV). In this point other engine opens the valve (LV) in a preprogrammed time valve interval (TV). This time (TV), sets the amount of liquid to be loaded into the bottle. When the timer reaches the value expected, the valve will close and the motor continues until the end line sensor (SC), indicating that the bottle is in the box. Finally when the last bottle is placed in the box, it will be activated the full box LED (LC), which indicates that the bottle tray is complete. The DPWS Service is responsible for supervision and control and supports the following features: Adjustment of open valve time and number of bottles per tray; Start of production; Production Stop; Sending notices to each full tray completed. To generate the notification full box complete", we use an event service, installed in the device. The DPWS client is responsible for the service discovery, sending the control messages and receiving the full box completed notifications. Whenever a device containing a DPWS service is connected on the LAN, it sends a hello message in the form of IP multicast to any DPWS customer present on the network. The DPWS client program responsible for receiving this notice was called "Explorer". In the Explorer are listed the services of DPWS network and detailed information about each one. With the "Explorer" each client can conduct a network survey (probe) to verify the existence of all devices on the local network. In the Explorer, a reply message verifies the existence of a particular device and gets a description message of the hosting and hosted services. The DPWS client captures the announcement of the CLP service and can consume the service called "bottler", where they will control and supervise the manufacturing process. Here are the main operations used by the available DPWS Observing Table 2, we can apprehend that trying to control DPWS messages with the inclusion of the security service has resulted in a considerable lag, consuming over a second to simple control messages. But the event messages, that avoid the network scans, are very fast, taking only 212 milliseconds to be completed. Other measurements were performed with the same mapping, but using OPC in place of Web services. It was found that the reading of the PLC tag (variable) consumes about 480 milliseconds. Similar values were found in the literature [16]. This time is shorter then the regular read Holding-Registers time (two way). However, the OPC has no service notification of events such as the DPWS. The event notification to the process supervisory uses UDP protocol, which explains the low latency found in table 2. So with this feature, the use of the DPWS becomes quite feasible. Furthermore, OPC dont have security implementation, contrary to the system developed on this work. With this tool, the time between request and response messages of DPWS was measured. The results are shown in Table 2.
Table 2 Messages time response Operation Connection Time (seconds) No connection 0.355 0.357 Request Response (seconds) 1.180 0.547 0.872 Total Time (seconds) 1.180 0.902 1.220
Probe Restart (oneWay) readHoldingRegisters (twoWay) presetSingleRegister (twoWay) subscribe RegisterChanged (Eventing)
0.349
0.798
1.147
0.361 0.023
1.109 0.052
1.471 0.211
6. CONCLUSION
The use of SOA and IoT paradigm for integration between factory plant devices and supervision and control systems is a promising alternative. The use of middleware like DPWS to
24
International Journal of Computer Applications (0975 8887) Volume 51 No.11, August 2012 this integration showed a poor performance for applications requiring lower latency. However, the objective of this work was to test and to validate the functionality of the model. As a future work, is proposed the study and implementation of a new approach to supervision and control of industrial networks employing the new OPC-UA specification [17], with SOA support for industrial appliances. The new OPCUA uses a novel protocol stack that provide Web Services on devices on the similar way of our DPWS approach, but OPCUA have a more compact and efficient TCP-IP specific TCPIP stack. http://www.w3.org/TR/ws-addr-core/, 19/10/2009. Last access
[8] W3C Working Draft, 2009. Web Services Eventing (WS-Eventing), online: http://www.w3.org/TR/wseventing/, Last Access 20/10/2009. [9] Pietrzak P. Kyusakov R. Eliasson, Jens. 2011. Roadmap for SOA event processing and service execution in realtime using Timber. 2011 IEEE International Symposium on Industrial Electronics (ISIE 2011): Gdansk, Poland, 27 - 30 June 2011. [10] Kapsalis, V. et al 2003. Architecture for Web-based services integration. The 29th Annual Conference of the IEEE Industrial Electronics Society (IEEE-IECON03). Virginia; pp. 866- 871. [11] Henning, M. 2006. The Rise and fall of Corba. ACM QUEUE, New York, v. 4, n. 5; pp. 28- 34. [12] Walker, Cris. Getting Started With Netduino. OReilly Media. 1st Edition. February. 2012. [13] Gandolpho, C. 2008. Cresce uso de SOA. Info Corporate. <http://info.abril.com.br/corporate/infraestrutura/cresceuso-de-soa.shtml [14] Mendona, I. Fraga, J. da S. Dias, R.A., 2010. Extenso de Segurana para o Perfil DPWS. X Simpsio Brasileiro em Segurana da Informao e de Sistemas Computacionais. Fortaleza.CE. Outubro de 2010. [15] Sanders, Chris. The practical packet analysis. Starch Press San Francisco. 2007. [16] Galli, P. Microsoft to Open Source the.NET Micro Framework. Port 25: The Open Source Community at Microsoft, 16 November 2009. Disponivel em: <http://port25.technet.com/archive/2009/11/16/microsoft -to-open-source-the-net-micro-framework.aspx>. Last Access: 29 May 2010. [17] Marcin Fojcik and Kamil Folkert. Introduction to OPC UA Performance. Communications in Computer and Information Science, 2012, Volume 291, 261-270, DOI: 10.1007/978-3-642-31217-5_28
7. REFERENCES
[1] Jammes, F. and Mensch, A. and Smit, H. 2007. ServiceOriented Device Communications Using the Devices Profile for Web Services, no 21st International Conference on Advanced Information Networking and Applications Workshops (AINAW'07), Niagara Falls, Ontario, Canada. [2] Souza, L. M. S. et al. Socrades 2008. A web service based shop floor integration infrastructure. Proc. of the Internet of Things (IOT 2008). Springer; http://people.inf.ethz.ch/mkoehler/papers/IoT08.pdf. [3] Papazoglou, M. P. (2003). Service-Oriented Computing: Concepts, Characteristics and Directions. Fourth International Conference on Web Information Systems Engineering (WISE'03). Roma; [4] Atsori, L. and Lera A. and Morabito, G. 2010. The Internet of Things: A survey. Computer Networks. Number 54; pp 2787-2805. [5] Oasis. Web services discovery and web services devices profile: (WS-DD). 2009. http://http://www.oasisOpen.org/committees/tc_home.php?wg_abbrev=wsdd>.Last Access 2012 April. [6] Mensh, A. Rouges, S. 2009. DPWS Core Version 2.1: User Guide. Version 1.0, April 14, 2009. On-line: https://forge.soa4d.org/docman/view.php/8/45/DPWSCor e+User+Guide.pdf [7] W3C Recommendation, 2006. Web Services Addressing 1.0 Core, May 2006, on-line:
25