File Exchange

image thumbnail

Robot Arm with Conveyor Belts

version 1.8.0.0 (17.4 MB) by Steve Miller
Robot arm transfers parts between two conveyor belts

55 Downloads

Updated 18 Apr 2019

View License

Models a robot arm with 5 degrees of freedom and a gripper, along with two conveyor belts. The robot transfers parts from one conveyor belt to the other. One conveyor belt brings the parts to the robot arm, and the other belt transports the parts away from the robot arm. The model includes electrical actuation, supervisory logic, and optimization of end effector trajectory.

Please read the README.txt file to get started.

The robot arm model was created in Onshape and imported into Simscape Multibody.
Visit this File Exchange entry to learn more about Onshape
https://www.mathworks.com/products/simmechanics/onshape.html

The robot arm is based on the youBot.

Find other Simscape examples by searching posts for the keyword "physical modeling"
https://www.mathworks.com/matlabcentral/fileexchange/?term=%22physical+modeling%22

Learn more about MathWorks Simscape Products:
https://www.mathworks.com/physical-modeling/

Cite As

Steve Miller (2019). Robot Arm with Conveyor Belts (https://www.mathworks.com/matlabcentral/fileexchange/61370-robot-arm-with-conveyor-belts), MATLAB Central File Exchange. Retrieved .

Comments and Ratings (13)

Hey Steve Miller, I am trying to pick the object which is of uneven shape,I have applied contact forces that keeps the object holded,but I need to pick the object up and place it in its mould,whenever i change the position of gripper it does not take object with it and the object is left at the same position.I have also provided "six degrees of freedom"to the object!!!! can you please give me solution to this?

please upload R016a version of the model

SOREL

Hi Steve Miller Do you have some example about the integration of inverse kinematic code into simulink

Steve Miller

Hi Varun - your inverse kinematics model could probably be included in the Simulink model. There are blocks for including MATLAB code in the Simulink block diagram. The outputs of that block could then be used in place of the constant blocks I used in the model.

Hello Steve,
Thank you for replying in detail to my query. I had not posted any details of what I was doing. After reading you reply, I understood the logic. Now, I needed to know, I am planning to input co-odinates instead of joint angles. Is there any way to do that?. What I did is, I have a separate inverse kinematic matlab/simulink solver. I solved through that seperately, as (x ,y z ) co-ordinates as input and got joint angles as output. I put those join angles in Qt in 'manual' mode and got successful simulation. Is there any way in this model to combine it?
Thanks,
Varun.

Steve Miller

Hi Varun - to vary the trajectories, it depends which configuration you are in. In the "Default" configuration, accessed by clicking on the hyperlink at the top of the model, the parameters which are used are in the mask for subsystem "youBot_Arm/Input/Control". If you are testing Box Transfer only, MATLAB workspace variables Qt and t are used. This is so we can optimize those values using Fast Restart, which does not permit variables in MATLAB structures (such as YBT_Par.Waypoints....) to be tuned. I hope that helps. --Steve

How do you vary paramters for simulating different trajectories? modifying PARAM file inputs does not give the desired output.

bl k

Xiang Chen

Vasco Lenzi

Updates

1.8.0.0

Added R2018b version. R19a and R18b versions can be downloaded from File Exchange, contact me for earlier releases.

1.7.0.1

Added R2018b version. R18b and R18a versions can be downloaded from File Exchange, contact me for earlier releases.

1.7.0.0

Updating contact force library only (v4.1), no changes to robot arm example.

1.6.0.0

Added R2018a version. Contact me for earlier releases.

1.5.0.0

Updating contact force library only, no changes to robot arm example.

1.4.0.0

Added R2017b version.

1.3.0.0

Updated to include latest version of Simscape Multibody Contact Forces Library (v3.7). No functional changes to model of robot, conveyor belt, or logic.

1.2.0.0

Fixed Run optimization hyperlinks in model; made hyperlinks in demo script Mac compatible. Updates apply to R2016b and R2017a versions.

1.1.0.0

Added R2017a version and text for citing submission in other works.

MATLAB Release Compatibility
Created with R2019a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Robot_Arm_Belts_R18b

Robot_Arm_Belts_R18b/CAD

Robot_Arm_Belts_R18b/CAD/Onshape

Robot_Arm_Belts_R18b/Libraries/CFL_Libs

Robot_Arm_Belts_R18b/Libraries/CFL_Libs/Libraries

Robot_Arm_Belts_R18b/Libraries/CFL_Libs/Libraries/Help

Robot_Arm_Belts_R18b/Libraries/CFL_Libs/Scripts_Data

Robot_Arm_Belts_R18b/Libraries/CFL_Libs/Scripts_Data/Doc

Robot_Arm_Belts_R18b/Libraries/CFL_Libs/Scripts_Data/Extrusions

Robot_Arm_Belts_R18b/Libraries/Pace

Robot_Arm_Belts_R18b/Optim

Robot_Arm_Belts_R18b/Scripts_Data

Robot_Arm_Belts_R19a

Robot_Arm_Belts_R19a/CAD

Robot_Arm_Belts_R19a/CAD/Onshape

Robot_Arm_Belts_R19a/Libraries/CFL_Libs

Robot_Arm_Belts_R19a/Libraries/CFL_Libs/Libraries

Robot_Arm_Belts_R19a/Libraries/CFL_Libs/Libraries/Help

Robot_Arm_Belts_R19a/Libraries/CFL_Libs/Scripts_Data

Robot_Arm_Belts_R19a/Libraries/CFL_Libs/Scripts_Data/Doc

Robot_Arm_Belts_R19a/Libraries/CFL_Libs/Scripts_Data/Extrusions

Robot_Arm_Belts_R19a/Libraries/Pace

Robot_Arm_Belts_R19a/Optim

Robot_Arm_Belts_R19a/Scripts_Data

Robot_Arm_Belts_R18b

Robot_Arm_Belts_R18b/CAD

Robot_Arm_Belts_R18b/Libraries

Robot_Arm_Belts_R18b/Libraries/CFL_Libs/Libraries

Robot_Arm_Belts_R18b/Libraries/Pace

Robot_Arm_Belts_R18b/Resources

Robot_Arm_Belts_R18b/URDF

Robot_Arm_Belts_R19a

Robot_Arm_Belts_R19a/CAD

Robot_Arm_Belts_R19a/Libraries

Robot_Arm_Belts_R19a/Libraries/CFL_Libs/Libraries

Robot_Arm_Belts_R19a/Libraries/Pace

Robot_Arm_Belts_R19a/Resources

Robot_Arm_Belts_R19a/URDF