Programming Advice

What you said as far as triggering the BSL makes way more sense to me when you applied it to my actual program and I thank you for taking the time to look at it.

I am using the bits in the second word of the 32 bit allotment, but I wrote that portion in a seperate ladder file. I can show you that also If you like.

I appreciate your advice, I guess my issue is more (like you said) I am thinking about it the wrong way. I guess I need to figure out a way to make the camera result or evaluation happen before the shift takes place. so that when the shift takes place my good or bad result is already done. (this was the benefit to using the camera evaluation completed inputs, I was'nt sure what a better way would be)

I am now in the process of adding an encoder to the machine to help attain a more uniform movement reference.

thanks again.
 
Last edited:
I guess I need to figure out a way to make the camera result or evaluation happen before the shift takes place.
Yes, that might work.

The key is to make sure you KNOW what a shifted bit represents. It can't stand for or represent two separate functions at the same time, because it is only 1 bit and can only be ON or OFF. If it had 4 states, you might then use it for 2 things each with 2 states.

Now, maybe instead of letting each shifted bit represent a part position on the converyor, it could instead represent something about the camera, but what? Camera done with a certain part? If so, then your Bit Address should not be set by "Part Good", but maybe by "Camera Done with a Part". In which case the BSL could be triggered when the camera is finished, and the File Address would represent a point at the camera, not a point where the parts are put on the conveyor.

But when that camera trigger bit shifts, how much conveyor distance does its movement represent? Who knows? It seems you still somehow need to tie the trigger bit to the conveyor movement. It is the only thing that is moving the parts from A to B, so really its travel should be replicated in PLC memory.

That is what I mean by first settting up a good exact definition for your bit shift register. Once you figure out exactly what its movement represents in the physical world, then the rest is fairly easy.

What is the goal with the camera? Is it to determine when the camera needs to take a picture of a new part on the conveyor? If so, you can set up your conveyor length to be represented by a number of bits in PLC memory. Then your "camera picture location" will be a certain bit number (from the Start Point or the BSL Bit Address point. When a part reaches that "camera picture location" bit, you trigger the camera to do its thing, then you are ready for the next part (or parts if you are making pictures in batches of 6 parts at a time).
 
Last edited:
I need to figure out a way to make the camera result or evaluation happen before the shift takes place.
What is the cameras looking at? What is purpose of the cameras? Are they looking for bad parts, or something else? If a bad part comes by (as indicated by a "0" at the camera position in your BSL, do you want to stop the conveyor, make a picture, then resume? Or what?

A goal can be reached much easier once it has been identified and put into words. Shooting into the barrel hoping to hit something useful is a cr@p shoot.

It seems to me that you need to use the moving bits in your BSL (moving as parts move on the conveyor) to control your cameras, not vice-versa (use the cameras to control the moving parts). That seems to me to be backward logic, the cart trying to push the horse, or as some say, bass-ackward.
 
Last edited:
programming is a most important part of developing. logic is mostly use in programming developing any website and software use of mostly programming and logic.Descriptive programming is used when you want to perform an operation on an object that is not present in the object repository.
 
Cameras are inspecting the ID of the part for media lodged in it, and the profile to distinguish slight differences between two parts to make sure that we do not send mixed parts to either of the two customers that use these similar parts.


5 indexes away from the camera inspection station, I have a 6 gripper assembly mounted on a horizontal robo slide. Basically every time the belt has finished an index and 6 parts have moved my sorting logic looks at 6 bits and if one of those 6 is a 0, it picks the part corresponding to that bit off of the belt without stopping the normal operation of the belt.



I understand using a switch, or whatever to perform the shift, it keeps it simple and makes sure that it happens independent of anything else and in sync with the physical movement.


Now im trying to think of what matter of switch to use. I have noticed the our index is'nt 100% accurate, probably more like 90%. Occasionally myself and others have noticed that when it falls into dwell the belt has what I would describe as a backlash and it will move slightly in reverse. If I am using an edge trigger, or prox switch this could cause a false trigger and then I am still not in good shape. I have an idea to fix the issue, we will see how it goes.

Thanks again for the lesson.
 

Similar Topics

So, I'm about to start my first ever project that include a servo motor Here some of the component i bought for the project so far: - PLC: Omron...
Replies
0
Views
392
Concept of the system (Sketch of system attached) **I am blessed to be a member of this community, thanks in advance** System is a chain...
Replies
8
Views
3,026
Hello, starting to get myself into the PLC game and i'm in need of a few support cables. Sorry if this is simple stuff. Sadly the laptop the...
Replies
5
Views
1,735
Hi there, I have an application that I am struggling to find the correct terminology for. From SCADA, the operator should have the ability to...
Replies
5
Views
1,585
We are seeking programming advice on a new cooling water application. Our objective is to maintain a Temp. Setpoint of the water leaving the...
Replies
7
Views
4,814
Back
Top Bottom