eytelwein.belt_conveyor_design.core.resistance_and_power_for_steady_operations module

eytelwein.belt_conveyor_design.core.resistance_and_power_for_steady_operations.friction_resistance_of_skirting_board_from_material_flow(material_mass_flow: Quantity, belt_velocity: Quantity, material_density: Quantity, rankine_coefficient: Quantity, skirting_board_width: Quantity, skirting_board_length: Quantity, central_roller_length: Quantity, troughing_angle: Quantity, friction_coefficient_material_skirting: Quantity, unit: str = 'newton', precision: int | None = 2) Quantity[source]

Calculate friction resistance between material and lateral skirting board.

Computes the friction resistance force occurring between conveyed material and the lateral skirting (chute) boards outside the acceleration zone of feeding points. This force arises from the material’s inertia and friction with the skirting surface as material flows through the troughed conveyor.

This calculation is based on the friction resistance formula, which accounts for complex interactions between material velocity, geometry, and friction properties.

Parameters:
  • material_mass_flow (Quantity) – Mass flow of conveyed material (typically in kg/s)

  • belt_velocity (Quantity) – Velocity of the conveyor belt (typically in m/s)

  • material_density (Quantity) – Bulk material density (typically in kg/m³)

  • rankine_coefficient (Quantity) – Rankine coefficient (empirical dimensionless factor)

  • skirting_board_width (Quantity) – Width of the lateral skirting board (typically in m)

  • skirting_board_length (Quantity) – Length of the lateral skirting board (typically in m)

  • central_roller_length (Quantity) – Length of the central roller in the 3-roller idler set (typically in m)

  • troughing_angle (Quantity) – Troughing angle of the conveyor belt (angle of trough formation). Typically in degrees or radians.

  • friction_coefficient_material_skirting (Quantity) – Coefficient of friction between material and skirting surface (dimensionless)

  • unit (str, optional) – The unit for the returned resistance. Default is “newton”.

  • precision (int or None, optional) – The number of decimal places for the result. Default is 2. If None, no rounding is applied.

Returns:

Friction resistance force with the specified unit.

Return type:

Quantity

Raises:

ValueError – If there is an error in converting units. If any required parameter has incorrect dimensions. If any input values are physically invalid.

See also

friction_resistance_per_meter_of_skirting_board_from_material_flow

Calculate the friction resistance per unit length (distributed force).

Notes

This function calculates the friction resistance between material conveyed and lateral chutes outside the acceleration zone of feeding points, based on the skirting friction formula:

\[F_{\text{Sch}} = c_{\text{Rank}} \left[ \frac{I_m}{v \rho} - \frac{(b_{\text{Sch}}^{2} - l_{M}^{2}) \tan \lambda}{4} \right]^{2} \cdot \frac{\rho g l_{\text{Sch}} \mu_2}{b_{\text{Sch}}^{2}}\]

Where: - \(F_{\text{Sch}}\) is the friction resistance [N] - \(c_{\text{Rank}}\) is the Rankine coefficient [] - \(I_m\) is the material mass flow [kg/s] - \(v\) is the belt velocity [m/s] - \(\rho\) is the bulk material density [kg/m³] - \(b_{\text{Sch}}\) is the skirting board width [m] - \(l_M\) is the central roller length [m] - \(\lambda\) is the troughing angle [radians] - \(g\) is gravitational acceleration [m/s²] - \(l_{\text{Sch}}\) is the skirting board length [m] - \(\mu_2\) is the friction coefficient []

The formula consists of two main components: 1. A complex term involving material dynamics and geometry (squared) 2. A term accounting for normal force and friction on the skirting surface

Physical Interpretation: - Higher material flow → higher resistance - Higher belt velocity → lower resistance (dilution effect) - Larger troughing angle → reduces the dynamic component - Longer/wider skirting → increases resistance from friction

