Thanks for your work! It is really great! I wrote a code in the threaded script. The general situation is to let the robot arm move according to the trajectory. When the sensor detects this robot arm, I hope that the robot arm will immediately reduce the movement speed. My question is: the sensor senses the movement of the robotic arm, but the robotic arm still runs the entire trajectory after running at high speed; it can only run at low speed when it is refreshed next time. Is it because "When a threaded child script's execution is still underway, it will not be launched a second time."? In this scenario, the movement of the manipulator is controlled at different speeds, can it only pass through a non-threaded script?
Hello, I tried to do your tutorial, but at the end the connector don't catch the box on its center... Where I can find the parameter of the connector path's in order to correct this problem ? :) Thank you very much for this tuto !
hi, thank you for hard work can help me i am try to make like you do in video but i have error in function of ("updatepickuppath") and the line between cuboid endeffector of the robot do not be show when sensor see the cuboid
Hey, great video, But I'm having trouble with the code for the conveyor belt. The conveyor doesnt move and the boxes fall from the space and just pile on top of eachother. Have you any suggested solution to this? Thank you!
If you don‘t provide your code it is hard to tell. Probably you do not set the belt speed correctly. You can import a new belt and try to redo your work such that you see when your code fails. A new belt should run per default.
Hi!! Can you explain me that part about how the robot starts to jiggle around at min 30:16 ? I have this same issue in my robot (i made it by hand btw)
I agree, the hierarchy of that robot looks complicated. However, you could analyze yourself what is happening. Create mindmaps to understand what purpose and properties certain objects (joints) have. There is a lot of symmetry in this robot model so you may find out pretty quickly how you would build that thing. I don‘t think there is a need for this tutorial. But analyzing existing robots can for sure improve your knowledge. Give it a go!
Instead of storing bools in the „boolList“ (true=good, false=bad) you could store numbers (0=bad, 1=color1, 2=color2) and then decide based on these numbers. E.g. switch(decisionList[1]) case 0: removeObject() case 1: putOnBelt1() case 2: putOnBelt2() Hope that helped.
@@donskanone Hi there, I was able to make the robot change paths to different conveyors based on the color of the box, but I'm facing a stuborn problem: if the robot is carrying, let's say, a red box, to it's release postiotion and another good box of other color, let's say green, hit the proximity sensor, the robot will not return to the original position before grabing the green box, insted, he will connect the green release position to the red release position and start the movement from the green release position. I'm trying hard to solve this, but so far nothing. Could help me out a little? Oh, great work, by the way, your tutorial is really saving my life.
@@cuturbs Hi there. I'm also having some difficulties with my code when trying to grab different colored boxes for different target conveyor belt. Could you provide me with your program? Did you manage to solve the errors?
@@donskanone Sure. I'm trying to implement this to a robotics class practical work, but my system has 2 kinds of boxes that i need to identify and put them into 2 different conveyor belts with different colors. Can i do this with the code you provided in the videos? Great content btw :) Cheers
@@donskanone Hi again. I manage to put the code generating 2 kinds of good boxes but now my problem is with the robot decision, how can i say to to the robot (on the threaded child script) that he should follow the path to releasePos to box1 and to releasePos2 to box2? I'm trying to implement an if statement on the while loop but i cant make it work :(
I think you can solve this very easily. In the second instruction of the while loop, you get the handle to a hardcoded pathName. You could add pickupPath as a variable and modify it in your non threaded child script (similar to pickup dummy and release path) before you set the integer signal. In the while loop, use the handle to the path you have set not the hardcoded pickupPath. Hope that makes sense 😂
can you please show the calculation part of the joint angles of the robot?
CoppeliaSim V4.2.0 released on 2021 4 6 had made this tutorial useless ... Since the IK is completely different ...
Thanks for your work! It is really great!
I wrote a code in the threaded script. The general situation is to let the robot arm move according to the trajectory. When the sensor detects this robot arm, I hope that the robot arm will immediately reduce the movement speed. My question is: the sensor senses the movement of the robotic arm, but the robotic arm still runs the entire trajectory after running at high speed; it can only run at low speed when it is refreshed next time.
Is it because "When a threaded child script's execution is still underway, it will not be launched a second time."?
In this scenario, the movement of the manipulator is controlled at different speeds, can it only pass through a non-threaded script?
Hey Sam!
can you pls tell if the same child script will work for different robot or what kind of changes we will have to do?
Hello,
I tried to do your tutorial, but at the end the connector don't catch the box on its center...
Where I can find the parameter of the connector path's in order to correct this problem ? :)
Thank you very much for this tuto !
why did you stopped uploading videos' on v-rep your tutorial are the best on youtube please continue
How can I add a script parameter???
hi, thank you for hard work
can help me
i am try to make like you do in video but i have error in function of ("updatepickuppath") and the line between cuboid endeffector of the robot do not be show when sensor see the cuboid
thanks for your hard work
Sir. May I somehow get in touch with you ? I'd like to discuss something and suggest smt
Hey, great video,
But I'm having trouble with the code for the conveyor belt. The conveyor doesnt move and the boxes fall from the space and just pile on top of eachother. Have you any suggested solution to this?
Thank you!
If you don‘t provide your code it is hard to tell. Probably you do not set the belt speed correctly. You can import a new belt and try to redo your work such that you see when your code fails. A new belt should run per default.
How many years are you old?
Hi!! Can you explain me that part about how the robot starts to jiggle around at min 30:16 ? I have this same issue in my robot (i made it by hand btw)
www.universal-robots.com/articles/ur-articles/what-is-a-singularity/
Hope that helps.
This link contain writing using robotic arm:
github.com/Hrithik-verma/V-REP-Drawing-with-a-robot-arm
nice , can you guide me how to calculate and make the flow chart of Asti robot algorithm ? thanks
nice video
How to fake gripper in coppeliasim through MATLAB
it would be great to make a video of ABB-IRB 360 robot ....its hierarchy is hard to understand
I agree, the hierarchy of that robot looks complicated. However, you could analyze yourself what is happening.
Create mindmaps to understand what purpose and properties certain objects (joints) have.
There is a lot of symmetry in this robot model so you may find out pretty quickly how you would build that thing.
I don‘t think there is a need for this tutorial. But analyzing existing robots can for sure improve your knowledge. Give it a go!
But to make clear: you can use my video to control the irb 360 via ik and you dont need to modify any joint. Use the target dummy provided by irb 360
How would you go about making a different box (colour) go to a different target conveyor belt?
Instead of storing bools in the „boolList“ (true=good, false=bad) you could store numbers (0=bad, 1=color1, 2=color2) and then decide based on these numbers. E.g.
switch(decisionList[1])
case 0: removeObject()
case 1: putOnBelt1()
case 2: putOnBelt2()
Hope that helped.
@@donskanone Hi there, I was able to make the robot change paths to different conveyors based on the color of the box, but I'm facing a stuborn problem: if the robot is carrying, let's say, a red box, to it's release postiotion and another good box of other color, let's say green, hit the proximity sensor, the robot will not return to the original position before grabing the green box, insted, he will connect the green release position to the red release position and start the movement from the green release position. I'm trying hard to solve this, but so far nothing. Could help me out a little? Oh, great work, by the way, your tutorial is really saving my life.
@@cuturbs Hi there. I'm also having some difficulties with my code when trying to grab different colored boxes for different target conveyor belt. Could you provide me with your program? Did you manage to solve the errors?
Hi, is it possible to implement these steps on a robotic arm designed by ourselfs?
Depends on your system.
@@donskanone Sure.
I'm trying to implement this to a robotics class practical work, but my system has 2 kinds of boxes that i need to identify and put them into 2 different conveyor belts with different colors. Can i do this with the code you provided in the videos?
Great content btw :)
Cheers
Sure, if you understand the code you can extend it to deal with multiple objects / conveyers.
@@donskanone Hi again. I manage to put the code generating 2 kinds of good boxes but now my problem is with the robot decision, how can i say to to the robot (on the threaded child script) that he should follow the path to releasePos to box1 and to releasePos2 to box2? I'm trying to implement an if statement on the while loop but i cant make it work :(
I think you can solve this very easily. In the second instruction of the while loop, you get the handle to a hardcoded pathName. You could add pickupPath as a variable and modify it in your non threaded child script (similar to pickup dummy and release path) before you set the integer signal. In the while loop, use the handle to the path you have set not the hardcoded pickupPath.
Hope that makes sense 😂
PLease upload more videos