I have configured RTPPM, the downtime status and production and waste counter are the remote properties which is expected from Kepware.
Can we keep those properties as "Binding: None" and update values from service?
How frequently the downtime status and part count (total production, waste count) updated in operator dashboard?
Solved! Go to Solution.
Used following services to log downtime and parts from services.
The RTPPM models are processing data from the value_stream. Ensure that the model properties are set Logged-True as referred in the PTC Help Center.
Binding - Remotely is the standard method for receiving data through the Kepware ThingWorx Connector. It is possible to keep the Binding-None or Local depending on the data source.
If you found the previous response helpful, please mark it as the Accepted Solution for the benefit of others in the community.
Regards.
--Sharon
Hi Satishkumar
Yes it's possible to make it work without using Kepware tags. The details depends on what the information source is and may require customization.
If you have other properties that can receive the information, this is the easiest method. Instead of binding a Kepware tag, you can have a property (it can even be on another Thing) that has the information. When setting the tag binding (on ProductRemoteTag for example), instead of using Remotely Bound, you can select Locally Bound instead and point to the Thing & property that contains the value. RTPPM should use this information the same way as if it was from Kepware.
If your only source of information is manual (using the screens), there's also this other forum post with essentially the same question. For the most part you need to configure it exactly as if you were using tags, but you can just leave the tag names empty. Then you can use the screens (mostly the Operator Dashboard) to push data by clicking on the buttons. It's important that all the configurations (properties, subscriptions, etc.) exist just as if you were using tags, because the buttons in the screens will read & write information in those properties and activate the related subscriptions, some of the buttons are essentially simulating tag values. The only part I'm not sure about is that some of the Operator Dashboard buttons might not work well if there is no initial data. My guess is if we use joborders (PTC.FSU.CORE.GlobalConfiguration.GlobalConfiguration_TG -> RunWithoutWorkOrderInformation = false) then we would need a workaround to create some joborders, as the UI can only resume existing ones but not create new ones. If the global setting is set to true (don't use joborders) then I think we don't need workarounds to push initial data, but I would need to test to confirm.
If your source of information is something else in Thingworx that would send values into the equipment (services for example) this is a bit more complicated. In most cases you will need to push a value into the tag property's value and Valuestream. Here is an example of code that does it for ProductRemoteTag (the product) :
var TheValue = ENTER_VALUE_HERE;
var TheDate = new Date(); //you can enter a specific time instead
me.ProductRemoteTag = TheValue;
me.AddStringValueStreamEntry({
timestamp: TheDate,
propertyName: 'ProductRemoteTag',
value: TheValue
});
These are the properties where normally you would link the tags and must now be targeted by your code :
- Downtime : DowntimeByTag_DowntimeTag (and optionally DowntimeByTag_DowntimeTagHistory)
- Product : ProductRemoteTag
- Joborder : JobOrderRemoteTag
- Production event (batch) : ProductionEventRemoteTag, note that in most cases this is also required to activate the product and joborder changes
- Production event quantity : the property who's name is in ProductionByTagAndTime_AttributeProperties -> TagPropertyName
- Waste event quantity : the property who's name is in WasteByTagAndTime_AttributeProperties -> TagPropertyName
For your question about the update rate of the Operator Dashboard, I believe that all the items in that screen refresh once per minute. If you do a change (for example, add a downtime using the New Downtime button in that screen), it should update at least this section immediately afterwards.
If your question has been answered, please mark the appropriate response as the Accepted Solution for the benefit of others in the community.
Regards.
--Sharon
Used following services to log downtime and parts from services.