An Open Source Framework For Smart Meters: Data Communication and Security Traffic Analysis
An Open Source Framework For Smart Meters: Data Communication and Security Traffic Analysis
An Open Source Framework For Smart Meters: Data Communication and Security Traffic Analysis
fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TIE.2018.2808927, IEEE
Transactions on Industrial Electronics
IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS 1
Abstract—In this paper, it is proposed a structured methodol- increase greatly data network traffic, assuming a relevant role
ogy to define the architecture for a communication framework for the evaluation of data exchange on smart metering and
with multi-frame capability, which can be embedded in a resi- AMI [5].
dential smart meter hardware for Smart Grid applications. This
framework is based on TCP/IP protocol, and it is considered There are several communication technologies such as
that data is exchanged via wireless. The architectural model Bluetooth, Power Line Communication (PLC) and wireless
was based upon the state of the art in Software Engineering, mesh networks using ZigBee under consideration with no
making use of Design Patterns and the principles of low coupling clear consensus for a standard so far. Some work has gotten
and high cohesion which result in a solution that is both, more acceptable results using simulation analysis for mesh networks
reliable and maintainable. A security module is also provided
and the framework performance is evaluated, in terms of packet and ZigBee [5], [6], whilst some research on data reliability
throughput and computational effort of the security layer on the related to AMI has presented good results on analyzing
processing device, via practical experiments of some laboratory residential load control [7], [8].
scenarios. Furthermore, errors on some frames are introduced In addition, side-by-side with data reliability issues, there
in order to evaluate the feasibility of this framework in real is a special concern on security aspects of grid data traffic,
field applications. Results show that this framework architecture
supports acceptable transfer rates even with extra computational where cyber-attacks may cause eavesdroppers to get access
cost due to the use of data encryption and separated processing on sensitive information collected by smart meters, which may
modules, making it a feasible proposal for the considered appli- result in financial losses to companies or householders.
cation context. In this sense, several recommendations and guidelines were
Index Terms—client/server framework, data exchange, embed- proposed (and some of them are still under development), such
ded algorithm, encryption, private key, smart meters. as European Union Directive (2017/27/EU) which establishes
a common framework of measures for the energy efficiency
within EU and security issues for smart meter and data
I. I NTRODUCTION
communication, and privacy of final consumers [9]. On United
0278-0046 (c) 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TIE.2018.2808927, IEEE
Transactions on Industrial Electronics
IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS 2
0278-0046 (c) 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TIE.2018.2808927, IEEE
Transactions on Industrial Electronics
IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS 3
on the framework services in order to make it capable of is vulnerable of being analyzed by untrusted entities. Hence, a
sending pieces of information beyond the MTU limitation in a framework providing a common and extensible interface, with
controllable way. Taking this into account, for the framework multi-frame and security capabilities, is attractive from a safe
proposed on this research, the Client/Server architecture was Data Analytics perspective. Considering this, a security model
modeled first, since it provides a better control on the measured is proposed regarding usual encryption algorithms related to
throughput as well as the security issues described on the next data exchange, which are summarized as follows:
section. • Symmetric-key algorithm – it considers that both sender
The object-oriented implementation proposed on this paper and receiver share a unique key, which is used to encrypt
enfolds a Client/Server architecture with synchronous data or decrypt the message. The drawback of this algorithm
exchange and support for high speed multi-frame traffic. Thus, is that if a third party has access to the key, the security
one of the key aspects of the Server Application is, precisely, of data is lost;
supporting multiple connections. Therefore, the implementa- • Asymmetric-key algorithm – it is also called “Public-
tion must have multi-threading capability. Hence, it is possible key cryptography” as it makes use of two distinct keys
to model the connection mechanism as well as the iterations (mathematically related), a public key that can be dis-
and procedures involved in a Client/Server connection. tributed and a private key that must be safely stored by
These procedures can be understood by the sequence di- its owner. A message encrypted with the public key can
agram depicted in Fig. 1, where it can be noticed that the only be decrypted by its correspondent private key and
Server creates a socket object through the Socket() method, vice-versa.
followed by the TCP initialization by using the methods Bind() Thus, the security protocol proposed in this paper follows
and Listen(). Then, the Server stays on a wait state until a the three-step handshake depicted in Fig. 2.
Client establishes a connection through the Accept() method.
Meanwhile, the Client application establishes a connection
with the Server through the Connect() method, after creating
its own socket object. At this moment, the Server creates a
thread for handling the connection with the Client and returns
to listen for new connections.
0278-0046 (c) 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TIE.2018.2808927, IEEE
Transactions on Industrial Electronics
IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS 4
metric key algorithm. The algorithm used for Symmetric- encryption key for UDP message transfer (the key is also
key encryption/decryption is the AES (Advanced Encryption encrypted as described below).
Standard), a block cypher standard; whilst the algorithm used The payload is transferred on the pDataBuffer array and the
for Asymmetric-key encryption/decryption is the RSA (which attributes iFrameIndex, iTotalFrames, and iTotalbytes provide
stands for Ron Rivest, Adi Shamir and Leonard Adleman) the dimension of this payload. Finally, the iDataBufferLength
[26], based on prime numbers factoring, widely applied on is the size of data on current frame, which will be also used
communication networks. for security purposes.
Finally, the “certificates” used for client and server instances The extensibility contribution of this paper regarding the
are Global Unique Identifier (GUID) strings which can be framework communication model is provided by the Abstract-
generated and validated for experiments. However, this kind of Factory Design Pattern [28] which is depicted in Fig. 4.
certificate is not recommendable for real applications –where By using this pattern it is possible to create several concrete
a digital certificate provided by a certification authority is the instances of Clients as well as Servers (respectively CSock-
usual protocol to be followed. But, since one of the purposes etClient and CSocketServer) implementing the methods of
of this paper is to evaluate the performance of encryption algo- basic interfaces (CSocketClientBase and CSocketServerBase,
rithms implemented on the multi-frame architecture embedded respectively). This pattern allows interoperability, since only
on the smart meter, from technical perspective, the use of the concrete classes have to deal with issues such as Socket
encrypted GUID does not affect the results of the realized communication, which has distinct procedures to be called
experiments. when running on Windows or Linux, for example. In addition,
the existence of distinct factories on the model provides a
V. O BJECT-O RIENTED I MPLEMENTATION OF F RAMEWORK decoupling between Server and Client behaviors and can be
The benefits of Object-Oriented Programming as well as extended individually as needed (to create a Broker Server, for
design patterns on systems’ modeling –to ensure reusability, instance).
robustness, expansion and maintenance of a system– are
widely known [27], [28]. Therefore, it is important to mention
that the following model makes use of techniques available
on Software Engineering in order to have an extensible model
with low coupling level among the modules, which can be
incrementally implemented whenever necessary. In addition,
principles such as low coupling and high cohesion, when
correctly applied to an architectural design, may result in a
solution that is more reliable and maintainable [29], [30].
In this sense, for data exchange, the basic transport datagram
of the framework is depicted in Fig. 3.
0278-0046 (c) 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TIE.2018.2808927, IEEE
Transactions on Industrial Electronics
IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS 5
An additional library was created to provide socket com- purposes. In addition, by modeling an architecture based on a
munication and data access, namely SecurityLibrary, which is common Operating System (OS), rather than an specific Real-
depicted in Fig. 6. The security package is composed by Proxy Time Operating System (RTOS) or CPU instruction set, it may
Design Pattern classes, which encapsulate the basic encryp- attain a larger set of platforms with minor constraints.
tion/decryption services needed by the framework, where the Moreover, it is important to point out that while the man-
cryptographic algorithms are implemented by the openSSL, an ufacturing characteristics of a commercial smart meter must
open-source toolkit. ensure a set of standards compliance, this paper has focused
on the design of a framework model for data processing and
transfer, which may be embedded in a low-cost customizable
hardware.
Regarding the proposed architecture, the smart meter is able
to execute specific and more complex tasks in a timely manner
as presented in [31] and provides a middleware interface for
hardware access so-called Hardware Abstraction Layer (HAL).
In this sense, developers may focus only on meter operation
and data processing, while data transfer and security is already
assured by the previously defined interface proposed in this
paper.
VI. A NALYSIS ON DATA PACKET T RANSFER R ATE
In order to evaluate the reliability and feasibility of the
multi-frame Client/Server architecture proposed in this paper,
a set of tests was performed taking into consideration scenarios
related to data traffic as well as packet loss. On both scenarios,
the Client application was running on the Beagle Bone Black
Fig. 5. Framework client/server model.
whilst the server was running on a Desktop Intel Core-i5-
[email protected] GHz CPU with 8.0 GB RAM and Windows
10. The router used on this configuration is an IEEE 802.11g
wireless access point for 10/100 Base-T connections.
The parameters of each application can be configured
through a file of properties and, for the first experiment,
the SSL encryption was disabled to work as a reference
measurement. Both applications were capable of saving the
binary data on a file for further comparisons. Considering
this, it was possible to verify through experiments if both
encrypted and decrypted data were being transferred without
errors, avoiding false positives.
For Client and Server applications, it is necessary to config-
ure the Server IP and Port used for connection. Additionally,
to configure the Beagle Bone Black as a Client, it is necessary
to setup the sampling time which simulates data acquisition
on its analogical input. Since the main purpose of this paper is
to evaluate the performance of encryption algorithms, the data
frames were generated at the Client application by considering
the following rule:
Fig. 6. Security model. N = Ts × 16000, (1)
All the models were implemented in C++, using the Stan- where N is the number of samples to be sent to the Server with
dard Template Library (STL), C common libraries, and POSIX each sample being a random number generated on the range
functions, which simplifies the interoperability across distinct [0,1,800], and Ts represents the sampling time. This approach
platforms. Therefore, the classes were developed on Qt Creator corresponds to a sampling rate of 16 kHz, which is used to
v3.5.1 as IDE and the final applications were cross compiled capture analog signals on the Beagle Bone Black board A/D
for Linux (ARM Architecture) and natively compiled for converter that operates between 0 and 1,800 mV. Therefore,
Windows. Thus, the same firmware can run on a PC or the transferred data is composed by integers, each one of 4
embedded in a prototyping device. bytes long, then, for a Ts = 10 s, there are N = 160,000
The Beagle Bone Black Rev. B was used as the Smart samples of 4 bytes resulting in a 640,000 byte data frame to
Meter for the initial experiments on the framework model due be transferred.
to its ”open-hardware” characteristics. In this sense, it is a The transport datagram is capable of transporting a 1.024-
prototyping board that can be easily customized for specific byte payload, which means that this particular example will
0278-0046 (c) 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TIE.2018.2808927, IEEE
Transactions on Industrial Electronics
IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS 6
consume 625 frames. Considering this, simulations were exe- deviation of ± 3.53 KB/s. This represents a 5% loss in transfer
cuted based on variations of the Ts by starting at Ts = 10 s rate when security is enabled which is a very acceptable result
and doubling the value on each subsequent data transmission. when considering the benefits on data security.
This procedure ends when the Smart Meter hardware used on
the tests threw a memory allocation exception representing the
maximum multi-frame size that can be managed at once on
the device’s memory.
A. Data Traffic Tests
The scenario for experiments is depicted in Fig. 7. For the
performance evaluation, the data transfer time was measured
considering the time spent to process each data frame and
reconstruct all data, and the time spent to decrypt the frames
after data reconstruction (for Server) and the CPU time versus
wall-clock time taken to perform the full data transfer (for
Client). It is important to verify hardware limitations and Fig. 8. Transfer rate for SSL ON/OFF considering 0% and 15% of
requirements for real field applications since a smart meter packet losses.
should not be an expensive device with a huge amount of
In Fig. 9 presents the real-time measured for a complete
memory, but it must be still capable of performing data
data transfer versus the number of bytes used on payload.
processing. Therefore, there is a trade-off between hardware
The experiment was performed with SSL OFF and SSL ON in
capability and computational overhead.
order to compare the overhead caused by encryption algorithm
as well as error rate on the processing time.
0278-0046 (c) 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TIE.2018.2808927, IEEE
Transactions on Industrial Electronics
IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS 7
TABLE II
B EAGLE B ONE AS A C LIENT - C OLLECTED DATA
Transfer Rate KB/s Transfer Times Real (ms) Transfer Times CPU (ms)
Fail Rate 0% 15% 0% 15% 0% 15%
Frames SSL OFF SSL ON SSL OFF SSL ON SSL OFF SSL ON SSL OFF SSL ON SSL OFF SSL ON SSL OFF SSL ON
625 159.55 159.75 148.46 180.84 3917.2 3639.4 4209.8 3999.3 259.9 244.9 296.1 283.5
1250 200.20 179.99 182.35 176.57 6243.8 6448.9 6854.9 7198.9 500.4 496.0 583.9 582.2
2500 231.11 191.80 195.24 178.41 10817.2 11308.3 12804.5 13063.2 996.3 998.0 1175.6 1163.9
5000 242.20 206.11 206.13 178.75 20644.5 21797 24256.4 25200.9 1999.1 1990.6 2318.45 2342.08
10000 244.57 208.47 212.42 173.28 40888.4 42657 47076.9 49593.4 3981.29 3998.68 4671.9 4689.2
20000 230.71 150.82 214.50 175.10 86690 83299.3 932380 98700.9 7979.8 7950.0 9394.4 9365.3
40000 236.23 214.17 215.94 174.94 169323 175055 369259 196610 15913.0 15992.4 18764.9 18781.2
80000 249.49 216.29 216.65 N/A 320656 N/A 737812 N/A 31691 N/A 37186.9 N/A
160000 238.50 210.72 216.86 N/A 670863 N/A 742642 N/A 63625.6 N/A 74363.1 N/A
However, the overhead of memory by the use of the are showed on Table III which synthesizes the payload size
encryption algorithm was very significant, which may lead to (number of frames) versus the CPU time employed on run-
possible enhancements and optimizations on the framework ning the client application. The Overall CPU Time (OCT) is
itself, but also it is an indicator that the encryption is a very compared with Data Encryption Time (DET) considering the
computing demanding for large files. analyzed situations for minimum and maximum error rates of
It can be observed that for the worst scenario (15% of the experiments (0% and 15%, respectively).
error rate and 160,000 frames with SSL OFF) the real-time
for full data transfer was measured as 736.6 s. In this case,
no significant overhead was observed for processing data after
building all the frames.
Finally, combining the worst scenario (15% of error rate
and 40,000 frames) the real-time for full data transfer was
measured as 196.6 s. On the same situation (40,000 frames
and 15% of error rate) for SSL OFF, the transfer time was
185.2 s, or approximately 6% faster.
0278-0046 (c) 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TIE.2018.2808927, IEEE
Transactions on Industrial Electronics
IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS 8
It is important to highlight that the first one has used [2] Y. Yan, Y. Qian, H. Sharif, and D. Tipper, “A survey on smart grid com-
small frames and the second performed experiments using munication infrastructures: Motivations, requirements and challenges,”
IEEE Communications Surveys and Tutorials, vol. 15, no. 1, pp. 5–20,
heavy traffic generator. However, the proposed framework 2013.
have shown a transfer rate of 200 KB/s it is expected a [3] E. Ancillotti, R. Bruno, and M. Conti, “Reliable Data Delivery With
reduction on this performance when all wireless interferences the IETF Routing Protocol for Low-Power and Lossy Networks,” IEEE
Transactions on Industrial Informatics, vol. 10, no. 3, pp. 1864–1877,
come to play. Also, the congestion control situation was 2014.
not evaluated and remains as an open issue to be furthered [4] Z. Fan, P. Kulkarni, S. Gormus, C. Efthymiou, G. Kalogridis,
evaluated against proposed architecture. M. Sooriyabandara, Z. Zhu, S. Lambotharan, and W. H. Chin, “Smart
grid communications: Overview of research challenges, solutions, and
And the software model presented on previous sections may standardization activities,” IEEE Communications Surveys and Tutorials,
allow any researcher or developer to implement and execute vol. 15, no. 1, pp. 21–38, 2013.
basically the same operations, which stands as an advantage [5] H. Y. Tung, K. F. Tsang, K. T. Chui, H. C. Tung, H. R. Chi, G. P.
Hancke, and K. F. Man, “The generic design of a high-traffic advanced
over the other models, where the communication layer should metering infrastructure using zigbee,” IEEE Transactions on Industrial
be modeled and implemented from the scratch prior to any Informatics, vol. 10, no. 1, pp. 836–844, 2014.
algorithm development. [6] P. Yi, A. Iwayemi, and C. Zhou, “Developing zigbee deployment
guideline under wifi interference for smart grid applications,” IEEE
Transactions on Smart Grid, vol. 2, no. 1, pp. 110–120, March 2011.
[7] N. Gatsis and G. B. Giannakis, “Residential load control: Distributed
VII. C ONCLUSION scheduling and convergence with lost ami messages,” IEEE Transactions
This paper evaluates the feasibility and performance of on Smart Grid, vol. 3, no. 2, pp. 770–786, 2012.
implementing a security layer extension for a multi-frame [8] H. Li and W. Zhang, “QoS Routing in Smart Grid,” Electrical Engi-
neering, vol. 58105, pp. 1–6, 2010.
Client/Server framework, which can provide data exchange [9] E. E. Directive, “Directive 2012/27/eu of the european parliament and of
for residential smart meters. The obtained results demonstrate the council of 25 october 2012 on energy efficiency, amending directives
that the system performance suffers around 6% of reduction 2009/125/ec and 2010/30/eu and repealing directives 2004/8/ec and
2006/32,” Official Journal, L, vol. 315, pp. 1–56, 2012.
on transfer rate when the security algorithm is running on [10] G. J. FitzPatrick and D. A. Wollman, “Nist interoperability framework
application data. In addition, the encryption algorithm takes and action plans,” in Power and Energy Society General Meeting, 2010
around 70% of CPU time only for encrypting data after the IEEE. IEEE, 2010, pp. 1–4.
[11] T. Noergaard, Embedded systems architecture: a comprehensive guide
multi-frame has been built. The higher impact was noticed over for engineers and programmers. Newnes, 2012.
memory constraints, since the transfer capability was reduced [12] J. Catsoulis, Designing Embedded Hardware: Create New Computers
by a factor of 4 from the maximum file size, which can be and Devices. ” O’Reilly Media, Inc.”, 2005.
[13] J. Ganssle, The art of designing embedded systems. Newnes, 2008.
transferred in a single transaction. [14] M. López-Vallejo and J. C. López, “On the hardware-software parti-
The wireless choice was defined since wireless technologies tioning problem: System modeling and partitioning techniques,” ACM
Transactions on Design Automation of Electronic Systems (TODAES),
like WLAN and ZigBee have low cost rapid deployment. vol. 8, no. 3, pp. 269–297, 2003.
However, since a common drawback is the interference with [15] K. De Craemer and G. Deconinck, “Analysis of state-of-the-art smart
other devices and due to distance between endpoints, a wired metering communication standards,” in Proceedings of the 5th young
researchers symposium, 2010.
communication technology, such as Power Line Communica- [16] Y. Yan, R. Hu, S. Das, H. Sharif, and Y. Qian, “An efficient security
tions (PLC) should be considered. In this sense, a DUAL-PHY protocol for advanced metering infrastructure in smart grid,” IEEE
Smart Meter (using a wireless and a wired interface) might Network, vol. 27, no. 4, pp. 64–71, 2013.
[17] A. Anzalchi and A. Sarwat, “A survey on security assessment of
be a better approach to mitigate the challenges imposed by metering infrastructure in smart grid systems,” in SoutheastCon 2015.
distance and/or signal interferences. IEEE, 2015, pp. 1–4.
Following this idea, an extension of the architecture can [18] T. Khalifa, K. Naik, M. Alsabaan, A. Nayak, and N. Goel, “Transport
protocol for smart grid infrastructure,” in Ubiquitous and Future Net-
be analyzed by evaluating the DUAL-PHY model and in- works (ICUFN), 2010 Second International Conference on. IEEE, 2010,
corporating support for the Function Block paradigm, widely pp. 320–325.
used on automation systems, as well as model adapters for [19] M. P. Shopov, “Iot gateway for smart metering in electrical power
systems - software architecture,” in 2017 40th International Conven-
international smart grid standards such as IEC 61850 or even tion on Information and Communication Technology, Electronics and
a local standard. Microelectronics (MIPRO), May 2017, pp. 974–978.
Since there is an intrinsic concern among smart metering [20] E. C. Douglas and D. L. Stevens, “Internetworking with tcp/ip,” Prin-
ciples, protocols and architecture, Prentice Hall International Editions,
communication in smart grid, another relevant scenario which vol. 1, pp. 183–185, 1991.
can be explored includes the connection between several me- [21] I. N. Group, “User datagram protocol,” IETF Network Group, 1980.
ters in communication with a server, to evaluate latencies and [22] G. Manassero, E. L. Pellini, E. C. Senger, and R. M. Nakagomi,
“Iec61850–based systems—functional testing and interoperability is-
throughput values for the framework dealing with a number of sues,” IEEE Transactions on Industrial Informatics, vol. 9, no. 3, pp.
simultaneous connections, where the Beagle Bone Black will 1436–1444, 2013.
behave as a server or concentrator node. [23] C. R. Ozansoy, Modelling and object oriented implementation of IEC
61850: the new international standard on sustration communications
Finally, it should be pointed out that the use of a structured and automation. Lambert Academic Publishing, 2010.
framework model enabled the stratification of the tasks carried [24] S. Barker, S. Kalra, D. Irwin, and P. Shenoy, “Empirical characterization,
out by the smart meter, manufacturers, and developers. modeling, and analysis of smart meter data,” IEEE Journal on Selected
Areas in Communications, vol. 32, no. 7, pp. 1312–1327, 2014.
R EFERENCES [25] V. Bassilious, C. Ozveren, and A. Birch, “Using smart metering
for load aggregation: towards an integrated smart grid/active network
[1] R. Ma, H. H. Chen, Y. R. Huang, and W. Meng, “Smart grid commu- management framework,” in Proceedings of 2011 46th International
nication: Its challenges and opportunities,” IEEE Transactions on Smart Universities’ Power Engineering Conference (UPEC). VDE, 2011,
Grid, vol. 4, no. 1, pp. 36–46, 2013. pp. 1–6.
0278-0046 (c) 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TIE.2018.2808927, IEEE
Transactions on Industrial Electronics
IEEE TRANSACTIONS ON INDUSTRIAL ELECTRONICS 9
0278-0046 (c) 2018 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.