Products movement

Continuing the discussion from Pivot fonction:

Hi,
I have advanced the definition of my project and I am getting back to you to find out how I can modify the position of the products as explained in the previous message.
Here are the new images.



The products must rotate along the feed axis and I must straighten them on the second conveyor.

THANKS

Hello,
I would leave the Path out of the link and add a ComponentContainer in the link. Then you can use a Python script to control everything. You’ll need a Path sensor to know when the product arrives in the middle and the “grab” the part in the ComponentContainer, rotate it, “grab” the part in the path again and so on.
Don’t forget to activate the RetainOffset in the Path.

Pivot Horizontal with PythonScript.vcmx (951.9 KB)

1 Like

Hello Tilma,

Thanks a lot for your help !
IT was my first time doing Python script.
With your exemple I was able to make the adiitional movements I needed.
I have a few more questions if you have time :
1- The rotation time set by a property does not work, I changed the speed but do you know why it did not work?
2- I would like the two movements to be simultaneous when the second set returns, is this possible?
3- And finally the robot must retrieve the part to palletize it, how to do this?
Test-PYTHON.vcmx (4.1 MB)

Thanks again for your help !

Hello,
I have solved the first 2 points, can someone help me with the third?
I would like to retrieve the part from the robot tool and then palletize it.
250703-Pivot_H-PYTHON-V2.vcmx (3.8 MB)

Thanks

Hello,
Nice work with the second component, it looks nice!

In your case it might be easier to programm the robot than to use the TransportController and ProcessFlow to do the movement.
I would put the robot on a standard pedestal (not TransportController) and use signals in the component “ass-pivot-vert” to signal the robot when he should come and take the part and then recieve a signal from the robot when he took the part.

To use signals in your Python script:

  • create Boolean signals

  • add your PythonScript in their Connections property to be notified when the signal value changes

  • use triggerCondition(lambda: getTrigger() == signalName and signalName.Value) to wait for a boolean signal to be triggered and its value to be True

  • use condition(lambda: signalName.Value) to wait for a signal to be True without trigger

  • use signalName.signal(True) to send a True signal.

  • Don’t forget to connect your signals to the robot

And then you can program your robot. Have a look at the Academy if needed.

Hello,
Thanks again @Tilma
I will try to follow your advice.