{"id":17030,"date":"2026-05-22T01:39:17","date_gmt":"2026-05-22T01:39:17","guid":{"rendered":"https:\/\/www.dgcrane.com\/?p=17030"},"modified":"2026-05-22T01:59:01","modified_gmt":"2026-05-22T01:59:01","slug":"crane-dynamic-loading-calculator","status":"publish","type":"post","link":"https:\/\/www.dgcrane.com\/cs\/crane-dynamic-loading-calculator\/","title":{"rendered":"Kalkula\u010dka dynamick\u00e9ho zat\u00ed\u017een\u00ed je\u0159\u00e1bu"},"content":{"rendered":"<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0, user-scalable=yes\">\n    <title>Kalkula\u010dka dynamick\u00e9ho zat\u00ed\u017een\u00ed je\u0159\u00e1bu | P_d = \u03c6\u00b7(Q+Q_h+G_t)<\/title>\n    <style>\n        \/* all styles are strictly scoped inside #calculator *\/\n        #calculator {\n            --primary-color: #0a3487;\n            --primary-hover: #F58423;\n            --error-color: #e53935;\n            --bg-color: #EAEEF7;\n            --text-color: #4a4a4a;\n            \n            display: block;\n            width: 100%;\n            background: var(--bg-color);\n            font-family: 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif;\n            color: var(--text-color);\n        }\n        \n        \/* container for PC max-width & padding *\/\n        #calculator .calculator-container {\n            max-width: 545px;\n            padding: 30px;\n            margin: 0 auto;\n            background: var(--bg-color);\n            box-sizing: border-box;\n        }\n        \n        \/* typography *\/\n        #calculator .calculator-title {\n            font-size: 24px;\n            font-weight: 600;\n            margin: 0 0 4px 0;\n            color: var(--primary-color);\n            letter-spacing: -0.2px;\n        }\n        \n        #calculator .calculator-subtitle {\n            font-size: 14px;\n            margin: 0 0 24px 0;\n            font-family: monospace;\n            background: rgba(10,52,135,0.08);\n            display: inline-block;\n            padding: 4px 12px;\n            border-radius: 0;\n            color: var(--primary-color);\n        }\n        \n        \/* input groups *\/\n        #calculator .input-group {\n            margin-bottom: 20px;\n            width: 100%;\n            position: relative;\n        }\n        \n        #calculator label {\n            display: block;\n            font-size: 14px;\n            font-weight: 500;\n            margin-bottom: 6px;\n            color: var(--text-color);\n        }\n        \n        #calculator .var-symbol {\n            font-family: monospace;\n            font-weight: 700;\n            background: rgba(0,0,0,0.04);\n            padding: 0px 4px;\n            border-radius: 0;\n            margin-left: 4px;\n        }\n        \n        \/* wrapper for input + inline unit (unit placed inside input field on the right) *\/\n        #calculator .input-unit-wrapper {\n            position: relative;\n            width: 100%;\n        }\n        \n        #calculator .input-unit-wrapper .calculator-input {\n            width: 100%;\n            padding-right: 104px;\n        }\n        \n        #calculator .inline-unit {\n            position: absolute;\n            right: 1px;\n            top: 1px;\n            bottom: 1px;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            font-size: 14px;\n            font-weight: 500;\n            color: #aaaaaa;\n            background: transparent;\n            padding: 0 8px;\n            height: auto;\n            line-height: 1;\n            white-space: nowrap;\n            font-family: monospace;\n            pointer-events: none;\n            box-sizing: border-box;\n        }\n        \n        \/* select styling \u2014 no unit after select *\/\n        #calculator .calculator-input,\n        #calculator .calculator-select {\n            width: 100%;\n            height: 36px;\n            padding: 0 12px;\n            font-size: 16px;\n            border: 1px solid #ccc;\n            border-radius: 0;\n            background: white;\n            font-family: 'Segoe UI', 'SF Mono', monospace;\n            color: #333;\n            transition: all 0.2s ease;\n            box-sizing: border-box;\n        }\n        \n        #calculator .calculator-select {\n            cursor: pointer;\n            appearance: none;\n            background-image: url('data:image\/svg+xml;utf8,<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"%234a4a4a\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 9 12 15 18 9\"><\/polyline><\/svg>');\n            background-repeat: no-repeat;\n            background-position: right 12px center;\n            background-size: 14px;\n        }\n        \n        \/* ensure dropdown options have consistent font and spacing *\/\n        #calculator .calculator-select option {\n            font-size: 14px;\n            padding: 8px;\n            font-family: 'Segoe UI', 'SF Mono', monospace;\n            line-height: 1.4;\n            color: #333;\n        }\n        \n        #calculator .calculator-input:focus,\n        #calculator .calculator-select:focus {\n            outline: none;\n            border: 2px solid var(--primary-color);\n            padding: 0 11px;\n            height: 36px;\n        }\n        \n        #calculator .input-unit-wrapper .calculator-input:focus {\n            padding-right: 103px;\n        }\n        \n        \/* error state: border 2px solid error-color *\/\n        #calculator .calculator-input.error-input,\n        #calculator .calculator-select.error-input {\n            border: 2px solid var(--error-color);\n            padding: 0 11px;\n            height: 36px;\n        }\n        \n        #calculator .input-unit-wrapper .calculator-input.error-input {\n            padding-right: 103px;\n        }\n        \n        \/* error message styling *\/\n        #calculator .error-msg {\n            font-size: 12px;\n            color: var(--error-color);\n            margin-top: 5px;\n            display: none;\n            line-height: 1.2;\n        }\n        \n        #calculator .error-msg.visible {\n            display: block;\n        }\n        \n        \/* result area *\/\n        #calculator .result-area {\n            background: white;\n            margin: 20px 0 24px 0;\n            padding: 18px 16px;\n            text-align: center;\n            border-left: 4px solid var(--primary-color);\n            box-shadow: 0 1px 3px rgba(0,0,0,0.05);\n        }\n        \n        #calculator .result-label {\n            font-size: 14px;\n            font-weight: 500;\n            text-transform: uppercase;\n            letter-spacing: 1px;\n            color: var(--text-color);\n            margin-bottom: 8px;\n        }\n        \n        #calculator .result-value {\n            font-size: 40px;\n            font-weight: 800;\n            font-family: 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;\n            color: var(--primary-color);\n            line-height: 1.1;\n            word-break: break-word;\n        }\n        \n        #calculator .calculation-detail {\n            font-size: 12px;\n            font-family: monospace;\n            color: #6b7280;\n            margin-top: 8px;\n            border-top: 1px solid #ececec;\n            padding-top: 6px;\n        }\n        \n        \/* button group: horizontal flex on PC *\/\n        #calculator .button-group {\n            display: flex;\n            flex-direction: row;\n            gap: 16px;\n            margin-top: 8px;\n        }\n        \n        #calculator button {\n            flex: 1;\n            height: 36px;\n            font-size: 14px;\n            font-weight: 600;\n            border: none;\n            border-radius: 0;\n            cursor: pointer;\n            transition: all 0.2s ease;\n            font-family: inherit;\n        }\n        \n        #calculator .btn-primary {\n            background: var(--primary-color);\n            color: white;\n        }\n        \n        #calculator .btn-primary:hover {\n            background: var(--primary-hover);\n        }\n        \n        #calculator .btn-secondary {\n            background: #6c757d;\n            color: white;\n        }\n        \n        #calculator .btn-secondary:hover {\n            background: #5a6268;\n        }\n        \n        \/* mobile responsiveness (rem based, following spec) *\/\n        @media (max-width: 768px) {\n            #calculator .calculator-container {\n                padding: 20px;\n                max-width: 100%;\n            }\n            #calculator .calculator-input,\n            #calculator .calculator-select,\n            #calculator button,\n            #calculator .inline-unit {\n                height: 0.7rem;\n                font-size: 0.28rem;\n                line-height: 0.7rem;\n            }\n            #calculator .calculator-input,\n            #calculator .calculator-select {\n                height: 0.7rem;\n                padding: 0 0.2rem;\n                font-size: 0.28rem;\n            }\n            #calculator .input-unit-wrapper .calculator-input {\n                padding-right: 1.8rem;\n            }\n            #calculator .calculator-input:focus,\n            #calculator .calculator-select:focus {\n                padding: 0 0.18rem;\n                height: 0.7rem;\n            }\n            #calculator .input-unit-wrapper .calculator-input:focus {\n                padding-right: 1.78rem;\n            }\n            #calculator .calculator-input.error-input,\n            #calculator .calculator-select.error-input {\n                padding: 0 0.18rem;\n                height: 0.7rem;\n            }\n            #calculator .input-unit-wrapper .calculator-input.error-input {\n                padding-right: 1.78rem;\n            }\n            #calculator label {\n                font-size: 0.28rem;\n            }\n            #calculator .result-value {\n                font-size: 0.7rem;\n            }\n            #calculator .result-label,\n            #calculator .calculation-detail {\n                font-size: 0.24rem;\n            }\n            #calculator .btn-primary,\n            #calculator .btn-secondary {\n                font-size: 0.28rem;\n                height: 0.7rem;\n            }\n            #calculator .button-group {\n                flex-direction: column;\n                gap: 12px;\n            }\n            #calculator button {\n                width: 100%;\n            }\n            #calculator .calculator-title {\n                font-size: 0.5rem;\n            }\n            #calculator .calculator-subtitle {\n                font-size: 0.24rem;\n            }\n            #calculator .inline-unit {\n                font-size: 0.28rem;\n                padding: 0 0.2rem;\n            }\n            \/* option text slightly smaller on mobile but consistent *\/\n            #calculator .calculator-select option {\n                font-size: 0.28rem;\n            }\n        }\n        \n        \/* error priority: error border overrides focus *\/\n        #calculator .calculator-input.error-input:focus,\n        #calculator .calculator-select.error-input:focus {\n            border: 2px solid var(--error-color);\n        }\n        \n        \/* remove any default spinner on number input *\/\n        #calculator .calculator-input[type=\"number\"] {\n            -moz-appearance: textfield;\n        }\n        #calculator .calculator-input[type=\"number\"]::-webkit-inner-spin-button,\n        #calculator .calculator-input[type=\"number\"]::-webkit-outer-spin-button {\n            -webkit-appearance: none;\n            margin: 0;\n        }\n    <\/style>\n<\/head>\n<body>\n<div id=\"calculator\">\n    <div class=\"calculator-container\">\n        \n        \n        <!-- \u03c6 factor selection: Using ASCII symbols [+], [-], [!] for perfect size consistency -->\n        <div class=\"input-group\">\n            <label for=\"calculator-phi\">Dynamick\u00fd faktor <span class=\"var-symbol\">\u03c6<\/span><\/label>\n            <select id=\"calculator-phi\" class=\"calculator-select\">\n                <option value=\"1.1\">\ud83d\udd38 N\u00edzk\u00e1 rychlost \/ lehk\u00fd provoz \/ p\u0159esn\u00e9 \u0159\u00edzen\u00ed \u2192 \u03c6 = 1,10<\/option>\n                <option value=\"1.2\">\ud83d\udd38 Konven\u010dn\u00ed pr\u016fmyslov\u00e9 (lehk\u00e9) \u2192 \u03c6 = 1,20<\/option>\n                <option value=\"1.25\" selected>\ud83d\udd38 Konven\u010dn\u00ed pr\u016fmyslov\u00fd (st\u0159edn\u00ed) \u2192 \u03c6 = 1,25<\/option>\n                <option value=\"1.3\">\ud83d\udd38 Konven\u010dn\u00ed pr\u016fmysl (t\u011b\u017ek\u00fd) \u2192 \u03c6 = 1,30<\/option>\n                <option value=\"1.4\">\ud83d\udd38 T\u011b\u017ek\u00fd provoz \/ n\u00e1ro\u010dn\u00e9 podm\u00ednky \u2192 \u03c6 = 1,40<\/option>\n                <option value=\"1.5\">\ud83d\udd38Vysok\u00fd r\u00e1z \/ fr\u00e9zovac\u00ed v\u00fdkon \u2192 \u03c6 = 1,50<\/option>\n                <option value=\"1.6\">\ud83d\udd38Extr\u00e9mn\u00ed n\u00e1razy \/ t\u011b\u017ek\u00e9 zat\u00ed\u017een\u00ed \u2192 \u03c6 = 1,60<\/option>\n            <\/select>\n            <div class=\"error-msg\" id=\"error-phi\"><\/div>\n        <\/div>\n\n        <!-- Q : Rated load | unit placed AFTER input box (inline) -->\n        <div class=\"input-group\">\n            <label for=\"calculator-ratedLoad\">Jmenovit\u00e9 zat\u00ed\u017een\u00ed <span class=\"var-symbol\">Ot\u00e1zka<\/span><\/label>\n            <div class=\"input-unit-wrapper\">\n                <input type=\"number\" id=\"calculator-ratedLoad\" class=\"calculator-input\" placeholder=\"nap\u0159. 20,0\" step=\"any\" value=\"20.0\">\n                <span class=\"inline-unit\">tuny (t)<\/span>\n            <\/div>\n            <div class=\"error-msg\" id=\"error-ratedLoad\"><\/div>\n        <\/div>\n\n        <!-- Q_h : Hook + lifting attachment weight | unit after input -->\n        <div class=\"input-group\">\n            <label for=\"calculator-hookWeight\">H\u00e1\u010dek a upev\u0148ovac\u00ed hmota <span class=\"var-symbol\">Ot\u00e1zka<sub>h<\/sub><\/span><\/label>\n            <div class=\"input-unit-wrapper\">\n                <input type=\"number\" id=\"calculator-hookWeight\" class=\"calculator-input\" placeholder=\"nap\u0159. 0,6\" step=\"any\" value=\"0.6\">\n                <span class=\"inline-unit\">tuny (t)<\/span>\n            <\/div>\n            <div class=\"error-msg\" id=\"error-hookWeight\"><\/div>\n        <\/div>\n\n        <!-- G_t : Trolley self-weight | unit after input -->\n        <div class=\"input-group\">\n            <label for=\"calculator-trolleyWeight\">Vlastn\u00ed hmotnost voz\u00edku <span class=\"var-symbol\">G<sub>t<\/sub><\/span><\/label>\n            <div class=\"input-unit-wrapper\">\n                <input type=\"number\" id=\"calculator-trolleyWeight\" class=\"calculator-input\" placeholder=\"nap\u0159. 5,4\" step=\"any\" value=\"5.4\">\n                <span class=\"inline-unit\">tuny (t)<\/span>\n            <\/div>\n            <div class=\"error-msg\" id=\"error-trolleyWeight\"><\/div>\n        <\/div>\n\n        <!-- Result display area -->\n        <div class=\"result-area\">\n            <div class=\"result-label\">V\u00fdsledek dynamick\u00e9ho zat\u00ed\u017een\u00ed <span>P<sub>d<\/sub><\/span><\/div>\n            <div class=\"result-value\" id=\"calculator-result\">\u2014 kN<\/div>\n            <div class=\"calculation-detail\" id=\"calc-detail\"><\/div>\n        <\/div>\n\n        <!-- Action Buttons -->\n        <div class=\"button-group\">\n            <button id=\"calculator-calcBtn\" class=\"btn-primary\">Vypo\u010d\u00edtat<\/button>\n            <button id=\"calculator-resetBtn\" class=\"btn-secondary\">Obnovit<\/button>\n        <\/div>\n    <\/div>\n<\/div>\n\n<script>\n    (function() {\n        \/\/ DOM references\n        const phiSelect = document.getElementById('calculator-phi');\n        const ratedLoadInput = document.getElementById('calculator-ratedLoad');\n        const hookWeightInput = document.getElementById('calculator-hookWeight');\n        const trolleyWeightInput = document.getElementById('calculator-trolleyWeight');\n        const calcBtn = document.getElementById('calculator-calcBtn');\n        const resetBtn = document.getElementById('calculator-resetBtn');\n        const resultSpan = document.getElementById('calculator-result');\n        const calcDetailSpan = document.getElementById('calc-detail');\n        \n        \/\/ error message containers\n        const errorPhi = document.getElementById('error-phi');\n        const errorRated = document.getElementById('error-ratedLoad');\n        const errorHook = document.getElementById('error-hookWeight');\n        const errorTrolley = document.getElementById('error-trolleyWeight');\n        \n        \/\/ input fields for validation\n        const inputFields = [\n            { element: ratedLoadInput, errorDiv: errorRated, name: 'Rated load' },\n            { element: hookWeightInput, errorDiv: errorHook, name: 'Hook & attachment mass' },\n            { element: trolleyWeightInput, errorDiv: errorTrolley, name: 'Trolley self-weight' }\n        ];\n        const selectField = { element: phiSelect, errorDiv: errorPhi, name: 'Dynamic factor' };\n        \n        \/\/ conversion factor: tonnes -> kN\n        const TON_TO_KN = 9.80665;\n        \n        \/\/ Helper: clear error for a single input (remove class, hide message)\n        function clearErrorForInput(inputEl, errorDiv) {\n            if (inputEl) inputEl.classList.remove('error-input');\n            if (errorDiv) errorDiv.classList.remove('visible');\n        }\n        \n        \/\/ set error for single input\n        function setErrorForInput(inputEl, errorDiv, message) {\n            if (inputEl) inputEl.classList.add('error-input');\n            if (errorDiv) {\n                errorDiv.textContent = message || 'Invalid value';\n                errorDiv.classList.add('visible');\n            }\n        }\n        \n        \/\/ clear all errors\n        function clearAllErrors() {\n            inputFields.forEach(field => {\n                clearErrorForInput(field.element, field.errorDiv);\n            });\n            clearErrorForInput(selectField.element, selectField.errorDiv);\n        }\n        \n        \/\/ validate single numeric input (non-empty, valid number >=0)\n        function validateSingleInput(value, fieldName) {\n            if (value === undefined || value === null || value === '') {\n                return { valid: false, message: `${fieldName} cannot be empty.` };\n            }\n            const num = parseFloat(value);\n            if (isNaN(num)) {\n                return { valid: false, message: `${fieldName} must be a valid number.` };\n            }\n            if (num < 0) {\n                return { valid: false, message: `${fieldName} cannot be negative.` };\n            }\n            return { valid: true, value: num };\n        }\n        \n        \/\/ validate phi select\n        function validatePhi() {\n            const phiVal = phiSelect.value;\n            const num = parseFloat(phiVal);\n            if (isNaN(num)) {\n                return { valid: false, message: 'Dynamic factor must be a valid number.' };\n            }\n            if (num <= 0) {\n                return { valid: false, message: '\u03c6 must be greater than 0.' };\n            }\n            return { valid: true, value: num };\n        }\n        \n        \/\/ main validation routine\n        function validateAllInputs() {\n            let isValid = true;\n            \n            \/\/ Validate rated load\n            const ratedRaw = ratedLoadInput.value;\n            const ratedCheck = validateSingleInput(ratedRaw, 'Rated load');\n            if (!ratedCheck.valid) {\n                setErrorForInput(ratedLoadInput, errorRated, ratedCheck.message);\n                isValid = false;\n            } else {\n                clearErrorForInput(ratedLoadInput, errorRated);\n            }\n            \n            \/\/ Validate hook weight\n            const hookRaw = hookWeightInput.value;\n            const hookCheck = validateSingleInput(hookRaw, 'Hook &#038; attachment mass');\n            if (!hookCheck.valid) {\n                setErrorForInput(hookWeightInput, errorHook, hookCheck.message);\n                isValid = false;\n            } else {\n                clearErrorForInput(hookWeightInput, errorHook);\n            }\n            \n            \/\/ Validate trolley weight\n            const trolleyRaw = trolleyWeightInput.value;\n            const trolleyCheck = validateSingleInput(trolleyRaw, 'Trolley self-weight');\n            if (!trolleyCheck.valid) {\n                setErrorForInput(trolleyWeightInput, errorTrolley, trolleyCheck.message);\n                isValid = false;\n            } else {\n                clearErrorForInput(trolleyWeightInput, errorTrolley);\n            }\n            \n            \/\/ Validate phi\n            const phiCheck = validatePhi();\n            if (!phiCheck.valid) {\n                setErrorForInput(phiSelect, errorPhi, phiCheck.message);\n                isValid = false;\n            } else {\n                clearErrorForInput(phiSelect, errorPhi);\n            }\n            \n            if (isValid) {\n                return {\n                    valid: true,\n                    Q: parseFloat(ratedLoadInput.value),\n                    Qh: parseFloat(hookWeightInput.value),\n                    Gt: parseFloat(trolleyWeightInput.value),\n                    phi: parseFloat(phiSelect.value)\n                };\n            } else {\n                return { valid: false };\n            }\n        }\n        \n        \/\/ compute and update result (2 decimals)\n        function computeAndDisplay() {\n            const validation = validateAllInputs();\n            if (!validation.valid) {\n                resultSpan.textContent = '-- kN';\n                calcDetailSpan.textContent = '';\n                return;\n            }\n            \n            const { Q, Qh, Gt, phi } = validation;\n            const sumTon = Q + Qh + Gt;\n            const dynamicTonForce = phi * sumTon;\n            const dynamicKN = dynamicTonForce * TON_TO_KN;\n            const roundedKN = Math.round(dynamicKN * 100) \/ 100;\n            resultSpan.textContent = roundedKN.toFixed(2) + ' kN';\n            \n            \/\/ detail expression: consistent formatting\n            const sumFixed = sumTon.toFixed(3);\n            const phiFixed = phi.toFixed(3);\n            calcDetailSpan.innerHTML = `${phiFixed} \u00d7 (${Q.toFixed(2)} + ${Qh.toFixed(2)} + ${Gt.toFixed(2)}) t = ${phiFixed} \u00d7 ${sumFixed} t = ${dynamicTonForce.toFixed(3)} t \u2192 ${roundedKN.toFixed(2)} kN`;\n        }\n        \n        \/\/ reset all inputs to default values, clear errors &#038; reset result\n        function resetCalculator() {\n            ratedLoadInput.value = '20.0';\n            hookWeightInput.value = '0.6';\n            trolleyWeightInput.value = '5.4';\n            phiSelect.value = '1.25';   \/\/ medium duty default\n            \n            clearAllErrors();\n            \n            \/\/ reset result display\n            resultSpan.textContent = '-- kN';\n            calcDetailSpan.textContent = '';\n            \n            \/\/ additionally, remove error classes from all inputs (already cleared, but ensure)\n            inputFields.forEach(field => {\n                field.element.classList.remove('error-input');\n            });\n            if (phiSelect) phiSelect.classList.remove('error-input');\n        }\n        \n        \/\/ setup dynamic error clearing on input\/change\n        function setupDynamicErrorClearing() {\n            ratedLoadInput.addEventListener('input', function() {\n                clearErrorForInput(ratedLoadInput, errorRated);\n            });\n            hookWeightInput.addEventListener('input', function() {\n                clearErrorForInput(hookWeightInput, errorHook);\n            });\n            trolleyWeightInput.addEventListener('input', function() {\n                clearErrorForInput(trolleyWeightInput, errorTrolley);\n            });\n            phiSelect.addEventListener('change', function() {\n                clearErrorForInput(phiSelect, errorPhi);\n            });\n        }\n        \n        \/\/ calculate action\n        function onCalculate() {\n            computeAndDisplay();\n        }\n        \n        \/\/ reset action\n        function onReset() {\n            resetCalculator();\n        }\n        \n        \/\/ initialization\n        function init() {\n            setupDynamicErrorClearing();\n            calcBtn.addEventListener('click', onCalculate);\n            resetBtn.addEventListener('click', onReset);\n            \/\/ initial compute with default values (shows result on page load)\n            computeAndDisplay();\n        }\n        \n        if (document.readyState === 'loading') {\n            document.addEventListener('DOMContentLoaded', init);\n        } else {\n            init();\n        }\n    })();\n<\/script>\n<\/body>\n<\/html>\n\n\n\n<h2 class=\"wp-block-heading\">Vzorec pro kalkula\u010dku dynamick\u00e9ho zat\u00ed\u017een\u00ed je\u0159\u00e1bu<\/h2>\n\n\n\n<p>P<sub>d<\/sub>=\u03c6(Q+Q<sub>h<\/sub>+G<sub>t<\/sub>)<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>P<sub>d<\/sub>Dynamick\u00e9 zat\u00ed\u017een\u00ed<\/li>\n\n\n\n<li>\u03c6: Impaktn\u00ed faktor<\/li>\n\n\n\n<li>Ot\u00e1zka: Jmenovit\u00e9 zat\u00ed\u017een\u00ed<\/li>\n\n\n\n<li>Ot\u00e1zka<sub>h<\/sub>Hmotnost h\u00e1ku a zvedac\u00edho za\u0159\u00edzen\u00ed<\/li>\n\n\n\n<li>G<sub>t<\/sub>Vlastn\u00ed hmotnost voz\u00edku<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Pozn\u00e1mky<\/h2>\n\n\n\n<p>V re\u00e1ln\u00e9m provozu je\u0159\u00e1bu jsou s\u00edly, kter\u00e9 na n\u011bj p\u016fsob\u00ed, v\u017edy v\u011bt\u0161\u00ed ne\u017e statick\u00e9 zat\u00ed\u017een\u00ed. Zesiluje se dopad zved\u00e1n\u00ed a rozjezdu, setrva\u010dnost p\u0159i brzd\u011bn\u00ed, vibrace z akcelerace motoru a dynamick\u00e9 s\u00edly z k\u00fdv\u00e1n\u00ed b\u0159emene. Proto je nutn\u00e9 tyto faktory p\u0159i v\u00fdpo\u010dtech vyn\u00e1sobit sou\u010dinitelem dynamick\u00e9ho zat\u00ed\u017een\u00ed.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Pro n\u00edzk\u00e9 ot\u00e1\u010dky, podm\u00ednky s n\u00edzk\u00fdm zat\u00ed\u017een\u00edm nebo p\u0159esn\u00e9 \u0159\u00edzen\u00ed, \u03c6=1,1<\/li>\n\n\n\n<li>Pro konven\u010dn\u00ed pr\u016fmyslov\u00e9 je\u0159\u00e1by \u03c6=1,2-1,3<\/li>\n\n\n\n<li>Pro t\u011b\u017ek\u00e9 nebo drsn\u00e9 pracovn\u00ed podm\u00ednky nebo provozn\u00ed stavy s v\u00fdznamn\u00fdm dopadem \u03c6=1,4-1,6<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Pou\u017eiteln\u00e9 je\u0159\u00e1by<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Mostov\u00e9 je\u0159\u00e1by<\/li>\n\n\n\n<li>Je\u0159\u00e1bi kom\u00e1rovit\u00ed<\/li>\n\n\n\n<li>Elektrick\u00e9 voz\u00edky\/kladkostroje<\/li>\n\n\n\n<li>P\u0159\u00edstavn\u00ed je\u0159\u00e1by<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Nevhodn\u00e1 situace<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Vysokorychlostn\u00ed rota\u010dn\u00ed stroje (turb\u00edny, motory)<\/li>\n\n\n\n<li>Syst\u00e9m v\u0159eten pro p\u0159esn\u00e9 obr\u00e1b\u011bc\u00ed stroje<\/li>\n\n\n\n<li>Inteligentn\u00ed zvedac\u00ed syst\u00e9m (automatick\u00e1 regulace k\u00fdv\u00e1n\u00ed)<\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"Hlavn\u00ed hodnotou kalkula\u010dky dynamick\u00e9ho zat\u00ed\u017een\u00ed je\u0159\u00e1bu je zohledn\u011bn\u00ed dodate\u010dn\u00e9ho zat\u00ed\u017een\u00ed vznikaj\u00edc\u00edho ve skute\u010dn\u00e9m provozu nam\u00edsto pouh\u00e9 statick\u00e9 zvedac\u00ed hmotnosti, aby bylo mo\u017en\u00e9 p\u0159esn\u011b vyhodnotit dopady dynamick\u00e9ho chov\u00e1n\u00ed, jako je rozjezd zved\u00e1n\u00ed, brzd\u011bn\u00ed, r\u00e1zy p\u0159i chodu, vibrace a k\u00fdv\u00e1n\u00ed b\u0159emene, na konstrukce a mechanismy je\u0159\u00e1bu. \u00da\u010dinn\u011b podporuje kontrolu pevnosti a pr\u016fhybu hlavn\u00edch nosn\u00edk\u016f, anal\u00fdzu tlaku na koncov\u00e9 nosn\u00edky a nap\u011bt\u00ed v kolejnic\u00edch, jako\u017e i v\u00fdb\u011br typu a ov\u011b\u0159en\u00ed bezpe\u010dnosti motor\u016f, brzd a dal\u0161\u00edch kritick\u00fdch komponent a slou\u017e\u00ed jako z\u00e1sadn\u00ed z\u00e1klad pro konstruk\u010dn\u00ed n\u00e1vrh, posouzen\u00ed \u017eivotnosti a bezpe\u010dnostn\u00ed certifikaci mostov\u00fdch a port\u00e1lov\u00fdch je\u0159\u00e1b\u016f dle norem ISO, FEM, EN a GB.","protected":false},"author":8,"featured_media":17038,"parent":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"single-onlinetools.php","format":"standard","meta":{"_acf_changed":false,"rank_math_lock_modified_date":false,"pgc_sgb_lightbox_settings":"","footnotes":""},"categories":[63],"tags":[],"class_list":["post-17030","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-other"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.dgcrane.com\/cs\/wp-json\/wp\/v2\/posts\/17030"}],"collection":[{"href":"https:\/\/www.dgcrane.com\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dgcrane.com\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dgcrane.com\/cs\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dgcrane.com\/cs\/wp-json\/wp\/v2\/comments?post=17030"}],"version-history":[{"count":6,"href":"https:\/\/www.dgcrane.com\/cs\/wp-json\/wp\/v2\/posts\/17030\/revisions"}],"predecessor-version":[{"id":17039,"href":"https:\/\/www.dgcrane.com\/cs\/wp-json\/wp\/v2\/posts\/17030\/revisions\/17039"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dgcrane.com\/cs\/wp-json\/wp\/v2\/media\/17038"}],"wp:attachment":[{"href":"https:\/\/www.dgcrane.com\/cs\/wp-json\/wp\/v2\/media?parent=17030"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dgcrane.com\/cs\/wp-json\/wp\/v2\/categories?post=17030"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dgcrane.com\/cs\/wp-json\/wp\/v2\/tags?post=17030"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}