{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "[](https://drivetrainhub.com)\n", "\n", "
© 2019 Drivetrain Hub LLC
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Strength / Gear Tooth Contact Stress\n", "---\n", "\n", "**Authors**: [Tugan Eritenel](https://github.com/tugan1) \n", "\n", "**Description**: Calculation of gear tooth contact stress in spur gears." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Table of Contents\n", "\n", "1. [Introduction](#Introduction)\n", "2. [Contact Stress Theory](#Contact-Stress-Theory)\n", "3. [Gear Contact Stress Calculation](#Gear-Contact-Stress-Calculation)\n", " 1. [Example](#Example-1)\n", "4. [Conclusion](#Conclusion)\n", "5. [References](#References)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Introduction\n", "\n", "This chapter is on contact stress of parallel axis gears. " ] }, { "cell_type": "markdown", "metadata": { "tags": [ "hide_cell" ] }, "source": [ "#### Notebook imports and settings" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "tags": [ "hide_cell" ] }, "outputs": [], "source": [ "import ipywidgets as widgets\n", "from IPython import display\n", "from IPython.core.display import HTML\n", "import pandas as pd\n", "import math" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Contact Stress Theory\n", "\n", "Gear tooth contact along the tooth surface can be considered as a line. The width of the contact is much shorter than the length along the line of contact. The radius of curvatures of the contacting surfaces vary as the gears rotate. Maximum subsurface shear stress is just below the point of contact. The mechanism of stress is quite complicated due to sliding and friction between the surfaces. \n", "\n", "\"Involute\n", "

Stresses on gear tooth.

\n", "Image credit: G. M. Maitra, Handbook of Gear Design \n", "
\n", "\n", "Pitting is a type of gear failure as a result of subsurface contact stress cycles. The contact stress is denoted with the symbol $p$ referring to Hertzian pressure developed. The maximum pressure on two cylinders in contact is given by,\n", "\n", "$$ p_{c(max)} = \\frac{4 F}{\\pi B L}$$ \n", "\n", "where the width of the contact is calculated as,\n", "\n", "$$B = \\sqrt{\\frac{8 F}{\\pi L} \\frac{\\left(1-\\nu_1^2\\right)/E_1 + \\left(1-\\nu_2^2\\right)/E_2}{\\left(1/D_1\\right) + \\left(1/D_2\\right)}}$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Gear Contact Stress Calculation\n", "\n", "When the elastic modulus of the two cylinders are the same $E_1 = E_2$, and poisson ratio are $\\nu_1 = \\nu_2 = 0.3$, the contact pressure for gears becomes,\n", "\n", "$$ p_p = \\sqrt{0.35\\frac{F_t E}{b d_{p,1}} \\frac{i+1}{i} \\frac{1}{\\cos^2\\alpha \\tan\\alpha_w}} $$\n", "\n", "A few parameters are factored so that from the equation above as follows,\n", "\n", "$$ p_p = y_m y_p \\sqrt{\\frac{F_t}{b_1 d_{p,1}} \\frac{i+1}{i}}$$\n", "\n", "where material factor $y_m$ and tooth shape factor, $y_p$, are given by, \n", "\n", "$$y_m = \\sqrt{0.35 E}$$ \n", "\n", "$$y_p = \\sqrt{\\frac{1}{\\cos^2\\alpha \\tan\\alpha_w}} $$ \n", "\n", "For a first design iteration, assuming no profile shift, and $\\alpha = 20^{\\circ}$, $y_p = 1.76$, and $E=206,000$ MPa, so $y_m = 269$.\n", "\n", "Maximum allowable surface fatigue stress $p_{sc}$ needs to be determined from the gear material. For example, induction hardened 40 Cr 4 allowable surface fatigue stress is 1620 MPa. Generally a factor of safety of 1.5 is applied, giving the contact pressure limit as $p_{cp}< \\frac{p_{sc}}{1.5}$.\n", "\n", "Contact pressure is written in terms of applied torque as,\n", "\n", "$$ p_{cp} = y_m y_p\\sqrt{ \\frac{2000 T_1}{\\left(b/d_{p,1}\\right) d_{p,1}^3} \\frac{i+1}{i}}$$\n", "\n", "Minimum module to satisfy contact pressure safety is found according to,\n", "\n", "$$ m_n > \\frac{1}{z_1} \\sqrt[3]{ \\frac{2000 T_1 y_m^2 y_p^2}{\\left(b/d_{p,1}\\right) p_{cp}^2} \\frac{i+1}{i}}$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "

Example | Tooth Contact Stress

\n", "

GIVEN

\n", " - A gear pair has 45 teeth on the pinion and 137 teeth on the wheel.
\n", " - Torque on the pinion is 600 Nm.
\n", "

FIND

\n", " 1) Minimum module so that the pinion is safe for contact fatigue.
\n", " 2) Contact pressure on pinion tooth flank.\n", "

