eytelwein.belt_conveyor_design.extended.mass_inertia module

Public Pint wrappers for translating-mass motor-shaft inertia.

eytelwein.belt_conveyor_design.extended.mass_inertia.belt_mass_per_strand(belt_linear_mass: Quantity, center_distance: Quantity, unit: str = 'kilogram', precision: int = 2) Quantity[source]

Calculate belt mass for one strand.

Parameters:
  • belt_linear_mass (Quantity) – Belt linear mass quantity.

  • center_distance (Quantity) – Conveyor center distance quantity.

  • unit (str, optional) – Output unit, by default "kilogram".

  • precision (int, optional) – Decimal rounding precision, by default 2. Use None to skip rounding.

Returns:

Belt mass per strand in requested unit.

Return type:

Quantity

Raises:

ValueError – If unit conversion fails, inputs are not physically meaningful, or the requested output unit is invalid.

eytelwein.belt_conveyor_design.extended.mass_inertia.inertia_per_drive(inertia_total_motor_shaft: Quantity, motor_count: int, unit: str = 'kilogram * meter**2', precision: int = 2) Quantity[source]

Calculate reflected inertia per drive motor.

Parameters:
  • inertia_total_motor_shaft (Quantity) – Total reflected motor-shaft inertia quantity.

  • motor_count (int) – Number of drives sharing load.

  • unit (str, optional) – Output unit, by default "kilogram * meter**2".

  • precision (int, optional) – Decimal rounding precision, by default 2. Use None to skip rounding.

Returns:

Per-drive reflected inertia in requested unit.

Return type:

Quantity

Raises:

ValueError – If unit conversion fails, total inertia is negative, motor count is less than 1, or requested output unit is invalid.

eytelwein.belt_conveyor_design.extended.mass_inertia.motor_shaft_inertia_total(translating_mass: Quantity, drive_pulley_radius: Quantity, gear_ratio_motor_to_pulley: Quantity, unit: str = 'kilogram * meter**2', precision: int = 2) Quantity[source]

Calculate reflected total inertia at motor shaft.

Parameters:
  • translating_mass (Quantity) – Translating mass quantity.

  • drive_pulley_radius (Quantity) – Drive pulley radius quantity.

  • gear_ratio_motor_to_pulley (Quantity) – Gear ratio quantity defined as omega_motor / omega_pulley.

  • unit (str, optional) – Output unit, by default "kilogram * meter**2".

  • precision (int, optional) – Decimal rounding precision, by default 2. Use None to skip rounding.

Returns:

Reflected total inertia in requested unit.

Return type:

Quantity

Raises:

ValueError – If unit conversion fails, inputs are not physically meaningful, or the requested output unit is invalid.

eytelwein.belt_conveyor_design.extended.mass_inertia.payload_mass_total(payload_mass_per_meter: Quantity, center_distance: Quantity, unit: str = 'kilogram', precision: int = 2) Quantity[source]

Calculate total payload mass over conveyor center distance.

Parameters:
  • payload_mass_per_meter (Quantity) – Payload mass per meter quantity.

  • center_distance (Quantity) – Conveyor center distance quantity.

  • unit (str, optional) – Output unit, by default "kilogram".

  • precision (int, optional) – Decimal rounding precision, by default 2. Use None to skip rounding.

Returns:

Total payload mass in requested unit.

Return type:

Quantity

Raises:

ValueError – If unit conversion fails, inputs are not physically meaningful, or the requested output unit is invalid.

eytelwein.belt_conveyor_design.extended.mass_inertia.pulley_radius(drive_pulley_diameter: Quantity, unit: str = 'meter', precision: int = 2) Quantity[source]

Calculate drive pulley radius from drive pulley diameter.

Parameters:
  • drive_pulley_diameter (Quantity) – Drive pulley diameter quantity.

  • unit (str, optional) – Output unit, by default "meter".

  • precision (int, optional) – Decimal rounding precision, by default 2. Use None to skip rounding.

Returns:

Drive pulley radius in requested unit.

Return type:

Quantity

Raises:

ValueError – If unit conversion fails, diameter is not positive, or the requested output unit is invalid.

eytelwein.belt_conveyor_design.extended.mass_inertia.translating_mass_empty(idler_mass_upper_total: Quantity, idler_mass_lower_total: Quantity, belt_mass_per_strand_value: Quantity, unit: str = 'kilogram', precision: int = 2) Quantity[source]

Calculate translating mass for empty conveyor.

Parameters:
  • idler_mass_upper_total (Quantity) – Upper-strand total idler mass quantity.

  • idler_mass_lower_total (Quantity) – Lower-strand total idler mass quantity.

  • belt_mass_per_strand_value (Quantity) – Belt mass per strand quantity.

  • unit (str, optional) – Output unit, by default "kilogram".

  • precision (int, optional) – Decimal rounding precision, by default 2. Use None to skip rounding.

Returns:

Empty-conveyor translating mass in requested unit.

Return type:

Quantity

Raises:

ValueError – If unit conversion fails, inputs are not physically meaningful, or the requested output unit is invalid.

eytelwein.belt_conveyor_design.extended.mass_inertia.translating_mass_full(translating_mass_empty_value: Quantity, payload_mass_total_value: Quantity, unit: str = 'kilogram', precision: int = 2) Quantity[source]

Calculate translating mass for loaded conveyor.

Parameters:
  • translating_mass_empty_value (Quantity) – Empty-conveyor translating mass quantity.

  • payload_mass_total_value (Quantity) – Total payload mass quantity.

  • unit (str, optional) – Output unit, by default "kilogram".

  • precision (int, optional) – Decimal rounding precision, by default 2. Use None to skip rounding.

Returns:

Full-conveyor translating mass in requested unit.

Return type:

Quantity

Raises:

ValueError – If unit conversion fails, inputs are not physically meaningful, or the requested output unit is invalid.