Boutverbinding en lasnaad berekenen
Beschrijving
Bereken de afschuif-, stuik- en trekweerstand van M12 tot M30 bouten (4.6 tot 10.9), het benodigde aantal bouten en de sterkte en minimale keelnaad van een hoeklas volgens NEN-EN 1993-1-8.
Invoer velden
Resultaten
Met deze tool reken je een eenvoudige staalverbinding na: bouten op afschuiving, bouten op trek of een hoeklas. Je ziet de weerstand per bout, het benodigde aantal bouten, of bij een las de lasweerstand en de minimale keelnaad, met een unity check.
Vul de rekenkracht FEd in (met belastingfactoren). Kies boutmaat en boutklasse (staat op de kop), het aantal snedevlakken en of de draad in het snedevlak ligt. Voor stuik en pons vul je de dunste plaat in. Bij een las vul je de lengte per naad en de keelnaad a in.
De tool rekent volgens NEN-EN 1993-1-8 met gamma M2 = 1,25: Fv,Rd = alfa v x fub x As / gamma M2, Ft,Rd = 0,9 x fub x As / gamma M2 en voor de las fvw,d = fu / (wortel 3 x beta w x gamma M2). Staal: fu 360, 430 of 490 N/mm² (S355 volgens correctieblad C1, Bouwen met Staal). As volgens EN ISO 898-1. Stuik is vereenvoudigd en geldt bij ruime gatafstanden. Laat een dragende verbinding controleren door een constructeur. Volgende stap: toets de kopplaat of de voetplaat met de gekoppelde tools.
Formulas:
-
h_v_maat = if(situatie != 'las', boutmaat, 'm16')
-
h_v_klasse = if(situatie != 'las', boutklasse, 'k88')
-
h_v_snedes = if(situatie == 'afschuiving', snedes, 's1')
-
h_v_draad = if(situatie == 'afschuiving', draad, 'ja')
-
h_v_t = if(situatie != 'las', plaatdikte, 10)
-
h_v_n = if(situatie != 'las', floor(aantal_bouten), 0)
-
h_v_l = if(situatie == 'las', laslengte, 150)
-
h_v_a = if(situatie == 'las', keelnaad, 4)
-
h_v_nl = if(situatie == 'las', aantal_lassen, 'n2')
-
h_d = if(h_v_maat == 'm12', 12, if(h_v_maat == 'm16', 16, if(h_v_maat == 'm20', 20, if(h_v_maat == 'm22', 22, if(h_v_maat == 'm24', 24, if(h_v_maat == 'm27', 27, 30))))))
-
h_as = if(h_v_maat == 'm12', 84.3, if(h_v_maat == 'm16', 157, if(h_v_maat == 'm20', 245, if(h_v_maat == 'm22', 303, if(h_v_maat == 'm24', 353, if(h_v_maat == 'm27', 459, 561))))))
-
h_d0 = if(h_v_maat == 'm12', 13, if(h_v_maat == 'm16', 18, if(h_v_maat == 'm20', 22, if(h_v_maat == 'm22', 24, if(h_v_maat == 'm24', 26, if(h_v_maat == 'm27', 30, 33))))))
-
h_dm = if(h_v_maat == 'm12', 19.015, if(h_v_maat == 'm16', 25.375, if(h_v_maat == 'm20', 31.475, if(h_v_maat == 'm22', 35.645, if(h_v_maat == 'm24', 37.775, if(h_v_maat == 'm27', 43.1, 48.425))))))
-
h_fub = if(h_v_klasse == 'k46', 400, if(h_v_klasse == 'k56', 500, if(h_v_klasse == 'k88', 800, 1000)))
-
h_fu = if(staalsoort == 's355', 490, if(staalsoort == 's275', 430, 360))
-
h_bw = if(staalsoort == 's355', 0.9, if(staalsoort == 's275', 0.85, 0.8))
-
h_av = if(h_v_draad == 'nee', 0.6, if(h_v_klasse == 'k109', 0.5, 0.6))
-
h_aschuif = if(h_v_draad == 'nee', 3.14159265 * pow(h_d, 2) / 4, h_as)
-
h_m = if(h_v_snedes == 's2', 2, 1)
-
h_fv = h_m * h_av * h_fub * h_aschuif / 1.25 / 1000
-
h_ab = if(h_fub / h_fu < 1, h_fub / h_fu, 1)
-
h_fb = if(h_v_t > 0, 2.5 * h_ab * h_fu * h_d * h_v_t / 1.25 / 1000, 0)
-
h_ft = 0.9 * h_fub * h_as / 1.25 / 1000
-
h_bp = if(h_v_t > 0, 0.6 * 3.14159265 * h_dm * h_v_t * h_fu / 1.25 / 1000, 0)
-
h_fbout = if(situatie == 'trek', if(h_ft < h_bp, h_ft, h_bp), if(h_fv < h_fb, h_fv, h_fb))
-
h_nnodig = if(h_fbout > 0, if(fed > 0, ceil(fed / h_fbout - 0.0001), 0), 0)
-
h_fvwd = h_fu / sqrt(3) / (h_bw * 1.25)
-
h_nl = if(h_v_nl == 'n2', 2, 1)
-
h_leff = if(h_v_l - 2 * h_v_a > 0, h_v_l - 2 * h_v_a, 0)
-
h_fw = if(h_v_a > 0, h_nl * h_fvwd * h_v_a * h_leff / 1000, 0)
-
h_k = if(fed > 0, fed * 1000 / (h_nl * h_fvwd), 0)
-
h_disc = pow(h_v_l, 2) - 8 * h_k
-
h_amin = if(h_k > 0, if(h_disc >= 0, if(h_v_l > 0, (h_v_l - sqrt(h_disc)) / 4, 0), 0), 0)
-
h_aprak = if(h_amin > 3, ceil(h_amin - 0.0001), 3)
-
h_uc = if(situatie == 'las', if(h_fw > 0, fed / h_fw, 0), if(h_v_n > 0, if(h_fbout > 0, fed / (h_v_n * h_fbout), 0), 0))
-
h_uc100 = round(abs(h_uc) * 100, 0)
-
h_t_uc = concat(format(floor(h_uc100 / 100), '0'), ',', format(h_uc100 - 100 * floor(h_uc100 / 100), '00'))
-
h_rd_tot = if(situatie == 'las', h_fw, h_v_n * h_fbout)
-
h_r_h_rd_tot = round(abs(h_rd_tot) * 10, 0)
-
h_t_h_rd_tot = concat(if(h_rd_tot < 0, '-', ''), if(floor(h_r_h_rd_tot / 10) >= 1000000, concat(format(floor(floor(h_r_h_rd_tot / 10) / 1000000), '0'), '.', format(floor(floor(h_r_h_rd_tot / 10) / 1000) - 1000 * floor(floor(h_r_h_rd_tot / 10) / 1000000), '000'), '.', format(floor(h_r_h_rd_tot / 10) - 1000 * floor(floor(h_r_h_rd_tot / 10) / 1000), '000')), if(floor(h_r_h_rd_tot / 10) >= 1000, concat(format(floor(floor(h_r_h_rd_tot / 10) / 1000), '0'), '.', format(floor(h_r_h_rd_tot / 10) - 1000 * floor(floor(h_r_h_rd_tot / 10) / 1000), '000')), format(floor(h_r_h_rd_tot / 10), '0'))), ',', format(h_r_h_rd_tot - 10 * floor(h_r_h_rd_tot / 10), '0'))
-
h_r_fed = round(abs(fed) * 10, 0)
-
h_t_fed = concat(if(fed < 0, '-', ''), if(floor(h_r_fed / 10) >= 1000000, concat(format(floor(floor(h_r_fed / 10) / 1000000), '0'), '.', format(floor(floor(h_r_fed / 10) / 1000) - 1000 * floor(floor(h_r_fed / 10) / 1000000), '000'), '.', format(floor(h_r_fed / 10) - 1000 * floor(floor(h_r_fed / 10) / 1000), '000')), if(floor(h_r_fed / 10) >= 1000, concat(format(floor(floor(h_r_fed / 10) / 1000), '0'), '.', format(floor(h_r_fed / 10) - 1000 * floor(floor(h_r_fed / 10) / 1000), '000')), format(floor(h_r_fed / 10), '0'))), ',', format(h_r_fed - 10 * floor(h_r_fed / 10), '0'))
-
h_r_h_amin = round(abs(h_amin) * 10, 0)
-
h_t_h_amin = concat(if(h_amin < 0, '-', ''), if(floor(h_r_h_amin / 10) >= 1000000, concat(format(floor(floor(h_r_h_amin / 10) / 1000000), '0'), '.', format(floor(floor(h_r_h_amin / 10) / 1000) - 1000 * floor(floor(h_r_h_amin / 10) / 1000000), '000'), '.', format(floor(h_r_h_amin / 10) - 1000 * floor(floor(h_r_h_amin / 10) / 1000), '000')), if(floor(h_r_h_amin / 10) >= 1000, concat(format(floor(floor(h_r_h_amin / 10) / 1000), '0'), '.', format(floor(h_r_h_amin / 10) - 1000 * floor(floor(h_r_h_amin / 10) / 1000), '000')), format(floor(h_r_h_amin / 10), '0'))), ',', format(h_r_h_amin - 10 * floor(h_r_h_amin / 10), '0'))
-
h_e1 = ceil(3 * h_d0 - 0.0001)
-
h_p1 = ceil(3.75 * h_d0 - 0.0001)
-
h_e2 = ceil(1.5 * h_d0 - 0.0001)
-
h_p2 = ceil(3 * h_d0 - 0.0001)
-
fv_rd = round(h_fv, 1)
Fv,Rd = alfa v x fub x A / gamma M2 per snedevlak, maal het aantal snedevlakken (NEN-EN 1993-1-8 tabel 3.4). A = As bij draad in het snedevlak, anders de schachtdoorsnede. Alfa v = 0,6; bij 10.9 met draad 0,5. Gamma M2 = 1,25. -
fb_rd = round(h_fb, 1)
Fb,Rd = k1 x alfa b x fu x d x t / gamma M2 (tabel 3.4), vereenvoudigd met k1 = 2,5 en alfa d = 1,0. Dat geldt alleen bij ruime gatafstanden (zie de tekst eronder). Alfa b = fub/fu met maximum 1,0. -
ft_rd = round(h_ft, 1)
Ft,Rd = 0,9 x fub x As / gamma M2 (NEN-EN 1993-1-8 tabel 3.4, gewone zeskantkop). As = spanningsdoorsnede van de draad (EN ISO 898-1). -
bp_rd = round(h_bp, 1)
Bp,Rd = 0,6 x pi x dm x t x fu / gamma M2 (tabel 3.4). dm = gemiddelde van sleutelwijdte en hoekmaat van de moer (ISO 4032). Wrikkrachten zijn niet meegenomen. -
n_nodig = h_nnodig
FEd gedeeld door de kleinste weerstand per bout, naar boven afgerond (NEN-EN 1993-1-8, 3.7). Bij lange verbindingen (meer dan 15 x d) en bij één bout in een enkelsnedige verbinding gelden extra eisen. -
fvwd = round(h_fvwd, 1)
fvw,d = fu / (wortel 3 x beta w x gamma M2) volgens de vereenvoudigde methode (NEN-EN 1993-1-8, 4.5.3.3). Beta w = 0,80 (S235), 0,85 (S275), 0,90 (S355). -
leff = h_leff
leff = lengte min 2 x a (NEN-EN 1993-1-8, 4.5.1). Een naad met leff kleiner dan 30 mm of 6 x a telt niet mee. -
fw_rd = round(h_fw, 1)
Fw,Rd = aantal naden x fvw,d x a x leff. Veilige methode: de richting van de kracht ten opzichte van de las is niet meegerekend. -
a_min = round(h_amin, 1)
De kleinste a waarbij Fw,Rd gelijk is aan FEd, met leff = L - 2a. Uit a x (L - 2a) = FEd / (n x fvw,d). 0 betekent: de las is te kort voor deze kracht. -
uc = round(h_uc, 2)
FEd gedeeld door de totale weerstand (aantal bouten x weerstand per bout, of Fw,Rd). 1,00 of lager voldoet. -
oordeel = if(fed <= 0, 'Vul een kracht groter dan 0 in.', if(situatie == 'las', if(h_v_a < 3, 'Voldoet niet: keelnaad kleiner dan 3 mm (NEN-EN 1993-1-8, 4.5.2).', if(h_leff < 30 || h_leff < 6 * h_v_a, 'Voldoet niet: effectieve laslengte korter dan 30 mm of 6 x a (4.5.1).', if(h_uc <= 1, concat('Voldoet: UC = ', h_t_uc, ', Fw,Rd = ', h_t_h_rd_tot, ' kN tegen FEd = ', h_t_fed, ' kN.'), concat('Voldoet niet: UC = ', h_t_uc, ', Fw,Rd = ', h_t_h_rd_tot, ' kN tegen FEd = ', h_t_fed, ' kN. Maak a groter of de las langer.')))), if(h_fbout <= 0, 'Vul een plaatdikte groter dan 0 in.', if(h_v_n <= 0, concat('Je hebt minimaal ', format(h_nnodig, '0'), ' bouten nodig. Vul het aantal in voor de toets.'), if(h_uc <= 1, concat('Voldoet: UC = ', h_t_uc, ', ', format(h_v_n, '0'), ' bouten dragen ', h_t_h_rd_tot, ' kN tegen FEd = ', h_t_fed, ' kN.'), concat('Voldoet niet: UC = ', h_t_uc, '. Nodig: ', format(h_nnodig, '0'), ' bouten, of een grotere maat of klasse.'))))))
Toets volgens NEN-EN 1993-1-8 met gamma M2 = 1,25 (zoals het Nederlandse QEC-rekenblad S boutkrachten EC_NL en de BINT Ankerkracht calculator). fu S355 = 490 N/mm² volgens correctieblad C1 bij NEN-EN 1993-1-1 (Bouwen met Staal, correcties Verbinden 2019). Alleen de bouten, de stuik of pons in de plaat en de las zijn getoetst; de platen en profielen zelf (netto doorsnede, blokafschuiving) toets je apart. -
aanname = if(situatie == 'las', if(h_amin > 0, concat('Benodigde keelnaad: ', format(h_aprak, '0'), ' mm (berekend ', h_t_h_amin, ' mm, minimaal 3 mm).'), 'Deze las is te kort voor deze kracht: maak de naad langer of gebruik meer naden.'), if(situatie == 'trek', 'Wrikkrachten in de kopplaat zijn niet meegenomen. Bij een dunne of flexibele kopplaat is de boutkracht hoger.', concat('Stuik geldt bij e1 min. ', format(h_e1, '0'), ', p1 ', format(h_p1, '0'), ', e2 ', format(h_e2, '0'), ' en p2 ', format(h_p2, '0'), ' mm (gat ', format(h_d0, '0'), ' mm). Kleiner geeft minder stuik.')))
Bij stuik: e1 is de eindafstand in de krachtrichting, p1 de steek tussen bouten in de krachtrichting, e2 de randafstand en p2 de steek dwars op de kracht (NEN-EN 1993-1-8 tabel 3.3). Gatspeling volgens EN 1090-2.
Berekening informatie
Meer over constructief
Ontdek meer tools gerelateerd aan constructief