question

AboElfadl avatar image
0 Likes"
AboElfadl asked AboElfadl commented

Dog interval control using motor

In a specific section of my production line, I have a monorail with a fixed number of hooks, and I'm simulating these hooks using intervals of 1-meter gap between the flow items using dog intervals. However, I'm encountering an issue where some hooks are free and not carrying an item. I want the monorail to wait for the "Dog" to be ready so that it doesn't miss any dog.

How can I ensure that the monorail waits for the "Dog" to be ready to maintain the desired intervals?
I want my model to do the same behavior as the picture.


1705786000370.png
Motor Control_Dog Intervals.fsm

FlexSim 23.2.2
dog intervalmotors
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

1 Answer

Felix Möhlmann avatar image
0 Likes"
Felix Möhlmann answered AboElfadl commented

You'd need to build a control logic that stops the conveyor, waits until an item is available, runs the conveyor for 1 dog interval and then stops the conveyor again and so on.

motor-control-dog-intervals-fm.fsm


· 7
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

AboElfadl avatar image AboElfadl commented ·

Thank you very much for your feedback. I just wonder if we can do the same thing without process flow.

I mean using triggers.

0 Likes 0 ·
Felix Möhlmann avatar image Felix Möhlmann AboElfadl commented ·

Create a message trigger on the motor that stops it when a message is received ("current.stop()").

In the On Process Finish or On Exit trigger of the processor, resume the motor and send a delayed message to it, with the delay time being equal to the time it takes to convey one dog interval forward.

Object motor = Model.find("Motor1");
motor.resume();
senddelayedmessage(motor, 1, current);
0 Likes 0 ·
AboElfadl avatar image AboElfadl commented ·

Now I tried doing the same steps in my model, but the motor doesn't stop, so there are empty dog intervals.
I don't know what I have missed, would you please help me in this issue.


1705985662693.pngDog Intervals_Stop Motor.fsm


0 Likes 0 ·
Felix Möhlmann avatar image Felix Möhlmann AboElfadl commented ·
The robot arm is currently not used, so the Wait for Event activity never releases the token. And apparently there is a weird interaction where the conveyors run despite the motor being stopped, when the dogs were not itinialized at the point when the motor was stopped.

Either make the transfer actually use the robot or choose a different event to react to (for example the On Entry of the conveyor). The second time the motor becomes the conveyor will stop as well.

You also have to adjust the delay time until the motor is stopped again. In the example the speed and dog interval had a relation of 1:1. This is not the case in this model.

0 Likes 0 ·
AboElfadl avatar image AboElfadl Felix Möhlmann commented ·

I am sorry this was a mistake, I made the transfer use the robot. But I don't know how to adjust the relation between the speed and dog interval, would you please help in this.

1706024464139.png

Dog Intervals_Stop Motor.fsm

0 Likes 0 ·
Show more comments