{"id":17088,"date":"2026-06-12T02:38:03","date_gmt":"2026-06-12T02:38:03","guid":{"rendered":"https:\/\/www.dgcrane.com\/?p=17088"},"modified":"2026-06-15T05:46:38","modified_gmt":"2026-06-15T05:46:38","slug":"crane-sheave-minimum-diameter-calculator","status":"publish","type":"post","link":"https:\/\/www.dgcrane.com\/da\/crane-sheave-minimum-diameter-calculator\/","title":{"rendered":"Beregner for minimumsdiameter af kranskive"},"content":{"rendered":"<div id=\"calculator\">\n    <style>\n        #calculator {\n            --primary-color: #0a3487;\n            --primary-hover: #F58423;\n            --error-color: #e53935;\n            --bg-color: #EAEEF7;\n            --text-color: #4a4a4a;\n            max-width: 545px;\n            padding: 30px;\n            background-color: var(--bg-color);\n            color: var(--text-color);\n            font-family: Arial, sans-serif;\n            box-sizing: border-box;\n        }\n\n        #calculator .calc-title {\n            font-size: 18px;\n            margin: 0 0 20px 0;\n            text-align: center;\n            font-weight: 600;\n        }\n\n        #calculator .calc-row {\n            margin-bottom: 18px;\n        }\n\n        #calculator label {\n            display: block;\n            font-size: 14px;\n            margin-bottom: 6px;\n        }\n\n        #calculator input,\n        #calculator select {\n            width: 100%;\n            height: 36px;\n            padding: 0 10px;\n            border: 1px solid #ccc;\n            border-radius: 0;\n            font-size: 16px;\n            box-sizing: border-box;\n            transition: border 0.2s ease;\n            background: #fff;\n        }\n\n        #calculator input:focus,\n        #calculator select:focus {\n            outline: none;\n            border: 2px solid var(--primary-color);\n        }\n\n        #calculator .input-error {\n            border: 2px solid var(--error-color) !important;\n        }\n\n        #calculator .error-msg {\n            display: none;\n            font-size: 12px;\n            color: var(--error-color);\n            margin-top: 4px;\n        }\n\n        #calculator .error-msg.show {\n            display: block;\n        }\n\n        #calculator .btn-group {\n            display: flex;\n            gap: 10px;\n            margin: 20px 0;\n        }\n\n        #calculator button {\n            flex: 1;\n            height: 34px;\n            line-height: 34px;\n            border: none;\n            border-radius: 0;\n            font-size: 14px;\n            cursor: pointer;\n            transition: background-color 0.2s ease;\n            background-color: var(--primary-color);\n            color: #fff;\n        }\n\n        #calculator button:hover {\n            background-color: var(--primary-hover);\n        }\n\n        #calculator .result-wrap {\n            margin-top: 20px;\n            padding: 12px;\n            border: 1px solid #ccc;\n            background: #fff;\n        }\n\n        #calculator .result-text {\n            font-size: 16px;\n            line-height: 26px;\n            min-height: 40px;\n        }\n\n        #calculator .result-group {\n            margin: 8px 0;\n            padding: 6px 0;\n            border-bottom: 1px dashed #eee;\n        }\n\n        #calculator .result-group:last-child {\n            border-bottom: none;\n        }\n\n        @media (max-width: 768px) {\n            #calculator input,\n            #calculator select {\n                height: 0.7rem;\n                font-size: 0.28rem;\n            }\n            #calculator label,\n            #calculator button,\n            #calculator .result-text {\n                font-size: 0.28rem;\n            }\n            #calculator .btn-group {\n                flex-direction: column;\n            }\n            #calculator button {\n                width: 100%;\n                height: 0.7rem;\n                line-height: 0.7rem;\n            }\n        }\n    <\/style>\n\n    <h3 class=\"calc-title\">Beregner for minimumsdiameter af kranskive<\/h3>\n\n    <!-- Crane Type -->\n    <div class=\"calc-row\">\n        <label for=\"calculator-craneType\">Krantype<\/label>\n        <select id=\"calculator-craneType\">\n            <option value=\"normal\">Traverskraner<\/option>\n            <option value=\"normal\">Portal- eller semiportalkraner<\/option>\n            <option value=\"normal\">Portal- eller semiportalbrokraner<\/option>\n            <option value=\"normal\">Cantileverkraner (s\u00f8jle-, jib-, v\u00e6g- eller g\u00e5ende)<\/option>\n            <option value=\"mobile\">Mobilkran<\/option>\n        <\/select>\n    <\/div>\n\n    <!-- Normal Crane Area -->\n    <div id=\"calculator-normalWrap\">\n        <div class=\"calc-row\">\n            <label for=\"calculator-normalDuty\">Driftsklasse (ISO 4301-1)<\/label>\n            <select id=\"calculator-normalDuty\">\n                <option value=\"M1\">M1<\/option>\n                <option value=\"M2\">M2<\/option>\n                <option value=\"M3\">M3<\/option>\n                <option value=\"M4\">M4<\/option>\n                <option value=\"M5\">M5<\/option>\n                <option value=\"M6\">M6<\/option>\n                <option value=\"M7\">M7<\/option>\n                <option value=\"M8\">M8<\/option>\n            <\/select>\n        <\/div>\n        <div class=\"calc-row\">\n            <label for=\"calculator-normalType\">Skivekategori<\/label>\n            <select id=\"calculator-normalType\">\n                <option value=\"main\">Hovedarbejdsskive (h\u2082)<\/option>\n                <option value=\"balance\">Balanceskive (h\u2083)<\/option>\n            <\/select>\n        <\/div>\n    <\/div>\n\n    <!-- Mobile Crane Area -->\n    <div id=\"calculator-mobileWrap\" style=\"display: none;\">\n        <div class=\"calc-row\">\n            <label for=\"calculator-mobileCat\">Skivekategori<\/label>\n            <select id=\"calculator-mobileCat\">\n                <option value=\"h2\">Hovedarbejdsskive (h\u2082)<\/option>\n                <option value=\"h3\">Balanceskive (h\u2083)<\/option>\n            <\/select>\n        <\/div>\n        <div class=\"calc-row\">\n            <label for=\"calculator-mobileSelect\">Mekanismetype<\/label>\n            <select id=\"calculator-mobileSelect\">\n                <option value=\"lift\">L\u00f8ftemekanisme<\/option>\n                <option value=\"jib\">Jib-\/Luffingmekanisme<\/option>\n                <option value=\"telescope\">Teleskopmekanisme<\/option>\n            <\/select>\n        <\/div>\n        <div class=\"calc-row\">\n            <label for=\"calculator-ropeType\">Rebtype<\/label>\n            <select id=\"calculator-ropeType\">\n                <option value=\"std\">Standardreb<\/option>\n                <option value=\"anti\">Rotationsbestandigt reb<\/option>\n            <\/select>\n        <\/div>\n    <\/div>\n\n    <!-- Rope Strand Coefficient t -->\n    <div class=\"calc-row\">\n        <label for=\"calculator-ropeT\">Rebtr\u00e5dkoefficient (t)<\/label>\n        <select id=\"calculator-ropeT\">\n            <option value=\"1.25\">3 strenge (t=1,25)<\/option>\n            <option value=\"1.15\">4~5 strenge (t=1,15)<\/option>\n            <option value=\"1.00\">6~10 strenge (t=1,00)<\/option>\n            <option value=\"0.95\">8~10 tr\u00e5de plastfyldt (t=0,95)<\/option>\n            <option value=\"1.00\">10+ tr\u00e5de rotationsresistent (t=1,00)<\/option>\n        <\/select>\n    <\/div>\n\n    <!-- Wire Rope Diameter d -->\n    <div class=\"calc-row\">\n        <label for=\"calculator-ropeD\">St\u00e5lwirediameter d (mm)<\/label>\n        <input type=\"number\" id=\"calculator-ropeD\" placeholder=\"Indtast diameter\">\n        <div class=\"error-msg\" id=\"calculator-dErr\">Indtast venligst en gyldig diameter &gt; 0<\/div>\n    <\/div>\n\n    <!-- Buttons -->\n    <div class=\"btn-group\">\n        <button id=\"calculator-btnCalc\">Beregne<\/button>\n        <button id=\"calculator-btnReset\">Nulstil<\/button>\n    <\/div>\n\n    <!-- Result -->\n    <div class=\"result-wrap\">\n        <div class=\"result-text\" id=\"calculator-resultBox\">Resultatet vil blive vist her<\/div>\n    <\/div>\n\n    <script>\n        (function() {\n            const craneType = document.getElementById('calculator-craneType');\n            const normalWrap = document.getElementById('calculator-normalWrap');\n            const mobileWrap = document.getElementById('calculator-mobileWrap');\n            const normalDuty = document.getElementById('calculator-normalDuty');\n            const normalSheaveType = document.getElementById('calculator-normalType');\n            const mobileCat = document.getElementById('calculator-mobileCat');\n            const mobileSelect = document.getElementById('calculator-mobileSelect');\n            const ropeType = document.getElementById('calculator-ropeType');\n            const ropeT = document.getElementById('calculator-ropeT');\n            const ropeD = document.getElementById('calculator-ropeD');\n            const btnCalc = document.getElementById('calculator-btnCalc');\n            const btnReset = document.getElementById('calculator-btnReset');\n            const resultBox = document.getElementById('calculator-resultBox');\n            const dErr = document.getElementById('calculator-dErr');\n            const PREFERRED_H = 20;\n\n            \/\/ Switch crane type display\n            craneType.addEventListener('change', function() {\n                if (this.value === 'mobile') {\n                    normalWrap.style.display = 'none';\n                    mobileWrap.style.display = 'block';\n                } else {\n                    normalWrap.style.display = 'block';\n                    mobileWrap.style.display = 'none';\n                }\n                resultBox.textContent = 'Result will be displayed here';\n                clearInputError();\n            });\n\n            \/\/ Clear error\n            function clearInputError() {\n                ropeD.classList.remove('input-error');\n                dErr.classList.remove('show');\n            }\n\n            \/\/ Input validation\n            function validateInput() {\n                clearInputError();\n                const dVal = parseFloat(ropeD.value);\n                if (isNaN(dVal) || dVal <= 0) {\n                    ropeD.classList.add('input-error');\n                    dErr.classList.add('show');\n                    return false;\n                }\n                return true;\n            }\n            ropeD.addEventListener('input', validateInput);\n\n            \/\/ Normal crane h value map\n            const normalHMap = {\n                M1: { h2:12.5, h3_min:11.2, h3_opt:12.5 },\n                M2: { h2:14.0, h3_min:12.5, h3_opt:14.0 },\n                M3: { h2:16.0, h3_min:14.0, h3_opt:16.0 },\n                M4: { h2:18.0, h3_min:16.0, h3_opt:18.0 },\n                M5: { h2:20.0, h3_min:18.0, h3_opt:20.0 },\n                M6: { h2:22.4, h3_min:20.0, h3_opt:22.4 },\n                M7: { h2:25.0, h3_min:22.4, h3_opt:25.0 },\n                M8: { h2:28.0, h3_min:25.0, h3_opt:28.0 }\n            };\n\n            \/\/ Mobile crane standard h value map\n            const mobileHMap = {\n                h2: {\n                    lift: { std:18, anti:18 },\n                    jib: { std:16, anti:16 },\n                    telescope: { std:14, anti:14 }\n                },\n                h3: {\n                    lift: { std:14, anti:18 },\n                    jib: { std:12.5, anti:16 },\n                    telescope: { std:10, anti:10 }\n                }\n            };\n\n            \/\/ Calculate\n            btnCalc.addEventListener('click', function() {\n                resultBox.innerHTML = '';\n                if (!validateInput()) return;\n                const t = parseFloat(ropeT.value);\n                const d = parseFloat(ropeD.value);\n                const craneCat = craneType.value;\n                let html = '';\n\n                \/\/ Non-mobile crane\n                if (craneCat === 'normal') {\n                    const dutyKey = normalDuty.value;\n                    const sheaveCat = normalSheaveType.value;\n                    const hData = normalHMap[dutyKey];\n                    if (sheaveCat === 'main') {\n                        const D2 = (hData.h2 * t * d).toFixed(2);\n                        html = `<div class=\"result-group\">Main Working Sheave Minimum Diameter D\u2082 \u2265 ${D2} mm<\/div>`;\n                    } else {\n                        const D3_min = (hData.h3_min * t * d).toFixed(2);\n                        const D3_opt = (hData.h3_opt * t * d).toFixed(2);\n                        html = `\n                            <div class=\"result-group\">\n                                <strong>Balance Sheave Minimum Required:<\/strong><br>\n                                D\u2083 \u2265 ${D3_min} mm\n                            <\/div>\n                            <div class=\"result-group\">\n                                <strong>Balance Sheave Preferred Value:<\/strong><br>\n                                D\u2083 \u2265 ${D3_opt} mm\n                            <\/div>\n                        `;\n                    }\n                }\n                \/\/ Mobile crane\n                else {\n                    const sCat = mobileCat.value;\n                    const mech = mobileSelect.value;\n                    const rType = ropeType.value;\n                    const minH = mobileHMap[sCat][mech][rType];\n                    const isAnti = rType === 'anti';\n\n                    const minD = (minH * t * d).toFixed(2);\n                    const preferredD = (PREFERRED_H * t * d).toFixed(2);\n\n                    if (!isAnti) {\n                        html = `<div class=\"result-group\">Minimum Required Value: D \u2265 ${minD} mm<\/div>`;\n                    } else {\n                        html = `\n                            <div class=\"result-group\">\n                                <strong>Minimum Required Value:<\/strong><br>\n                                D \u2265 ${minD} mm\n                            <\/div>\n                            <div class=\"result-group\">\n                                <strong>Preferred Minimum Value (Recommended):<\/strong><br>\n                                D \u2265 ${preferredD} mm\n                            <\/div>\n                        `;\n                    }\n                }\n                resultBox.innerHTML = html;\n            });\n\n            \/\/ Reset\n            btnReset.addEventListener('click', function() {\n                craneType.selectedIndex = 0;\n                normalDuty.selectedIndex = 0;\n                normalSheaveType.selectedIndex = 0;\n                mobileCat.selectedIndex = 0;\n                mobileSelect.selectedIndex = 0;\n                ropeType.selectedIndex = 0;\n                ropeT.selectedIndex = 0;\n                ropeD.value = '';\n                resultBox.textContent = 'Result will be displayed here';\n                normalWrap.style.display = 'block';\n                mobileWrap.style.display = 'none';\n                clearInputError();\n            });\n        })();\n    <\/script>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Beregner for minimumsdiameter af kranskive <br>Formel<\/h2>\n\n\n\n<p>D<sub>2<\/sub>\u2265t<sub>2<\/sub>\u00d7t\u00d7d<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>D<sub>2<\/sub>Minimumsdiameter for skivens stigningscirkel<\/li>\n\n\n\n<li>h<sub>2<\/sub>Skivevalgsfaktor (forholdet mellem skivens stigningscirkeldiameter og den nominelle diameter) <br>diameteren af st\u00e5lwiren)<\/li>\n\n\n\n<li>t: Faktor for st\u00e5lwiretype<\/li>\n\n\n\n<li>d: Nominel diameter af st\u00e5lwiren<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Noter<\/h2>\n\n\n\n<p>Udv\u00e6lgelseskoefficienterne for skiver og balanceskiver varierer afh\u00e6ngigt af <br>krantype, og beregninger skal udf\u00f8res baseret p\u00e5 de specifikke omst\u00e6ndigheder:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>For hejse- og bomhejse-\/lufning af st\u00e5lwirer, der anvendes i generelle kraner og taljer, er b\u00f8jningsudmattelse ofte den prim\u00e6re form for st\u00e5lwireskade, n\u00e5r der anvendes enkeltlagsvikling. Ovenst\u00e5ende koefficienter anbefales is\u00e6r til at begr\u00e6nse radialtryk p\u00e5 st\u00e5lwiren i wirens ind- og udgangsomr\u00e5de.<\/li>\n\n\n\n<li>For mobilkraner anbefales ovenst\u00e5ende koefficienter is\u00e6r, n\u00e5r der anvendes enkeltlagsvikling for at begr\u00e6nse radialtryk p\u00e5 anordningen og forbedre modstanden mod b\u00f8jningstr\u00e6thed.<\/li>\n\n\n\n<li>For mobilkraner anbefales ovenst\u00e5ende koefficienter is\u00e6r, n\u00e5r der anvendes flerlagsvikling for at begr\u00e6nse radialtryk p\u00e5 st\u00e5lwiren i overlappende omr\u00e5der og den deraf f\u00f8lgende st\u00e5lwirevridningseffekt.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Anvendelige kraner<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Traverskraner<\/li>\n\n\n\n<li>Taljer - st\u00e5lwire<\/li>\n\n\n\n<li>Portal- eller semiportalkraner<\/li>\n\n\n\n<li>Portal- eller semiportalbrokraner<\/li>\n\n\n\n<li>Mobilkraner<\/li>\n\n\n\n<li>Cantileverkraner (s\u00f8jle-, jib-, v\u00e6g- eller g\u00e5ende)<\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"Denne kranskive-minimumsdiameterberegner, der er i n\u00f8je overensstemmelse med ISO 16625:2013, beregner hurtigt den minimale skiveafstandsdiameter ud fra st\u00e5lwirens nominelle diameter og mekanismens arbejdsklasse. Underdimensionerede skiver risikerer, at rebet l\u00f8sner sig, og at det kan f\u00f8re til sikkerhedstrusler, mens overdimensionerede skiver begr\u00e6nser l\u00f8fteh\u00f8jde og lastekapacitet. Den verificerer overholdelse af regler, optimerer skivevalg, forudsiger st\u00e5lwirens levetid, reducerer vedligeholdelsesomkostninger, undg\u00e5r nedetid og forbedrer driftssikkerhed og effektivitet.","protected":false},"author":8,"featured_media":17090,"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":[1059],"tags":[],"class_list":["post-17088","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-online-tools"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.dgcrane.com\/da\/wp-json\/wp\/v2\/posts\/17088"}],"collection":[{"href":"https:\/\/www.dgcrane.com\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dgcrane.com\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dgcrane.com\/da\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dgcrane.com\/da\/wp-json\/wp\/v2\/comments?post=17088"}],"version-history":[{"count":6,"href":"https:\/\/www.dgcrane.com\/da\/wp-json\/wp\/v2\/posts\/17088\/revisions"}],"predecessor-version":[{"id":17101,"href":"https:\/\/www.dgcrane.com\/da\/wp-json\/wp\/v2\/posts\/17088\/revisions\/17101"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dgcrane.com\/da\/wp-json\/wp\/v2\/media\/17090"}],"wp:attachment":[{"href":"https:\/\/www.dgcrane.com\/da\/wp-json\/wp\/v2\/media?parent=17088"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dgcrane.com\/da\/wp-json\/wp\/v2\/categories?post=17088"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dgcrane.com\/da\/wp-json\/wp\/v2\/tags?post=17088"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}