Data Tracking on Index Conveyor

irinjia

Lifetime Supporting Member
Join Date
Jun 2017
Location
Ireland
Posts
7
Hello All,

First time posting..

I need assistance on how to move data one step at a time through the PLC.

I’m working on a laser machine using a CompactLogix and an index conveyor.
I need to shift this [8 digit number] sent from VB.NET, one step each time the conveyor indexes.
When it gets to position 12, VB.NET will read the code and Laser the product with the I.D.

I have attached a file with some more detail.

Note: Each time the conveyor indexes a new 8 digit number is sent to PLC bit.

Thanks Very Much.

DSC_1482.jpg
 
Welcome to the forum!

I'm assuming that you have the data transfer between VB.Net and the Compact Logix sorted? If so...

Use a FIFO (First In First Out) register.

It uses an array of any size (in your case, 12), and you load and unload data using the FFL and FFU instructions respectively.

So, each time you index, you will load the new value from VB into the "stack" using the FFL instruction. Once you have 12 values in your stack (.DN bit set), you will use the FFU to unload the oldest value, and send it to VB for etching.

For some good examples, drop an FFL and FFU instruction onto your rung, select them and click F1. The help file is quite comprehensive.
 
Thanks ASF for your reply.
I'm working on the FIFO now.
The FFL is updating each time the conveyor indexes but when it reaches 12 values I cannot seem to get the FFU to unload into VB for etching.

Please see the code I'm using.

Thanks.

FFL and FFU program issue.jpg
 

Attachments

  • FFL and FFU program issue.docx
    46 KB · Views: 10
You will need to 'command' the FFU only when the stack is full rather than 'hot rung' it.

Insert ahead of the FFU an XIC (Normally Open) instruction of the 'R08_d_FIFO_Tracking.DN' bit thus 'unloading' the 'oldest' of the stack values when all 12 rungs are filled.
 
You will also need to deal with what happens if the conveyor has to index without a new part being loaded, probably something like writing "00000000" into the fifo. There will be similar conditions to deal with during startup and shutdown.
 
Hi dmargineau,

Thanks for your reply,

I think you meant R08_d_Control_1.DN. If so it works now.

mendonsy: Good point, I will add maybe a MOV function if the conv indexes with no product and MOV all 0000000.

I will be testing code over next few days so if I encounter more issues I will add to this thread.

Thanks for your help.
 

Similar Topics

Is it possible to gather OPC data through a 1783-NATR? Searching around, it sounds like OPC data might be blocked by any NAT... Is there any work...
Replies
2
Views
241
Hello everyone, I am in charge of programming a handling system that includes conveyors, cranes, saw, ... on PLC Allen Bradley 1756-L8, and I...
Replies
5
Views
2,681
I am trying to create a log for the data during a Clean In Place. I need to keep track of the water temperature and TDS over the period of 900...
Replies
19
Views
7,059
Hello all, I am working on a tracking system, using RSLogix5000, for my factory that will allow me to transfer data for each product load at each...
Replies
3
Views
2,733
Has anyone migrated Proficy Historian data to a new server? I followed the guide to move all the data over, but when I run the utility, it stops...
Replies
0
Views
33
Back
Top Bottom