Archive for the ‘Provideam Tips’ Category

Using a Unitronics Jazz PLC/HMI to collect Provideam Data

December 30th, 2010 No comments

We were recently asked to supply a ProvDAQ based on the Unitronics Jazz PLC and HMI combo. This blog describes how we assembled and tested the ProvDAQ-Jazz. We tested the unit both with the Unitronics ‘free’ OPC server and the Kepware Modbus Server.

Fig.1: Photo of ProvDAQ-Jazz with Test Box.

The Jazz is a low cost controller which, with a little coding, provides a highly effective interface between Provideam and your control system. The Jazz will accept between 6 and 18 digital inputs depending on the model you select and these can be configured to drive Good/Defect Part Counters or to indicate Machine Operating/Downtime Modes. In addition the Jazz front end can be used to indicate the current status of the Machine and also to allow the user to select from a list of pre-defined Downtime Reasons.

To test the Jazz we built a Pushbutton Test Box which allowed us to simulate hardwired signals from a Machine. We then modified the Provideam Demo Application so that the signals for ‘AssemblyMC1’ were generated by the Jazz, instead of the Provideam Demo Application.

The Test Box provided the following controls;

Run/Stop Switch:

While the switch was set to ‘run’ the ProvDAQ-Jazz displayed the message, ‘Machine Running’. In addition the Green LED, of a combined Red/Green LED lamp, lit. 

Fig. 2: Jazz Display while Machine Running



When the Run/Stop Switch was set to ‘stop’, the Red LED lamp flashed and the Jazz prompted the user to enter a reason. Once the user entered a reason the Red LED lamp lit continuously.

Fig. 3: Jazz Display when Machine Stops



By pressing the down arrow the user could scroll through the list of available Downtime Reasons. 

Fig. 4 Jazz Display while scrolling through Downtime Reasons



When the appropriate Downtime Reason is displayed, the user presses the Enter key to select the reason. 

Fig. 5: Jazz Display when Downtime Reason has been selected.



Once a Downtime Reason has been selected the Red LED is lit continuously.

Note: If at any time the user wishes to change the reason, a new selection can be made by pressing the ‘information’ key on the Jazz.

Downtime Reason 1 Pushbutton

As well as being able to select a Downtime Reason via the Jazz interface we also assigned Downtime Reasons to two inputs. Pressing either of these buttons caused the associated Downtime Reason to be selected.

Downtime Reason 1 -> ‘Output Block’

Downtime Reason 2 Pushbutton

Downtime Reason 2 -> ‘Welder Stuck Up’

Good Parts Pushbutton

Pressing the Good Parts Pushbutton incremented the Good Parts Count. Two Defect Counts were also assigned, one for ‘Defects at Tester’ and the other for ‘Defects at Vision System’

Defect Parts 1 Pushbutton

Defect Parts 1 -> ‘Defects at Vision System’

Defect Parts 2 Pushbutton

Defect Parts 2 -> ‘Defects at Tester’

To integrate the ProvDAQ-Jazz with the Provideam Demo the OPC configuration must be modified. We integrated the Jazz both with the Kepware Modbus OPC Server and the Unitronics OPC Server. Our preference would always be to use the Kepware Server, however the Unitronics OPC Server is free and if price is an issue it is perfectly acceptable for smaller applications.


Kepware Modbus Configuration.

1)      Open the ProvSimDemo.opf Kepware Configuration provided with Provideam.

2)      Add a new Modbus RTU Serial channel, ‘Modbus’, to the existing Simulation Driver Channel

3)      Add a device, the ProvDAQ-Jazz, ‘AssemblyMC1’, [Default: Device ID = 1, Comms: 9600, N, 8, 1,]

4)      Add OPC Tags:

Tag Name Jazz Native Address Modbus Address
Mode MI 0 400001
GoodCount MI 1 400002
Defect1Count MI 2 400003
Defect2Count MI 3 400004


Fig. 6: Provideam Demo Kepware Configuration with additional Modbus Channel

5)      Link these new tags to the ‘AssemblyMC1’ configuration in Provideam

Fig. 7: Provideam Station Yield Values linked to Modbus Tags.

Note: The Mode, see Machine Admin > Details page, must also be linked to the Modbus Tag.

6)      Restart the Provideam OEE Monitoring Service and Data Collection from the ProvDAQ-Jazz will commence within 30seconds.

Unitronics UniOPC OPC Server (Version 1.3.8) Configuration.

1)      Download and install the Unitronics OPC Server

2)      Register the UniOPC Server as an OPC Server – this is a function in the UniOPC Server.

3)      Configure the OPC Server to communicate with the Jazz. In the figure below you will see that the Jazz device is called PLC1 and that the communications settings are: 9600, N, 8, 1.

Fig. 8: Configuring the UniOPC OPC Server

Note: Provideam Data Collection Services run as Windows Services. However the UniOPC Server does not run as a Windows Service. Due to Windows security measures it is not possible for Provideam Services to access the UniOPC server if it has been opened by in a user account other than ‘system’. To enable Provideam Services connect with the UniOPC Server it must be stopped and shutdown. Once the Provideam OEE Monitoring Service starts with UniOPC Server Tags, it will call for the UniOPC Server to run under the general ‘systems’ user account – thus allowing the Provideam Services to connect to the UniOPC Server.