eytelwein.belt_conveyor_design.core.resistance_and_power_for_steady_operations.friction_resistance_per_meter_of_skirting_board_from_material_flow(material_mass_flow: Quantity, belt_velocity: Quantity, material_density: Quantity, rankine_coefficient: Quantity, skirting_board_width: Quantity, skirting_board_length: Quantity, central_roller_length: Quantity, troughing_angle: Quantity, friction_coefficient_material_skirting: Quantity, unit: str = 'newton/meter', precision: int | None = 2) Quantity[source]

Calculate friction resistance per unit length between material and lateral skirting board.

Computes the friction resistance force per meter of skirting board length occurring between conveyed material and the lateral skirting (chute) boards outside the acceleration zone of feeding points. This represents the distributed force intensity along the skirting board length.

This calculation divides the total friction resistance by the skirting board length to obtain the force per unit length, which is useful for analyzing stress distribution and structural loading.

Parameters:
  • material_mass_flow (Quantity) – Mass flow of conveyed material (typically in kg/s)

  • belt_velocity (Quantity) – Velocity of the conveyor belt (typically in m/s)

  • material_density (Quantity) – Bulk material density (typically in kg/m³)

  • rankine_coefficient (Quantity) – Rankine coefficient (empirical dimensionless factor)

  • skirting_board_width (Quantity) – Width of the lateral skirting board (typically in m)

  • skirting_board_length (Quantity) – Length of the lateral skirting board (typically in m)

  • central_roller_length (Quantity) – Length of the central roller in the 3-roller idler set (typically in m)

  • troughing_angle (Quantity) – Troughing angle of the conveyor belt (angle of trough formation). Typically in degrees or radians.

  • friction_coefficient_material_skirting (Quantity) – Coefficient of friction between material and skirting surface (dimensionless)

  • unit (str, optional) – The unit for the returned resistance per unit length. Default is “newton/meter”.

  • precision (int or None, optional) – The number of decimal places for the result. Default is 2. If None, no rounding is applied.

Returns:

Friction resistance force per unit length with the specified unit.

Return type:

Quantity

Raises:

ValueError – If there is an error in converting units. If any required parameter has incorrect dimensions. If any input values are physically invalid.

See also

friction_resistance_of_skirting_board_from_material_flow

Calculate the total friction resistance force.

Notes

This function calculates the friction resistance per unit length of skirting board based on the relationship:

\[F_{\text{Sch,lin}} = \frac{F_{\text{Sch}}}{l_{\text{Sch}}}\]

Where: - \(F_{\text{Sch,lin}}\) is the friction resistance per unit length [N/m] - \(F_{\text{Sch}}\) is the total friction resistance [N] - \(l_{\text{Sch}}\) is the skirting board length [m]

The total friction resistance \(F_{\text{Sch}}\) is calculated using the the skirting friction formula (see friction_resistance_of_skirting_board_from_material_flow).

Physical Interpretation: - Represents the distributed force intensity along the skirting board - Useful for structural analysis and stress calculations - Independent of skirting board length (normalized value) - Same material flow and geometry dependencies as total force

Examples

Calculate friction resistance per meter for typical conveyor parameters:

>>> from eytelwein.main.units import get_unit_registry
>>> u = get_unit_registry()
>>> mass_flow = 100 * u.kilogram / u.second
>>> belt_velocity = 2.5 * u.meter / u.second
>>> material_density = 1000 * u.kilogram / u.meter**3
>>> rankine_coefficient = 1.2 * u.dimensionless
>>> board_width = 1.0 * u.meter
>>> board_length = 3.0 * u.meter
>>> roller_length = 0.8 * u.meter
>>> troughing_angle = 30 * u.degree
>>> friction_coeff = 0.4 * u.dimensionless
>>> result = friction_resistance_per_meter_of_skirting_board_from_material_flow(
...     mass_flow, belt_velocity, material_density, rankine_coefficient,
...     board_width, board_length, roller_length, troughing_angle, friction_coeff
... )
>>> print(f"Force per meter: {result}")
Force per meter: 0.68 newton / meter

Calculate with different output units:

