Palletizing process not waiting for TransportPatternIn

VC 4.8
I’ve been fighting with this for a day and a half now with 0 progress. I’m completely stumped finding the issue.

I’m trying to robotically take product from a conveyor, build a pattern on a pallet, then eject the pallet and bring in a new empty pallet. Eventually, I want to have two pallet stations alternating, but right now I can’t even get one to work properly.

My Pallet Station process is quite simple:

TransportIn Pallet
TransportPatternIn: 4 products as ProductIn
Attach:  ProductIn to Pallet
TransportOut: Pallet

Just like the video tutorials. However, the moment the next empty pallet appears on the pallet feed, the partially-filled pallet gets kicked out without anything attached, and is replaced by the next empty pallet. And then I start getting various warnings like “no pending transport”.

I’ve tried deleting the entire set of processes and recreating them from scratch multiple times. I tried creating brand-new process nodes in place of the Passive Pallet Station process nodes. I’ve tried adding WaitTransport after the TransportPatternIn, but it has no effect.

Basically, the TransportPatternIn step in the process node doesn’t seem to wait for completion before letting the Pallet TransportIn fire again, which then breaks all later Attach and TransportOut steps.

But, the tutorial video here: Palletize using Process Modeling Transport Pattern In Statement | Visual Components Academy at 12:00
Has new empty pallets feeding in before the TransportPatternIn is complete, without creating the issue I’m seeing.

PatternInNoWait.vcmx (1.9 MB)

I checked and tested few things with your layout but aside from having an unnecessary “WaitTransport” statement I couldn’t find any error.

I think there must be some bug in TransportPatternIn statement because e.g. changing all transports to Interpolating transport, changing the component in the Can product type, nor replacing the pallet station component with “Process Node” fixed the issue.

Please report this bug to VC customer support if you can.

Well… I found it. It was an utterly stupid thing, and I think it might be a VC bug, or just a strange interaction.

If you check my Pallet Feed process, you’ll see the process steps are a bit odd:
The culprit appears to be those deactivated steps. When they were active, it caused the issue. As soon as I deactivated them, everything behaved as expected. It just took me forever to stumble over it because I was focussed on the Palletizing station, which was “obviously” where the problem was. :crazy_face:

The extra steps in the pallet feeder process were left over from when I was trying to use one pallet feed to feed both stations, and trying to control the timing.

Apparently the pallet feeder really was “pushing” the previous pallet out of the way.

What two such TransportIn statements with the same output variable “ProductIn” does is that the first TransportIn creates the “ProductIn” variable and then the second TransportIn adds another product to that “ProductIn”, making it a list with 2 products.

The second TransportOut then attempts to transport out both of those products if they are still alive, regardless of where in the layout they are.

I think that can then cause the first pallet to be transported out from your “Pallet station” process. Quite unexpected behavior, but I guess it’s not really a bug.

1 Like