Smarter Planet solutions with sensor monitoring, Part 4: Asset tracking for process optimization

Smarter Planet™ initiatives are playing a major role in how technology is shaping our interactions with the world around us. Common to many of these smarter planet initiatives is the observation and processing of sensor data to extract insights from the physical world. Part 4 in this series discusses a hypothetical manufacturing line that leverages real time asset location tracking data to improve the efficiency of the system. You will see how this sensor data can be incorporated into the business processes governing the work-in-process execution flow, and also how monitoring capabilities can be utilized to show operational dashboards. You will see how a connected process flow system can become more intelligent and obtain added value by improving the process flow. This content is part of the IBM WebSphere Developer Technical Journal.


Tim Hanis (, WebSphere Sensor Events Chief Architect, IBM

Tim Hanis is the lead architect in WebSphere Sensor Events development at IBM in Research Triangle Park, NC. He has led a number of development projects within IBM and has extensive experience helping customers solve business problems with WebSphere products.

developerWorks Contributing author

Allen Smith ( ), Senior Software Engineer, IBM

Allen Smith is a Senior Certified IT Specialist in IBM's Application and Integration Middleware Software group in Research Triangle Park, North Carolina. He works with business partners to design and implement sensor based solutions using WebSphere Sensor Events. You can contact Allen at

developerWorks Contributing author

John Senegal (, WebSphere Sensor Events Lead Developer, IBM  

John Senegal is the lead developer for WebSphere Sensor Events Server at IBM in Research Triangle Park, NC. He has broad experience working with IBM customers and partners building solutions using IBM tooling and middleware.

Ken Greenlee (, Advisory Software Engineer, IBM  

Ken Greenlee is an Advisory Software Engineer with the WebSphere Sensor Events team at IBM in Research Triangle Park, NC. He has extensive Java/WebSphere experience and is responsible for many components within the WebSphere Sensor Events server product. He has worked with customers to create solutions based upon the WebSphere Sensor Events software stack. He has reached the third patent plateau, most on RFID technologies.

Bruce Hyre (, Senior Software Engineer, IBM  

Bruce Hyre is a Senior Software Engineer with the IBM Sensor Solutions in Research Triangle Park, North Carolina. He specializes in the design and integration of WebSphere Sensor Events with business partners and device manufacturers.

03 March 2010

Also available in Chinese


Part 3 of this series discussed how home health care device integration is being used to improve the overall effectiveness of health care. This article looks at how the integration of real time asset location tracking can improve work flow operations, such as that of a manufacturing system.

In order to achieve a lean, efficient, and responsive manufacturing process flow, it is important to know exactly what parts and assemblies are on hand, and where they all are. Increasing visibility to the location and availability of parts, assemblies, calibrated tools, and even workers can both improve the efficiency of the production process and provide line management with additional real time data upon which process improvements can be based. To improve operation efficiency, the flow of works-in-progress must be uninterrupted and predicable. Management needs to be able to analyze inventory levels, cycle time, wait time, throughput, equipment and personnel utilization, and many other factors at all points in the process.

This article describes how asset location tracking integrated into IBM® WebSphere® Sensor Events can be used to create a smarter manufacturing solution. This article:

  • Discusses the manufacturing solution and its components.
  • Defines the architecture of the solution.
  • Describes an example use case to demonstrate specific aspects of the solution.
  • Provides sample code for the use case described.

Manufacturing process monitoring

In a typical manufacturing enterprise today, operations managers are responsible for coordinating all floor operations. This includes making sure that the right personnel, the right parts, tools, and equipment are at the right stations. This coordination is critical to any manufacturing process; without it, the production operation will not operate at capacity or will produce inferior products.

Look at automobile manufacturing, for example. The cost of manufacturing a car is substantial and automobile manufacturers spend a significant amount of resources designing the appropriate line for the model of car they are trying to produce. That design makes assumptions about the exact parts intersecting with the appropriate skilled persons, at a precise location, at a precise time. As you can imagine, this can be a monstrous task. Without this precision, the production output can be reduced or the quality can be affected.

What if an operations manager could monitor the manufacturing floor from a central location? What if the manager could see how many doors were at the door station, and see if the quantity was right and that no door was damaged? What if the manager could see whether the right people were at their stations and not still on break when the line started moving again? What if the manager could be notified that a robot arm was malfunctioning before it actually stopped working? Suppose you are installing a specialized automobile part that requires a special set of tools. The line manager could ensure that the tools were all in place before the work started. Imagine starting that kind of detailed work and the tool you need is not at the station. The work would have to stop so that the tool could be found.

These are just a few examples of the types of monitoring, checks, and balances that are possible with a smarter manufacturing solution. Like all other Smarter Planet solutions visibility is the answer; here, the operations manager is enabled with unprecedented visibility into the process operations. This solution can help prevent line outages and quality problems by providing managers with greater insight to operations, station by station.

This article discusses and demonstrates smarter manufacturing through an automobile manufacturing example, but the insight of knowing that all the necessary composite parts, tools, equipment, and personnel must all intersect at the right location at the precise time is invaluable to any manufacturing process. It is visibility that provides this insight and enables manufacturing processes to become smarter.

  • Instrumented

    As we discussed in previous articles, the first step to becoming smarter is through instrumentation. It is instrumentation that will provide the foundation for visibility into each step of the manufacturing process. In manufacturing, instrumentation refers to devices such as programmable logic controllers, conveyors, diverters, and also RFID and barcode readers. Active RFID tags can provide the real time location of a given asset and follow its progress through the factory. Instrumentation is not only about devices and tags applied to the composite manufacturing parts and personnel but it also relates to sensors that monitor the operational aspects of the necessary equipment. Most manufacturing equipment today has the ability to monitor the state of the equipment. However, a smarter planet solution goes one step further and monitors the state of the equipment, plus validates the location of all the parts, personnel, and tools. Instrumentation is the first part of visibility.

  • Interconnected

    Without an overall, integrated global view of the process that includes real time asset location, it is difficult to manage, balance, and optimize the flow through the entire system. Problems and inefficiencies at one point in a complex process can be amplified as the assets travel up and down the production line. In order to add value to the overall process, these devices and systems need to be interconnected and integrated, so that managers can have a clear high-level view of the overall process. Interconnectivity means bringing together real time location information for parts, tools, and personnel along with equipment health status and inventory stock levels. The intersection of all this data needs to be brought together in one place so that the data can be filtered and correlated.

  • Intelligent

    Once this monitored data becomes visible to line operation managers, the whole system can become intelligent. You can automate routine sensor monitoring that can otherwise waste time and resources. Real time location tracking means that parts, assemblies, and products can be tracked through each step in the process. If an assembly takes too long to progress through a step (cycle time), then there is clearly a problem. However, an increase in the time between steps (dwell time) is just as important, as this represents a flow problem -- standing interim stock and tied-up capital -- and increases the total cycle time for the entire line. All of this instrumentation also makes it easy to track long-term trends and make more accurate predictions on stock consumption and throughput.

The next section looks at how sensor event processing can help in process flow execution.

Solution architecture

Figure 1. Smarter manufacturing reference architecture
Figure 1. Smarter manufacturing reference architecture

Elements of this manufacturing reference architecture (Figure 1) include:

  • Data capture

    When implementing a smart manufacturing system, the Data Capture and Delivery component is the main integration point for connected devices, being the first stop in the chain of processing between the sensor device and the WebSphere Sensor Events server. Data Capture and Delivery is a component of WebSphere Sensor Events and consists of a software stack that resides on or near the sensor device. It provides a framework to build device adapters for device communications, and also provides a location for business logic with low latency requirements. It also actively manages devices such as scanners, conveyor belts, diverters, and so on. In a smart manufacturing system, sensors will monitor the movement of parts, containers, and personnel as they move through the manufacturing process. Data Capture and Delivery provides a framework to normalize, filter, smooth, and summarize the data, eliminating extraneous data or compressing the data volume to reduce the bandwidth and server load. It also buffers the data, handling unreliable communications so that application logic doesn’t have to.

  • WebSphere Sensor Events

    Because it was discussed in earlier articles in this series, and its role in the solution architecture does not change for a smarter manufacturing solution, the function and purpose of the WebSphere Sensor Events Gateway component will not be discussed here. However, the role and services provided by WebSphere Sensor Events does change. In a smarter manufacturing solution, WebSphere Sensor Events could provide services such as filtering, smoothing, zone determination, and asset visualization. When tracking mobile assets as part of a manufacturing process, the location of the asset is typically forwarded through Data Capture and Delivery from the location tracking device, either using a relative location coordinate reference (such as an X, Y, Z reference for a defined origin point on the manufacturing floor) or a reference to an established physical space, such as a workstation, room, floor, or zone. In the case of relative coordinate references, WebSphere Sensor Events could be used to resolve those reference points into known physical spaces. In the example presented below, it is assumed that asset location events are already "zone" determined. Therefore, you will see how these location events can be integrated with IBM WebSphere Business Events and IBM WebSphere Business Monitor to derive business value.

  • WebSphere Business Events

    WebSphere Business Events provides the ability to discover important patterns in the flow of parts, containers, and personnel during the manufacturing process. It can provide alarms if all the necessary parts or personnel are not at the required station at the required time. Other custom rules can be based on things like dwell time; for example, if a part or person is at a workstation for too long, indicating there is a problem and someone else needs to be dispatched. WebSphere Business Events provides the framework to define and execute a full set of rules that manage and monitor these kinds of manufacturing processes.

  • WebSphere Business Monitor

    WebSphere Business Monitor provides the facilities for manufacturing supervisors to easily monitor WebSphere Business Events or WebSphere Sensor Events output for suspicious trends. Monitoring can be in the form of various dashboards, charts, or graphs. Manufacturing supervisors can then use this data for decision support to optimize the process, inventory control, and personnel scheduling. The data from WebSphere Business Monitor can be forwarded to other systems or to IBM Cognos® for further analysis using data from other systems.

  • IBM Cognos Business Intelligence

    The location events forwarded from Data Capture and Delivery have arrived in the WebSphere Sensor Events server and have been persisted. WebSphere Business Events has monitored the events based on the required rule set. WebSphere Business Monitor has the location of all the manufacturing resources in a dashboard. Although the sensor data provides supervisors a wealth of knowledge that was not previously available, you know that the sensor data alone is not complete enough for supervisors to perform analysis on process efficiencies. In order for supervisors to be able to provide actionable recommendations for process optimization, you must have the ability to provide analytics capabilities to the solution. IBM Cognos is the platform that provides the necessary analytics for manufacturing supervisors to give fast but accurate recommendations based on production schedules and output performance.

Leveraging real time location tracking in a manufacturing line

Real time locating systems (RTLS) use wireless technologies such as Wi-Fi, ultra-wideband, RFID, Bluetooth, and GPS to identify and track the location of items or people in real time. In an RTLS solution, the item or person being tracked typically has some means of emitting a radio signal. A battery powered tag, for example, might be attached to the item or person being tracked. The emitted radio signals are received by the RTLS solution’s locating component and interrogated to determine the location of the item or person being tracked. RTLS solutions identify an item’s location using dimensional coordinates or zonal information.

A common RTLS implementation uses battery-powered tags with an onboard radio transmitter, along with a matrix of location sensors that are deployed throughout the area being monitored. The radio signals emitted by the tags are received by the sensors and relayed to the location component, which uses a variety of methodologies to calculate the location of the tag. These calculations might be based on visibility (whether the tag is in the sensor’s line of sight), the signal strength, or the amount of time it takes the signal to travel from the tag to the sensor. Regardless of the method used, the location component is responsible for determining the location of the tag and making this information available to applications for consumption. A consuming application might, for example, define the zones that a tagged asset is permitted to be in and trigger an alarm when it appears outside those zones.

In the sample scenario presented next, an RTLS solution is used to track the location of an automobile as it moves along an assembly line. The assembly line is divided into five work zones. The RTLS solution uses a matrix of sensors, one for each zone, to receive radio signals emitted from an active RFID tag affixed to the automobile’s frame. The sensors pass the received radio signals to a location component that determines which zone the automobile is in. The location component is configured such that it generates an event only when the automobile enters a work zone. These events are used to determine the required parts and the work to be performed on the automobile in a given work zone. The line supervisor can then monitor the flow of the vehicle through this five step manufacturing process using a simple Business Monitor Business space display. The work zones used in this scenario are:

  • Frame assembly
  • Side panel assembly
  • Body assembly
  • Paint work
  • Inspection.

Sample scenario

To illustrate smarter manufacturing, this example tracks an automobile as it moves along an assembly line from work zone to work zone. The two important aspects of this scenario are to:

  • Display the automobile's current location (by zone).
  • Display an error if the automobile skips a zone (after all, manufacturing is usually a serial process).

To fulfill this scenario, the following software stack is used:

  • WebSphere Sensor Events
  • WebSphere Business Events
  • WebSphere Business Monitor.

To show the automobile's status, a GUI application is used to display the automobile's current zone and whether the automobile's movement along the assembly line is valid.

Figure 2 shows how events flow from creation through the software stack and onto the display:

  1. As the automobile moves along the assembly line, an active RFID tag transmits its location. An RTLS detects the RFID tag's movements and determines the zone. Upon entering a zone, the RTLS sends a zone entry event to WebSphere Sensor Events.
  2. WebSphere Sensor Events receives the event, transforms it, and sends it to WebSphere Business Events.
  3. WebSphere Business Events evaluates rules to implement the scenario. The sample includes two rules: one to forward a zone entry event, and one to decide whether the automobile has missed a manufacturing step. The results are sent to WebSphere Business Monitor.
  4. With WebSphere Business Monitor, you create monitor model applications. These applications collect metrics and key performance indicators (KPI) from incoming events. The metrics and KPI values are available for display in a dashboard.
  5. The dashboard environment, which is part of WebSphere Business Monitor, provides a flexible system for constructing a GUI from the metrics and KPI.
Figure 2. Event flow
Figure 2. Event flow

So, the event starts by moving the automobile along the assembly line and ends with an updated dashboard GUI.

Implementing the sample

To run the sample application, you need to perform these steps to satisy the prerequisites:

  1. Install WebSphere Sensor Events V6.2 (and its prerequisite software) into its own IBM WebSphere Application Server profile.
  2. Install WebSphere Business Monitor V6.2 into its own WebSphere Application Server profile, or into the same profile containing WebSphere Sensor Events.
  3. Install IBM Rational® Application Developer V7.5.1.
  4. Install the WebSphere Business Monitor Toolkit V6.2 into Rational Application Developer.
  5. Create the connection between IBM WebSphere MQ (which is installed with WebSphere Sensor Events) and WebSphere Business Monitor by following these steps. Do not enable security on the WebSphere MQ link.

You will need values for these required parameters:

  • IP address of server running WebSphere Sensor Events.
  • Default application port of profile running WebSphere Sensor Events.
  • Host name of server running WebSphere Sensor Events.
  • IP address of server running WebSphere Business Monitor.
  • Default application port of profile running WebSphere Business Monitor.
  • WebSphere Business Events login credentials (default user ID/password is admin/admin).

Setting up the sample

  1. Start the servers.

    Start the WebSphere Application Server profiles for both WebSphere Sensor Events and WebSphere Business Monitor.

  2. Customize WebSphere Sensor Events.

    WebSphere Sensor Events includes a library of Reusable Components (RUCs), each of which performs a specific function. These RUCs process messages retrieved from the WebSphere Application Server SI (Service Integration) bus. The RUC responsible for sending messages to WebSphere Business Events is called WBERUC. In order for WBERUC to receive this sample application's message, the message selector of the JMS activation specification must be modified:

    1. In a Web browser, navigate to the WebSphere Application Server administrative console (for example, http://wseServer:9060/admin).
    2. Select Resources > JMS > Activation specifications.
    3. Scroll through the list of activation specifications and select WBERUCAS.
    4. Change the message selector to: ibmse LIKE '%SmarterManufacturing/ZoneEntry'.
    5. Click OK.
    6. Save the configuration changes.
  3. Deploy the WebSphere Business Events project.

    To send the output from WebSphere Business Events to WebSphere Business Monitor, the properties of the WebSphere Business Event's actions must be updated with the current server's host name:

    1. Start the WebSphere Business Events Design Data application. (WebSphere Business Events is installed with WebSphere Sensor Events.)
    2. Open the sample WebSphere Business Events project called SmarterManufacturing_WBEProject.xml.
    3. Delete any existing WebSphere Business Events objects from the repository:
      1. Select Tools > Repositories.
      2. Select the WBE Runtime tab.
      3. Enter the host name and IP address of the profile running WebSphere Sensor Events.
      4. Click OK.
      5. Enter the WebSphere Business Events credentials.
      6. Click Login.
      7. Select all assets.
      8. Click Delete.
      9. Confirm the delete action.
      10. Click Close to exit the Repository window.
    4. Update the ZoneAlert_Action properties:
      1. In the Touchpoints window, expand WebSphere Sensor Events Server.
      2. Right-click ZoneAlert_Action and select Action Properties.
      3. Select the Connection tab.
      4. Click Configure.
      5. Click Provider.
      6. For the URL, enter the IIOP URL for the server running WebSphere Business Monitor (for example, iiop://wbmServer:2810).
      7. Click OK to close the Provider window.
      8. Click OK to close the Message Queue Action Connection.
      9. Click OK to close the Action Properties window.
    5. Update the properties for ZoneEntry_Action following the same process you used in step 3d to update the ZoneAlert_Action properties.
    6. Deploy the WebSphere Business Events objects:
      1. Select Tools > Repositories.
      2. Select the Project tab.
      3. Select all assets.
      4. Click Add In.
      5. Click Close to exit the Repository window.
    7. Save the WebSphere Business Events project and exit the Design Data application.
  4. Reload the repository assets in WebSphere Business Events.

    After deploying the repository assets, WebSphere Business Events must be restarted in order to pick up any new assets:

    1. In a Web browser, navigate to the WebSphere Business Events administrative console (for example, http://wseServer:9080/wbe).
    2. Login using the WebSphere Business Event credentials; before clicking Login, change the Tool list to Administration.
    3. Click the Console icon in the upper-left corner of the WebSphere Business Events admin console.
    4. Click the Reload icon in the upper-right corner of the console window.
    5. Wait for a message indicating that the repository was successfully loaded.
    6. Exit from the WebSphere Business Events admin console.
  5. Update the XML name space.

    The XML name space in the model application's inbound events is very important. The name space must match exactly what is sent by WebSphere Business Events:

    1. Start Rational Application Developer and import the projects from the project interchange file included with this article.
    2. Go to the Business Monitoring perspective.
    3. In the Project Explorer view, expand Smarter Manufacturing > Event Definitions.
    4. Open file Action_ZoneAlert_Action.xsd in the XSD editor.
    5. Change all occurrences of wse62 to the host name of the server running WebSphere Sensor Events.
    6. Close the XSD editor, saving the changes.
    7. Ignore any errors; they will be corrected later.
    8. Repeat steps 5d through 5g for file Action_ZoneEntry_Action.xsd.
    9. In the Project Explorer view, expand Smarter Manufacturing > Monitor Models.
    10. Open file Smarter Manufacturing in the monitor model editor.
    11. Select the Smarter Manufacturing tab at the bottom of the editor window.
    12. Change all occurrences of wse62 to the host name of the server running WebSphere Sensor Events.
    13. Close the monitor model editor saving the changes.
  6. Generate the J2EE™ model application.

    After updating the XML name space, generate the J2EE classes that make up the model application:

    1. In Rational Application Developer, right-click Smarter Manufacturing and select Generate Monitor J2EE Projects.
    2. Click Finish and wait for the process to complete.
  7. Export the J2EE model application.

    After generating the J2EE model application, create a J2EE EAR file containing the model application:

    1. In Rational Application Developer, select File > Export > Java EE > EAR file.
    2. Click Next.
    3. Select the Smarter Manufacturing Model Application EAR project.
    4. Enter a destination.
    5. Click Finish.
  8. Install the J2EE model application:

    Install the J2EE model application to the WebSphere Application Server profile running WebSphere Business Monitor:

    1. In a Web browser, navigate to the WebSphere Application Server administrative console.
    2. Select Applications > Install New Application and install the model application J2EE EAR.
    3. When done, select Applications > Monitor Models.
    4. For the Smarter Manufacturing Model, click the version link.
    5. Click Manage schema.
    6. Select Run script to delete the schema during uninstallation. (This step is necessary to make cleanup easier when the J2EE application is uninstalled.)
    7. Click OK.
  9. Install the business space.

    The business space is the Web-based user interface that contains dashboards to display the result of a model application. A business space that contains a dashboard showing the tag's current zone is available in the sample application:

    1. In a Web browser, open the WebSphere Business Monitor Business Space (for example, http://wbmServer:9081/BusinessSpace).
    2. Click Manage Business Spaces.
    3. Click the Import Business Space toolbar icon.
    4. Import the file
    5. Click developerWorks to access the newly ported Business Space.
    6. You can display the model data using an Instances widget included in the Smarter Manufacturing page.
  10. Restart the server profiles.

    To pick up all the configuration changes you made, you need to restart the server profiles:

    1. Restart the WebSphere Application Server profile running WebSphere Sensor Events.
    2. Restart the WebSphere Application Server profile running WebSphere Business Monitor.
  11. Start the connectors.

    Events sent outbound from WebSphere Business Events are handled by another application called Connectors. Start the Connectors application before continuing.

Running the sample application

The sample application includes a Web-based GUI to simulate moving the automobile through the assembly line. When you run the application, you can simply drag and drop the automobile icon onto different points along the assembly line. Dropping the automobile sends an event to WebSphere Sensor Events to begin the event flow though the system.

To run the GUI simulator:

  1. Unzip, included with this article.
  2. Open WorkFlowSimulator\WebContent\WorkFlowSimulator.html.
  3. Drag and drop the automobile along the assembly line.
Figure 3. Assembly line GUI
Figure 3. Assembly line GUI

To view the output of the dashboard:

  1. In a Web browser, open the WebSphere Business Monitor Business Space (for example, http://wbmServer:9081/BusinessSpace).
  2. Select the developerWorks Business Space.
  3. Select the Smarter Manufacturing dashboard page (Figure 4).
  4. The dashboard page updates to display the result of moving the automobile:
    • Zone: Displays the name of the zone that the automobile was moved into.
    • Status: Displays either "OK" (zone was not skipped) or "Error!" (zone was skipped).
    Be patient; the page may take several seconds to refresh.
Figure 4. Smarter manufacturing Web page
Figure 4. Smarter manufacturing Web page


You can imagine that this demo would only be the first step in providing visibility. As discussed earlier, the next step would be providing the same location awareness to personnel, tools, and equipment at these stations, followed by using WebSphere Business Events to make sure all the required composite resources are available at each station. If you wish to continue this exercise, you can add personnel and tools data to this sample application. The source is provided in the included download file.

In conclusion, this article described how process flow execution can be assisted with real time location asset tracking. Although this was discussed in the context of tracking assets through a manufacturing process, real time asset tracking can be used in a wide variety of process flow scenarios. Similar needs exist in healthcare, aerospace & defense, energy, transportation, and utilities sectors.

In general, benefits that can be realized through real time asset tracking include:

  • Improving asset utilization and employee productivity by providing the current location of existing resources.
  • Reducing capital expense by reducing asset loss, shrinkage, and resulting over-purchasing of assets.
  • Enforcing business rules and regulatory requirements with location-based events and an automatically-triggered workflow.
  • Minimizing downtime by dispatching the right resource with the right tools to the right location.
  • Preventing asset shortages, and improving audit and compliance capabilities.
  • Providing real time location visualization.
  • Providing KPIs through analytics, and visibility related to inventory, utilization, and exceptions.


Code sampleSmarterManufacturing.zip299 KB



developerWorks: Sign in

Required fields are indicated with an asterisk (*).

Need an IBM ID?
Forgot your IBM ID?

Forgot your password?
Change your password

By clicking Submit, you agree to the developerWorks terms of use.


The first time you sign into developerWorks, a profile is created for you. Information in your profile (your name, country/region, and company name) is displayed to the public and will accompany any content you post, unless you opt to hide your company name. You may update your IBM account at any time.

All information submitted is secure.

Choose your display name

The first time you sign in to developerWorks, a profile is created for you, so you need to choose a display name. Your display name accompanies the content you post on developerWorks.

Please choose a display name between 3-31 characters. Your display name must be unique in the developerWorks community and should not be your email address for privacy reasons.

Required fields are indicated with an asterisk (*).

(Must be between 3 – 31 characters.)

By clicking Submit, you agree to the developerWorks terms of use.


All information submitted is secure.

Dig deeper into WebSphere on developerWorks

ArticleTitle=Smarter Planet solutions with sensor monitoring, Part 4: Asset tracking for process optimization