SOLUTION

\n", " For the first iteration of design $y_p = 1.76$ and $y_m=269$. \n", "\n", "The ratio of facewidth to pitch diameter is taken as $b_1 / d_{p,1} = 0.5$ to provide a starting point for the design. The formula below is used for finding the minimum module. Substituting the given values, the minimum module for contact is:\n", "
" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "tags": [ "hide_input" ] }, "outputs": [ { "data": { "text/html": [ "
Minimum module for bending stress, $m$ = 1.89
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
Selected module, $m_{n}$ = 2.0
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "T_1 = 600\n", "z_1 = 45\n", "z_2 = 137\n", "i=z_2/z_1\n", "y_m = 269\n", "y_p = 1.76\n", "facewidth_to_pitch = 0.5\n", "p_cp = 1620/1.5\n", "\n", "\n", "m = 1/z_1*math.pow(2000*T_1 * (y_m**2) * (y_p**2)/((facewidth_to_pitch)*p_cp**2)*(i+1)/i ,1/3)\n", "display.display(HTML('
Minimum module for bending stress, $m$ = ' + str(round(m,2)) + '
'))\n", "\n", "m_nearest = math.ceil(m*2)/2\n", "display.display(HTML('
Selected module, $m_{n}$ = ' + str(round(m_nearest,2)) + '
'))\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", " For the selected module, the contact pressure is calculated as:\n", "
" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "tags": [ "hide_input" ] }, "outputs": [ { "data": { "text/html": [ "
Contact pressure on pinion, $p_{cp}$ = 990.11 MPa
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "m = m_nearest\n", "d_p1 = m * z_1\n", "F_t = 2000 * T_1 / d_p1\n", "p_cp = y_m * y_p * math.sqrt(2000 * T_1 / (facewidth_to_pitch * d_p1 ** 3) * (i + 1) / i)\n", "\n", "display.display(HTML('
Contact pressure on pinion, $p_{cp}$ = ' + str(round(p_cp,2)) + ' MPa
'))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Conclusion\n", "\n", "This notebook documents the procedure to find spur gear contact stress. Inputs are a few parameters from gear macro geometry: number of teeth, pressure angle, and applied torque. Minimum module is found so that the gears are safe considering contact stress. For a chosen module and the gear parameters above, contact stress is calculated." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "---\n", "\n", "
\n", "

Learn More


\n", " Continue reading the Drivetrain Hub | Notebook Series to learn more about the design and analysis of spur gears and other gear types.\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "

Model Gear Contact


\n", " Accurately model the contact of a gear mesh with the Drivetrain Hub | Gears App, a modern drivetrain modeling environment 100% online at drivetrainhub.com.\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "
\n", "

Improve Notebook


\n", " Our gear geometry notebooks are publicly hosted in a GitHub repository, available for anyone to view and propose edits.\n", "
" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# References\n", "\n", "1. G. M. Maitra, (1994), \"Handbook of Gear Design\", Tata McGraw-Hill" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.2" }, "pycharm": { "stem_cell": { "cell_type": "raw", "metadata": { "collapsed": false }, "source": [] } } }, "nbformat": 4, "nbformat_minor": 2 }