Home

Extending ABB`s WirelessHART Tool

image

Contents

1. DIA AD Schedule Led Gateway Scheduling Controller DIA 2 AD Reference Schedule Control PID z p PI oye TX_DL 7 PID2 ControllerBUS Figure 25 Simulink Model of two Wireless Sensors one Wired Actuator and one Wireless Actuator According to the Wired Actuator requirement the customer can generate more advanced system where two networks coexist and the system uses both Wired Actuators and Wireless Actuators Figure 25 shows the completed simulation model of two Wireless Sensors one Wired Actuator and one Wireless Actuator As mentioned above the number of PID controller Simulink block will be added in accordance with number of Actuator whether it is the Wireless Actuator or it is the Wired Actuator The PID1 connects to Gateway block this PID controller responsible to control the Wireless Actuator via Gateway block while the PID2 connects to ControllerBus block The PID2 controller is responsible to control the Wired Actuator 6 Evaluation and Results 6 1 Testing the Application All tests presented here were conducted to ensure that the application still works with the changes made 6 1 1 The Reference Model Referring to Figure 26 the tests all used a simple model of a Servo System as reference This model was provided by ABB to test against The model was added to the each Simulation and joined in the P
2. yl 1 z Disc he amp e T gt 10 0 oai a Schedule ro Position WHART_NET Net schedule Scheduling Controller Figure 18 The completed Simulation Model of WirelessHART Tool with Actuator Sub blocks The TrueTime Kernel block represents the core of the actuator node This core has two output ports The D A output port is connected to the Actuator output scope and the to the Plant through Outport Simulink block while the Schedule output port is connected to the Act sch scope The connection from D A to A D acts as a feedback buffer This connection is only used when the Actuator block is used as Intermediate node Sensor block receives the data from the Plant When expanded it is discovered that the block contains an Inport a Constant block a TrueTime Kernel block and two scope blocks as presented in Figure 19 52 Actuator1 sim time GT E Z2 s kn Plant mdi 1 mcis Wi whart lib Sensor File Edit View Simulation Format Tools Help Des Plant output Control Figure 19 The completed Simulation Model of WirelessHART Tool with Sensor Sub blocks The Constant Simulink block called Set represents the value of the control setpoint One scope plots the Plant output and the setpoint of the control loop while another scope displays the sensor s schedule on the network In case of the sensor is used as an intermediate node the sensor node sends
3. WirelessHART Tool 1 0 against Servo Model T SH WirelessHART Tool 1 0 old Servo Model 18 QUU T cA ab x N 1 2 P Plant Output E ost A y PID Response Time 0 886 sec z i L 1 i 0 1000 2000 3000 4000 5000 6000 Time Figure 29 WirelessHART Tool 1 0 old against Servo Model Figure 29 shows the result of the first version of the WirelessHART tool against the Servo Model The PID values were tuned in a way that they were supposed to stabilize plant outputs in the observed time period The respond time was set to 0 886 sec It can be very well seen that the old version of WirelessHART produces a very different result from the reference model The expectation was that the WirelessHART Tool curve should follow the Servo Model s curve with a short approximately 0 03 0 04 s delay with a very slight difference in the output values It was also expected that the WirelessHART plant output would stabilize in the 5 seconds frame what was used for the experiment but there is no sign of that moreover it would be difficult to predict when would it stabilize 74 1 on xw xx E Actustori Plant mdi 1 Cox Tene Sim time WHARTNet schedule Figure 30 New WirelessHART Simulation Setup Model TmeSlt i Time Slot_2 Time Slot_3 SuperFrame 1 CHf ST GW CL1 CH1 GW gt A1 Figure 31 Schedule table of New WirelessHART 75 WirelessHART Tool
4. MW M LARDALEN UNIVERSITY AA P ees PAD School of Innovation Design and Engineering MASTER THESIS IN SOFTWARE ENGINEERING 30 CREDITS ADVANCE LEVEL 120 Extending ABB s WirelessHART Tool Author s Andras Zakupszki and Nuttapon Pichetpongsa Email azi10001 student mdh se and npa10001 student mdh se Carried out at ABB AB Coperate Research Advisor at Malardalen University Frank L ders Advisor at ABB Tiberiu Seceleanu Examiner lvica Crnkovic Date 23 August 2012 Abstract Within this decade wireless technology has been used in process control in various industries WirelessHART is one of the standards used for creating communication networks for such purpose Since the technology is relatively new there are many known and unknown risks in deploying it in real life applications ABB s WirelessHART Tool is used for generating simulation scenarios that can be used for evaluating the performance of WirelessHART networks under different conditions This paper describes in detail how ABB s WirelessHART Tool was extended by adding various new functionalities The topics cover what obstacles we have faced which solutions were used and why how our solutions were evaluated and the outcomes Furthermore the paper documents the application structure of WirelessHART Tool Keywords WirelessHART TrueTime Simulink MATLAB Software Simulator Networked Control Systems Acknowledgement This thesis work would not have bee
5. Figure 13 New fields in the TrueTime Kernel Block Mask supported Multi Channel e WirelessHART Device check box determines whether the WirelessHART parameters of the node are available or not e Frame ID determines which message is sent received on which Superframe e Time Slot determines which Timeslots are used for sending receiving messages e Channel Offset determines which channels are used for sending receiving the messages e Destination Device determines the origin recipient nodes of the messages e Link Option determines whether the message is received by the node or sent from it 37 e Link Type determines whether a link is normal shared or advertised Implementation of Device Communication Tables As mentioned in the background section 2 3 2 the TrueTime has been modified based on the WirelessHART MAC protocol theory The Devices Communication Tables together with Mask interface of TrueTime Kernel block have been implemented in order to support all communications 25 1 1 NbrSlots 1 Nbrch 1 NbrNodes 0 RX 0 normal Nbrframes 1 TX 1 advertisement 1 shared Table 2 Logical Device Tables in Upgraded TrueTime The information of the device table contains six columns FramelD TimeSlot ChOffset DevAddress LinkOpt and LinkType e FramelD indicates the unique identification number of a Superframe Each WirelessHART device supports multiple Superframes e Time
6. I r Use fixed packets lost Time array s Noise average dBm 30 Noise variance dBm 40 Number of channels Superframe size n Slot 10 7 Show Schedule output port Show Power consumption output port _cancet_ Help Apply Figure 12 New fields in the TrueTime Wireless Network Block Mask supported Multi Channel e Fixed Packet Loss Time Array s when the box is ticked user can enter in the Time Array the beginning and the end of one or more time interval s during which all the packets sent on that network are lost e Noise Average dBm determines the average disturbance on the network e Noise Variance dBm shows how much the disturbance can differ from the average e Number of Channels defines how many channels can be used for communication on the network e Slot Size s determines the length of one Time Slot 0 01 s for WirelessHART e Superframe Size n Slot determines the number of slots contained in a superframe 36 3 1 2 TrueTime Kernel Block ii Function Block Parameters TrueTime Kernel z Local clock offset and drift 0 0 WirelessHART device Frame ID 1 Time slot m Channel offset 1 Destination device Link option 0 RX 1 TX 1 m Link Type 0 Normal 1 Advertise 1 Share 0 7 Show Schedule output port Show Energy supply input port Show Power consumption output port mmm e
7. 3 1 2 where the exectime is the execution time of the active device The Slotsize is fixed to 10 ms in WirelessHART The SuperframeSize is the number of slots contained in a Superframe 39 3 2 Application Structure zs Whart Tool GUI TP CI Matlab Script Files C Whart Library TES TH P z N 8 P4 V Li n i s i E s t 1 i y2 d H E C Simulink TrueTime 0 5 Up RE i ip P dn 3 H Matlab ET Figure 14 Application Structure Design Referring to Figure 14 the structure of the application does not follow any conventional software engineering structure or architecture It was decided that in order to show the application structure the uses structure must be displayed The uses structure uses the requires the correct presence of relation between the elements of the structure thus shows which elements need which other elements in order to function as expected The arrows represent this relation on the diagram 20 21 The diagram uses UML Unified Modeling Language notation 40 7 main elements build up the application structure These elements are defined through code inspection research and testing GUI The purpose of the GUI is to allow users to set up different simulation scenarios fast and without getting lost in the details The Ul creates 17 global variables for communication between different functions These global variables s
8. Loop Property panel The user can use the N field to set the Filter Coefficient in the PID Simulink block The P I D input fields were also fixed to take the input with better precision than before Wired Actuator The Control Loop Property panel includes yet another change When Wired Actuators are used and the user selects them as dependency for the control loop the Wired Actuators will appear in the schedule in the same Timeslot with the Control Loop 61 However since they are on different network with different communication mechanism it is not entirely true Since the Ethernet Network is much faster than the WirelessHART on the Ethernet in a timeframe of 10 millisecond and more than 400 messages with the same size as in WirelessHART can be sent The authors of this thesis assumed and got permission from the customer that the difference in communication could be overlooked 5 2 4 New Gateway Panel Improving the Correctness of Controller The Gateway panel was added into the new GUI in order to solve the problem of knowing destination device when the gateway transmits data to an intermediate node The cause is that the Gateway does not know what register to take the data from in case it is not sent directly to the destination node This solution was created because this allows the user to fully take control of the data transmission The Gateway panel has similar properties to sensor and actuator panel properties The
9. The first network is WirelessHART and is responsible for communicating data from sensors to controller through a gateway The second network is wired it uses Ethernet CSMA CD protocol and this network is responsible for communicating data from the controller to actuators The Wired actuators were requested to appear in the schedule 67 The in the real plant the wired actuators will use a PROFINET solution however the implementation of PROFINET in TrueTime makes it quite difficult to automate the generation of such network Since the primary objective of this tool is to simulate WirelessHART networks it was decided that PROFINET would not be used FDMA was another considered solution but it was dropped since its behavior was not suitable TDMA had quite unclear description in the TrueTime manual about how the static schedule is to be used so it was decided to move forward with another solution The Ethernet CMSA CD network was chosen to interact with WirelessHART network in the system because of simplicity in implementation and well matching behavior with the WirelessHART In case of sensor node is Wireless and actuator node is Wired the Wired Actuator block will be copied into the Simulation Model instead of Wireless Actuator block The Figure 23 shows the different block organizations of Simulation model when actuator is Wired There are three important blocks that are added in this Simulation model Wired Actuator block Ethernet N
10. block can be specified by the users through the WirelessHART Tool interface The Control block has two input and two outputs The two inputs are combined with Mux block that converts several input signals into a vector Two block interface ports output are similar to Gateway block s output ports The first output interface uses Digital to Analog converter of TrueTime to transmit the data to Gateway block The second can be used to plot the schedule of the block The Reference is a Constant block from Simulink This block generates a constant value The users are able to set the Reference value through the Setpoint field of the Control properties panel of the GUI 6 TX Delay contains the functionality of Transmission Delay is similar to RX DL but TX DL is performed when the analog signal is transmitted to Gateway PID block processes the incoming data and then forwards the results to Gateway block On default the PID is chosen to be discrete time The internal parameters of PID 50 consist of Proportional value Integral value Derivative Sampling Time and Filter Coefficient The value of the Filter Coefficient is 0 on default and the Sample Time is 0 01s on default The GUI makes only the P and D values available for input The simulation time of the model is controlled by a group of Simulink blocks which are Clock Simulink Sink Display Simulink and to Workspace Simulink sim time blocks Clock block contro
11. cycle schedule consists of a number of superframes All of these superframes are created by the Network Manager and stored by each field device The field devices send notification to the Network Manager about the time slots when they transmit or receive After that the field devices must synchronize their clocks to permit the slot communication with neighbored devices 26 A group of fixed length timeslots 10 milliseconds accumulates the superframe A field device must be scheduled in at least one Timeslot for data transmission in a network cycle The slots in TDMA schedule are allocated point to point communication hopping 25 The frequency hopping is combined with TDMA in order to increase the reliability of the network The frequency hopping is used to avoid interference and reduce multi path fading effects To support frequency hopping WirelessHART allocates its frequency range to multiple channels The frequency range of WirelessHART is shared between 16 channels In one timeslot communication between two nodes can happen on any free channels This allows multiple transmissions happening in the same time slot between on different channels used by different nodes 21 Source TsMaxPacket TsRxAckDelay TsAckWait TsCCA TsRxTx TsRxOffset TsError Destination TsTxAckDelay Figure 5 WirelessHART Slot Timing Referring to Figure 5 in a timeslot the transmission of the source
12. data backwards to A D input Intermediate block does not have input or output port from its high level view The buffer acts as a feedback the same way as it does when the actuator or the sensor nodes are used as intermediate nodes Block Organization The simulation model was generated based on the input of the user through GUI such as number of sensor number of actuator etc The Figure 17 shows the completed simulation model of WirelessHART tool with one Wireless Sensor and one Wireless Actuator The Network block is attached with Position block 53 Two incoming inputs to Control block are Analog to Digital input from Gateway and Reference setpoint Between the Controller and the Gateway blocks the TX DL and the PID blocks can be found The Gateway block transmits the data through the Digital to Analog Converter D A port of the Kernel TrueTime block to the Control block RX DL is the Receiving Delay block this block is organized in between Gateway block and Control block towards the delaying of receiving data 3 5 Code Readability The code for the functions of the Ul was included in one MATLAB script There is also a lot of repetition in the code meaning that whenever two functions are have some common code it is copied and pasted in both All the project files are included in one folder Since there are a lot of files that are used during runtime it becomes very confusing to navigate inside the folder The above d
13. has a reference to one neighbor the neighbor table contains the statics and properties of itself The Neighbor table consists of eight columns UniquelD Nickname TimeSourceFlag Status TimeLastCommunicated BackOffCounter BackOffExponent and Statistics The Neighbour table has one unique key UniquelD which is used to connect with the Link table The Nickname is a foreign key that connects to the Graph table TimeScourceFlag determines the device should take time synchronization from the neighbor or not Status determines the status information relating to this neighbor TimeLastCommunicated determines the last time communicated with this neighbor BackOffCounter decides the value of standby countdown for shared link BackOffExponent decides the number of back off exponent for shared link Statistics contains the statistics communicated with this neighbor 26 Graph table is used by the Network Layer and stores the routing information from source and destination There are three columns in Graph table GraphlD DestinationUniquelD and DestinationNickname The Graph table is maintained by the Network Manager the information is added on Network Layer Protocol Data Unit packet NPDU The MAC protocol can use GraphlD to point the DLPDU packet towards its final destination The Graph table has two foreign keys DestinationNickname and GraphlD The DestinationNickname is used to connect with the Neighbor table Another foreign key is Graph
14. only different feature is the users are able to specify which actuator will be the using the data that is sent The Gateway panel only appears if intermediate nodes are allowed There was one global variable added to resolve the problem 5 2 5 Change in Schedule Table Using the same colors for each control loop The following solution was used to fix the colors in the schedule The color of control loop is generated by randomized number of RGB pattern Red Green and Blue main pattern from 0 to 255 bit pattern of each main color The idea is to identify unique color for process and color the belonging sensor actuator node and control loop to the same color 62 The randomized functionality was used to generate 256 random numbers between 0 255 The reason for this is that in the WirelessHART specification one network can have only 250 nodes and there are fewer possibilities to generate the same color for each group of sensor control loop actuator In order to show the color the color tag is applied into a cell in scheduling table The color tag needs to be defined by a color name or in RGB code The RGB code is more efficient as means to identify many colors The RGB code represents three variables each variable contained by number in between 0 255 After the random numbers were generated they were stored in different variables representing R G and B Then the containing variables are put as the color tag For example rgb
15. processes Zigbee comparing to Bluetooth and WLAN has a lower data rate and lower power consumption Zigbee also supports star tree and mesh topologies while Bluetooth and WLAN support very small size topologies such as ad hoc and point to hub 28 36 WirelessHART addresses some of main concerns in industrial environment towards Zigbee WirelessHART supports frequency hopping and retransmissions in order to make the network more reliable Also the use of TDMA provides more robustness and power saving because the timeslots prevent the message collision the message is received when it is scheduled The WirelessHART is more secure than Zigbee The security of WirelessHART is mandatory there is no option to turn it off and it uses 128 block cipher using symmetric keys for the message authentication and encryption 22 2 3 WirelessHART Technology HART Highway Addressable Remote Transducer is a standard communication protocol for field process instrumentation which usually communicate at 4 20 mA analog current signal This protocol is widely used in industry for sending and receiving digital information through wires analog signal among field instruments and monitoring system in order to improve plant information management and cost saving 5 6 WirelessHART is an extension to HART protocol that adds the flexibility of wireless to the existing HART standard WirelessHART is an open communication standard that drives at the 2 4 GHz
16. se help techdoc creating guis f16 999606 htmlzf16 9996296 visited 24 July 2012 13 Sara Z Afshar Mohammand Ashjaei WirelessHART Simulator A GUI for simulation of WirelessHART network in TrueTime toolbox User Manual ABB research cooperate 201 1 14 Donald R Gillum ndustrial Pressure Level and Density Measurement Second Edition International Society of Automation 1995 15 Raimond Pigan Mark Metter Automating with PROFINET Wiley VCH 2008 16 Diane Barrett Todd King Computer Networking Illuminated Jones and Bartlett Publishers 2005 17 A Willig K Matheus A Wolisz Wireless Technology in Industrial Networks In JEEE Software volume 93 pages 1130 1151 2005 18 Leena G Jeevana Vini Malikb A Wavelet Based Multi Resolution Controller In Journal of Emerging Trends in Computing and Information Sciences volume 2 2011 19 Shahin Farahani Zigbee Wireless Networks and Transceivers Newnes 2003 20 Len Bass Paul Clements Rick Kazman Architecture in Practice Second Edition Addison Wesley 2003 21 Nick Rozanski Eoin Woods Software Systems Architecture Working with Stakeholders Using Viewpoints and Perspective Addison Wesley 2011 22 Tomas Lennvall Stefan Svensson Fredrik Hekland A Comparison of WirelessHART and Zigbee for Industrial Applications In EEE International Workshop on Factory Communication System 2008 23 Deji Chen Mark Nixon Aloysius Mok WirelessHART Real Tim
17. the UI and the sensor also appears on the Schedule Table of the Ul The Edit button removes all information of the sensor from the virtual tables of the UI and also deletes it from the Schedule Table of the UI from the scheduler table and clear the sensor table In case of single hop communication all sensors send data directly to the gateway thus only the gateway node will visible on To drop down list In case of multi hop communication the To drop down list the receiving node can be selected by the user 45 3 3 4 Actuator Property Actuator Node primarily these nodes only receive data When Multi Hop is enabled the actuator nodes can act as intermediate nodes thus send and receive data The Actuator Property panel is almost identical to the Sensor Property panel The only difference is that when the user does not use multi hop communication all of the actuators receive the data from gateway thus the GW node will be the only option on From panel 3 3 5 Intermediate Node Intermediate Node these nodes can only be used when Multi Hop is enabled They can both send and receive data The ntermediate Node panel is only enabled if the multi hop option was checked in the before generating the model The GUI components included in this panel are identical to those in the Sensor Property and Actuator Property panels as well as their purpose 3 3 6 Control Loop Properties In the control loop panel t
18. to act as intermediate node when the multi hop communication is enabled There is a difference between how the UI counts the nodes and how the Simulation model numbers them In Simulation model all the node IDs use the same numbering while the UI splits them by functionality to Sensor nodes Actuator Nodes Intermediate Nodes Gateway and Controller The solution to the problem is presented here The Sensor nodes from the UI come first the Actuator nodes come second The Intermediate nodes third then the Gateway and finally the Controller when the numbering of nodes in Simulation model For example in case of there are 3 Sensors 2 Actuators 1 Intermediate In Simulation model the Sensor nodes number are the nodes from 1 3 the Actuator nodes are 4 and 5 Intermediate Node is 6 Gateway is 7 and Controller is 8 11 3 3 2 Network Property After generating the model the user can proceed to the Network Properties Panel On the Network Property Panel the user can assign the network properties such as number of superframes length of superframes number of control loops and transmit power of the network The Superframe Number property determines how many superframes are in use on the WirelessHART network The size of a superframe must be multiples or common divisors of each other The reason for this is a common real time scheduling problem that they must be compatible on a longer timescale 44 The Number of Control Loop field d
19. 2 0 against Servo Model 14 T T I WirelessHART Tool 2 0 new Servo Model Plant Output PID Response Time 0 886 sec 1 1 i 1 0 1000 2000 3000 4000 5000 6000 Time Figure 32 WirelessHART Tool 2 0 new against Servo Model Figure 32 shows the result of the new version of the WirelessHART tool against the Servo Model The same PID response time was used as in the previous case The new version of WirelessHART Tool did perform as predicted before the experiment The curves are similar they both stabilized and the slight difference between the stabilized lines can be the result of the rounding when the measures are converted to integers and placed in the network messages 6 1 3 Test 2 The performance of Wireless Actuator and Wired Actuator The reason for this test was to see how different does the plant perform with wired and with wireless actuators 76 The settings of the networks are the same however in case of the wired actuators there was one timeslot less used to utilize its speed advantage as shown in Figure 34 and 37 1 3 246 T t Emernet Schecule Ememet Network sim time WHARTNet schedule Scheduling Controller Figure 33 Wireless Actuator New WirelessHART Simulation Setup Model Time Slot 2 CH1 S1 gt GW CL1 CH1 GW gt A1 Figure 34 Schedule table of New WirelessHART 77 Wireless Actuator Original P
20. 3so7 html visited 24 July 2012 32 Simulink Documentation MathWorks http www mathworks se help toolbox simulink s iid SL2012 bb doc visited 27 July 2012 33 What is an S Function Overview of S Function Simulink MathWorks http www mathworks se help toolbox simulink sfg f6 151 html visited 27 July 2012 34 M Urban M Blaho J Murgas M Foltin Simulation of Networked Control Systems via TrueTime Institute of Control and Industrial informatics Slovak University of Technology 2008 89 35 Dan Henriksson Anton Cervin Karl Erik Arz n TRUETIME Real time Control System Simulation with MATLAB Simulink Automatic Control Lund Institute of Technology 2007 36 Zigbee Specifications http zigbee org Specifications aspx visited 28 July 2012 90
21. A A A E A A 45 3 3 4 Act dt r Pr peT ty inimii anr REA AE ERAEN EARRANTA NANE EEr REA ERr 46 3 3 5 Intermediate Node iia i atti a a a a i iaae aai 46 3 3 6 Control Loop POPOV CICS 2uie tt ttr ty Mg Ht EUH e aad 46 3 3 7 Transmission Deldyu ccce tto i Tao UT UST 47 De Do CULMS 47 3 3 9 Schedule Table aout itinere ient egeat aestate dique to podia ebur dreb ae pen 48 Bo LOMEN M M P 48 3 4 Simulation Mode n Eb ERO E e ERR TRU adelaide dane 49 3 5 Code Readability eet ritu entre asian on pea or pene ro mh ane ARE Debo don idaan 54 4 Extensions to WirelessHART TOON rise petet toto o both Io bbEERE IE pP eR RER TRE EPPER E PR oe rb RR FREE eP ERE e PO doki 55 4 Regue ments cust eniti ouem uera nne EI LE ELI IU EIE 55 4 1 1 Wired actuator aa tiet tnt aod ea dA Ra etu baa Re 55 2 12 Multiple Channels oda a etatis ia aeter nian Rae ade uade aaa 55 4 1 3 Toggle switch for sensor actuator intermediate panel tnnt 55 4 1 4 Using the same color pattern for each control loop ttt tnit 56 4 1 5 Remove node on scheduling table by using Delete Key ttt 56 4 1 6 Improving the correctness of Controller ttt ttt ttt 56 4 2 EImitatiOnS coord E tvc estas atte aan edad ttet res eet Tte esa ear euro MULUS REAL HARDER RE TELE HERR teed 57 4 2 1 Internal Limitations uita tid irte eastern aetate EE tang 57 22 2 External LimitatiOTis i ia irteta ict
22. ISM Industrial scientific and medical radio brand using Time Division Multiple Access TDMA 17 WirelessHART is designed to address the problem specifically focused on process industry due to the high cost of wiring for a long distance WirelessHART also allows the channel hopping to avoid interference and reduce multi path fading effects To support channel hopping WirelessHART allocates its frequency range to multiple channels In terms of simplicity security and reliability WirelessHART standard sets requirements that any network claiming to use the standard needs to fulfill 7 As for simplicity WirelessHART field devices are easy to install and configure One significant advantage of using WirelessHART is to enable the reuse of existing HART devices commands and tools 7 8 As for security WirelessHART uses AES 128 Advanced Encryption Standard AES 128 utilizes a fixed block size of 128 bits ciphers similar to Zigbee standard As for reliability WirelessHART itself provides great features that can optimize the performance of the process control in an industry for example TDMA Time Division Multiple Access in the Data Link Layer standard radio with channel hopping coexistence with other wireless networks etc 2 3 1 Basic Components of WirelessHART The basic components of WirelessHART can be divided into three types of components 9 23 18 Host Application Gateway Network Wirele
23. OSI model is just a framework is used to act as guidelines for several network standards The OSI model has been developed and adopted by the International Organization for Standardization ISO Most of the network protocols follow an underlying layer based of the OSI model 6 Application interfaces provide access to lower layer DATA Data compression Data encryption and decryption Character set translation Coordinates connection and interaction between applications SEGMENTS LAYERS Ensures data transfer and integrity across the network Assembles packets from Network Layer PACKETS Path determination and logical addressing FRAMES MAC Physical Addressing BITS Media signal and binary transmission Figure 2 The Open System Interconnection OSI model The OSI model breaks the various characteristics of computer networks into seven separate layers as shown in Figure 2 Each layer of the OSI model is independent from the other layers in its purposes and responsibilities First three layers from the bottom Physical Layer Data Link Layer and Network Layer The lower layers deal with mechanism of sending information from one computer to another over the network The Upper Layers are Transport Layer Session Layer Presentation Layer and Application Layer The upper layers deal with how applications communicate to network through application programming interfaces The seven layers in OSI basic structure Physical La
24. Slot contains a list of slots where the device needs to communicate e Channel Offset ChOffset determines in which channel that the device use to communicate in particular Timeslot e DevAddress indicates the destination device that will receive the transmission e Link Option LinkOpt determines two types of communication RX 0 and TX 1 The zero 0 value means that the device must receive while the one 1 value means that the device must transmit e LinkType indicates the link types of slot the slot can be either reserved shared slot or dedicated 38 Implementation of Time Synchronization In order to achieve and fulfill an efficient TDMA communication technique the time synchronization of clocks between devices in the network is critical This is because each device has their local clock This allows during the synchronization of two stations that each one should be able to estimate the local time of each other 25 When TrueTime was upgraded the above described problem was taken into account and the MAC protocol was modified based on ASN Actual Slot Number technique to find the actual Timeslot for sending and receiving messages In the implementation the device reads the actual simulation time from the MATLAB environment and then the actual simulation time value is used to compute the actual Timeslot using the following formula 3 1 2 ActualSlot Number LL Time exertime Super frameSize 1 SlotSize
25. ality would be added in TrueTime This meant updating the user interface for selecting the channels adding a new global variable where channel communication is stored and implemented algorithms to display the multiple channel communication in the Schedule Table and to verify the schedule Thus the logical idea for multiple channels was built on top of the GUI The concept was to add a dropdown list element for each node devices Sensor Actuator 60 Intermediate node Gateway which can identify the different channels The channel dropdown list was added for both data sending and receiving on the panels The 16 channels can be chosen only after the superframes are generated Then users are able to specify the channel for each transmission In order to detect collision in the schedule a new algorithm was designed The reason is that the old algorithm was not designed in a way to allow extensions This algorithm considers Timeslots channels and nodes when checking the schedule for transmissions There is a collision in the schedule in 3 cases e Inthe SAME Timeslot the SAME Channel IS USED MORE THAN ONCE e In the SAME Timeslot the SAME Node IS USED for transmit or receive MORE THAN ONCE e Inthe SAME Timeslot the SAME Superframe IS USED MORE THAN ONCE 5 2 3 Changes in Control Loop Property Improving the Correctness of Controller In order to be able to configure the PID block correctly an additional field was placed on the Control
26. cal multi domain simulations Simulink package can be used for sub tool modeling simulating and analyzing Model Based Design of different types of systems For this thesis MATLAB 2011b was used The tool was provided by ABB 2 4 2 Simulink Simulink is a commercial tool for modeling simulating and analyzing dynamic systems of various domains It is an additional package of MATLAB and it is usually included in MATLAB 32 Simulink was used to create the static model of the wireless and wired networks system To represent and build various modules in the system different types of graphical blocks were used Simulink allows the users the possibility to create custom made blocks save them in libraries model files and use them in a number of projects Developers can customize and configure the Simulink blocks through their parameters or programming in a MATLAB script file Simulink is a tool for modeling embedded and control systems which need more dynamic and complexity of coding for each block therefore it is a great tool for modeling custom made system and it is essential in any engineering disciplines for simulating new inventions before real life tests or observing behavior of complex systems in any scientific field 28 2 4 3 TrueTime TrueTime library is a library extension of Simulink developed at Lund University The blocks are modifiable discrete MATLAB Simulink functions written in C TrueTime 2 0 library was used dur
27. controller was not changed The solutions in the controller might also raise some issues however the Controller is more correct then the previous It needs to be mentioned that there were a number of solutions considered for the problems and all of them had their defects 66 1 Out Goa Time s 1 Wired Actuatort Plant_mdl_1 Sensori 2 Schedule sim_time Ethernet Schedule sim_time Ethernet Network Wi whart lib Wired Actuator File Edit View Simulation Format Tools Help Out x Dus Loss si a ignal an Out2 y 1 Out z Out4 noise Schedule in Position WHART NET Oo WHARTNet schedule DIA pese gt Schedule CI Gateway Scheduling Controller Reac 100 ControllerBUS Figure 23 Simulation Model of Wireless Sensor and Wired Actuator Wired Actuator As shown in the Figure 23 this model was created as a means to determine the requirement of Wired Actuator section 4 1 1 In the real world the Actuator can be either Wireless Actuator or Wired Actuator The previous stage of WirelessHART tool did not consider this functionality So in this thesis we extended an advance communication of two networks coexist The purpose was to investigate and evaluate the performance of the data transmitting though both networks
28. determines the ID of the network Number of nodes determines the number of nodes which belong to the network represented by this block Data rate bits s determines the speed of the network Minimum frame size bits determines how long the smallest possible message frames are Loss probability 0 1 determines the chance of a message not arriving to the receiving node Initial seed The numbers of variables which can put the network block in a random state Show Schedule Output port allows the user to visualize schedule TrueTime Wireless Network Block has the following parameters that can be set in its visual interface in Figure 11 Network type determines the network technology simulated by the block The following network types are supported 802 11b WLAN 802 15 4 Zigbee NCM WIRELESS Network number determines the ID of the network Number of nodes determines the number of nodes which belong to the network represented by this block Data rate bits s determines the speed of the network Minimum frame size bits determines how long the smallest possible message frames are Transmit power dbm determines the range of the network 32 Block Parameters TrueTime Wir x Figure 11 TrueTime Wireless Network Block Parameters Receiver signal threshold dbm minimum signal strength that the receiver can detect Pathloss function user defined path loss function Pathloss exponent 1 distance x d
29. device starts at a certain point not right in the beginning of the Timeslot This short delay allows the source device and destination device to set up their frequency channel and allows the receiver to start listening on the specified channel Since there is a delay on clocks the receiver must start to listen before the ideal transmission starts and continue listening after that ideal time After the transmission is complete the destination device indicates by sending an acknowledgement ACK to the source device to reporting success error or overhead 26 The transmission in Data Link Layer uses packets to send receive data These packets are called DLPDU Data Link Protocol Data Unit Packet 22 Data Link Packet DLP This section describes the specific format of the Data Link packet as presented in Figure 6 The total packet length of each DLPDU Data Link Protocol Data Unit is 127 bytes 24 Each DLPDU contains the following fields A single byte set to 0x41 A 1 byte address specifies The 1 byte Sequence Number The 2 byte Network ID Destination and Source Addresses either of which can be 2 or 8 bytes long A 1 byte DLPDU Specifies The DLL payload A 4 byte keyed Message Integrity Code MIC A 2 byte ITU T CRC16 DLL Payload Data Link Layer LL hysical Layer Figure 6 The DLPDU packet structure To allow MAC the transmission of packets it has to perform a number of tasks As shown in Figure 7 the Wir
30. does not belong to the WirelessHART network WHART NET block their positions are not indicated in the Position block The ControllerBUS is a TrueTime Kernel block this block is used to collect the data from PID controller block and forward the data directly to Wired Actuator 69 Consequent problem solution Since the model has two networks which are WirelessHART network and Ethernet network There was a problem with the controller block The problem was that in the model the Controller block could belong to only one network The question was which network There were two different versions created one where the Controller belonged to the Ethernet network and one where it belonged to the WirelessHART network Both versions were demonstrated to the customer who decided to move on with the version where the Controller block is part of the WirelessHART network The reason was that the Control loops should be scheduled in the WirelessHART schedule Out 2 Schedule Ld Actuator Out Ethernet Schedule gt ben att Ethernet Network Clock Time Plant mal 1 Sensor1 d 7 sim time Loss signal gt Out2 p outs 1 sim time Loss outs Schedule 3 1 Positi sl osition WHART NET Lai Wired Actuator1 3 1 WHARTNet schedule Plant mdl 2 Sensor2
31. domain however nowadays it plays an important role in many other disciplines as well In the last few years it has emerged in industrial process control to provide an alternative to the already existing wired technology The advantages are reduced power consumption and weight of the machinery ABB is a one of the world s leading engineering corporations mostly operating in the areas of power and automation ABB was created in 1988 by merging the Swedish company ASEA created in 1883 and the Swiss company Brown Boveri amp Cie created in 1891 In order to supply state of art technology to customers ABB Corporate Research continuously performs research on a number of areas in order to ensure they have the edge in environmental friendliness sustainability prices and quality One of these research areas is automation networks more precisely wireless automation networks WirelessHART Wireless Highway Addressable Remote Transducer is one of the standards that are used for building communication networks for process control It is cost effective and ensures quick and easy installation Nevertheless when using WirelessHART for process control the critical point of the process needs to be anticipated and evaluated from the point of efficiency The behaviors of the process also need to be predicted in case of packet loss noise and other disturbances WirelessHART Tool is an application created by ABB to automate generating WirelessHART network simula
32. e Mesh Network for Industrial Automation Springer 2010 24 Jianping Song Song Han Al Mok Deji Chen Mike Lucas Mark Nixon Wally Pratt WirelessHART Applying Wireless Technology in Real Time 88 Industrial Process Control In EEE Real Time and Embedded Technology and Applications Symposium pages 377 386 2008 25 Osama Khader Andreas Willing Adam Wolisz Implementation and Evaluation of Communication Tables and Link Scheduling for WirelessHART Devices TKN Technical Reports Series Technical University Berlin 201 1 26 Mauro De Biasi Carlo Snickars Krister Landern s Alf Isaksson Simulation of Process Control with WirelessHART Networks Subject to Clock Drift In EEE International Computer Software and Applications Conference pages 1355 1360 2008 27 Norihiko Morinaga Ryuji Kohno Seiichi Sampei Wireless Communication Technologies New Multimedia Systems Springer 2002 28 Software technologies group Zigbee versus other wireless networking standards http www stg com wireless Zigbee comp html visited 24 July 2012 29 Hongyi Wu Yi Pan Medium Access Control in Wireless Networks Nova Science Publishers 2008 30 Changjiang Li Yufen Wang Xiaojuan Guo The Application Research of Wireless Sensor Network Based on Zigbee In EEE International Conference on MultiMedia and Information Technology 2010 31 Quick Start MATLAB MathWorks http www mathworks se help techdoc learn matlab bta
33. ection The 802 11g is fully backward compatible with 802 11b hardware Due to being cost effective IEEE 802 11g enables companies that have already IEEE 802 11b devices to use them along with the IEEE 802 119 devices on the same network Zigbee Zigbee defines a set of communication protocols and wireless network technologies for short distance low data rate low complexity low power consumption as well as low cost 19 The Zigbee standard has adopted IEEE 802 15 4 in its Physical Layer and Medium Access Control MAC protocols The MAC protocol used CSMA CA with initial random back off time Therefore Zigbee devices are compatible with the IEEE 802 15 4 standards as well Zigbee wireless devices operate in different radio bandwidths 868 MHz 915 MHz and 2 4 GHz The maximum data rate is 250 Kbps The transmission range can vary depending on factors such as what antenna is used in which environment how much is the transmit power and transmission frequency Zigbee has been used in a variety of domains such as industrial public home or office environments Zigbee was designed for low power consumption so it is fit for embedded systems and applications where reliability and versatility is important but not wide bandwidth high data rate 30 14 WirelessHART Command oriented Application Layer application procedures Presentation Layer Session Layer Reliable auto segmented Transport Layer transfer of large da
34. ection time slots selection edit and delete nodes button and etc 55 4 1 4 Using the same color pattern for each control loop The customer wanted to be able to see which sensors actuators and control loops belong to the same control loop on the schedule table The solution was to give the same color to these entities in the schedule if they belong to the same control loop Note that intermediate nodes are in our consideration due to they do not belong to any specific control loop 4 1 5 Remove node on scheduling table by using Delete Key One of the customer s wishes was to be able to delete nodes from the schedule by selecting them in the schedule and deleting them using the Delete key 4 1 6 Improving the correctness of Controller There were several demonstrations for the customer when the simulation mechanism of the controller was discovered to be incorrect Some of these problems were solved as part of the thesis and others were too complex and not considered in the scope of this work It was discovered that the block organization of the PID controller and TX_DL was incorrect The on the way from the Controller Block the PID has to come first then the TX_DL and then the Gateway Another problem was that only one PID was used to calculate for all the actuators After a short discussion it was decided that one PID is to be added for each actuator When testing with different schedule combinations some of them produced unexpect
35. ed and incorrect results In order to identify the problem the code was inspected and it was found that the gateway does not know what data is to be sent to which node Since in the simulation the user acts as the Scheduler it was obvious that when they 56 create the schedule they know what data is to be sent to which node Consequently the user needed to have more control over the Gateway 4 2 Limitations 4 2 1 Internal Limitations These limitations define what is excluded from the scope of the thesis by the authors with the consent of the customer e The redesign of the software architecture was out of work s scope e The thesis did not address perfecting the controller e The thesis did not address modifying the TrueTime library e The above mentioned reasons set limitations in extra functional requirements execution speed extendibility modifiability The thesis did not focus on improving any of those 4 2 2 External Limitations These are the limitations that could not be controlled by the authors e TrueTime does not support multiple channels 57 5 Solution This section presents the appropriate solutions for the requirements in section 4 The descriptions contain the choices the authors made and the reasons for those choices It is also shown how the problems solved based on what the authors have learned during their research The upgrades of WirelessHART Tool architecture GUI and Simulation Model are desc
36. eld NET The PROFINET offers two possibilities PROFINET IO and PROFITNET CBA In this thesis only the PROFINET IO is taken into account The working mechanism of PROFINET IO is quite complex The paragraph written below does not try to describe all PROFINET IO s parameters and mechanism but rather give a glimpse on them 10 In PROFINET IO the message sending is divided into three parts e Synchronization no messages are sent Only clock synchronization happens e HT Class S IRT Isochronous Real Time the messages are sent considering the IRT schedule table this schedule does not use timeslots A node only sends the message to the next node on the message s path e HT Class 1 this phase uses user determined transmissions When the receiving nodes memory is empty only the address part of the message is read by the receiving node and the message is immediately transmitted to the next node in the path of the message Each PROFINET node can be connected up to four other nodes thus the solution requires a static node graph of some sort in order to work 11 2 2 3 Wireless Network Standards This subsection is a brief introduction about the Wireless Network Technologies The wireless network standards are chosen considered their use in both industrial and personal environments There are many accessible technologies for industrial wireless communication that provide high flexibility and efficient automation solutions Compared to fi
37. elessHART MAC protocol contains six major components Interfaces Timer Communication Tables Link Scheduler Message Handling Module and State Machine 24 23 Network Layer Interface to Network Layer Link Superframe Link Table Message Scheduler Handling Module State Machine Message Handling Module Wireless HART MAC Interface to Physical Layer Physical Layer Figure 7 WirelessHART MAC architecture This thesis only deals with two of the components communication tables and link scheduler e Communication tables table of neighbors superframes links and connection graphs are responsible for set up the communication between device and its neighbors e The Link Scheduler s responsibility is to determine the next time slot to be allocated based on the communication schedule in the superframe table and link table 24 ID NumSlots ID DestinationUniquelD DestinationNickname Neighbor ID UniquelD LinkOptions Nickname LinkType TimeSourceFlag SlotNumber Status ChannelOffset TimeLastCommunicated BackOffCounter BackOffExponent Statistics Figure 8 The communication tables Communication Tables Referring to Figure 8 each device maintains a number of tables in Data Link Layer These tables manage the communication carried out by the device and collect information to create statics about the communication There is four table activities Superfra
38. equency simultaneously for transmission Since the verification acknowledgement of sending and receiving is not enough to ensure that the package will ever be sent to the destination due to collision the method uses a back off algorithm to try sending at different times The collision detection state starts after the sender is ready to transmit the package if the medium is idle and then the sender starts transmitting the package The CSMA CD is a Media Access Control MAC method in Data Link Layer providing the acknowledgement for the source destination device whenever data has arrived 16 10 The back off technique is an algorithm used in the sending nodes which selects a random number for the duration of waiting time in the network to reduce the probability of further collisions Time Division Multiple Access e g TTP The TDMA is a medium access method for shared medium networks Each network node is given a time slot where it can transmit The number of time slots is fixed and nodes transmit in that time slot where they are allocated The node transmissions are separated and no collision can happen based on time division The transmission will continue in the next time slot unless the full frame can be transmitted in a slot The disadvantage of this technique is that there can be wasted time slots when no data transmission happens 16 PROFINET IO The PROFINET is an open standard for Industrial Ethernet it stands for PROcess Fi
39. es This is caused by the smaller weave length which cannot reach as far as IEEE 802 11b g IEEE 802 11a suffers less from interference because regulated frequencies prevent interference from other devices IEEE 802 11b has a maximum data rate of 11 Mbps and it uses the original IEEE 802 11 Direct Sequence Spread Spectrum DSSS modulation standard of Media Access Control CSMA CA defined by the IEEE standard The Physical Layer extension added IEEE 802 11b provides a faster connectivity to WLAN operating in the 2 4 GHz The IEEE 802 11b offers the data rates of 1 and 2 Mbps specified by original 802 11 standard This data rates are backward compatible with the 802 11 standard at 1 13 and 2 Mbps The reason for gaining instant popularity is this backward compatibility The IEEE 802 11b uses different modulations to encode decode data at different speed Complementary Code Keying CCK is used to encode the information for 5 5 and 11 Mbps Quaternary Phase Shift Keying QPSK is used at 2 5 5 and 11 Mbps and Binary Phase Shift Keying BPSK at 1 Mbps Besides the IEEE 802 11 uses Baker Code for 1 and 2 Mbps The change in modulation allows more information to be transmitted using the same timeframe IEEE 802 11g operates at 2 4 GHz like 802 11b but it uses the OFDM like 802 11a The IEEE 802 11g is an extension of 802 11b the Physical Layer is identical to IEEE 802 11b The maximum data rate is up to 54 Mbps excluding forward error corr
40. es created by the UI in order to determine what behavior they should simulate connection is not shown because it is dynamic The TrueTime library uses some building blocks from the Simulink library as well as so called S Function System function files The S Function files are compiled files that are included in the library itself that is why the authors choose not to display them 33 3 3 User Interface amp Functionality WirelessHART GUI Graphical User Interface was created using GUIDE GUI Development Environment of MATLAB GUIDE is a tool for designing and programming GUls GUI components are building blocks of the GUI Each GUI component has its own callback The callback is a function that developer can implement and connect to the specific GUI component The callback controls the GUI or component behavior by performing a task or action The callback is activated by an event of its component An event is a previously defined user interaction with the GUI component There are several callbacks provided by GUIDE for example ButtonDownFcn KeyPressFcn Callback etc 12 For instance the Delete Button is the GUI component The Delete button uses Callback as its callbacks property type The Callback is one kind of a callback property In this case the Delete Callback will be activated when the user pushes the Delete Button Whenever the Delete Callback is activated the function code contained by the delete cal
41. escribed style of code writing prevents from the application to accommodate good maintainability extensibility changeability and response time The style of code writing also goes against pragmatic programming Don t repeat yourself File and Folder Organization Avoid Deep Nesting 4 54 4 Extensions to WirelessHART Tool This section provides requirements specification These requirements were requested by customers in order to improve the capability of the tool The limitations of the thesis can be found in this section 4 1 Requirements 4 1 1 Wired actuator The customer needs the WirelessHART Tool to be able to simulate control systems where the actuators are wired and the sensors are wireless 4 1 2 Multiple Channels The purpose of utilizing Multiple Channels is to enable devices to split the frequency range of the network into multiple channels These channels covering different frequencies can allow the nodes to communicate simultaneously The customer needs the WirelessHART Tool to allow users to generate networks that use multiple channels in their frequency range to transmit data 4 1 3 Toggle switch for sensor actuator intermediate panel The WirelessHART tool displayed three different panels together on the GUI sensor actuator and intermediate panel This approach resulted that the user interface was and difficult to follow especially considering that each panel had similar configuration panel such as nodes sel
42. ess the Bluetooth Wireless Technology provides a low cost method of wireless connectivity for digital and computing devices However the supported data 12 rates are moderate and insufficient for many applications The short range communication is also one of the weaknesses for this wireless technology Wireless Local Area Network The use of Wireless Local Area Network WLAN has been constantly increasing in various domains such as manufacturing chemical industry oil refinery etc Industrial WLAN operates under mechanisms that are defined in the related IEEE standard Wireless LAN has many series of extension such as IEEE 802 11a IEEE 802 11b IEEE 802 119 IEEE 802 11n etc WLAN was developed in order to provide very high speed data transmission including both packet and connection oriented voice Quality of Service etc 17 27 The goals of developing new series are to provide high throughput and a continuous network connection The most common variations and extensions of IEEE 802 11 IEEE 802 11 a b g will be described here IEEE 802 11a supports bandwidth up to 54 Mbps and signals in a regulated frequency spectrum around 5 GHz The Physical Layer of IEEE 802 11a is based on multiple carrier system Orthogonal Frequency Division Multiplexing OFDM The high frequency causes a disadvantage to the overall range of IEEE 802 11a compare to IEEE 802 11b g The IEEE 802 11a signals are absorbed very quickly by walls and other obstacl
43. etermines how fast the signal gets weaker in the transmission environment ACK timeout s determines how long the sending node waits for the acknowledgment of the receiver before it considers the message lost Retry limit the maximum number of retransmissions allowed Error coding threshold determines the limit of errors when decoding signals 33 e Loss probability 0 1 determines the chance of a message not arriving to the receiving node e Initial seed determines the pattern of randomization that is used to put the network block in a random state e Show Schedule Output port allows the user to visualize schedule e Show Power Consumption Output port allows the user to visualize power consumption One disadvantage is that the separate blocks cannot truly be tested by themselves In case of a complex system looking for problems in separate blocks can cause some delay It is necessary to initialize kernel blocks network blocks to create tasks interrupt handlers timers events monitors etc before executing the model The initialization code and the code that is executed during simulation must be written in MATLAB or C programming language Another disadvantage is the absence of resources such as supporting documents and examples There is a manual but it is unclear in some places outdated and unfinished 34 3 ABB s WirelessHART Tool The ABB s WirelessHART Tool was developed in order to ease and speed u
44. etermines how many control loops are run by the Controller The Transmit Power is used to determine the strength of the transmissions signal The transmit power will be defined at 10 dbm as a default if not specified The Reset button in Network Property panel is used to clear all options on the GUI and allows the user to generate a new model This network property will be enabled only after the model is generated generated flag global variable is used to check whether the model is generated or not The Superframe is a global variable array in this case with the length of 1 which is changed accordingly to Length of Superframe field If the value in the Length of Superframe field is incorrect the user is not allowed to set the Control Loop number 3 3 3 Sensor Property Sensor Node primarily these nodes only send data When Multi Hop is enabled the sensor nodes can act as intermediate nodes thus send and receive data Through the Sensor Property panel the user can determine in when a specific sensor sends data and in which superframe First the user must select the desired sensor from the drop down list The user can also assign a specific name for the signal of each sensor The X Y Z position is used to set the position of the node in a 3D space This 3D coordinates are used to compute the area where the signal can be received from that node The Set Sensor button is used to store the values of the sensor in the virtual tables of
45. etwork block and ControllerBUS block The Wired Actuator block is connected to Plant and send the data over the Outport Simulink block The internal block design of Wired Actuator block is similar to Wireless Actuator block The Wired Actuator could not be used at all on WirelessHART Network thus no uses such as intermediate node behavior scenario Therefore there is no feedback from output port coming into the input port The feedback output is terminated by using the Terminator Simulink block 68 The Ethernet Network block is a TrueTime Network block in which specified type is Ethernet This TrueTime Network block is used in order to simulate a wired network when such actuators are used Both the Ethernet Network block and the WHART NET block have their own Network Number which can be defined in mask interface of TrueTime the WHART NET block was specified as a network number 1 and Ethernet block is 2 respectively as presented in Figure 24 L7 Source Block Parameters Ethernet Network Real Time Network mask link Parameters Network type CSMA CD Ethernet Network number 2 Number of nodes 2 Data rate bits s 10000000 m Minimum frame size bits 248 Loss probability 0 1 0 Initial seed 2 V Show Schedule output port ok cm Heb Apply Figure 24 Mask interface of Ethernet Network TrueTime Network Block Since the Wired Actuator
46. gle buttons 59 The chosen solution to the above described problem is to place toggle buttons each node property Sensor Actuator and Intermediate which display only one panel at a time This allows the user to follow easier what is happening when setting up the simulation For example if the user is focusing on sensor configuration the user would click at the sensor toggle switch and then only the sensor configuration panel would be displayed The toggle buttons were selected to separate one big panel of Sensor Actuator and Intermediate The concept is to split the big panel into small panels The panels are controlled by the three toggle buttons The starting point will be clear panel unless the user clicks on any buttons The sensor panel will appear when the users click on Sensor toggle button If the users click on Actuator toggle button the actuator panel will appear on the UI The controller panel was not included between the toggles because it does not belong to the network nodes Multiple Channels It was discovered that TrueTime library does not fully support the use of multiple channels communication TrueTime s mask interface is prepared by the channel offset input field however it only gets the input data but there is no function connected to process or use that data After discussing with the customer the customer s wish was to design to prepare the WirelessHART tool for supporting multiple channels in case the function
47. he input to the actuator The actuator uses it to affect the process and keep the controlled variable on the desired setpoint Error is the difference between the feedback and the setpoint The error can be either positive or negative The purpose of any controllers is to minimize an error The feedback is the input to the sensor output from the process that needs to be maintained or controlled at the desired value setpoint Feedback control reacts to system and works to minimize the error Referring to Figure 1 closed loop control system uses error between the feedback from the process compare to the desired setpoint to make a decision of changing the control signal that drives the system The feedback is current output from the process that is observed In the control system term the error value can be positive or negative The controller persists to maintain the error to reach the desired state The error will be adjusted accordingly to the desired setpoint by sending manipulated variable to the process Since closed loop control system can adjust itself from time to time it is called automatic control loop system Setpoint Error Manipulated Controlled variable variable Controller Feedback Figure 1 Closed loop control system 2 1 3 Proportional Integral and Derivative Controller The Proportional Integral and Derivative PID controller is the most popular controller used in industry The PID controller is
48. he user is able to select the desired control loop and set various properties for it The name of the control loop can be specified in a control loop name field The user must set the timeslot and the superframe of control loop The Duration determines how much time measured in timeslot the process will require for completing the calculations The default value of duration is 1 timeslot Each control loop has separate PID control values and a Setpoint that the user can assign The default PID control values are P210 I 0 D 0 respectively The default setpoint is 1 The dependency input and output show which sensor and actuator is related to the currently selected control loop The user can assign more than one sensor and or actuator for the selected however only the most recent ones are displayed 46 The control loop properties will be stored in the virtual tables and displayed on the WirelessHART Tool UI after the Set Control button was pressed The Edif button clears the selected control loop from the virtual tables as well as from the UI 3 3 7 Transmission Delay WirelessHART tool simulator can simulate the transmission delay for the host network The Transmission Delay panel provides two types of delay TX delay Transmit RX delay Receive The default value of both TX and RX delay is zero and the maximum value of each of them cannot exceed 0 005 second TX Transmission Delay functionality is implemented to provide a time dela
49. ing the implementation phase of the project This version of TrueTime allows designing networked control systems simulation by using real time kernels blocks network transmission blocks wired and wireless networks All information here was gathered from the TrueTime Manual 10 35 The parameters which are not described in the TrueTime manual were studied through tests The original block library consists of the following blocks e TrueTime Kernel Block programmable simulates a node in the network This node simulation executes user defined tasks e TrueTime Network Block acts as a communication medium and simulates the behavior of a wired network by allowing nodes to transmit packets to each other through this block The internal behavior of the block is the following the message is taken as input from the input port that relates to the sending node then the message is pushed to the output port which relates to the receiving node e TrueTime Wireless Network Block simulates the behavior of a wireless network by allowing nodes to communicate with each other through this block e TrueTime Ultrasound Network Block this block simulates networks that use ultrasound signals for communication e TrueTime Send Block pre configured node block acts as a sender node on the network e TrueTime Receive Block pre configured node block acts as a receiver node on the network e TrueTime Battery Block this block can be used to simulate batter
50. ingle channel 82 Time Slot 1 Time Slot 2 Time Slot 3 Time Slot 4 SuperFrame 1 CH1 S1 GW CLi CL2 CH5 GW gt A2 SuperFrame 2 CH3 S2 gt 11 CH6 11 GW CH13 GW gt A1 Figure 42 Multiple channels in Schedule table As shown in the Figure43 the result of the Multi channel test was completely unexpected The expected result was that both control loops would produce very similar result to the Servo model but the two control loops just take off without giving a sign to turn towards the setpoint The test results show that something was not right with simultaneous multi channel communication on the WirelessHART network Since the actuators did produce outputs the only explanation is that the messages did not arrive from the sensors after they were sent The reason is that TrueTime does not support multiple frequency channels communication WirelessHART Tool using Multi channel communication 14 T T T Control Loop 1 Control Loop 2 Servo Model Plant Output 0 1000 2000 3000 4000 5000 6000 Time Figure 43 Result of Multiple channels 83 7 Discussion of Results Test 1 The improvement of the WirelessHART Tool performance When comparing the performance of the old tool and the new tool the expectations were that the plant output using the new tool would be more similar to the plant output of the Servo model than when using the old tool The expectations were right the new Tool
51. l Integral and Derivative Controller ttti 6 2 2 Network Technologies eese tentent tenta tnnt tent tette ttt tta tantos tto ttn tonto aaas 7 2 2 1 The Open System Interconnection Model ttt ttt ttt t a 7 2 2 2 Wired Network Standards ttt aestate tst tata 10 2 2 3 Wireless Network Standards ttt ttt ttt ttti tata 12 2 3 WirelessHART Technology ettet iraque dtge iust teres hne bn ren eu A adden RS 17 2 3 1 Basic Components of WirelessHART ettet ttt ttt ttti 2a 18 2 3 2 M dium Access COntrOL u data e ted oue uaa es d adu 20 2 4 Development Tools and Simulation Environment essent ttes 27 24 1 MATLAB 27 242 SIMUN K aenn A AA A AA ER 28 ZED IE aS N EA EE ET A AEAEE A E 29 A ABB S Wireless HART TOG ves cssrsscnssatonerssssencassacsacusiasstenssasaaninnsxsaen seas iounaersdenpsaietersonsenenieatis 35 Sell True Dime Upgrades aiiis 35 3 1 1 TrueTime Network BloCK iiniiiiriis ttt ttt tates tata 36 3 12 TrueTime Kernel BloGk zia abo ai datar aa tabat ada 37 3 2 Application Structure uet ace etie a deu ve ORB cus Pte E De e Pc wasnt 40 3 3 User Interface amp Functionality eis esistente tata ttt tent tanto tenta ttn ton stt tto nnna 42 3 3 1 Create Model rbi etit ate i eater e dete 43 3 3 2 NetWork Property A 44 BI SENSON PIO DOT Y t iiie
52. l of this thesis was to evaluate the existing WirelessHART Tool add new functionality without affecting already existing features and attempt to improve where problems are found Before the implementation started the authors had to familiarize themselves with topics such as network theory WirelessHART standard etc and get to know the existing application structure of WirelessHART Tool in order to be able to map the new functionality There were many questions unanswered after the conducting research In order to be able to proceed with the implementation the unanswered questions were discussed with the customer and the appropriate solution was chosen Each specific solution was evaluated and developed In order to verify the correctness of the whole application a few test specifications were created used to assess the application and the results along with the specifications were demonstrated to the customer Some of these tests can be found in this paper The results of the test comparing the old application to the new application have full filled the expectations The comparison of the wired and wireless actuators has given the expected results as well The test comparing the multi channel and single channel communication gave a surprising result The multi channel communication turned out not to be working at all After a short investigation it turned out that the problem was in the TrueTime implementation of WirelessHART The problem was
53. lD as output from the Graph table to NPDU packet Link Scheduler Link scheduler determines the next slot which will be used receiving or transmitting slot based on the communication schedule in the Superframe table and Link table In order to transmit a packet the Link scheduler evaluates the packet that is coming from Network Layer to the MAC protocol MAC protocol determines the Absolute Slot Number ASN which will be the Timeslot used to send the packet The received links contained in a superframe should be checked to determine the first Absolute Slot Number ASN that can be used to receive a packet 24 25 2 4 Development Tools and Simulation Environment 2 4 1 MATLAB The term MATLAB Matrix Laboratory covers a programming language and computing environment for specific purpose numerical computing Both the programming language and the computing environment are developed by MathWorks 31 MATLAB computing environment provides a large set of computations for different instances in mathematics such as matrix manipulations statistics numerical analysis control theory etc 27 The computing environment also allows design of user interfaces and allows interaction with code written in other programming languages MATLAB is used by researchers in many different disciplines starting from engineering science and economics Moreover MATLAB computing environment also provides an additional package Simulink to create graphi
54. lant Comparison 14 T T T T T I I WirelessHART Tool 2 0 new Servo Model Time intervall of stable plant output 4 sec PID response time 0 746sec PID sample time 0 01 Z i 0 500 1000 1500 2000 2500 3000 3500 4000 4500 Figure 35 Wireless Tool 2 0 Wireless Actuator against Servo Model Figure 35 shows the result of the wireless actuator against servo model in new version of WirelessHART tool The PID values were tuned in a way that they were supposed to stabilize plant outputs in the observed time period The respond time was set to 0 746 sec The wireless actuator case did perform as expected closely following the Servo Model s performance and stabilizing 78 Wired Actustor1 Sensori aa T Ememet Schedule EXemet Network g E voe Enc sim time CortrolierBSUS Figure 36 New WirelessHART Simulation Setup Model TmeSbti Time Slot_2 SuperFrame 1 CH1 S1 gt GW CL1 gt A1 Figure 37 Schedule table of New WirelessHART 79 WirelessHART Tool 2 0 new Servo Model Figure 38 WirelessHART tool 2 0 Wired Actuator against Servo Model Referring to Figure 38 the same PID response time was used as in the previous case The Wired Actuators gave the expected results just slightly differing from the results of the Servo Model 6 1 4 Test 3 The performance of Multi Channel and Single Channel The tes
55. lant Output scopes in order to have a stable trace on the graphs The controller of the reference model is always set with the same parameters as the networked controller The step of the reference model was set in a way to minimize the time delay between the two graphs The plant Transfer Fnc was set to 1 and 3 1 0 for Numerator coefficients and Denominator coefficients respectively The EX DL block in the reference model was set to 0 0005 s just like the RX delay of each simulation 71 Discrete PID Controller Transfer Fon Figure 26 Servo System Model 6 1 2 Test 1 The performance of the Old WirelessHART Tool and New WirelessHART Tool The reason for this test was to see how different the old tool performs compared to the new tool The plant output was recorded in order to see the difference between the two applications The PID s and all settings from the GUI were set identically However the Filter Coefficient N in the PID was set in case of the new Tool Figure 27 and 28 show the simulation setup model and schedule table of the old version of WirelessHART tool 72 ES E a PFE Plant mdi 1 Loss signal 1 Schedule Glock Time some sim_time Position WHART_NET Reference Control Figure 27 Old WirelessHART Simulation Setup Model j TimeSlot 1 Time Slot 2 Time Slot 3 SuperFrame 1 1 gt GW CL1 GW A1 Figure 28 Schedule table of Old WirelessHART 73
56. lback will be executed As shown in Figure 15 and 16 the components and their functions were grouped on the GUI considering their purpose For grouping the components on the GUI panels were used 1 1 13 42 Bl WHART Simulator ver1 0 La m u File Edit Import Data Transmission Help r Create Model Sensors property Actuators property Number of sensors Sensor Intermediate Actuator Intermediate Number of actuators Position X Y z Position X Y z Number of intermediate From To From T poo Node Node G Node GW Node 7 Multi hop Generate modei Superframe Superframe Superframe Superframe Network properties Time siot I Time slot fa Time siot Timesiot BE Number of superframes Superframe S T Length of superframe m Edit Set Sensor Edit l Set Actuator Number of control loops Transmit power dbm Intermediate Node Control loop properties TUER Intermediate node Control loop Dependency input ontrol ame Position X Y z e aac Transmission delay Superframe TX delay From r To ay Set deiay es ET Duration time slot RX delay gt P Dependency output Superframe Superframe Star Time mai mm EN r Actions 2 1 Time siot Time slot a Health rep
57. lessHART nodes are registered to the network through the Gateway The Network Manager is an intelligent device that creates manages and maintains the mesh network each node is connected directly to every other node within their transmission range The network manager is responsible for configuring and monitoring the network configuring the schedule TDMA and maintaining the routing tables The slots in TDMA schedule are allocated hop by hop based Also the frequencies are allocated in those slots 2 3 2 Medium Access Control MAC protocol is a sub layer of Data Link Layer of OSI model The main responsibility of MAC protocol is to arrange the packet transmission among multiple stations that share the same channel The Design of an efficient and capable MAC protocol is crucial in wireless networks 29 The MAC protocol in WirelessHART is dealing with the following responsibilities e Providing Time Synchronization Approach e Requesting Identification of devices that need to access the medium e Acting as interface to transmit messages to Network Layer e Listen to packets that are transmitted by the neighbors 20 Time Division Multiple Access The TDMA Time Division Multiple Access uses schedules to allow several devices to communicate over the network The schedule contains different time slots to avoid the collision problem The major challenges of TDMA are the time synchronization and clock drift In WirelessHART the network
58. link blocks 34 The block organization shows the interconnections between the blocks and how the data is transmitted and received on the entire network in Figure 17 1 Clock Out zu t Actuator Plant_mell_1 Sensor sim_time noise Position WHART NET Net schedule Scheduling Controller PID Reference Control Figure 17 The completed Simulation Model of WirelessHART Tool Blocks The Network block WHART_NET contains several parameters as shown in TrueTime section The Loss Signal output and Schedule output allow the users to plot the Packet 49 Loss of the network and the schedule of each node The Network block is attached with Position block The Position block contains the physical location X Y Z of nodes that belong to the network as well as the noise of the environment of the particular node The users can specify the physical position of each node in the network through the WirelessHART Tool interface In case of the noise the value will be zero 0 constant since the Ul does not have options to set or change it Gateway block Gateway is connected to Control block Control using an analog output Between them a delay block can be found The Gateway block has one input port and two output ports The Gateway schedule output is provided by TrueTime in case of studying the Gateway behavior RX Delay as shown in the Figure 17 is the Receiving Delay block The RX DL
59. lot mm Dependency output Superframe Superframe 4 d cu A eis ee Time slot Time slot a i Number of superframes 2 B Ef Controller l ia Superframe 2 4 E L D Set Control Length of superframe2 6 CH 1 CH 4 X z Number of control loops 2 T i Edt ume 777 a Transmit power dbm Lem Transmission delay PES Time Slot 1 Time Slot_2 Time Slot 3 Time Slot 4 Time Slot 5 Time Slot 6 SuperFrame 1 a S TX delay Set delay SuperFrame 2 RX delay m Actions r Gateway Panel Heath report Set the Model J To Node 51 Actuator Data A1 v Show timestots Runsimueton Supertrame CH Timeslot 1 40 7 2 3 ls Plot Stop simulation Edit SetGateway 4 m Figure 20 New WirelessHART Tool User Interface 5 2 1 Changes in Create Model Wired Actuators There were two new items added on the panel both dealing with the wired actuators The wired actuator checkbox has been added because there are major differences in what the Simulation model includes with and without the wired actuators The number of Wired Actuators has been separated from the number of Wireless Actuators because during when setting the model and during simulation it would be difficult to track which node has what number on what network in the model and in the Global Variables 5 2 2 Changes in Sensor Actuator Intermediate Property Tog
60. ls the current simulation time The length of simulation time runtime can be specified by the users in the Simulink run time interface The simulation time in default set as inf which means the simulation will run until the users stops it Display block shows the value the input from the Clock Simulink block sim time block is used to write the signal data to MATLAB workspace When the simulation is completed or paused all data created by the simulation is written to the workspace The users can specify how to save the data from several formats such as time series array structure and structure with time Plant refers to Transfer Fcn Simulink block is used as a Plant for processing and transforming the data The Transfer Fcn has two parameters Numerator coefficients and Denominator coefficients The Numerator coefficients and Denominator coefficients can be a vector or matrix expression The default transfer function is the following formula 3 4 S41 3 4 The default of Numerator coefficients is one 1 and Denominator coefficients is 1 1 Actuator block can be expanded to see how it is built from sub blocks as shown in Figure 18 The Internal architecture of Actuator Sub blocks consists of one TrueTime Kernel block and three Simulink blocks 51 s 1 Plant mdi 1 Actuator1 ES Sensor1 smcime w whart lib Actuator ci BS Outi x File Edit View Simulation Format Tools Help Out2 Al Loss signal ou
61. me table Link table Neighbor table and Graph table 24 25 The responsibility of the Superframe table is to provide solid base for communication between a device and its neighbors The superframe table consists of three columns SuperframelD NumSlots and ActiveFlag As mentioned above section 2 3 1 the Network Manager is in charge to generate and provide the superframes in the network 2b The purpose of Link table is to arrange the communication between the device and its neighbor There can be more than one link within a superframe A link specifies the communication with particular neighbor or broadcast group of neighbors The Link table consists of five columns LinkID LinkOptions LinkType SlotNumber ChannelOffset The LinkID is the unique identification for the link it is provided by the Network Manager within a superframe and all entries in the table The LinkOptions determines the meaning of the Link it can be either transmitter link TX or receiver link RX The LinkType indicates the type of link normal broadcast join or discovery link The SlotNumber is a foreign key that provides the connection between the superframe table and the Link table The SlotNumber represents which timeslot within the superframe is going to be used for communication with neighbor The ChannelOffset represents which frequency will be used for transmission Neighbor table contains the list of nodes that the device can reach Since each link
62. n possible without the support of many people We would like to express our gratitude to our academic advisor Frank L ders who was greatly helpful and offered invaluable guidance We are truly indebted to our supervisor at ABB Tiberiu Seceleanu who was always willing to help and support us We would also like to thank to our Thesis Examiner Professor lvica Crnkovic We would like to show our gratitude to the staff at ABB who gave us their invaluable opinions and guidance during discussions Finally we would like to thank our beloved family because without their support and encouragement the thesis would not have been completed Acronyms IEEE GUI TDMA CSMA CA MAC WHART Institute of Electrical and Electronic Engineers WirelessHART tool Graphical User Interface Time Division Multiple Access Carrier Sense Multiple Access with Collision Detection Medium Access Control WirelessHART Table of Contents Mp OCA M 1 1 1 Problem Formulation isse a tenta tent tette aiaiai anaana aaiae iaaii 2 1 2 Report Outline teat ivt qa d ot i Ovi E De HE DeL E n ERN HE Deae v nannies 2 2 Background ici verte rar DUAE sacs REIP eEre EFE YE E E EXE eu E YR EEE EXE PEERS ETE US 4 2 1 Process Control in Industrial Production essent rnnt tttn tenta 4 2 1 1 Closed LOOP COON acces sce exits cece sce cen catenin econ ce een aee ruant 4 2 1 3 Proportiona
63. n the schedule For instance if we put GW gt A2 in Timeslot 3 and GW gt A1 in Timeslot 6 instead the output of both processes would be incorrect 65 In order to simulate registers we have decided to use analog connection Referring to Figure 17 in section 3 4 where the PID block was organized after TX DL block this method created some confusion and after short discussion it was decided that that PID should come before the TX DL as in Figure 22 The reason was that the delay before the PID controller might distort the calculation of the PID Another reason was that the PID and the Controller block were supposed simulate the control together while the delay was used to simulate the delay on the way back from the Controller to the Gateway During the investigation other problems were found such as single PID served all the control loops The PID controller block remembers old data in case of one PID and more than one control loop this leads to the controller working ineffectively and incorrectly The simulation model has been changed according to the single PID controller problem by adding the number of PID controllers in accordance with number of actuators After the PID controllers are generated they are connected to a Mux and a Demux Simulink blocks In order to improve the PID controller behavior the new parameters inside PID controller block were changed based on customer requirement The Sample time of PID
64. normally used in closed loop control systems 2 The purpose of PID controller is to obtain the minimum error controlled variable and desired setpoint for a given system by applying three types of control actions The controller sends the controller output signal to actuator The actuator acts upon the controller output signal in order to drive a plant As shown in equation 2 1 3 PID consists of applying the sum of three types of control actions Proportional action Integral action and Derivative action 18 t V t Ke e t 4 K few dt ko e t d 2 1 3 Proportional action is used to compensate increase or decrease the magnitude of the current error signal Integral action increases according to how long the error has existed This action will affect directly to response time that reaches the setpoint Derivative action determines the steepness that is corresponding to the magnitude of the error The larger the error is the longer the steepness will be 2 2 Network Technologies This section describes general introduction to the Open System Interconnection OSI Model and the different Wired and Wireless Network Technologies are presented along with their strength and weaknesses The general comparison of each type of Wireless Network Technologies will be mentioned here as well 2 2 1 The Open System Interconnection Model OSI model is a theoretical framework used for communication between networking devices The
65. ocess Control A Wiley Interscience Publication 2002 2 M Jouaneh Fundamentals of Mechatronics Si Edition Cengage Learning 2013 3 S C Goyal U A Bakshi Feedback Control Systems Technical Publications Pune 2008 4 Andrew Hunt David Thomas The Pragmatic Programmer from journeyman to master Addison Wesley Longman Inc 2000 5 Jingyu Liu Yanjun Fang Dahai Zhang PROFIBUS DP and HART Protocol Conversion and the Gateway Development In proceeding of Second IEEE conference on Industrial Electronics and Applications 2007 6 Nitaigour P Mahalik Fieldbus Technology Industrial Network Standards for Real Time Distributed Control Springer 2003 7 HART Communication Protocol HART Specifications http Awww hartcomm org protocol about aboutprotocol specs html visited 24 July 2012 8 HART communication foundation TDMA Data Link Layer HCF SPEC _ 075 Revision 1 0 2007 9 HART Communication Protocol WirelessHART Components http www hartcomm org protocol wihart wireless components html visited 24 July 2012 10 Anton Cervin Dan Henriksson Martin Ohlin TrueTime 2 0 beta Reference Manual Lund University 2010 11 Sara Z Afshar Mohammand Ashjaei WirelessHART Simulator A GUI for simulation of WirelessHART network in TrueTime toolbox Technical Report ABB research cooperate 201 1 87 12 Write Code for Callbacks Code a Programmatic GUI MATLAB MathWorks http www mathworks
66. ort Set the Model r 1 Controller P Show timeslots Run simulation I Set Control Piot Stop simulation Set point Edit 1 2 Figure 15 WirelessHART Simulation ver1 0 interface The GUI is used to open call the generic model and WHART lib when the user gives the input to generate the model After the Simulink model has been generated the user is able to configure the necessary parameters in the global variables and then set them in the model 3 3 1 Create Model This group of components deals with specifying the parameters of the simulation model which need to be specified before generating the model The create model panel has three fields and one check box that the user can fill in The implementation differentiates between two types of networks single hop and multi hop In any case the user needs to specify the number of sensors and number of actuators The number of sensors and the number of actuators are limited to 100 100 sensors and 100 actuators 43 Until the model is generated all other functionalities of the UI are restricted The Intermediate Panel the Actuator Property Panel s components which are responsible for scheduling data transmission and the Sensor Property Panel s components which are responsible for scheduling data receiving are only enabled if the user selects the multi hop communication option The WirelessHART Simulator allows the sensor and actuator nodes
67. p the process of creating simulations The first version of WirelessHART Tool allowed the users to generate models to simulate a single WirelessHART control network add and remove nodes to the network set up a simple schedule for communication and set up a single PID controller to control all the processes Before the development of the WirelessHART Tool began there had been a major project to build some static WirelessHART simulations in MATLAB and Simulink and add WirelessHART support to TrueTime 3 1 TrueTime Upgrades This section describes how the WirelessHART has been implemented in TrueTime by a group of ABB s researchers Since this thesis was not dealing with changing or extending TrueTime the TrueTime library was only explored briefly However there are a couple of upgrades that need to be mentioned The WirelessHART MAC protocol has been developed with C functions together with MATLAB MExX interfaces The MEX interface is an adapter between C and MATLAB The MEX interfaces of the Blocks are connected to the Mask Interface of the Blocks 33 All the information which is required to simulate a WirelessHART network can be entered on the mask but not all data is used by functions thus not all WirelessHART features work correctly 35 3 1 1 TrueTime Network Block WA Function Block Parameters TrueTime Wireless Network 5l Retry limit Error coding threshold 0 03 Loss probability 0 1 0 Initial seed 0
68. ribed here in order to give a better understanding of the changes The section is broken to subsections using the same organized paper as in Section 3 The subsections only describe the new functionality to allow easier comparison between the new and the old WirelessHART Tool 5 1 Application Structure The Application Structure Design has not been changed because of time limitation and customer s request For the existing application structure please see Section 3 2 It was decided to follow the existing application structure and utilize its elements as a means to avoid any effects on the existing functionality of WirelessHART tool The new functionalities were mapped carefully on the existing elements of structure then implemented to avoid adding extra elements and to avoid complicating the structure 5 2 User Interface Design This section presents the description of upgrades made on the GUI The GUI was reorganized in order to accommodate the required changes as presented in Figure 20 and 21 58 Bl WHART Simulator ver1 0 File Edit ImportData Transmission Help a Create Model arrama a A RR a Number of wireless actuators 1 BUNTEN CEU 1 Dependency input uis Sensor 1 m E Intermediate Control loop name ESE STOEL E Position X Y z Superframe 1 B EL Wired Actuator From r To Duration time slot 1 Node Node a z Start Time s
69. rray where the first element determines which network does the block belong to the second element determines the ID of the node on the corresponding network e Local clock offset and drift this is input again takes an array where the first element defines a constant delay compared to the simulation time while the second element defines a percentage of how much the time is faster for the block compared to the simulation time e Show Schedule Output port allows the user to visualize schedule e Show Energy Supply Input port this configuration parameter was not used e Show Power Consumption Output port this configuration parameter was unused m Block Parameters TrueTime Net Real Time Network mask link Parameters Network number 1 Number of nodes 1 Data rate bits s 10000000 Minimum frame size bits 512 Loss probability 0 1 0 Initial seed 0 F Show Schedule output port OK Cancel Help l Apply Figure 10 TrueTime Network Block Parameters The TrueTime Network Block has the following parameters that can be set in its visual interface in Figure 10 31 Network type determines the network technology simulated by the block The following network types are supported CSMA CD CSMA AMP Round Robin FDMA TDMA Switched Ethernet Different types of networks have different configuration parameters In here only the general configuration parameters are described Network number
70. sHART Tool and the modified TrueTime library developed by ABB is explained here Later the reader can see a detailed specification and evaluation of ABB s WirelessHART Tool from a software engineering point of view This includes structure coding style functionality etc Chapter 4 includes the requirements collected from ABB in order to improve and extend the tool The scope and limitations of the work is covered here as well Chapter 5 contains the solutions for each requirement and the reasons for each of those solutions Chapters 6 and 7 describe how the solutions were evaluated what were the results of those evaluations as well as the explanation of the results Chapter 8 concludes the paper and gives suggestions for further improvements for ABB s WirelessHART Tool and other related appliances 2 Background In this section we describe briefly the fundamental information which was found during research There are three main areas that the reader should familiarize with before start reading the next chapter These three main areas are Networking Technology Industrial Process Control and Software Development Section 2 1 provides a short explanation about process control used in industrial production focusing on closed loop control systems and a general description of the PID controller Section 2 2 talks about the network technologies that were met during development for example Ethernet and a few wireless standards This sub
71. section also includes a table comparison about each kind of networks Section 2 3 focuses on describing the WirelessHART Standard Section 2 4 gives a brief introduction on the development tools that were used during the implementation phase 2 1 Process Control in Industrial Production Process controllers are used in a large variety of areas such as oil refining chemicals and power plants In industrial production process controllers are used to manage process output and keep it within the desired range There are different controllers for different kinds of processes 2 1 1 Closed loop control There are two major types of process control systems open loop control systems and closed loop control systems 3 In this thesis only the closed loop control systems are observed A set of common terms used in the automated process control area need to be defined for better understanding There are some important variables that need to be named and defined in the area of process control systems 1 The controlled variable is the variable which the process deals with Sometimes the term process variable also refers to the controlled variable Setpoint is a desired value of controlled variable The action of the controller is based on the error between the controlled variable and the setpoint If the error is not 0 the controller will try to drive the value of the controlled variable towards the setpoint Manipulated variable is t
72. ssHART Field Devices Manager Security Manager Em ele A e HART enabled Field Devices Wireless Adapter WirelessHART Field Device Figure 4 WirelessHART System Architecture Automation Controller Referring to Figure 4 the WirelessHART field devices are used to collect the measured data from the field then forward the data to the gateway node sensor nodes and or the field devices can receive data from the gateway in order to control the process actuator nodes The field devices are normally integrated with wireless communication sensing and computational facilities As mentioned above the field device can be either an intelligent WirelessHART device or typical wired HART device Any HART device can be easily upgraded to support WirelessHART by adding a wired to wireless adapter The Controller the Network Manager and the Gateway are connected to each other with wires this network is usually referred as the host network The most commonly used host networks are Modbus Profibus and Ethernet 19 The Gateway is the bridge that enables the Controller and the Network Manager to communicate to the WirelessHART Network It is a device that receives sensor data from the field instruments and forwards it to the Controller for further processing and sends control data to the actuators There is only one Gateway per network however one Gateway can have more than one access points All Wire
73. t transfer of data between end computers and responsible for the reliability of the connection The Transport Layer handles error recognition data recovery and retransmission The retransmission may be used when the messages are not delivered to the destination device in a correct manner or the messages get corrupted Session Layer The Session layer allows devices to establish and manage the connection This layer creates the link or connection between two software applications and allows them to exchange the data over a period of time Presentation Layer This layer acts as a translator The reason for this layer is that a network can connect several different computers such as Macintosh PC etc The Presentation Layer also performs the encryption and decryption to ensure the data security when it conveys down to another layer Application Layer The top most layer of OSI The Application Layer provides interface for applications to access to the lower layers 2 2 2 Wired Network Standards There are three different wired network models were considered candidate technologies for connecting the wired actuators Carrier Sense Multiple Access with Collision Detection e g Ethernet CSMA CD stands for Carrier Sense Multiple Access with Collision Detection This network model is used to improve the performance by terminating the transmission when the collision is detected Collision happens when two devices attempt to use the same fr
74. t was conducted in order to assess the advantages of multi channel communication compared to the single channel communication As shown in Figure 40 and 42 the scenario was utilizing the shorter schedule in multi channel communication In both cases the same model setup was used as shown in Figure 39 80 Ox z E Plar m3l 1 ri ER Actuate Sensori imermediate1 ARX Plant mal 2 pe Etnernet Schedule Ethernet Network EL z senso WHARTNet scnecule sim tme Figure 39 New WirelessHART Simulation Setup Model Time Slot 1 Time Slot 2 Time Slot 3 Time Slot 4 Time Slot 5 Time Slot 6 Time Slot 7 SuperFrame 1 CHi S12GW CH1 S2 gt 1 CHi H5GW CLI cL2 CHi GW A1 CH1 GWoA2 Figure 40 Single channel in Schedule table 81 The result of the experiment was expected in Figure 41 Because of the long superframe 0 07 sec the two control loops were not expected to follow the Servo Model very closely but they were expected to produce a similar result to the Servo Model It was also predicted that the two control loops results would be very similar since they used have the same schedule turnaround time superframe 0 07 sec WirelessHART Tool using Single Channel Communication T I Control Loop 1 Control Loop 2 Servo Model Plant Output Response Time 0 686 sec 3000 4000 5000 6000 Time Figure 41 Result of s
75. ta sets Power optimized Network Layer redundant path mesh network Time synchronized Data Link Layer frequency hopping protocol IEEE 802 15 4 2006 Physical Layer 2 4 GHz Figure 3 WirelessHART OSI model The WirelessHART was created based on a set of fundamental industrial requirements such as easy to use and deploy self organizing scalable reliable secure and should support existing HART technology 22 WirelessHART is an extension of the wired HART protocol and its architecture is based on the OSI layer design Referring to Figure 3 the Physical Layer is underlying IEEE 802 15 4 2006 standard but other stack layers use new Data Link including MAC Transport and Application Layers The WirelessHART aimed to be secure ultra low power and time synchronized WirelessHART uses both TDMA and CSMA CA techniques The TDMA schedule uses 10 millisecond timeslots The use of these two techniques is determined in the MAC layer of the device and depends on how the timeslot is managed A timeslot can be managed either by dedicating one transmission or shared by several transmissions The dedicated slots use TDMA technique in MAC and shared slots use CSMA CA in MAC IEEE 802 11b Bluetooth Zigbee WirelessHART Throughput 11 Mbps 3 Mbps EDR 20 250 kbps 20 250 kbps raw data rate raw data rate raw data rate Variable 34 2346 bytes 366 1622 and 0 104 bytes 127 bytes Packet leng
76. taken into discussion with the customer who decided that there was not to correct the functionality in TrueTime Considering the documentation the missing parts about the application structure and functionality were added There are some suggestions which should get priority when considering future work on WirelessHART Tool 85 First of all there is possibility to implement object oriented design in MATLAB If the tool was implemented that way it would be easier to extend maintain and respond faster Another suggestion is to reorganize the old code Use different folders for files and move out the body of the callbacks from the GUI s callback file into different files The application needs additional testing of all its functionality and the simulation results need to be compared to some real life scenarios to see how reliable the tool is TrueTime has to be modified in order to support multi channel communication in WirelessHART Since the feature in WirelessHART Tool is already implemented there is no reason why it could not be used as soon as TrueTime is modified Otherwise WirelessHART Tool proved to be a useful application with plenty of potential for other functionality such as creating interface for testing automatic scheduler algorithms an interface to allow easy replacement of the controller by external controllers in order to test their performance etc 86 References 1 Carlos A Smith Automated Continuous Pr
77. te hti n skate thea aaa aaa aea eee eene RRER 57 SMS nn MFT 58 Sill Application SUCEUCLUFe see irai titre ores titer tenus pe ilu dtu Dio eru aaepe rio Fest iaaa E aa aaah 58 5 2 User Interface DESIT irnia edet de Od Vea ut ctu Deae taa e dn 58 5 2 1 Changes in Create Model ttt iaa eii 59 5 2 2 Changes in Sensor Actuator Intermediate Property ttn ttti 59 5 2 3 Changes in Control Loop Property 61 VE BIDUO TATTEITUIIN 62 5 2 5 Change in Schedule Table tetti tete tti aieo Me vtt eee Reino 62 SS EJnulbistuUD IJ iA 64 5 Evaluation and Results oiiisbi piss be redes tobbko pl tpa kk UpFiM pM DF d aRE EE iu REDE ee RE UU INFEMQDK aki MEE M MbKe AME 71 6 1 Testing the Application eese tentent ttn ttt ttn tento ttt tttn tta tanto aaa aaaeaii stas 71 6 1 1 The Reference Model orto t tte Ai ERI 71 6 1 2 Test 1 The performance of the Old WirelessHART Tool and New WirelessHART Tool 72 6 1 3 Test 2 The performance of Wireless Actuator and Wired Actuator 76 6 1 4 Test 3 The performance of Multi Channel and Single Channel 80 PERI DEdil lt S 84 8 Conclusion and Future WOFK i iei pero ter HL ERIT HPPEPRPUHEEEBEI IDEE PAIUFEHA SRI E PUER PAPE ETHER EAR PANEM RAS 85 iul mem e Tc 87 vi 1 Introduction Wireless technology is traditionally used in the communication and telecommunication
78. th 2870 bits MAC CSMA CA Dynamic TDMA Slotted and TDMA Protocol type unslotted CSMA CA Frequency Yes Yes Not specified Yes hopping Encryption WEP 802 1 1i EO improved Key exchange AES 128 WPA passkey for AES block ciphers encryption with symmetric keys Frequency 2 4 2 5 GHz 2 402 2 450 868 902 2400 2483 5 band s GHz 928 2400 MHz 2483 5 MHz Effective range 75m 1 100m 10 m nominal 1 100m outdoor 1 100 m 25 m indoor based on setting Supported Practical 1 master and 255 devices 250 devices number of limitation due up to 7 active per network per network nodes to collisions slave nodes per piconet Table 1 General comparison about Wireless Network Technologies From Table 1 Bluetooth and WLAN IEEE 802 11b use the same frequency but different multiplexing methods The Bluetooth specifications are based on FHSS technique underlying IEEE 802 15 1 On the other hands WLAN operates under IEEE 802 11 standard so they are not interoperable Bluetooth and WLAN are different in a couple of factors WLAN provides higher amount of throughput distance coverage and it consumes more power and requires high cost 16 equipment The similarities are that both Bluetooth and WLAN operate at lower bandwidths and considered as cable replacements 15 Zigbee is a global standard made by many companies Zigbee enables reliable cost effective and low power monitoring and control of
79. tions WirelessHART Tool was implemented in MATLAB for increasing the speed of creating simulations for WirelessHART networks It uses Simulink along with a modified TrueTime library as simulation environment which enables simulation of packet loss and other network related problems 1 1 Problem Formulation The problem in the focus of this thesis is how to improve and extend WirelessHART Tool without affecting already existing features In order to identify improvements that need to be performed first the design of the existing WirelessHART Tool has to be discovered and documented The contribution of this Thesis is to add two major extensions to WirelessHART Tool The first extension is to allow users to build simulations where both a wired and a wireless network coexist The second extension is to allow the users to generate networks that use multiple channels in their frequency range to transmit data Since before this thesis the application structure was not documented another contribution is that the application structure was exposed and documented 1 2 Report Outline Chapter 2 contains information that is crucial for understanding the following chapters The topics cover process control wired and wireless network technologies and specifically focusing on WirelessHART Other topics such as description of the used tools libraries simulation environment are also included Chapter 3 starts with brief introduction of ABB s Wireles
80. tore data about the transmission schedule and the nodes in it Generic Model is a saved Simulink model The Generic Model is used as template when generating the simulation model Generic Model contains TrueTime blocks such as TrueTime Kernel Blocks TrueTime Wireless Block etc An advantage of generic model is to allow changing basic structure quickly without the need of coding WHART Library whart lib is a saved Simulink Model that stores an important TrueTime Simulink blocks that are used to build the simulation model These blocks are Actuator block Sensor block the Position block and Intermediate block When generating the simulation model the WHART_lib is opened and the required nodes are copied into the simulation model Simulink is a MATLAB extension and library It is used to take general purpose blocks into the model and is responsible running the general simulation mechanism Structure Organization Both the Generic Model and the WHART lib were constructed from blocks that can be found in Simulink as well as blocks from the TrueTime library The Sensor Actuator Intermediate Controller and Gateway Blocks are special from the viewpoint that they are programmable using MATLAB Script Files this connection is not shown on the diagram because it is dynamic These Script Files implement functions in order to determine the runtime behavior of the blocks 41 During runtime the Script Files are using the global variabl
81. ulation time displayed on the UI in seconds Above the Plot button there is an actuator drop down list The user can chose from this list which actuator s results they wish to plot The Plo button is used to display the results of the previously ran simulation There are two plot windows appearing The first plot window shows the actuator output the second window shows the plant output and the setpoint Both plots correspond to the drop down list above where the user can select the process for display 3 3 9 Schedule Table The Schedule table is used for displaying the current schedule of the WirelessHART network There is no interaction possible with the Ul component however it does display warnings when collisions occur 3 3 10 Menu 3 3 10 1 Import and Export The WirelessHART Tool also allows the users to import saved and export the generated Simulink model and network configuration from to excel sheet 3 3 10 2 Add and Remove node The Add and Remove node menu allows the users to add or remove node s from and to the network 48 3 3 10 3 Retransmission The retransmission is a separate option placed on the menu The WirelessHART tool allows the users to retransmit messages in empty Timeslots 3 4 Simulation Model This section describes the block organization of the simulation model the internal block architecture of Sensor Actuator and Intermediate blocks as well as the properties of the included Simu
82. vious version of the model did not consider registers on the Gateway and the Controller This resulted that when the simulated network had many sensors and actuators as well as many control loops the schedule had to be very specific in order to work The problem was that both the Gateway and the Controller blocks had only one analog input where messages arrived For example when there are two control loops with the following dependencies CL1 Sensor1 Actuator CL2 Sensor 2 Actuator2 64 3 Ethernet Network Plant mal 1 T of G IE Qut l Pen Ethernet Schedule Clock Time Actuator Sensor1 sim_time Out out ely i Loss signal ot z Loss Out h noise Schedile Position WHART_NET gt WHARTNet schedule oA AD Schedule i Gateway Scheduling Controller 2 Reference Figure 22 Simulink Model of both Wireless Sensor and Wireless Actuator The transmissions of control loop order of each control loop must not be mixed Timeslot 1 Timeslot 2 Timeslot 3 Timeslot 4 Timeslot 5 S1 gt GW CL1 GW gt A1 CL2 Table 3 Example of Schedule table In the schedule seen above Table 3 we can change the patterns control loop transmissions of the whole control loop with the other but we cannot change the individual transmissions or control loops place i
83. was way closer when comparing the results The reasons for the performance difference are most likely to be the updates to the controller both on the GUI and in the Simulation Model since there were no changes made to the network or TrueTime Test 2 The performance of Wireless Actuator and Wired Actuator The expectations in the second test were that the wired actuators would outperform get closer results to the Servo Model than the wireless actuators The forecast for test was right the simulation using wired actuators did give a plant output closer to the Servo Model than the simulation using the wireless actuators The reason is for the result is that the schedule turnaround time superframe length is shorter when using wired actuators Test 3 The performance of Multi Channel and Single Channel The assumption before the test was that the plant output of the simulation utilizing the multi channel functionality would get closer to the plant output of the Servo Model The reason for making this assumption is that shorter superframes could be used and were used for the simulation with the multi channel functionality The assumptions were wrong The messages which were sent in the first timeslot and contained the sensor values did not arrive on the receiving node After a short investigation it was found that the multi channel functionality was not implemented in TrueTime for WirelessHART 84 8 Conclusion and Future work The goa
84. x x x function contains R 0 G 0 B 0 this represents rgb 0 0 0 which means black color Delete Key In order to provide a more visual way to remove transmissions from the schedule an alternative way is provided where users can select the desired transmission on the Schedule Table and remove them by pressing the Delete key The CellSelectionCallback is used to get the right row and column of selected cell on the table The Delete Key button is represented by number of 127 in ASCII number In the event of the Delete Key is pressed the specified row and column of that cell will be read in order to check what node is in inside that cell and remove them from the corresponding tables Multiple Channels The Schedule Table s Cell format for was changed in order to show what channel the transmission is taking place on The channel number was prefixed before the nodes of the transmission and given the same color as the transmission 63 5 3 Simulation Model Improving the Correctness of Controller On a real WirelessHART network the Gateway and the Controller use registers for exchanging data The Gateway knows which register belongs to which sensor on the input side of the controller the Controller knows which input register to read from and which input register to write to for each Control Loop then the Gateway knows again which transmission towards the actuators will use which register controller output data The pre
85. xed wired networks the main advantages of wireless network are the mobility and cost saving installation 14 Bluetooth The reason why Bluetooth standard was developed is that people needed wireless means for connecting and exchanging information between personal computing devices such as mobile phones laptops printers etc Bluetooth technology was adapted for manufacturing applications and other industrial processes 14 Bluetooth is a standard and protocol primarily considered when low power consumption and short range are needed The range of communication is related to the power consumption The devices communicate with each other at the specified range of 1 meter with 1mW 10 meters with 2 5mW and 100 meters with 100mW Bluetooth operates under Industrial Scientific and Medical ISM radio bands within 2 4 GHz frequency range The Bluetooth specification is based on frequency hopping spread spectrum technique and is enclosed to IEEE protocol 802 15 1 The radios in Bluetooth hop randomly with 79 different frequencies at nearly 1 000 times per second In terms of security on top of the message structure a 128 bits encryption is provided for high security The messages are divided into small packets sending one packet per hop If the receiver is unable to interpret the packet the receiver sends a message to the transmitter The transmitter is responsible to resend the message and reinsert the message in the proper sequence Nonethel
86. y 29 In this thesis only the following nodes were used TrueTime Kernel Block TrueTime Network Block and TrueTime Wireless Network Block Below their parameters give an insight of how they are used mg Block Parameters TrueTime Ker Parameters Name of init function MEX or MATLAB Init function argument arbitrary struct 0 Number of analog inputs and outputs n 1 Number of external triggers 0 Network and Node number s 0 Local clock offset and drift 0 0 JT Show Schedule output port J Show Monitors schedule output port J Show Energy supply input port 4 Show Power consumption output port OK Cancel Help app Figure 9 TrueTime Kernel Block Parameters TrueTime Kernel Block has the following configuration parameters that can be set through its Simulink Mask interface in Figure 9 Name of init function MEX or MATLAB this property refers to the MATLAB script which contains the initialization code Init function argument arbitrary struct the input of the initialization function Number of analog inputs and outputs determines the amount of external analog inputs and outputs what the block possesses The format of the input is an array with two values where the first value is the number of inputs while the second value is the number of outputs Number of external triggers these ports can be used to activate the block 30 e Network and Node number s the input is an a
87. y when transmitting the data from the Controller to Gateway On the other side of the Controller RX Receive Delay functionality is implemented to provide a time delay when receiving the data from Gateway to Controller 3 3 8 Actions The actions panel contains five different functionalities Health report Set the model Show timeslots Run Stop Simulation and Plot After all nodes sensor actuator intermediate properties and control loop property are set the user can verify and check the schedule of the whole network Using the Health Report button The Health report provides the several errors and warnings if something is incorrect in the schedule setup The simulation cannot be started if there is the error or warning in the Health report In case the settings are correct the displayed message says Scheduling successful The Show Timeslots button is built in order to refresh the Schedule Table on the UI 47 The Set the Model button is used to copy all node parameters and values from the virtual tables into the Simulink Model The model cannot set those values into the model if there are any warnings or errors in the Health report If the user does press the Set the Model button while there are still error s in the schedule a dialog box will appear warning the user that there are still errors Run Stop Simulation buttons are used to control the when simulation should start and stop The user can see the sim
88. yer The bottom most layer of OSI model the physical layer defines the link between the devices and either electric wire or radio communication medium transmission medium The main functionality of this layer is to convert the data called bits into transmission signals This transmission can be either analog or digital both types transmit binary data Data Link Layer The Data Link Layer is used to arrange the raw bits of data from Physical layer into frames Reliability term this layer provides reliable transmission and is used to identify and correct the errors that might happen during the transmission from one device to another Network Layer The Network Layer establishes a complete routing path and prepares the data to be transmitted through all nodes between source and destination This layer is also responsible for translating the physical address binary format to logical address for example Internet Protocol IP Since the transmission has a source and a destination the Network Layer can work in different responsibility Fragmentation and Reassembly An example for this two process would be the source sends the packets down to the Data Link Layer the packets are needed to be divided into small pieces the length of the message can be limited if it is too large Then the small pieces of the packets are to be reassembled when arrives to the Network Layer of destination device Transport Layer This layer provides transparen

Download Pdf Manuals

image

Related Search

Related Contents

User Manual Oracle FLEXCUBE Direct Banking Dashboard Widgets  Installation and user's guide, TS27R - tool setting probe  OPERATING INSTRUCTIONS - Specialised Welding Products  Manual de instruções PAL  Genome-TALER™ Human AAVS1 Safe Harbor  For product support please call: 1 300 369 193  Olympus Camcorder D-450 User's Manual  BML802 - Makita  Marco para Imagen con Grabado de 10 Segundos 63  MC68322 - NXP Semiconductors  

Copyright © All rights reserved.
Failed to retrieve file