4)      Update the Provideam Configuration to read from UniOPC Tags. First specify that the DataServerRef is ‘UniOPC.Server.1’. By selecting the local PC name, in this case ‘DTL-Test1’, from the DataSource combo box, a list of all registered OPC Servers will be returned in the DataServerRef combo box. Select the ‘UniOPC.Server.1’ option.

Fig. 9: Provideam Machine Configuration with UniOPC OPC Server

5)      Update the Mode ID tag with the DeviceName.TagName. In this case ‘PLC1.MI0’ (ie Memory Integer 0 from PLC1.

6)      Scroll to the end of the page and click the save button.

7)      Next update the Station Yield Values.

Fig. 10: Provideam UniOPC OPC Server Station Yield Tags

8)      Finally, re-start the Provideam OEE Monitoring Service. Ensure that the UniOPC Server is shutdown before restarting the ProvOEEMon Service.

Note: The UniOPC Service doesn’t stop when you stop the ProvOEEMon Service. You may need to stop it from the Task Manager if you encounter problems.

We hope you found this post interesting. Please contact us at [email protected] if you would like any further information on this post.

Categories: Case Studies, Provideam Tips Tags:

Collecting and Analysing Manual Data using Provideam, Part 1

November 4th, 2009 No comments

In our last post we described the OEE framework and how OEE is calculated from the recorded downtime and yield values. In this post we want to show how Provideam provides a powerful way of storing, analysing and reporting on this recorded data.

There are three main aspects to Provideam

  •  A database for efficient data storage
  • Business logic for analysing the raw data
  • An intranet webased user interface for developing customisable reports


Storing your data in a Provideam, enterprise-class database based solution has many advantages over a spreadsheet or paper based reporting system;

  • the data is stored securely
  • the data is available to multiple simultaneous users
  • the data is easily analysed over different time periods
  • the data is easily cross-referenced to pick up on issues related to specific parts, tools etc.
  • business rules are protected and not liable to user error
  • reports are consistent and can be delivered automatically by email


Provideam includes a Manual Entry user interface to facilitate the collection of downtime and yield data as described above. To get started you simply need to;

  1. install Provideam
  2. create a machine profile which describes the downtime modes and yield values
  3. define the shift cycle which defines the start and end of each shift


We won't go in to too much detail about configuring machines here save to say it's easy and quick. Below are a few screen shots to give you the idea;

Fig: Filler Machine Properties

 In the figure above you will see the Filler Machine properties. The properties indicate that the DataSource is ‘Manual Entry’, that we will use a 2 Shift Cycle and that we will not display advanced items such as Lot, Part, Tool etc. If the DataSource was ‘automatic’ it would indicate that data is being collected automatically from the machine.


Fig: Filler Machine Downtime Modes

Above you will see the list of the Downtime Modes which we have created and can be assigned by the Operator to the Filler Machine.

Fig: Filler Machine Yield Types

In the figure above we show the types of Yield Count we have defined for the Filler Machine.


Fig: Filler Machine Part-Standard Time Relationships

The above figure shows that the Standard Time to produce 1 bottle on the Filler is 3 seconds (ie .05mins). In a more complex example with several Parts, we would have a record here with the Standard Time for each Part.


We are now ready to enter data.

1. Select the Manual Entry Page and click on the Add New Shift to create a Shift for the Filler Machine.

Fig: New Filler Machine Shift

2. Now add Planned and Unplanned Downtime

Fig: New Filler Shift – Add Downtime

3. Now add Yield Count Values

Fig: New Filler Shift – Add Yields

Note: You may add the yield values in one go, as I have done here, or you can distribute the yield over the shift hour by hour. If you enter the yield values hour by hour then you will be able to report on OEE hour by hour.


The data has now been entered for this shift and we can look at the results…

Fig: New ShiftOEE Analysis

Note: The top table shows the Good Parts, Defect Parts, OEE, Availability, Performance and Quality – same as in our example in the previous post. The Pie Chart shows OEE Time as 76.39%. This should not be confused with OEE. What this means is that OEE Time represented 76.39% of the Shift as a whole (ie 12hours) – you will notice that Planned DT is included in the Pie Chart. If we redrew the Pie Chart with out Planned DT, then our OEE Time % would be the same as our OEE %. In the sample reports created below we have excluded Planned DT from the Pie.


Report Examples:

  • Example 1: OEE Loss Pie and Table for OEE Level 1(ie losses grouped by Availability, Performance, Quality) – (NewShiftReportLvl1.pdf)
  • Example 2: OEE Loss PIE and Table for OEE Level 3(ie lowest level loss descriptions) – (NewShiftReportLvl3.pdf)
  • Example 3: Production Report showing various functions calculated for 3 Machines – (NewShiftProdReport.pdf).


Example 3 shows a combination of 'Automatic' and 'Manual Entry' machines. The data for AssemblyMC1 and AssemblyMC2 is captured automatically. The purpose of the example is simply to show that it is possible to have a standardised method of reporting across all areas of the plant.


That concludes this post. In our next post we will show a more complex example with several Part each with its own Standard Time.

Categories: Provideam Tips Tags: