Chapter 10: Tutorial - Bucket Conveyor

(Part A) Learn how to set up and process a simulation using periodic motions, replicated geometries and periodic injection of material.

(Part B) Learn how to analyze the trajectories of the particles from the periodic injection, as well as the mass flow during surge periods and the mass load in each bucket.

10.1. Part A: Project Setup and Processing

10.1.1. OBJECTIVE

The purpose of this tutorial is to learn how to use periodic motions with replicated geometries.

The scenario considered is a bucket conveyor experiencing surges of material from inconsistent loading.

  • We will post-process the results of this simulation in Part B.

You will learn how to:

  • Define a motion that can be repeated on a periodic basis

  • Replicate a geometry component multiple times along a defined path

  • Simulate a surge loading scenario by using periodic injection

And you will use these features:

  • Inlets

  • Periodic Motion

  • Geometry Replication

  • Periodic Injection

10.1.2. PREREQUISITES


Important:  This ADVANCED tutorial contains fewer details, screenshots, and procedures than other Rocky tutorials.

  • An ADVANCED tutorial is designed for users who are more familiar with the Rocky user interface (UI), and already have a good understanding of the common setup and post-processing tasks.

  • If you do not already have this level of familiarity, it is recommended that you complete at least Tutorials 01- 05 before beginning this one.


10.1.3. GEOMETRY

 

The geometries in this tutorial are composed of:

  • (1) Feed Conveyor

  • (2) Belt

  • (3) Box

  • (4) Bucket

  • (5) Hopper

  • (6) Rolls

  • (7) Structure

The first item will be created from a Rocky conveyor template.

The remaining components will be imported as .stl files, all of which can be found in the tutorial directory.

10.1.4. PROJECT CREATION

To get started with this tutorial, do the following:

  1. Download the dem_tut10_files.zip file here .

  2. Unzip dem_tut10_files.zip to your working directory.

  3. Open Rocky 2025 R2.

  4. Create a new project.

  5. Save the empty project to a location of your choosing.

  6. Use the information in the table below to start setting up your Rocky project.

    StepData EntityEditors LocationParameter or ActionSettings
    AStudyStudyStudy NameBucket Conveyor
    BPhysicsPhysics | MomentumRolling Resistance ModelType C: Linear Spring Rolling Limit ⯆
    Numerical Softening Factor0.1 [ - ]


    Tip:  If you run into settings or procedures in these tables that you are not yet familiar with, please refer to the Rocky User Manual and/or other Tutorials (via the Introductory Tutorials and Advanced Tutorials) to find the detailed instructions you need.


10.1.5. GEOMETRY SETUP

For the Geometries step, we will import the following 6 geometry files in .stl format:

 

We will also add a default Feed Conveyor, and then create two separate Inlets (from two different Surfaces) from which to release the regular and surge material, respectively.

  1. Use the information in the table that follows to import and create these components.

    StepData EntityEditors LocationParameter or ActionSettings
    AGeometriesImport WallAll 6 .stl files with "mm" for Import Unit
    BGeometriesCreate Feed Conveyor
    CGeometries

    ﹂Feed Conveyor <01>

    Feed Conveyor |

    Geometry

    Transition Length1 [m]
    Loading Length2 [m]
    Belt Width0.5 [m]
    Belt Thickness0.0125 [m]
    DGeometries

    ﹂Feed Conveyor <01>

    Feed Conveyor |

    Orientation

    Alignment Angle90 [dega]
    Vertical Offset0.6 [m]
    Horizontal Offset-0.07 [m]
    Out-of-plane Offset0.95 [m]
    EFeed Conveyor |

    Skirtboard

    Width0.45 [m]
    Length1.5 [m]
    Skirtboard Height0.2 [m]
    Length Offset0.5 [m]
    FFeed Conveyor |

    Feeder Box

    Drop Box Length1 [m]
    Drop Box Width0.75 [m]
    Drop Box Height0.25 [m]
    Wall Thickness0.00625 [m]
    GFeed Conveyor |

    Head Pulley

    Face Width0.5 [m]
    Diameter0.1 [m]
    HGeometries

    ﹂Feed Conveyor <01>

    Feed Conveyor |

    Belt Motion

    Belt Speed0.75 [m/s]
    IGeometriesCreate Rectangular Surface
    JGeometries

    ﹂Rectangular Surface <01>

    Rectangular SurfaceNameRegular Feed
    Center Coordinates-0.05, 1.6, 3.2 [m]
    Length0.7 [m]
    Width0.55 [m]
    OrientationAngles ⯆
    Rotation310, 0, 0 [dega]


    Tip:  For more information about setting up Feed Conveyors, refer to Tutorial 06 – High Pressure Grinding Roll (HPGR).


  2. From the Data panel, under Geometries, right-click Regular Feed and then click Duplicate.

  3. Use the information in the table that follows to define the new Regular Feed <01> component.

    StepData EntityEditors LocationParameter or ActionSettings
    KGeometries

    ﹂Regular Feed <01>

    Rectangular SurfaceNameSurge Feed
    Center Coordinates-0.05, 1.6, 3.75 [m]
    Rotation50, 0, 0 [dega]

Now that all of the geometries are included in your project, you can visualize them in a 3D View window.

 

10.1.6. BOUNDARY MOVEMENT

Turning the geometry for a single bucket into a full, 20-bucket conveyor involves the following steps:

  • (1) The complex motion of the single bucket moving up and around the conveyor is defined using a single motion frame.

  • (2) Periodic motions are turned on for this frame, which enables the entire motion set to be repeated at a prescribed interval.

  • (3) The motion frame is assigned to the bucket geometry.

  • (4) Rocky is then instructed to repeat the geometry (including its assigned motions) 20 times at regular intervals along the motion path.

For the Motion Frames step, we will accomplish the first two steps above by creating a single frame with four separate motions, as explained below.

 

The complex bucket motion can be defined on a single frame using four separate motions:

  • The translation motion of the right-side-up bucket moving up the front side of the conveyor.

  • The rotation motion of the bucket arching over the top of the conveyor to turn upside down.

  • The translation motion of the upside-down bucket moving down the back side of the conveyor.

  • The rotation motion of the upside-down bucket arching over the bottom of the conveyor to turn right-side up again.

The fourth motion brings the bucket back to the starting point, so to keep the bucket moving, the entire, four-part motion set must be repeated.

In Rocky, this motion repetition is done via Periodic Motions.

  

The four separate motions within the frame will be defined using the bucket velocity and belt length.


Important:  Note that the full bucket motion includes two straight paths and two curved paths.


  • The bucket velocity: 1.15 m/s

  • The length of the straight path (w): 4.66174 m

  • The radius of the curved path (r): 0.15999 m

  • The bucket takes 4.05368 s to complete the straight path and 0.43706 s to complete the curved path

Using this information, we can then determine that one full revolution takes 8.98148 s.


Note:  This value will be important both when setting up Periodic Motions and Geometry Replications later.


10.1.7. PERIODIC MOTION

 

When Enable Periodic Motion is turned on for a frame, the full list of motions contained within that frame will be repeated as soon as the Periodic Motion Period completes.

The total time between the earliest motion's Start Time (in our case, 0 s) and the latest motion's Stop Time (in our case, 8.98148 s) is saved within Rocky as the periodic motion period.

As we want the motion to repeat as soon as the last motion finishes, we will set the Periodic Motion Period as equal to the motion total time.

The full list of motions contained within the frame will be repeated until it reaches the Periodic Stop Time.

10.1.8. MOTION FRAME

Now that you understand more about periodic motions, you can create the single motion frame that will contain the four separate bucket motions.

  1. Use the information in the table that follows to define this Motion Frame, and assign it to the bucket geometry.

    StepData EntityEditors LocationParameter or ActionSettings
    AMotion FramesCreate Motion Frame
    BMotion Frames

    ﹂Frame <01>

    FrameNameBucket Motion
    Relative Orientation | Angle-30 [dega]
    Enable Periodic Motion(Enabled)
    Period8.98148 [s]
    Add Motion
    Stop Time4.05368 [s]
    Velocity0, 1.15, 0 [m/s]
    CMotion Frames

    ﹂Bucket Motion

    FrameAdd motion (2 of 4)
    Start Time4.05368 [s]
    Stop Time4.49074 [s]
    TypeRotation ⯆
    Initial Angular Velocity-7.18794, 0, 0 [rad/s]
    Add motion (3 of 4)
    Start Time4.49074 [s]
    Stop Time8.54442 [s]
    Velocity0, 1.15, 0 [m/s]
    Add motion (4 of 4)
    Start Time8.54442 [s]
    Stop Time8.98148 [s]
    TypeRotation ⯆
    Initial Angular Velocity-7.18794, 0, 0 [rad/s]
    DGeometries

    ﹂Bucket

    WallMotion FrameBucket Motion ⯆

The completed Motion Frame setup should now look similar to the image below.

 

For this tutorial, since the geometry has a motion with displacement assigned, the movement can be previewed using the Motion Preview window.

 


Tip:  Use the eye icons on the Data panel to hide all but the Bucket and Belt components from the view.


Later in Part B of this tutorial we will analyze two buckets separately using moving cubes.


Note:  A moving cube is a definition for a Cube User Process with a Motion Frame assigned to it.

Motions must be created before processing any simulation.


Follow the steps in the table below to create the second Motion Frame.

StepData EntityEditors LocationParameter or ActionSettings
AMotion Frames

﹂Bucket Motion

Duplicate Motion Frame
BMotion Frames

﹂Bucket Motion <01>

FrameRelative Position0, 4.04, -2.33 [m]
Relative Orientation | Angle-210 [dega]

10.1.9. BOUNDARY DEFINITION – REPLICATION

For this tutorial, the Replicate Geometry option will be activated for the Bucket geometry, which will create copies of the geometry (and its assigned motions) at specified intervals along the motion's path.

  1. From the Data panel, under Geometries, select Bucket.

  2. From the Data Editors panel, select the Wall | Replication tab, and then enable the Replicate Geometry checkbox.

  1. Define the Number of Replications value.

  2. Enable the Periodic Replication checkbox.

  3. To have the buckets appear in the correct location, enter the full periodic motion period (8.98148 s) for the Replication Period.

     

The results are shown below.

As seen in the Motion Preview (and/or 3D View) window, the single bucket has now been replicated into 20 buckets evenly spaced along the path of the bucket motion.

 

10.1.10. CONTINUE PROJECT SETUP

For the Materials step, default values will be used for all three default materials.

We will slightly modify the friction values for the Materials Interactions step.

And for the Particles step, we will create a new sphere-shaped particle group in a range of sizes with some added rolling resistance.

  1. Use the information in the table below to continue setting up your project.

    StepData EntityEditors LocationParameter or ActionSettings
    AMaterials Interactions… |

    Default Particles⯆

    Default Boundary⯆

    Static Friction0.5 [ - ]
    Dynamic Friction0.5 [ - ]
    BParticlesCreate Particle
    CParticles

    ﹂Particle <01>

    Particle | SizeAdd size row (x1)
    (1) Size | Cumulative %0.15 [m] @ 100 [%]
    (2) ...0.05 [m] @ 10 [%]
    Particle | MovementRolling Resistance0.4 [ - ]

10.1.11. MASS FLOW DEFINITION – CONSTANT FEED

For the Inlets and Outlets step, we will create two particle inlets: one to provide a consistent feed for the conveyor and another to provide additional surges of material through the inlet.

  1. Use the information in the table below to create the first inlet representing the regular feed.

    StepData EntityEditors LocationParameter or ActionSettings
    AInlets and OutletsCreate Particle Inlet
    BInlets and Outlets

    ﹂Particle Inlet <01>

    Particle InletNameRegular Injection
    Entry PointRegular Feed ⯆
    Particle Inlet | ParticlesAdd row (x1)
    (1) Particle | Mass Flow RateParticle <01> ⯆ @ 70 [t/h]

10.1.12. PERIODIC INJECTION

For the second inlet, we want the material surge to be represented by 5-second bursts of material that appear every 5 seconds, starting 5 seconds into the simulation (as shown).

 

To replicate the material surge, we will set this second Particle Inlet to have a Periodic injection, which will enable particles to be released from the Entry Point in bursts.

These bursts are defined via the following parameters:

  • Period: Defines the length of time for each injection cycle.

  • Injection Duration: Defines the amount of time during each Period when particles will be actively released.

 

Rocky calculates the particle mass released in each periodic burst by equally dividing the total particle mass by the total number of bursts during the simulation.

10.1.13. MASS FLOW DEFINITION – SURGE FEED

  1. Use the information in the table below to create a second Particle Inlet for the material surge, and to complete your simulation setup.

    StepData EntityEditors LocationParameter or ActionSettings
    AInlets and OutletsCreate Particle Inlet
    BInputs

    ﹂Particle Inlet <01>

    Particle InletNameSurge Injection
    Entry PointSurge Feed ⯆
    Particle Inlet | ParticlesAdd row (x1)
    (1) Particle | Mass Flow RateParticle <01> ⯆ @ 40 [t/h]
    … | TimeStart5 [s]
    … | EntryPeriodic(Enabled)
    Periodic | Period10 [s]
    Periodic | Injection Duration5 [s]
    CSolverSolver | TimeSimulation Duration30 [s]
    Solver | GeneralSimulation TargetCPU ⯆

10.1.14. SETUP CONFIRMATION

With a 3D View window opened, your Data panel and Workspace should look similar to the below image.

 

10.1.15. SIMULATE PROJECT

  1. From the Solver entity, click Start.

The Simulation Summary screen appears, then processing begins.

 

 


Tip:  You can use the Auto Refresh checkbox to view in a 3D View window the results during processing.


10.1.16. CONCLUSION

This completes Part A of this tutorial, in which Rocky was used to set up and process a simulation of a Bucket Conveyor.

During this tutorial, it was possible to:

  • Define a motion that repeats periodically

  • Replicate a single geometry into multiple copies with identical motion paths

  • Set up a material surge scenario using a periodic injection inlet

What's Next?

  • Now that you have set up and processed this simulation, you are ready to move on to Part B and post-process this project.

10.2. Part B: Post-Processing

10.2.1. OBJECTIVE

The purpose of this tutorial is to analyze the results from the Bucket Conveyor simulation we processed in Part A.

You will learn how to:

  • Visualize the two separate injections

  • Evaluate the mass flow during the surge periods

  • Evaluate the mass load for each bucket that has reached a steady state

  • Analyze the trajectory of the particles being dumped into the bin

And you will use these features:

  • 3D View

  • User Processes (Cube, Particle Trajectory)

  • Time Plot and Custom Formulas

10.2.2. PREREQUISITES


Important:  This ADVANCED tutorial contains fewer details, screenshots, and procedures than other Rocky tutorials.

  • An ADVANCED tutorial is designed for users who are more familiar with the Rocky user interface (UI), and already have a good understanding of the common setup and post-processing tasks.

  • If you do not already have this level of familiarity, it is recommended that you complete at least Tutorials 01- 05 before beginning this one.


10.2.3. OPEN PROJECT

  1. If you completed Part A of this tutorial, ensure that Rocky project is open. (Part B will continue from where Part A left off.)

  2. If you did not complete Part A, do all of the following:

    1. Download the dem_tut10_files.zip file here .

    2. Unzip dem_tut10_files.zip to your working directory.

    3. Open Rocky 2025 R2.


      Important:  To make use of the Rocky project file provided, you must have Rocky 2025 R2 or later. If you have an earlier version of Rocky, please upgrade Rocky to the latest version, or complete Part A from scratch.


    4. From the Rocky program, click the Open Project button, find the dem_tut10_files folder, then from the tutorial_10_A_pre-processing folder, open the tutorial_10_A_pre-processing.rocky file.

    5. Process the simulation. (From the Data panel, select Solver and then from the Data Editors panel, click the Start button.)

10.2.4. VISUALIZE SEPARATE FEEDS

Now that our project has finished processing, we can begin analyzing the results.

Let's start by viewing the contributions from each separate inlet.

  1. From the Data panel, select Particles.

  2. From the Data Editors panel, on the Properties tab, right-click Particle Boundary, point to 3D View, and then click Show in new 3D View.

 

Each inlet's contribution is represented by a separate color.


Note:  Particle boundaries are numbered from zero in the order in which they were added to the Geometries entity.



Tip:  Use the slider on the Time toolbar to investigate the surges at different times.


10.2.5. PLOT PARTICLE COUNT

Another way to evaluate the effect of the surges is to plot the particles count.

  1. From the Data panel, select Particles again.

  2. From the Data Editors panel, on the Curves tab, drag and drop Particles Count onto the Workspace.

     

The resulting plot shows a steeper curve whenever the mass flow is increased from a surge.

 

We can also filter the particles by the Particle Boundary property and plot the Particles Count for each Inlet separately.

First we will isolate the particles that result from the Regular Feed.

  1. Use the information in the table below to begin this analysis.

    StepData EntityEditors LocationParameter or ActionSettings
    AParticlesCreate a Filter User Process
    BUser Processes

    ﹂Filter <01>

    PropertyNameRegular Feed Particles
    PropertyParticle Boundary ⯆
    TypeValue
    Cut value7 [<ind>]

    Next, we will isolate the particles that result from the Surge Feed.

  2. From the Data panel, under User Processes, right-click Regular Feed Particles, and then click Duplicate.

  3. Use the information in the table below to define the newly created Regular Feed Particles <01> item.

    StepData EntityEditors LocationParameter or ActionSettings
    AUser Processes

    ﹂Regular Feed Particles <01>

    PropertyNameSurge Feed Particles
    Cut value8 [<ind>]

  4. Now, from the Data panel, under User Processes, multi-select both Regular Feed Particles and Surge Feed Particles.

  5. Drag-and-drop both processes onto the previous plot.

The resulting plot shows two more curves:

  • The Surge Feed is represented by a "stairstep" curve that shows the different periods of injection over time.

  • The Regular Feed is represented by a curve that grows at constant rate.

 

10.2.6. EVALUATING BUCKET MASS

Next, let's evaluate the draw efficiency.

This can be done by using two moving cubes (each one for a bucket) and a Time Plot to analyze the carried Particle Mass for each bucket.

We will use the motion frames we created in Part A to describe the cubes motion.

  1. Use the information in the table below to create the moving cubes.

    StepData EntityEditors LocationParameter or ActionSettings
    AParticlesCreate a Cube User Process
    BUser Processes

    ﹂Cube <01>

    CubeMotion FrameBucket Motion ⯆
    Center-0.06, 0.27, 0.2 [m]
    Magnitude0.5, 0.5, 0.3 [m]
    Orientation | MethodAngles ⯆
    Orientation | Rotation-30, 0, 0 [m]
    CUser Processes

    ﹂Cube <01>

    Duplicate Cube User Process
    DUser Processes

    ﹂Cube <02>

    CubeMotion FrameBucket Motion <01> ⯆
    Center-0.06, 3.8, -2.55 [m]

This results in two cubes encompassing two buckets (as shown).

Due to the assigned motion frames, the cubes will accompany the buckets for the whole simulation (check this on Motion Preview and by multi-selecting both cubes with the Bucket wall visible).

 

10.2.7. TIME PLOT

Now that we have the Cube selections, we can use it to create a Time Plot showing the Sum of Particle Mass for the two buckets.

  1. Use the information in the table below to create the Time Plot.

    StepItemLocationParameter or ActionSettings
    AWindow (menu)Create a New Time Plot
    BCube <01>Properties | Particle MassDrag and drop onto the Time Plot window
    CSelect the Statistics to Plot (dialog box)Sum(Enabled)
    (All others)(Cleared)
    DCube <02>Properties | Particle MassDrag and drop onto the Time Plot window
    ESelect the Statistic to Plot (dialog box)Sum(Enabled)
    (All others)(Cleared)

The resulting plot represents the Particle Mass in each Cube region.

 


Note:  Each bucket we are analyzing pass through the Hopper 3 times.


Note that when crossing the Hopper (at 13.3 s for example), the cubes encompass particles that are not necessarily being carried by the buckets, and it causes peaks on the plot.

The relevant values are the ones that keep constant for more than a second in the plot, when all the particles inside the cube are being carried by the bucket (15 s). (Compare the images shown.)

 

 

The particle mass carried by the buckets varies between 2.6 kg (at the beginning, with few particles on the Hopper) and 16 kg.

 


Note:  Your values may differ slightly from the ones presented in this tutorial.


10.2.8. PARTICLE TRAJECTORY

Another analysis we can do with this project involves using the Particles Trajectory User Process, which displays the path particles take by translating their movements into 3D curves.


Tip:  To learn more about Particle Trajectories, refer to Tutorial 04 – SAG Mill Tutorial - SAG Mill.


To visualize the trajectory of the particles, do the following:

  1. From the Time toolbar, ensure that you have selected the [120] 6 s timestep. This will be your Starting Timestep.

  2. Use the information in the table below to create the Particles Trajectory.

    StepData EntityEditors LocationParameter or ActionSettings
    AParticlesCreate a Particles Trajectory User Process
    BUser Processes

    ﹂Particles Trajectory <01>

    Particle TrajectoryNumber of Intervals300 [ - ]
    Particle Stride1 [ - ]
    Update Particles Selection

    Your Starting Timestep value should be updated accordingly.

10.2.9. POST PROCESSING – PARTICLE TRAJECTORY

  1. To view the trajectories, use the information in the table below.

    StepItemLocationParameter or ActionSettings
    AWindow (menu)Create a New 3D View
    BUser Processes |

    Particles Trajectory <01>

    ColoringVisible(Enabled)
    Edges(Enabled)
    Edges | PropertyParticle Mass ⯆


Tip:  Hide Particles from the view by using its Data panel eye icon.


 

10.2.10. CONCLUSION

This completes Part B of this tutorial, in which Rocky was used to analyze the results from a Bucket Conveyor simulation.

During this tutorial, it was possible to:

  • Visualize and plot the effects of the two separate injections

  • Evaluate the mass load for a single bucket using Cubes and Time Plots

  • Visualize the trajectory of the particles

What's Next?

  • If you completed this tutorial successfully, then you are ready to move on to the next tutorial.