ATTENTIONThis FlexSim Community Forum is read-only. Please post any new questions, ideas, or discussions to our new community (we call it Answers) at https://answers.flexsim.com/. Our new Question & Answer site brings a modern, mobile-friendly interface and more focus on getting answers quickly. There are a few differences between how our new Q&A community works vs. a classic, threaded-conversation-style forum like the one below, so be sure to read our Answers Best Practices. |
flexsim.com |
#1
|
|||
|
|||
a problem with a photoeye on the end of a conveyer
Hi everybody,
I’ve been working with Flexsim for al couple of months, still in trail mode. The goal is to find out if we can use it to simulate material handling systems. This mainly means only boxes en conveyers. I’ve already found al lot of useful post, and helpful models on the Flexsim Community Forum. In fact I shout have given al lot of thanks to al lot of people for giving answers to questions of other users. And of course the people that asked the questions. But now I have a problem in with I can’t find a satisfying answer. I think a part of the answer is already on the this topic. http://www.flexsim.com/community/for...ight=photo+eye The problem is with the photoeye on the end of a conveyer. I’ll explain the situation. On the first conveyer al the boxes will be loaded. The boxes can be placed against each otter. The second conveyer has a higher speed than the first one so a gap will appear between the boxes. The big advantage is that a photocell (photo eye) can detect the separate boxes. The goal is to stop the conveyor in front (set the speed to 0) if a box passes a photo eye and set the speed back if it passes the next photo eye. So there will be just one box on the conveyor. The problem. If the boxes passes the photoeye it will detect the box. If the back of the boxes leaves the photo eye than it will still detect the box for about 0.50 seconds. If the next box is within the photo cell in less than 0.50 seconds the photo eye will not detect the gap. What I expect how the photo eye works. I think the photoeye takes the length (x) of the box and the speed (v) of the conveyor and than calculates the time. Time= x/v = 0.61/0.5= 1.22 sec. Because the second conveyor is faster the packet will be faster. Conveyer speed2 (v2) = 1; Time= x/v + x2/v2 = 0.1/0.5 + 0.51/1 = 0.2+0.51 = 0.71 seconds Difference = 1.22 – 0.71 = 0.51 Model. I’ve posted the model with the problem. The first and second conveyer is showing the basic problem as expand. The third and fourth conveyer show other problems that (I think) comes white the problem. Solution The solution can be to built in a spacing value between the boxes. Except that than I’m just adapting the situation instead of making a correct simulation. So I hope that someone can help me to solve this problem. Excuses, I’ve done my best to use my best English but I’m curtain there are some misspellings. Sorry for that. Last edited by Frank Janssen; 09-14-2009 at 03:36 AM. |
#2
|
||||
|
||||
Frank,
I am not sure if I understand your problem right, but if you only want to take care that there will be only one item on the second conveyor, why not to control this conveyor? There are several ways to do this and I guess this thread is similar to your task. http://www.flexsim.com/community/for...=conveyor+item You did not attach a model and I do not have the time in the moment to build one. I think you just forgot to attach it, because you mentioned it in the post. Even I am not sure if I understand the problem right, some more comments and hints from my side. Are you aware, that there is a Debounce Time with the photo eyes? Are you aware, that in the trigger different cover modes of the photo eyes are defined (green, yellow, red)? There are also triggers for OnCover and OnUncover. I am pretty sure, that your task can be solved. If it can not be solved with the Standard Conveyor, I am pretty sure it can be done with the BasicConveyor. I am just doing a project with the BC and I am amazed what can be done with this object, even if some things a little bit effort. Anyway I hope I was able to give you some hints. P.S.: Nice start of a thread. You explained the problem, etc. Sometimes I wish others would do such a good job. It makes really more fun to help people which are taking the time and effort to explain more precise what they intend to do. Even if I have problems to understand it, but this is on my side, I guess.
__________________
tom the (A)tom: "We have solved our problems ... now we have to fight the solutions." |
The Following 2 Users Say Thank You to Tom David For This Useful Post: | ||
Martijn van Oostenbrugge (09-14-2009) |
#3
|
|||
|
|||
Tom,
Tanks fore the reaction. I’ve uploaded the model. I forgot to push the upload button. Quote:
Quote:
Quote:
That is the problem. The OnUncover trigger is never fired if two boxes are against each other. The state doesn’t go from red to green in between boxes. A quick reminder the problem is whit the photo eye at the first conveyor. |
#4
|
||||
|
||||
Frank,
I got the model and with the model I understand now the problem. I did some testing and you are right (for sure). As said before in the moment I do a project with Basic Conveyor and there you don’t have this issue, because a decision point is fired even if the items are next to each other. I do not recommend using Basic Conveyor now, just wanted to mention that they would solve the problem. I do not found a nice solution with the standard conveyor so far, but let me think a little bit about it. Or maybe someone else has a nice idea and solution.
__________________
tom the (A)tom: "We have solved our problems ... now we have to fight the solutions." |
#5
|
||||
|
||||
Frank,
I still would advise you to use a small spacing value. Although, I would use a different construction. I should advise you not to use the OnDraw to change the conveyorspeed by checking labels. This is bound to go wrong. The evaluation of the OnDraw trigger is not fixed and is highly dependant of your simulation speed. You could also use the stopobject/resumeobject on the OnCover trigger and resume the conveyor again when the product leaves the second conveyor. I will send you an example through your email A second option is, as Tom mentioned you could in this case just control the conveyors, although you have to make a little work around. Instead of the two conveyors you have now, you could add a little third conveyor that would start at the first photo eye and end at the beginning of the next conveyor which has a higher speed. Martijn Last edited by Martijn van Oostenbrugge; 09-15-2009 at 02:28 AM. |
The Following User Says Thank You to Martijn van Oostenbrugge For This Useful Post: | ||
Frank Janssen (09-16-2009) |
#6
|
||||
|
||||
Frank,
I thought a bit about your issue and I solved it by using a MergeSort Conveyor. A MergeSort does not have photo eyes, but additional Exit Points can be used as a trigger point. Please see the attached model, which is a modification of your model. In the first line the OnCover Trigger is only fired once. In the second line the Exit Point 1 at position 9.90 is fired three times. I hope this will give you a solution you can use. P.S.: I deleted some other objects, because I reached my upload limit for attachments (2 MB). I hope that Flexsim USA will increase my limit otherwise I can not make attachments directly to posts.
__________________
tom the (A)tom: "We have solved our problems ... now we have to fight the solutions." |
The Following 2 Users Say Thank You to Tom David For This Useful Post: | ||
Lars-Olof Leven (09-17-2009) |
#7
|
||||
|
||||
Hey Tom, that's exactly the reason why I haven't got any attachment ...I have the same problem with the upload limit. Mentioned it already a couple of times.....
|
#8
|
|||
|
|||
Tom and Martijn,
Thanks for the solutions. For the starting en stopping a conveyor the options are working. I wanted to control the simulation like a real system in the field. There the only information you have is the information from the sensors(1-0). you can count the time a sensor is blocked, and calculate how long a packet is. Its not possible to do: double myxsize or: if( content( outobject( current, 1 ) ) == 1 ) So for this problem i think I have to abandon my wishes to program it like a real system. If I use a small spacing value (like Martijn suggested) the problem will not be solved but its not a real problem any more for the simulation. And if I still want to use the option to get the size I will have to use = xsize(item); Frank |
Thread | Thread Starter | Forum | Replies | Last Post |
Problem with installation (new problem) | David Chan | Installation | 2 | 03-13-2009 10:41 AM |
what is the meaning of the "debounce time" of the photoeye? | qin tian | Q&A | 2 | 09-28-2008 07:44 PM |