.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "api/gallery/mechanical_engineering/transmission/plot_02_capstan_equation.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code or to run this example in your browser via JupyterLite. .. rst-class:: sphx-glr-example-title .. _sphx_glr_api_gallery_mechanical_engineering_transmission_plot_02_capstan_equation.py: The Euler-Eytelwein belt-friction law (1769) ============================================ A sailor holds a heavy load with a few turns of rope round a bollard. Leonhard Euler (1762, published 1769) explained why: on each small arc :math:`d\theta` of contact the rope presses on the drum with force :math:`T\,d\theta`, friction can resist up to :math:`\mu T\,d\theta`, so tension can grow by :math:`dT = \mu T\,d\theta` and :math:`T_1/T_2 = e^{\mu\theta}`. Johann Albert Eytelwein (1808) brought the result to engineers, for whom it sets the power a belt drive can transmit (:func:`~engineeringkit.mechanical_engineering.belt_tension_ratio`, :func:`~engineeringkit.mechanical_engineering.belt_speed`). The example builds the exponential from small arcs, then sizes a flat and a V-belt. .. GENERATED FROM PYTHON SOURCE LINES 18-23 .. code-block:: Python import matplotlib.pyplot as plt import numpy as np from engineeringkit.mechanical_engineering import belt_speed, belt_tension_ratio .. GENERATED FROM PYTHON SOURCE LINES 24-28 Small arcs add up to an exponential ----------------------------------- Each arc multiplies the tension by :math:`1 + \mu\,\Delta\theta`. .. GENERATED FROM PYTHON SOURCE LINES 28-35 .. code-block:: Python mu, wrap = 0.3, np.pi for n in (4, 40, 400, 40000): print(f"{n:6d} arcs: T1/T2 = {(1 + mu * wrap / n) ** n:.5f}") print(f" exact : T1/T2 = {belt_tension_ratio(mu, wrap):.5f}") assert np.isclose((1 + mu * wrap / 40000) ** 40000, belt_tension_ratio(mu, wrap), rtol=1e-4) .. rst-class:: sphx-glr-script-out .. code-block:: none 4 arcs: T1/T2 = 2.33098 40 arcs: T1/T2 = 2.53843 400 arcs: T1/T2 = 2.56349 40000 arcs: T1/T2 = 2.56630 exact : T1/T2 = 2.56633 .. GENERATED FROM PYTHON SOURCE LINES 36-38 Turns round a bollard --------------------- .. GENERATED FROM PYTHON SOURCE LINES 38-42 .. code-block:: Python for turns in (0.5, 1, 2, 3): print(f"{turns:3} turns: a 100 N pull holds {100 * belt_tension_ratio(mu, 2 * np.pi * turns) / 1e3:7.2f} kN") .. rst-class:: sphx-glr-script-out .. code-block:: none 0.5 turns: a 100 N pull holds 0.26 kN 1 turns: a 100 N pull holds 0.66 kN 2 turns: a 100 N pull holds 4.34 kN 3 turns: a 100 N pull holds 28.57 kN .. GENERATED FROM PYTHON SOURCE LINES 43-50 Power a belt drive can carry ---------------------------- A 200 mm pulley at 1450 rpm with 170 degrees of wrap and a tight side limited to 1.2 kN transmits :math:`P = (T_1 - T_2) v` before slipping. A V-belt in a 38-degree groove wedges in and grips :math:`1/\sin 19^\circ` times harder. .. GENERATED FROM PYTHON SOURCE LINES 50-66 .. code-block:: Python v = belt_speed(0.2, 1450) T1, wrap = 1200.0, np.radians(170) for name, ratio in (("flat belt", belt_tension_ratio(mu, wrap)), ("V-belt", belt_tension_ratio(mu, wrap, groove_angle=np.radians(38)))): print(f"{name:9s}: T1/T2 = {ratio:6.2f}, power {(T1 - T1 / ratio) * v / 1e3:.2f} kW at {v:.2f} m/s") assert np.isclose(np.log(belt_tension_ratio(mu, wrap, groove_angle=np.radians(38))), mu * wrap / np.sin(np.radians(19))) angle = np.linspace(0, 4 * np.pi, 400) fig, ax = plt.subplots(figsize=(6, 3.5)) for coefficient in (0.1, 0.2, 0.3): ax.semilogy(angle / (2 * np.pi), belt_tension_ratio(coefficient, angle), label=f"mu = {coefficient}") ax.set(xlabel="turns of wrap", ylabel="T1 / T2", title="Capstan amplification") ax.legend() fig.tight_layout() plt.show() .. image-sg:: /api/gallery/mechanical_engineering/transmission/images/sphx_glr_plot_02_capstan_equation_001.png :alt: Capstan amplification :srcset: /api/gallery/mechanical_engineering/transmission/images/sphx_glr_plot_02_capstan_equation_001.png :class: sphx-glr-single-img .. rst-class:: sphx-glr-script-out .. code-block:: none flat belt: T1/T2 = 2.44, power 10.74 kW at 15.18 m/s V-belt : T1/T2 = 15.40, power 17.04 kW at 15.18 m/s .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 0.039 seconds) .. _sphx_glr_download_api_gallery_mechanical_engineering_transmission_plot_02_capstan_equation.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: lite-badge .. image:: images/jupyterlite_badge_logo.svg :target: ../../../../lite/lab/index.html?path=api/gallery/mechanical_engineering/transmission/plot_02_capstan_equation.ipynb :alt: Launch JupyterLite :width: 150 px .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: plot_02_capstan_equation.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: plot_02_capstan_equation.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: plot_02_capstan_equation.zip ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_