>>> result_kn = friction_resistance_per_meter_of_skirting_board_from_material_flow(
...     mass_flow, belt_velocity, material_density, rankine_coefficient,
...     board_width, board_length, roller_length, troughing_angle, friction_coeff,
...     unit="kilonewton/meter", precision=6
... )
>>> print(f"Force per meter: {result_kn}")
Force per meter: 0.000676 kilonewton / meter
eytelwein.belt_conveyor_design.core.resistance_and_power_for_steady_operations.gradient_resistance(height_difference: Quantity, line_load_belt: Quantity, line_load_material: Quantity | None = None, unit: str = 'newton', precision: int = 2) Quantity[source]

Calculate the gradient resistance of a belt conveyor.

This function computes the gradient resistance based on the height difference, line load of the belt, and line load of the material.

The gradient resistance is calculated as:

F_St = H · g · (m’G + m’L)

Where: - F_St is the gradient resistance - H is the height difference - g is the standard gravity (9.81 m/s²) - m’G is the line load of the belt - m’L is the line load of the material

When line_load_material is None, a value of 0 kg/m is used (representing an empty belt).

Parameters:
  • height_difference (Quantity) – The height difference in the conveyor path (typically in meters). line_load_belt : Quantity The line load of the belt (typically in kg/m).

  • line_load_material (Optional[Quantity]) – The line load of the material (typically in kg/m). When None, a value of 0 kg/m is used (representing an empty belt).

  • unit (str, optional) – The unit for the returned resistance. Default is “newton”.

  • precision (int, optional) – The number of decimal places for the result. Default is 2.

Returns:

The gradient resistance with the specified unit.

Return type:

Quantity

Raises:

ValueError – If there is an error in converting units. If any of the input values are invalid (e.g., negative height difference).

eytelwein.belt_conveyor_design.core.resistance_and_power_for_steady_operations.gradient_resistance_sections(height_differences: Quantity | ndarray, line_load_belt: Quantity | ndarray, line_load_material: Quantity | ndarray | None = None, unit: str = 'newton', precision: int = 2) Quantity[source]

Calculate gradient resistance for multiple conveyor sections.

This function computes the gradient resistance based on the height differences, line loads of the belt, and line loads of the material for multiple sections

, using vectorized calculations.

The gradient resistance is calculated as:

F_St = H · g · (m’G + m’L)

Where: - F_St is the gradient resistance - H is the height difference - g is the standard gravity (9.81 m/s²) - m’G is the line load of the belt - m’L is the line load of the material

height_differencesQuantity or np.ndarray

The height differences for each section (typically in meters). Can be a single Quantity or a numpy array of Quantities.

line_load_beltQuantity or np.ndarray

The line load of the belt (typically in kg/m). Can be a single value applied to all sections or section-specific values.

line_load_materialOptional[Quantity or np.ndarray]

The line load of the material (typically in kg/m). Can be a single value, section-specific values, or None for return strands. When None, a value of 0 kg/m is used for all sections (representing empty belts).

unitstr, optional

The unit for the returned resistance array. Default is “newton”.

precisionint, optional

The number of decimal places for the results. Default is 2.

Quantity

Array of gradient resistances for each section with the specified unit.

ValueError

If there is an error in converting units. If array dimensions don’t match. If any input values are invalid (e.g., negative height differences).

eytelwein.belt_conveyor_design.core.resistance_and_power_for_steady_operations.total_power_at_drive_pulley_due_to_motion_resistances(motion_resistance: Quantity, belt_speed: Quantity, unit: str = 'watt', precision: int = 2) Quantity[source]

Calculate the total power at the drive pulley due to motion resistances.

This function computes the total power required at the drive pulley based on the given motion resistance and belt speed.

The power is calculated as:

P = F_w * v

Where: - P is the power at the drive pulley - F_w is the motion resistance - v is the belt speed

Parameters:
  • motion_resistance (Quantity) – The motion resistance (typically in newtons).

  • belt_speed (Quantity) – The speed of the belt (typically in meters per second).

  • unit (str, optional) – The unit for the returned power. Default is “watt”.

  • precision (int, optional) – The number of decimal places for the result. Default is 2.

Returns:

The total power at the drive pulley with the specified unit.

Return type:

Quantity

Raises:

ValueError – If there is an error in converting units.