/* */ /* ' ########################################################### ' ジャッキ選定計算用JS ' Create 2011.01.13 J.Ito ' Modyfy ----.--.-- -------- ' ########################################################### */ var arrErrMsg; // 判定結果エラーメッセージ格納用配列 var IsAllInputOk; // 入力・選択項目にすべて値あり:true let JcScrew = ""; let JcSize = ""; let JcType = ""; let WormKataRatio = ""; let WormRatio = ""; let Flange = ""; let Tip = ""; let Jabara = ""; let Clevis = ""; let Motor = ""; $( document).ready( function(){ $( "#Para_W0").focus(); // 昇降荷重(最大)の入力 $( "#Para_W0").blur( CalcAll); // 昇降荷重(最小)の入力 $( "#Para_W1").blur( CalcAll); // 使用係数の入力 $( "#Para_Sf").blur( CalcAll); // 座屈強度確認荷重の入力 $( "#Para_W2").blur( CalcAll); // 希望昇降速度の入力 $( "#Para_Vdash").blur( CalcAll); // ストロークの入力 $( "#Para_ST0").blur( CalcAll); // 実ストロークの入力 $( "#Para_ST").blur( CalcAll); // 運転頻度の入力 $( "#Para_RunFreH").blur( CalcAll); $( "#Para_RunFreD").blur( CalcAll); $( "#Para_RunFreY").blur( CalcAll); // モータ回転速度の入力 $( "#Spd_Nm").blur( CalcAll); // 実際の総減速比の入力 $( "#Spd_i").blur( CalcAll); // 形番参考例を表示するクリック $( "#LinkJackKataEx").click( ToggleJackKataEx); // 判定ボタンクリック $( "#BtnJudgeResult").click( onClickJudge); // 全てのセレクトメニュー変更で再計算 // $( "select").change( CalcAll); // ジャッキネジタイプリスト変更 $( "#SelSpec_JcScrew").change( onChangeJcScrew); // ジャッキサイズリスト変更 $( "#SelSpec_JcSize").change( onChangeJcSize); // ネジ仕様・取付形状変更 $( "#SelSpec_JcType").change( onChangeJcType); // ウォーム減速比変更 $( "#SelSpec_WormRatio").change( onChangeWormRatio); // フランジ取付方向変更 $( "#SelSpec_Flange").change( onChangeFlange); // 先端金具変更 $( "#SelSpec_Tip").change( onChangeTip); // ジャバラ変更 $( "#SelSpec_Jabara").change( onChangeJabara); // クレビスリスト変更 $( "#SelSpec_Crevice").change( onChangeCrevice); // カウンターLS付 $( "#SelSpec_CounterLs").change( onChangeCounterLs); // 内部LS $( "#SelSpec_InsideLs").change( DisableCounterLs); // ポテンショメータ付 $( "#SelSpec_PMeter").change( DisableCounterLs); // エンコーダ付 $( "#SelSpec_Encoder").change( DisableCounterLs); // モータ付 $( "#SelSpec_Motor").change( onChangeMotor); // 据付状態 $( "#Bs_MountState").change( CalcAll); $( "#ResultKata, #ResultInputCapa").focus( function(){ $( this).blur(); } ); // 昇降荷重(最大)ロストフォーカス $( "#Para_W0").blur( function(){ // 座屈強度確認荷重に値転記 $( "#Para_W2").val( $( "#Para_W0").val()); } ); } ); // 形番参考例を表示するクリックした時の処理 function ToggleJackKataEx() { if( $( "#JackKataEx").is( ":visible") == true){ $( "#LinkJackKataEx").html( "[形番参考例を表示する]"); }else{ $( "#LinkJackKataEx").html( "[形番参考例を表示しない]"); } $( "#JackKataEx").animate( { height: "toggle"}, 1000); } // 数値かどうかの判定 function IsNumeric(v) { if( typeof v == "number"){ return true;} if( !isNaN( v)){ if(v.length != 1 && v.charAt(0) == "0"){ //0000125のような値 if(v.charAt(1) != "."){ return false; } } if( v.length != 2 && v.charAt(0) == "-" && v.charAt(1) == "0"){ //-000.125のような値 if( v.charAt(2) != "."){ return false; } } return true; }else{ return false; } } // 計算式をまとめたもの function CalcAll() { // 昇降荷重(最大)kgf CalcParaW0kgf(); // 昇降荷重(最小)kgf CalcParaW1kgf(); // 座屈強度確認荷重kgf CalcParaW2kgf(); // 希望昇降速度mm/s CalcParaVdash_mms(); // セレクトメニュー「ジャッキサイズ」「ジャッキタイプ」「ウォーム速比」他変更時処理 DispSpec(); // onChangeJcKata(); // 取付形状セレクトメニュー変更時処理 onChangeKeijo(); // 必要入力回転速度 CalcSpdNdash(); // 必要減速比 CalcSpd_idash(); // 実昇降速度[m/min] CalcSpdV_min(); // 実昇降速度[mm/sec] CalcSpdV_sec(); // 必要入力軸トルク CalcDtT(); // 必要逆転トルク(参考値) CalcDtTdash(); // 入力回転速度 CalcDtN(); // 必要入力容量 CalcDtP(); // 入力軸慣性モーメント CalcDtIJ(); // ********** 座屈強度確認 *********** // 据付状態 onChangeMountState(); // 作用点間距離 CalcBsL1(); // 座屈強度 CalcBsPCR(); // 座屈安全率 CalcBsSF(); // ストローク CalcBsStroke(); // *********** 許容ネジ軸回転速度確認 ************ // 支持係数 CalcRs_n(); // 作用点間距離 CalcRsL2(); // 許容ネジ軸回転速度 CalcRsNC(); // ネジ軸回転速度 CalcRsNS(); // ********** 使用頻度確認 *********** // 使用時間 CalcFreq_ts(); // 負荷時間率 CalcFreqED(); // ********** 期待寿命計算 ********** // 等価荷重 CalcLfPE(); // ボールネジ動負荷容量 CalcLfC(); // 短ストローク補正係数 CalcLf_fs(); // 寿命補正係数 CalcLf_f1(); // B10寿命総走行距離 CalcLfL10(); // 年間走行距離 CalcLfLy(); // 期待寿命 CalcLfZ_JWM(); // 台形ネジタイプ CalcLfZ(); // ボールネジタイプ /* // ********** 荷重などのNGチェック *********** // 容量NG CheckSpecCapacity(); // 標準ストローク外! CheckSpecStroke(); // 【諸元】-入力回転速度 CheckInputRollSpeed(); // 【諸元】-必要入力容量 CheckInputCapa(); // 【座屈強度】-座屈安全率 CheckPCR(); // 【許容ネジ軸回転速度確認】-ネジ軸回転速度 CheckNS(); // 【使用頻度確認】-使用時間 Check_ts(); // 【使用頻度確認】-負荷時間率 CheckED(); */ } // ************* 選定条件の入力 **************** // 昇降荷重(最大)kgf function CalcParaW0kgf() { var W0 = trimzen( $( "#Para_W0").val()); $( "#Para_W0Kgf").val( ""); $( "#Para_Dsp_W0Kgf").val( ""); if( W0 == ""){ return;} if( !IsNumeric( W0)){ return;} var W0kgf = parseFloat( W0) * 1000 / 9.8; $( "#Para_W0Kgf").val( W0kgf); $( "#Para_Dsp_W0Kgf").val( W0kgf.toFixed(2)); } // 昇降荷重(最小)kgf function CalcParaW1kgf() { var W1, W1Kgf; W1 = trimzen( $( "#Para_W1").val()); $( "#Para_W1Kgf").val( ""); $( "#Para_Dsp_W1Kgf").val( ""); if( W1 == ""){ return;} if( !IsNumeric( W1)){ return;} W1Kgf = parseFloat( W1) * 1000 / 9.8; $( "#Para_W1Kgf").val( W1Kgf); $( "#Para_Dsp_W1Kgf").val( W1Kgf.toFixed(2)); } // 座屈強度確認荷重kgf function CalcParaW2kgf() { var W2, W2Kgf; W2 = trimzen( $( "#Para_W2").val()); $( "#Para_W2Kgf").val( ""); $( "#Para_Dsp_W2Kgf").val( ""); if( W2 == ""){ return;} if( !IsNumeric( W2)){ return;} W2Kgf = parseFloat( W2) * 1000 / 9.8; $( "#Para_W2Kgf").val( W2Kgf); $( "#Para_Dsp_W2Kgf").val( W2Kgf.toFixed(2)); } // 希望昇降速度mm/s function CalcParaVdash_mms() { var Vdash, Vdash_mms; Vdash = trimzen( $( "#Para_Vdash").val()); $( "#Para_Vdash_mms").val( ""); $( "#Para_Dsp_Vdash_mms").val( ""); if( Vdash == ""){ return;} if( !IsNumeric( Vdash)){ return;} Vdash_mms = parseFloat( Vdash) * 1000 / 60; $( "#Para_Vdash_mms").val( Vdash_mms); $( "#Para_Dsp_Vdash_mms").val( Vdash_mms.toFixed(2)); } // ********* リニパワージャッキ仕様決定 ********* // セレクトメニュー「ジャッキネジ軸タイプ」変更時処理 // JWHは「H速」だけ選択可 function onChangeJcScrew() { JcScrew = $( "#SelSpec_JcScrew").val(); $( "#SelSpec_JcSize").val(""); if( JcScrew == ""){ $( "#SelSpec_JcSize").prop("disabled", true); ClearSpec(); // return; }else{ $( "#SelSpec_JcSize").prop("disabled", false); } switch(JcScrew){ case "JWM": $( "#optSize_002").prop("disabled", false); $( "#optSize_005").prop("disabled", false); $( "#optSize_300").prop("disabled", false); $( "#optSize_500").prop("disabled", false); $( "#optSize_750").prop("disabled", false); $( "#optRatio_L").prop("disabled", false); break; case "JWB": $( "#optSize_002").prop("disabled", true); $( "#optSize_005").prop("disabled", false); $( "#optSize_300").prop("disabled", false); $( "#optSize_500").prop("disabled", false); $( "#optSize_750").prop("disabled", false); $( "#optSize_1000").prop("disabled", false); $( "#optRatio_L").prop("disabled", false); break; case "JWH": $( "#optSize_002").prop("disabled", true); $( "#optSize_005").prop("disabled", true); $( "#optSize_300").prop("disabled", true); $( "#optSize_500").prop("disabled", true); $( "#optSize_750").prop("disabled", true); $( "#optSize_1000").prop("disabled", true); $( "#optRatio_L").prop("disabled", true); break; } onChangeJcSize(); } // セレクトメニュー「基本容量」他の変更時処理 function onChangeJcSize() { JcSize = $( "#SelSpec_JcSize").val(); $( "#SelSpec_JcType").val(""); if( JcSize == ""){ $( "#SelSpec_JcType").prop("disabled", true); ClearSpec(); // return; }else{ $( "#SelSpec_JcType").prop("disabled", false); } switch(JcSize){ case "300": case "500": case "750": case "1000": $( "#optType_UR").prop("disabled", true); $( "#optType_DR").prop("disabled", true); $( "#Note300").show(); break; default: $( "#optType_UR").prop("disabled", false); $( "#optType_DR").prop("disabled", false); $( "#Note300").hide(); break; } onChangeJcType(); } // セレクトメニュー「ネジ仕様・取付形状」の変更時処理 function onChangeJcType() { JcType = $( "#SelSpec_JcType").val(); $( "#SelSpec_WormRatio").val(""); $( "#optMountState_A").prop("disabled", false); $( "#optMountState_B").prop("disabled", true); $( "#optMountState_C").prop("disabled", false); $( "#Bs_MountState").val( ""); if( JcType == ""){ $( "#SelSpec_WormRatio").prop("disabled", true); ClearSpec(); // return; }else{ $( "#SelSpec_WormRatio").prop("disabled", false); } onChangeWormRatio(); } // セレクトメニュー「ウォーム減速比」の変更時処理 function onChangeWormRatio() { WormKataRatio = $( "#SelSpec_WormRatio").val(); if( WormKataRatio == ""){ $( "#SelSpec_Jabara" ).prop("disabled", true); $( "#SelSpec_Crevice" ).prop("disabled", true); $( "#SelSpec_CounterLs" ).prop("disabled", true); $( "#SelSpec_InsideLs" ).prop("disabled", true); $( "#SelSpec_PMeter" ).prop("disabled", true); $( "#SelSpec_Encoder" ).prop("disabled", true); $( "#SelSpec_Motor" ).prop("disabled", true); ClearSpec(); // return; }else{ switch(JcType){ case "US": case "DS": case "UM": case "DM": Flange = ""; $( "#SelSpec_Flange").val( ""); $( "#SelSpec_Flange").prop( "disabled", true); // 先端金具 $( "#SelSpec_Tip").prop( "disabled", false); Tip = $( "#SelSpec_Tip").val(); if( Tip == ""){ // 「標準」を選択 $( "#SelSpec_Tip > option").eq(1).prop( "selected", true); } $( "#SelSpec_Jabara").prop("disabled", false); $( "#SelSpec_Crevice").prop("disabled", false); // 許容ネジ軸回転速度の非表示 $( "#id_ScrewRollingSpeed").hide(); break; case "UR": case "DR": // フランジ トラベリングナットのみ選択可 $( "#SelSpec_Flange").prop( "disabled", false); Flange = $( "#SelSpec_Flange").val(); if( Flange == ""){ $( "#SelSpec_Flange").val( "U"); Flange = "U"; } // 先端金具は選択不可 Tip = ""; $( "#SelSpec_Tip > option:first").prop( "selected", true); $( "#SelSpec_Tip").prop( "disabled", true); $( "#SelSpec_Jabara").prop("disabled", true); $( "#SelSpec_Crevice").prop("disabled", true); // 許容ネジ軸回転速度の表示 $( "#id_ScrewRollingSpeed").show(); break; } $( "#SelSpec_CounterLs" ).prop("disabled", false); $( "#SelSpec_InsideLs" ).prop("disabled", false); $( "#SelSpec_PMeter" ).prop("disabled", false); $( "#SelSpec_Encoder" ).prop("disabled", false); $( "#SelSpec_Motor" ).prop("disabled", false); switch(JcSize){ case "300": case "500": case "750": case "1000": $( "#SelSpec_Motor").val(""); $( "#SelSpec_Motor").prop("disabled", true); break; default: $( "#SelSpec_Motor").prop("disabled", false); break; } CalcAll(); } } //オプション系選択リストと諸元表示のクリア function ClearSpec() { $( "#SelSpec_Flange").val(""); $( "#SelSpec_Flange").prop("disabled", true); $( "#SelSpec_Tip > option:first").prop( "selected", true); $( "#SelSpec_Tip").prop("disabled", true); $( "#SelSpec_Jabara").val(""); $( "#SelSpec_Crevice").val(""); $( "#SelSpec_Motor").val(""); $( "#Spec_Kataban").val( ""); $( "#Spec_Capacity").val( ""); $( "#Spec_TotalEfficiency").val( ""); $( "#Spec_ScrewBtmW").val( ""); $( "#Spec_MaxInputCapa").val( ""); $( "#Spec_ScrewLead").val( ""); $( "#Spec_NoLoadTorq").val( ""); $( "#Spec_WormRatio").val( ""); $( "#Spec_InputTorq").val( ""); } // ジャッキ形番の生成 function GenKataban() { var Jabara = $( "#SelSpec_Jabara").val(); var Crevice = $( "#SelSpec_Crevice").val(); var CounterLs = $( "#SelSpec_CounterLs").val(); var InsideLs = $( "#SelSpec_InsideLs").val(); var PMeter = $( "#SelSpec_PMeter").val(); var Encoder = $( "#SelSpec_Encoder").val(); var Motor = $( "#SelSpec_Motor").val(); var ST0 = $( "#Para_ST0").val(); let sKata = ""; sKata += JcScrew; // JWM JWB JWH sKata += JcSize; // ジャッキサイズ sKata += JcType; // 取付形状 DM UR など sKata += WormKataRatio; // ウォーム速比 sKata += ST0 / 100; // ストローク/100 sKata += Flange; // フランジ取付方向 sKata += Jabara; // ジャバラ sKata += Tip; // 先端金具 sKata += Crevice; // クレビス sKata += CounterLs; // カウンタLS sKata += InsideLs; // 内部LS sKata += PMeter; // ポテンショメータ sKata += Encoder; // エンコーダ sKata += Motor; // モータ $( "#Spec_Kataban").val( sKata); } // セレクトメニュー「フランジ取付方向」の変更時処理 function onChangeFlange() { Flange = $( "#SelSpec_Flange").val(); if( Flange == ""){ $( "#SelSpec_Flange").val( "U"); Flange = "U"; } GenKataban(); } // セレクトメニュー「先端金具」の変更時処理 function onChangeTip() { Tip = $( "#SelSpec_Tip").val(); if( Tip == ""){ // 「標準」を選択 $( "#SelSpec_Tip > option").eq(1).prop( "selected", true); } GenKataban(); } // セレクトメニュー「ジャバラ」の変更時処理 function onChangeJabara() { Jabara = $( "#SelSpec_Jabara").val(); GenKataban(); } // セレクトメニュー「ウォーム速比」他の変更時処理 function DispSpec() //function onChangeJcKata() { // var JcSize = $( "#SelSpec_JcSize").val(); // var JcScrew = $( "#SelSpec_JcScrew").val(); // var WormKataRatio = $( "#SelSpec_WormRatio").val(); var bClear = false; if( JcSize == ""){ bClear = true;} if( JcScrew == ""){ bClear = true;} if( WormKataRatio == ""){ bClear = true;} if( bClear){ ClearSpec(); /* $( "#Spec_Kataban").val( ""); $( "#Spec_Capacity").val( ""); $( "#Spec_TotalEfficiency").val( ""); $( "#Spec_ScrewBtmW").val( ""); $( "#Spec_MaxInputCapa").val( ""); $( "#Spec_ScrewLead").val( ""); $( "#Spec_NoLoadTorq").val( ""); $( "#Spec_WormRatio").val( ""); $( "#Spec_InputTorq").val( ""); */ return; } var sKata = JcScrew + JcSize + WormKataRatio; // 基本容量 $( "#Spec_Capacity").val( arrSpec[sKata]["Capacity"]); // 総合効率 $( "#Spec_TotalEfficiency").val( arrSpec[sKata]["TotalEfficiency"]); // ネジ谷底径 $( "#Spec_ScrewBtmW").val( arrSpec[sKata]["ScrewBtmW"]); // 最大許容入力容量 $( "#Spec_MaxInputCapa").val( arrSpec[sKata]["MaxInputCapa"]); // ネジリード var ScrewLead = arrSpec[sKata]["ScrewLead"]; if( IsNumeric( ScrewLead)){ $( "#Spec_ScrewLead").val( parseFloat( ScrewLead) / 1000); }else{ $( "#Spec_ScrewLead").val( ScrewLead); } // 無負荷空転トルク $( "#Spec_NoLoadTorq").val( arrSpec[sKata]["NoLoadTorq"]); // ウォーム速比 $( "#Spec_WormRatio").val( arrSpec[sKata]["WormRatio"]); // 許容入力軸トルク $( "#Spec_InputTorq").val( arrSpec[sKata]["InputTorq"]); sKata = ""; var ST0 = $( "#Para_ST0").val(); // var JcType = $( "#SelSpec_JcType").val(); // var WormKataRatio = $( "#SelSpec_WormRatio").val(); // var Flange, Tip; GenKataban(); // 期待寿命計算の表示 $( "#CalcLifeSpanJWM").hide(); $( "#CalcLifeSpanJWB").hide(); $( "#CalcLifeSpanJWH").hide(); switch( JcScrew) { case "JWM": $( "#CalcLifeSpanJWM").show(); break; case "JWB": $( "#CalcLifeSpanJWB").show(); break; case "JWH": $( "#CalcLifeSpanJWH").show(); break; } } // クレビス金具の有無セレクトメニュー変更時処理 // 有りの時、座屈強度確認の「据え付け状態」を"両端クレビス支持"で固定にする // 無しの時はフリー選択 function onChangeCrevice() { Crevice = $( "#SelSpec_Crevice").val(); if( Crevice == "C"){ $( "#optMountState_A").prop("disabled", true); $( "#optMountState_B").prop("disabled", false); $( "#optMountState_C").prop("disabled", true); $( "#Bs_MountState").val( "B"); }else{ $( "#optMountState_A").prop("disabled", false); $( "#optMountState_B").prop("disabled", true); $( "#optMountState_C").prop("disabled", false); $( "#Bs_MountState").val( ""); } $( "#Bs_MountState").change(); GenKataban(); } // 取付形状セレクトメニュー変更時処理 // 基準距離、ストローク、金具寸度、クレビス寸度を表示 function onChangeKeijo() { // var JcSize = $( "#SelSpec_JcSize").val(); // var JcScrew = $( "#SelSpec_JcScrew").val(); // var WormKataRatio = $( "#SelSpec_WormRatio").val(); // var JcType = $( "#SelSpec_JcType").val(); // UM URなど // var Jabara = $( "#SelSpec_Jabara").val(); // ジャバラ有無 // var Flange = $( "#SelSpec_Flange").val(); // var Tip = $( "#SelSpec_Tip").val(); // 先端金具の有無 // var Clevis = $( "#SelSpec_Crevice").val(); // クレビス有無 $( "#Bs_BasisDistance").val(); $( "#Bs_ClaspScale").val(); $( "#Bs_ClevisScale").val(); if( JcSize == ""){ return;} if( JcScrew == ""){ return;} if( WormKataRatio == ""){ return;} if( JcType == ""){ return;} var sKata = JcScrew + JcSize + WormKataRatio; var BasisDistance, ClaspScale, ClevisScale; if( JcType == "UR" || JcType == "DR"){ // 基準距離 BasisDistance = arrSpec[sKata][JcType + "_Fix"]; // 金具寸度 switch( Flange) { case "U": if( JcType == "UR"){ // UR U --> T_NutLen ClaspScale = arrSpec[sKata]["T_NutLen"]; }else{ // DR U --> T_NutThick ClaspScale = arrSpec[sKata]["T_NutThick"]; } break; case "D": if( JcType == "UR"){ // UR D --> T_NutThick ClaspScale = arrSpec[sKata]["T_NutThick"]; }else{ // DR D --> T_NutLen ClaspScale = arrSpec[sKata]["T_NutLen"]; } break; default: ClaspScale = "入力エラー"; break; } }else{ // 基準距離 if( Jabara == ""){ BasisDistance = arrSpec[sKata][JcType]; }else{ // ジャバラ有り BasisDistance = arrSpec[sKata][JcType + "J"]; } // 金具寸度 switch( Tip) { case "": // 先端金具標準 ClaspScale = arrSpec[sKata]["StdScrew"]; break; case "B": ClaspScale = arrSpec[sKata]["DogPointClasp"]; break; case "I": ClaspScale = arrSpec[sKata]["I_Clasp"]; break; case "M": ClaspScale = arrSpec[sKata]["TableClasp"]; break; } } // クレビス寸度 if( JcType == "US" || JcType == "UM"){ if( Clevis == ""){ ClevisScale = "++++"; }else{ ClevisScale = arrSpec[sKata]["ClevisClasp"]; } }else{ ClevisScale = "0"; } $( "#Bs_BasisDistance").val( BasisDistance); $( "#Bs_ClaspScale").val( ClaspScale); $( "#Bs_ClevisScale").val( ClevisScale); } // カウンターLS付リスト変更 // 内部LS、ポテンショメータ付、エンコーダ付を選択不可にする function onChangeCounterLs() { $( "#SelSpec_InsideLs").prop( "disabled", false); $( "#SelSpec_PMeter").prop( "disabled", false); $( "#SelSpec_Encoder").prop( "disabled", false); if( $( this).val() == "Y"){ $( "#SelSpec_InsideLs").prop( "disabled", true); $( "#SelSpec_PMeter").prop( "disabled", true); $( "#SelSpec_Encoder").prop( "disabled", true); } GenKataban(); } // カウンターLS付リストを選択不可にする // 内部LS、ポテンショメータ付、エンコーダ付リストを変更した際に実行 function DisableCounterLs() { var bDisabled = false; if( $( "#SelSpec_InsideLs").val() != ""){ bDisabled = true;} if( $( "#SelSpec_PMeter").val() != ""){ bDisabled = true;} if( $( "#SelSpec_Encoder").val() != ""){ bDisabled = true;} $( "#SelSpec_CounterLs").prop( "disabled", bDisabled); GenKataban(); } // セレクトメニュー「モータ」の変更時処理 function onChangeMotor() { Motor = $( "#SelSpec_Motor").val(); GenKataban(); } // ************ 実速度の確認 ************** // 必要入力回転速度 function CalcSpdNdash() { var Vdash = $( "#Para_Vdash").val(); var ScrewLead = $( "#Spec_ScrewLead").val(); // var WormRatio = $( "#Spec_WormRatio").val(); WormRatio = $( "#Spec_WormRatio").val(); $( "#Spd_Ndash").val( ""); $( "#Spd_Dsp_Ndash").val( ""); if( Vdash == ""){ return;} if( ScrewLead == ""){ return;} if( WormRatio == ""){ return;} if( !IsNumeric( Vdash)){ return;} if( !IsNumeric( ScrewLead)){ return;} if( !IsNumeric( WormRatio)){ return;} var Ndash = parseFloat( Vdash) / parseFloat( ScrewLead) * parseFloat( WormRatio); $( "#Spd_Ndash").val( Ndash); $( "#Spd_Dsp_Ndash").val( Ndash.toFixed( 2)); } // 必要減速比 function CalcSpd_idash() { var Nm = $( "#Spd_Nm").val(); var Ndash = $( "#Spd_Ndash").val(); $( "#Spd_idash").val( ""); $( "#Spd_Dsp_idash").val( ""); if( Nm == ""){ return;} if( Ndash == ""){ return;} if( !IsNumeric( Nm)){ return;} if( !IsNumeric( Ndash)){ return;} var idash = parseFloat( Nm) / parseFloat( Ndash); $( "#Spd_idash").val( idash); $( "#Spd_Dsp_idash").val( idash.toFixed( 2)); } // 実昇降速度[m/min] function CalcSpdV_min() { var Nm = $( "#Spd_Nm").val(); var ScrewLead = $( "#Spec_ScrewLead").val(); var i = trimzen( $( "#Spd_i").val()); // var WormRatio = $( "#Spec_WormRatio").val(); $( "#Spd_V").val(); $( "#Spd_Dsp_V").val(); if( Nm == ""){ return;} if( ScrewLead == ""){ return;} if( i == ""){ return;} if( WormRatio == ""){ return;} if( !IsNumeric( Nm)){ return;} if( !IsNumeric( ScrewLead)){ return;} if( !IsNumeric( i)){ return;} if( !IsNumeric( WormRatio)){ return;} var V = parseFloat( Nm) * parseFloat( ScrewLead) / ( parseFloat( i) * parseFloat( WormRatio)); $( "#Spd_V").val( V); $( "#Spd_Dsp_V").val( V.toFixed( 2)); } // 実昇降速度[mm/sec] function CalcSpdV_sec() { var V = $( "#Spd_V").val(); $( "#Spd_V_mms").val( ""); $( "#Spd_Dsp_V_mms").val( ""); if( V == ""){ return;} if( !IsNumeric( V)){ return;} var V_mms = parseFloat( V) * 1000 / 60; $( "#Spd_V_mms").val( V_mms); $( "#Spd_Dsp_V_mms").val( V_mms.toFixed( 2)); } // ************ 諸元 *************** // 必要入力軸トルク function CalcDtT() { var W0 = trimzen( $( "#Para_W0").val()); var Sf = trimzen( $( "#Para_Sf").val()); var ScrewLead = $( "#Spec_ScrewLead").val(); // var WormRatio = $( "#Spec_WormRatio").val(); var TotalEfficiency = $( "#Spec_TotalEfficiency").val(); var NoLoadTorq = $( "#Spec_NoLoadTorq").val(); $( "#Dt_T").val(); $( "#Dt_Dsp_T").val(); if( W0 == ""){ return;} if( Sf == ""){ return;} if( ScrewLead == ""){ return;} if( WormRatio == ""){ return;} if( TotalEfficiency == ""){ return;} if( NoLoadTorq == ""){ return;} if( !IsNumeric( W0)){ return;} if( !IsNumeric( Sf)){ return;} if( !IsNumeric( ScrewLead)){ return;} if( !IsNumeric( WormRatio)){ return;} if( !IsNumeric( TotalEfficiency)){ return;} if( !IsNumeric( NoLoadTorq)){ return;} var T = parseFloat( W0) * parseFloat( Sf) * 1000 * parseFloat( ScrewLead) / ( 2 * Math.PI * parseFloat( WormRatio) * parseFloat( TotalEfficiency)) + parseFloat( NoLoadTorq); $( "#Dt_T").val( T); $( "#Dt_Dsp_T").val( T.toFixed( 2)); } // 必要逆転トルク(参考値) function CalcDtTdash() { var W0 = $( "#Para_W0").val(); var Sf = $( "#Para_Sf").val(); var ScrewLead = $( "#Spec_ScrewLead").val(); var TotalEfficiency = $( "#Spec_TotalEfficiency").val(); // var WormRatio = $( "#Spec_WormRatio").val(); var NoLoadTorq = $( "#Spec_NoLoadTorq").val(); $( "#Dt_Tdash").val( ""); $( "#Dt_Dsp_Tdash").val( ""); if( W0 == ""){ return;} if( Sf == ""){ return;} if( ScrewLead == ""){ return;} if( WormRatio == ""){ return;} if( TotalEfficiency == ""){ return;} if( NoLoadTorq == ""){ return;} if( !IsNumeric( W0)){ return;} if( !IsNumeric( Sf)){ return;} if( !IsNumeric( ScrewLead)){ return;} if( !IsNumeric( WormRatio)){ return;} if( !IsNumeric( TotalEfficiency)){ return;} if( !IsNumeric( NoLoadTorq)){ return;} var Tdash = parseFloat( W0) * parseFloat( Sf) * 1000 * parseFloat( ScrewLead) * parseFloat( TotalEfficiency) / ( 2 * Math.PI * parseFloat( WormRatio)) - parseFloat( NoLoadTorq); $( "#Dt_Tdash").val( Tdash); $( "#Dt_Dsp_Tdash").val( Tdash.toFixed( 2)); } // 入力回転速度 function CalcDtN() { var V = $( "#Spd_V").val(); var ScrewLead = $( "#Spec_ScrewLead").val(); // var WormRatio = $( "#Spec_WormRatio").val(); $( "#Dt_N").val(); $( "#Dt_Dsp_N").val(); if( V == ""){ return;} if( ScrewLead == ""){ return;} if( WormRatio == ""){ return;} if( !IsNumeric( V)){ return;} if( !IsNumeric( ScrewLead)){ return;} if( !IsNumeric( WormRatio)){ return;} var N = parseFloat( V) / parseFloat( ScrewLead) * parseFloat( WormRatio); $( "#Dt_N").val( N); $( "#Dt_Dsp_N").val( N.toFixed( 2)); } // 必要入力容量 function CalcDtP() { var T = $( "#Dt_T").val(); var N = $( "#Dt_N").val(); $( "#Dt_P").val( ""); $( "#Dt_Dsp_P").val( ""); if( T == ""){ return;} if( N == ""){ return;} if( !IsNumeric( T)){ return;} if( !IsNumeric( N)){ return;} var P = parseFloat( T) * parseFloat( N) / 9550; $( "#Dt_P").val( P); $( "#Dt_Dsp_P").val( P.toFixed( 2)); } // 入力軸慣性モーメント function CalcDtIJ() { var W0 = $( "#Para_W0").val(); var ScrewLead = $( "#Spec_ScrewLead").val(); // var WormRatio = $( "#Spec_WormRatio").val(); $( "#Dt_IJ").val( ""); $( "#Dt_Dsp_IJ").val( ""); if( W0 == ""){ return;} if( ScrewLead == ""){ return;} if( WormRatio == ""){ return;} if( !IsNumeric( W0)){ return;} if( !IsNumeric( ScrewLead)){ return;} if( !IsNumeric( WormRatio)){ return;} // 20240222 元に戻す 野口 var IJ = parseFloat( W0) * 1000 / 9.8 * Math.pow( parseFloat( ScrewLead) / 2 / Math.PI / parseFloat( WormRatio), 2); //var IJ = parseFloat( W0) * 1000 / 9.8 * Math.pow( parseFloat( ScrewLead) / 2 / Math.PI * parseFloat( WormRatio), 2); //var IJ = parseFloat( W0) * 1000 / 9.8 * Math.pow( parseFloat( ScrewLead) / 2 / Math.PI / parseFloat( WormRatio), 2); $( "#Dt_IJ").val( IJ); $( "#Dt_Dsp_IJ").val( IJ.toFixed( 2)); } // ********** 座屈強度確認 *********** // 据付状態 function onChangeMountState() { var MountState = $( "#Bs_MountState").val(); if( MountState == ""){ $( "#Bs_m").val( ""); }else{ $( "#Bs_m").val( arrSpec[MountState]["m"]); } } // 作用点間距離 function CalcBsL1() { var BasisDistance = $( "#Bs_BasisDistance").val(); $( "#Bs_Stroke").val( $( "#Para_ST0").val()); var Stroke = $( "#Bs_Stroke").val(); var ClaspScale = $( "#Bs_ClaspScale").val(); var ClevisScale = $( "#Bs_ClevisScale").val(); $( "#Bs_L1").val( ""); $( "#Bs_Dsp_L1").val( ""); if( BasisDistance == ""){ BasisDistance = 0;} if( Stroke == ""){ Stroke = 0;} if( ClaspScale == ""){ ClaspScale = 0;} if( ClevisScale == ""){ ClevisScale = 0;} if( !IsNumeric( BasisDistance)){ BasisDistance = 0;} if( !IsNumeric( Stroke)){ Stroke = 0;} if( !IsNumeric( ClaspScale)){ ClaspScale = 0;} if( !IsNumeric( ClevisScale)){ ClevisScale = 0;} var L1 = parseFloat( BasisDistance) + parseFloat( Stroke) + parseFloat( ClaspScale) + parseFloat( ClevisScale); if( L1 == 0){ return;} $( "#Bs_L1").val( L1); $( "#Bs_Dsp_L1").val( L1.toFixed( 2)); } // 座屈強度 function CalcBsPCR() { var m = $( "#Bs_m").val(); var ScrewBtmW = $( "#Spec_ScrewBtmW").val(); var L1 = $( "#Bs_L1").val(); $( "#Bs_PCR").val( ""); $( "#Bs_Dsp_PCR").val( ""); if( m == ""){ return;} if( ScrewBtmW == ""){ return;} if( L1 == ""){ return;} if( !IsNumeric( m)){ return;} if( !IsNumeric( ScrewBtmW)){ return;} if( !IsNumeric( L1)){ return;} var PCR = parseFloat( m) * Math.pow( Math.pow( parseFloat( ScrewBtmW), 2) / parseFloat( L1), 2) / 1000; $( "#Bs_PCR").val( PCR); $( "#Bs_Dsp_PCR").val( PCR.toFixed( 2)); } // 座屈安全率 function CalcBsSF() { var W2 = $( "#Para_W2").val(); var Sfactor = $( "#Para_Sf").val(); var PCR = $( "#Bs_PCR").val(); $( "#Bs_SF").val( ""); $( "#Bs_Dsp_SF").val( ""); if( W2 == ""){ return;} if( Sfactor == ""){ return;} if( PCR == ""){ return;} if( !IsNumeric( W2)){ return;} if( !IsNumeric( Sfactor)){ return;} if( !IsNumeric( PCR)){ return;} if( W2 == "0"){ $( "#Bs_SF").val( "+++"); $( "#Bs_Dsp_SF").val( "+++"); }else{ var SF = parseFloat( PCR) / ( parseFloat( W2) * parseFloat( Sfactor)); $( "#Bs_SF").val( SF); $( "#Bs_Dsp_SF").val( SF.toFixed( 2)); } } // ストローク function CalcBsStroke() { $( "#Bs_Stroke").val( trimzen( $( "#Para_ST0").val())); } // *********** 許容ネジ軸回転速度確認 ************ // 支持係数 function CalcRs_n() { var JcType = $( "#SelSpec_JcType").val(); var MountState = $( "#Bs_MountState").val(); $( "#Rs_n").val( ""); $( "#Rs_n_ms").val( ""); if( JcType == "" || MountState == ""){ return; } if( JcType != "UR" && JcType != "DR"){ $( "#Rs_n").val( "++++"); return; } $( "#Rs_n").val( arrSpec[MountState]["n"]); $( "#Rs_n_ms").val( arrSpec[MountState]["MountState2"]); } // 作用点間距離 function CalcRsL2() { // var JcSize = $( "#SelSpec_JcSize").val(); // var JcScrew = $( "#SelSpec_JcScrew").val(); // var WormRatio = $( "#SelSpec_WormRatio").val(); // var JcType = $( "#SelSpec_JcType").val(); $( "#Rs_L2").val( ""); $( "#Rs_Dsp_L2").val( ""); if( JcSize == ""){ return;} if( JcScrew == ""){ return;} if( WormRatio == ""){ return;} if( JcType == ""){ return;} if( JcType != "UR" && JcType != "DR"){ $( "#Rs_L2").val( "++++"); $( "#Rs_Dsp_L2").val( "++++"); return; } var sKata = JcScrew + JcSize + WormKataRatio; var AxialEndFree = arrSpec[sKata][JcType + "_Free"]; var Stroke = trimzen( $( "#Para_ST0").val()); if( Stroke == ""){ Stroke = 0;} switch( $( "#Bs_MountState").val()) { case "A": var L2 = parseFloat( AxialEndFree) + parseFloat( Stroke); $( "#Rs_L2").val( L2); $( "#Rs_Dsp_L2").val( L2.toFixed( 2)); break; case "B": $( "#Rs_L2").val( "++++"); $( "#Rs_Dsp_L2").val( "++++"); break; case "C": L2 = parseFloat( $( "#Bs_L1").val()); $( "#Rs_L2").val( L2); $( "#Rs_Dsp_L2").val( L2.toFixed( 2)); break; } } // 許容ネジ軸回転速度 function CalcRsNC() { if( $( "#id_ScrewRollingSpeed").is( ":visible") == false){ return;} // var JcType = $( "#SelSpec_JcType").val(); var n = $( "#Rs_n").val(); var ScrewBtmW = $( "#Spec_ScrewBtmW").val(); var L2 = $( "#Rs_L2").val(); $( "#Rs_NC").val( ""); $( "#Rs_Dsp_NC").val( ""); if( JcType == ""){ return;} if( JcType != "UR" && JcType != "DR"){ $( "#Rs_NC").val( "++++"); $( "#Rs_Dsp_NC").val( "++++"); return; } if( n == ""){ return;} if( ScrewBtmW == ""){ return;} if( L2 == ""){ return;} if( !IsNumeric( n)){ return;} if( !IsNumeric( ScrewBtmW)){ return;} if( !IsNumeric( L2)){ return;} var NC = 96 * parseFloat( n) * parseFloat( ScrewBtmW) * 1000000 / Math.pow( parseFloat( L2), 2); $( "#Rs_NC").val( NC); $( "#Rs_Dsp_NC").val( NC.toFixed( 2)); } // ネジ軸回転速度 function CalcRsNS() { // var JcType = $( "#SelSpec_JcType").val(); var N = $( "#Dt_N").val(); // var WormRatio = $( "#Spec_WormRatio").val(); $( "#Rs_NS").val( ""); $( "#Rs_Dsp_NS").val( ""); if( JcType == ""){ return;} if( JcType != "UR" && JcType != "DR"){ $( "#Rs_NS").val( "++++"); $( "#Rs_Dsp_NS").val( "++++"); return; } if( N == ""){ return;} if( WormRatio == ""){ return;} if( !IsNumeric( N)){ return;} if( !IsNumeric( WormRatio)){ return;} var NS = parseFloat( N) / parseFloat( WormRatio); $( "#Rs_NS").val( NS); $( "#Rs_Dsp_NS").val( NS.toFixed( 2)); } // ********** 使用頻度確認 *********** // 使用時間 function CalcFreq_ts() { // var JcScrew = $( "#SelSpec_JcScrew").val(); var ST = $( "#Para_ST").val(); var V = $( "#Spd_V").val(); $( "#Freq_ts").val( ""); $( "#Freq_ts_Limit").val( ""); $( "#Freq_Dsp_ts").val( ""); if( JcScrew == ""){ return;} if( ST == ""){ return;} if( V == ""){ return;} if( !IsNumeric( ST)){ return;} if( !IsNumeric( V)){ return;} var ts_Limit; switch( JcScrew) { case "JWM": ts_Limit = "(ts <= 6min)"; break; case "JWB": case "JWH": ts_Limit = "(ts <= 9min)"; break; } var ts = parseFloat( ST) / ( parseFloat( V) * 1000); $( "#Freq_ts").val( ts); $( "#Freq_ts_Limit").val( ts_Limit); $( "#Freq_Dsp_ts").val( ts.toFixed( 2)); } // 負荷時間率 function CalcFreqED() { // var JcScrew = $( "#SelSpec_JcScrew").val(); var RunFreH = $( "#Para_RunFreH").val(); var ts = $( "#Freq_ts").val(); $( "#Freq_ED").val( ""); $( "#Freq_Dsp_ED").val( ""); if( JcScrew == ""){ return;} if( RunFreH == ""){ return;} if( ts == ""){ return;} if( !IsNumeric( RunFreH)){ return;} if( !IsNumeric( ts)){ return;} var ED_Limit; switch( JcScrew) { case "JWM": ED_Limit = "(%ED <= 20%ED)"; break; case "JWB": case "JWH": ED_Limit = "(%ED <= 30%ED)"; break; } var ED = parseFloat( RunFreH) * 2 * parseFloat( ts) * 100 / 60; $( "#Freq_ED").val( ED); $( "#Freq_ED_Limit").val( ED_Limit); $( "#Freq_Dsp_ED").val( ED.toFixed( 2)); } // ********** 期待寿命計算 ********** // 等価荷重 function CalcLfPE() { // var JcScrew = $( "#SelSpec_JcScrew").val(); var W0 = $( "#Para_W0").val(); var W1 = $( "#Para_W1").val(); var Sf = $( "#Para_Sf").val(); $( "#Lf_PE").val( ""); $( "#Lf_Dsp_PE").val( ""); if( JcScrew == ""){ return;} if( W0 == "" || W1 == "" || Sf == ""){ return;} if( !IsNumeric( W0) || !IsNumeric( W1) || !IsNumeric( Sf)){ return;} if( JcScrew == "JWM"){ $( "#Lf_PE").val( "++++"); $( "#Lf_Dsp_PE").val( "++++"); return; } var PE = ( parseFloat( W0) * parseFloat( Sf) * 2 + parseFloat( W1) * parseFloat( Sf)) / 3; $( "#Lf_PE").val( PE); $( "#Lf_Dsp_PE").val( PE.toFixed( 2)); } // ボールネジ動負荷容量 function CalcLfC() { // var JcScrew = $( "#SelSpec_JcScrew").val(); // var JcSize = $( "#SelSpec_JcSize").val(); // var WormKataRatio = $( "#SelSpec_WormRatio").val(); $( "#Lf_C").val( ""); if( JcSize == ""){ return;} if( JcScrew == ""){ return;} if( WormKataRatio == ""){ return;} var sKata = JcScrew + JcSize + WormKataRatio; $( "#Lf_C").val( arrSpec[sKata]["BScrewLoad"]); } // 短ストローク補正係数 function CalcLf_fs() { // var JcScrew = $( "#SelSpec_JcScrew").val(); // var JcSize = $( "#SelSpec_JcSize").val(); // var WormKataRatio = $( "#SelSpec_WormRatio").val(); var ST = trimzen( $( "#Para_ST").val()); $( "#Lf_fs").val( ""); if( JcScrew == "JWM"){ $( "#Lf_fs").val( "++++"); return; } if( JcScrew == ""){ return;} if( JcSize == ""){ return;} if( WormKataRatio == ""){ return;} if( ST == ""){ return;} if( !IsNumeric( ST)){ return;} var sKata = JcScrew + JcSize + WormKataRatio; var NutLen = arrSpec[sKata]["NutLen"]; var StrokePerNut = parseFloat( ST) / parseFloat( NutLen); if( StrokePerNut >= 0 && StrokePerNut < 1.01){ $( "#Lf_fs").val( arrSpec["0"]["fs"]); }else if( StrokePerNut >= 1.01 && StrokePerNut < 1.21){ $( "#Lf_fs").val( arrSpec["1.01"]["fs"]); }else if( StrokePerNut >= 1.21 && StrokePerNut < 1.41){ $( "#Lf_fs").val( arrSpec["1.21"]["fs"]); }else if( StrokePerNut >= 1.41 && StrokePerNut < 1.61){ $( "#Lf_fs").val( arrSpec["1.41"]["fs"]); }else if( StrokePerNut >= 1.61 && StrokePerNut < 1.81){ $( "#Lf_fs").val( arrSpec["1.61"]["fs"]); }else if( StrokePerNut >= 1.81 && StrokePerNut < 2.01){ $( "#Lf_fs").val( arrSpec["1.81"]["fs"]); }else if( StrokePerNut >= 2.01 && StrokePerNut < 2.21){ $( "#Lf_fs").val( arrSpec["2.01"]["fs"]); }else if( StrokePerNut >= 2.21){ $( "#Lf_fs").val( arrSpec["2.21"]["fs"]); } } // 寿命補正係数 function CalcLf_f1() { var PE = $( "#Lf_PE").val(); var fd = trimzen( $( "#Lf_fd").val()); var C = $( "#Lf_C").val(); var fh = trimzen( $( "#Lf_fh").val()); var fs = $( "#Lf_fs").val(); // var JcScrew = $( "#SelSpec_JcScrew").val(); if( JcScrew == "JWM"){ $( "#Lf_f1").val( "++++"); $( "#Lf_Dsp_f1").val( "++++"); return; } $( "#Lf_f1").val( ""); $( "#Lf_Dsp_f1").val( ""); if( PE == ""){ return;} if( fd == ""){ return;} if( C == ""){ return;} if( fh == ""){ return;} if( fs == ""){ return;} if( !IsNumeric( PE)){ return;} if( !IsNumeric( fd)){ return;} if( !IsNumeric( C)){ return;} if( !IsNumeric( fh)){ return;} if( !IsNumeric( fs)){ return;} var f1 = ( parseFloat( PE) * parseFloat( fd)) / ( parseFloat( C) * parseFloat( fh) * parseFloat( fs)); $( "#Lf_f1").val( f1); $( "#Lf_Dsp_f1").val( f1.toFixed( 2)); } // B10寿命総走行距離 function CalcLfL10() { // var JcScrew = $( "#SelSpec_JcScrew").val(); var f1 = $( "#Lf_f1").val(); if( JcScrew == "JWM"){ $( "#Lf_L10").val( "++++"); $( "#Lf_Dsp_L10").val( "++++"); return; } $( "#Lf_L10").val( ""); $( "#Lf_Dsp_L10").val( ""); if( f1 == ""){ return;} if( !IsNumeric( f1)){ return;} var L10 = 250 / Math.pow( parseFloat( f1), 3); $( "#Lf_L10").val( L10); $( "#Lf_Dsp_L10").val( L10.toFixed( 2)); } // 年間走行距離(ボールネジタイプ) function CalcLfLy() { // var JcScrew = $( "#SelSpec_JcScrew").val(); var ST = trimzen( $( "#Para_ST").val()); var RunFreH = trimzen( $( "#Para_RunFreH").val()); var RunFreD = trimzen( $( "#Para_RunFreD").val()); var RunFreY = trimzen( $( "#Para_RunFreY").val()); /* if( JcScrew == "JWM"){ $( "#Lf_Ly").val( "++++"); $( "#Lf_Dsp_Ly").val( "++++"); return; } */ $( "#Lf_Ly").val( ""); $( "#Lf_Dsp_Ly").val( ""); if( JcScrew == ""){ return;} if( ST == ""){ return;} if( RunFreH == ""){ return;} if( RunFreD == ""){ return;} if( RunFreY == ""){ return;} if( !IsNumeric( ST)){ return;} if( !IsNumeric( RunFreH)){ return;} if( !IsNumeric( RunFreD)){ return;} if( !IsNumeric( RunFreY)){ return;} var Ly = parseFloat( ST) * 2 * parseFloat( RunFreH) * parseFloat( RunFreD) * parseFloat( RunFreY) / 1000000; switch( JcScrew) { case "JWM": $( "#Lf_Ly_JWM").val( Ly); $( "#Lf_Dsp_Ly_JWM").val( Ly.toFixed( 2)); break; case "JWB": $( "#Lf_Ly").val( Ly); $( "#Lf_Dsp_Ly").val( Ly.toFixed( 2)); break; case "JWH": break; } } // 期待寿命(台形ネジタイプ) function CalcLfZ_JWM() { if( $( "#SelSpec_JcScrew").val() != "JWM"){ return;} // 台形ネジの場合、JWM050以下は5km、JWM100以上は1kmの寿命 var Ly = $( "#Lf_Dsp_Ly_JWM").val(); if( Ly == ""){ return;} var iJcSize = parseInt(JcSize); // var iJcSize = parseInt( $( "#SelSpec_JcSize").val()); var ikm; if( iJcSize <= 50){ ikm = 5; }else if( iJcSize >= 100){ ikm = 1; } var Z = ikm / parseFloat( Ly); $( "#Lf_Z_JWM").val( Z); $( "#Lf_Dsp_Z_JWM").val( Z.toFixed( 2)); } // 期待寿命(ボールネジタイプ) function CalcLfZ() { if( $( "#SelSpec_JcScrew").val() != "JWB"){ return;} // var JcScrew = $( "#SelSpec_JcScrew").val(); var L10 = $( "#Lf_L10").val(); var Ly = $( "#Lf_Ly").val(); /* if( JcScrew == "JWM"){ $( "#Lf_Z").val( "++++"); $( "#Lf_Dsp_Z").val( "++++"); return; } */ $( "#Lf_Z").val( ""); $( "#Lf_Dsp_Z").val( ""); if( JcScrew == ""){ return;} if( L10 == ""){ return;} if( Ly == ""){ return;} if( !IsNumeric( L10)){ return;} if( !IsNumeric( Ly)){ return;} var Z = parseFloat( L10) / parseFloat( Ly); $( "#Lf_Z").val( Z); $( "#Lf_Dsp_Z").val( Z.toFixed( 2)); } // ********** 荷重などのNGチェック *********** // 判定ボタンクリック時処理 function onClickJudge() { var key; IsAllInputOk = true; // 選定結果非表示にする $( "#ResultArea").hide(); $( "#CalcLifeSpanAreaJWM").hide(); $( "#CalcLifeSpanAreaJWB").hide(); $( "#CalcLifeSpanAreaJWH").hide(); // 判定欄を全て非表示にする HideJudgeArea(); arrErrMsg = new Array(); arrErrMsg["基本容量"] = new Array(); arrErrMsg["ストローク"] = new Array(); arrErrMsg["入力回転速度"] = new Array(); arrErrMsg["許容入力容量"] = new Array(); arrErrMsg["座屈強度"] = new Array(); arrErrMsg["ネジ軸回転速度"] = new Array(); arrErrMsg["使用時間"] = new Array(); arrErrMsg["負荷時間率"] = new Array(); arrErrMsg["基本容量"]["Msg"] = ""; arrErrMsg["ストローク"]["Msg"] = ""; arrErrMsg["入力回転速度"]["Msg"] = ""; arrErrMsg["許容入力容量"]["Msg"] = ""; arrErrMsg["座屈強度"]["Msg"] = ""; arrErrMsg["ネジ軸回転速度"]["Msg"] = ""; arrErrMsg["使用時間"]["Msg"] = ""; arrErrMsg["負荷時間率"]["Msg"] = ""; CheckSpecCapacity(); // 容量NG if( IsAllInputOk == false){ return;} // 必須項目に入力無しの場合はリターン CheckSpecStroke(); // 標準ストローク外! if( IsAllInputOk == false){ return;} CheckInputRollSpeed(); // 【諸元】-入力回転速度 if( IsAllInputOk == false){ return;} CheckInputCapa(); // 【諸元】-必要入力容量 if( IsAllInputOk == false){ return;} CheckPCR(); // 【座屈強度】-座屈安全率 if( IsAllInputOk == false){ return;} CheckNS(); // 【許容ネジ軸回転速度確認】-ネジ軸回転速度 if( IsAllInputOk == false){ return;} Check_ts(); // 【使用頻度確認】-使用時間 if( IsAllInputOk == false){ return;} CheckED(); // 【使用頻度確認】-負荷時間率 for( key in arrErrMsg) { if( arrErrMsg[key]["Msg"] != ""){ alert( arrErrMsg[key]["Msg"]); location.hash = arrErrMsg[key]["Link"]; delete arrErrMsg; return; } } // 未入力項目ありの場合 if( IsAllInputOk == false){ alert( '未入力の項目があり、判定できませんでした。'); delete arrErrMsg; return; } delete arrErrMsg; alert( '選定結果をご確認ください。'); // 選定結果エリアを表示 $( "#ResultArea").show(); switch( $( "#SelSpec_JcScrew").val()) { case "JWM": $( "#CalcLifeSpanAreaJWM").show(); break; case "JWB": $( "#CalcLifeSpanAreaJWB").show(); break; case "JWH": $( "#CalcLifeSpanAreaJWH").show(); break; } $( "#ResultKata").val( $( "#Spec_Kataban").val()); // 選定形番 $( "#ResultInputCapa").val( $( "#Dt_Dsp_P").val()); // 必要入力容量 $( "#ResultRatioArea").hide(); if( parseFloat( $( "#Spd_i").val()) > 1){ $( "#ResultRatioArea").show(); $( "#ResultRatio").val( "1/" + $( "#Spd_i").val()); // 選定形番 } $( "#ResultInputCapa").focus(); } // 容量NG function CheckSpecCapacity() { var W0 = trimzen( $( "#Para_W0").val()); var W1 = trimzen( $( "#Para_W1").val()); var W2 = trimzen( $( "#Para_W2").val()); var Sf = trimzen( $( "#Para_Sf").val()); var Capacity = $( "#Spec_Capacity").val(); $( "#id_OkSpecCapa").hide(); $( "#id_ErrSpecCapa").hide(); if( W0 == ""){ IsAllInputOk = false; alert( '昇降荷重(最大)を入力してください。'); $( "#Para_W0").focus(); return; } if( W1 == ""){ IsAllInputOk = false; alert( '昇降荷重(最小)を入力してください。'); $( "#Para_W1").focus(); return; } if( W2 == ""){ IsAllInputOk = false; alert( '座屈強度確認荷重を入力してください。'); $( "#Para_W2").focus(); return; } if( Sf == ""){ IsAllInputOk = false; alert( '使用係数を入力してください。'); $( "#Para_Sf").focus(); return; } if( Capacity == ""){ IsAllInputOk = false; alert( 'リニパワージャッキの仕様を選択してください。'); $( "#SelSpec_JcSize").focus(); return; } if( !IsNumeric( W0)){ IsAllInputOk = false; alert( '有効な数値を入力してください。'); $( "#Para_W0").select(); return; } if( !IsNumeric( W1)){ IsAllInputOk = false; alert( '有効な数値を入力してください。'); $( "#Para_W1").select(); return; } if( !IsNumeric( W2)){ IsAllInputOk = false; alert( '有効な数値を入力してください。'); $( "#Para_W2").select(); return; } if( !IsNumeric( Sf)){ IsAllInputOk = false; alert( '有効な数値を入力してください。'); $( "#Para_Sf").select(); return; } var sErrMsg = "基本容量不足です。\n選定条件を再設定してください。"; var sAreaId = "SpecCapaArea"; var sMsgId = "SpecCapa"; var sTarget = "基本容量"; var sJudgeMsg = sTarget + "NG!"; var sCls = "JudgeNg"; if( !IsNumeric( Capacity)){ arrErrMsg["基本容量"]["Msg"] = sErrMsg; arrErrMsg["基本容量"]["Link"] = "Spec"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } var WS0 = parseFloat( W0) * parseFloat( Sf); var WS1 = parseFloat( W1) * parseFloat( Sf); var WS2 = parseFloat( W2) * parseFloat( Sf); if( parseFloat( Capacity) < WS0 || parseFloat( Capacity) < WS1 || parseFloat( Capacity) < WS2){ arrErrMsg["基本容量"]["Msg"] = sErrMsg; arrErrMsg["基本容量"]["Link"] = "Spec"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } sCls = "JudgeOk"; sJudgeMsg = sTarget + " OK!"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); } // 標準ストローク外! function CheckSpecStroke() { // var JcSize = $( "#SelSpec_JcSize").val(); // var JcScrew = $( "#SelSpec_JcScrew").val(); var WormKataRatio = $( "#SelSpec_WormRatio").val(); var ST0 = trimzen( $( "#Para_ST0").val()); if( JcSize == ""){ IsAllInputOk = false; alert( 'ジャッキサイズを選択してください。'); $( "#SelSpec_JcSize").focus(); return; } if( JcScrew == ""){ IsAllInputOk = false; alert( 'ジャッキタイプを選択してください。'); $( "#SelSpec_JcScrew").focus(); return; } if( WormKataRatio == ""){ IsAllInputOk = false; alert( 'ウォーム速比を選択してください。'); $( "#SelSpec_WormRatio").focus(); return; } if( ST0 == ""){ IsAllInputOk = false; alert( 'ストロークを入力してください。'); $( "#Para_ST0").focus(); return; } if( !IsNumeric( ST0)){ IsAllInputOk = false; alert( '有効な数値を入力してください。'); $( "#Para_ST0").select(); return; } var sKata = JcScrew + JcSize + WormKataRatio; var sErrMsg = "標準ストローク値を超えています。\n選定条件を再設定してください。"; var sAreaId = "SpecCapaArea"; var sMsgId = "SpecStroke"; var sTarget = "標準ストローク"; var sJudgeMsg = sTarget + "NG!"; var sCls = "JudgeNg"; if( parseFloat( ST0) > parseFloat( arrSpec[sKata]["StdMaxStroke"])){ arrErrMsg["ストローク"]["Msg"] = ""; arrErrMsg["ストローク"]["Link"] = "Spec"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } sCls = "JudgeOk"; sJudgeMsg = sTarget + " OK!"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); } // 【諸元】-入力回転速度 function CheckInputRollSpeed() { var N = $( "#Dt_N").val(); if( N == ""){ IsAllInputOk = false; return; } var sErrMsg = "入力回転速度オーバーです。\n選定条件を再設定してください。"; var sAreaId = "DtRollSpeedArea"; var sMsgId = "DtRollSpeed"; var sTarget = "入力回転速度"; var sJudgeMsg = sTarget + "NG!"; var sCls = "JudgeNg"; if( !IsNumeric( N)){ arrErrMsg["入力回転速度"]["Msg"] = sErrMsg; arrErrMsg["入力回転速度"]["Link"] = "Data"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } if( parseFloat( N) > 1800){ arrErrMsg["入力回転速度"]["Msg"] = sErrMsg; arrErrMsg["入力回転速度"]["Link"] = "Data"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } sCls = "JudgeOk"; sJudgeMsg = sTarget + " OK!"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); } // 【諸元】-必要入力容量 function CheckInputCapa() { var P = $( "#Dt_P").val(); var MaxInputCapa = $( "#Spec_MaxInputCapa").val(); if( P == ""){ IsAllInputOk = false; return; } if( MaxInputCapa == ""){ IsAllInputOk = false; return; } var sErrMsg = "許容入力容量オーバーです。\n選定条件を再設定してください。"; var sAreaId = "DtRollSpeedArea"; var sMsgId = "DtInputCapa"; var sTarget = "許容入力容量"; var sJudgeMsg = sTarget + "NG!"; var sCls = "JudgeNg"; if( !IsNumeric( P) || !IsNumeric( MaxInputCapa)){ arrErrMsg["許容入力容量"]["Msg"] = sErrMsg; arrErrMsg["許容入力容量"]["Link"] = "Data"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } if( parseFloat( P) > parseFloat( MaxInputCapa)){ arrErrMsg["許容入力容量"]["Msg"] = sErrMsg; arrErrMsg["許容入力容量"]["Link"] = "Data"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } sCls = "JudgeOk"; sJudgeMsg = sTarget + " OK!"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); } // 【座屈強度】-座屈安全率 function CheckPCR() { var SF = $( "#Bs_SF").val(); //$( "#id_OkBsBucklingStrength").hide(); //$( "#id_ErrBsBucklingStrength").hide(); if( $( "#Bs_MountState").val() == ""){ $( "#Bs_MountState").focus(); alert( '据え付け状態を選択してください。'); IsAllInputOk = false; return; } if( SF == ""){ IsAllInputOk = false; return; } var sErrMsg = "座屈強度が不足しています。\n選定条件を再設定してください。"; var sAreaId = "BsBucklingStrengthArea"; var sMsgId = "BsBucklingStrength"; var sTarget = "座屈強度"; var sJudgeMsg = sTarget + "NG!"; var sCls = "JudgeNg"; if( !IsNumeric( SF)){ arrErrMsg["座屈強度"]["Msg"] = sErrMsg; arrErrMsg["座屈強度"]["Link"] = "BucklingStrength"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } if( parseFloat( SF) < 4){ arrErrMsg["座屈強度"]["Msg"] = sErrMsg; arrErrMsg["座屈強度"]["Link"] = "BucklingStrength"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } sCls = "JudgeOk"; sJudgeMsg = sTarget + " OK!"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); } // 【許容ネジ軸回転速度確認】-ネジ軸回転速度 function CheckNS() { // トラベリングナットのみ if( $( "#id_ScrewRollingSpeed").is( ":visible") == false){ return;} var NC = $( "#Rs_NC").val(); var NS = $( "#Rs_NS").val(); if( NC == "" || NS == ""){ IsAllInputOk = false; return; } var sErrMsg = ""; var sAreaId = "JudgeRsScrewSpeedArea"; var sMsgId = "JudgeRsScrewSpeed"; var sTarget = "ネジ軸回転速度"; var sJudgeMsg = sTarget + "NG!"; var sCls = "JudgeNg"; if( !IsNumeric( NC) || !IsNumeric( NS)){ arrErrMsg["ネジ軸回転速度"]["Msg"] = sErrMsg; arrErrMsg["ネジ軸回転速度"]["Link"] = "RollingSpeed"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } if( parseFloat( NS) > parseFloat( NC)){ arrErrMsg["ネジ軸回転速度"]["Msg"] = sErrMsg; arrErrMsg["ネジ軸回転速度"]["Link"] = "RollingSpeed"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } sCls = "JudgeOk"; sJudgeMsg = sTarget + " OK!"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); } // 【使用頻度確認】-使用時間 function Check_ts() { // var JcScrew = $( "#SelSpec_JcScrew").val(); var ts = $( "#Freq_ts").val(); if( JcScrew == ""){ $( "#SelSpec_JcScrew").focus(); alert( 'ジャッキタイプを選択してください。'); IsAllInputOk = false; return; } if( ts == ""){ // ts = ST/(V×1000) IsAllInputOk = false; if( $( "#Para_ST").val() == ""){ $( "#Para_ST").focus(); alert( '実ストロークを入力してください。'); } if( $( "#Spd_i").val() == ""){ $( "#Spd_i").focus(); alert( '実際の総減速比を入力してください。'); } return; } var sErrMsg = "使用時間オーバーです。\n選定条件を再設定してください。"; var sAreaId = "JudgeFreUseTimeArea"; var sMsgId = "JudgeFreUseTime"; var sTarget = "使用時間"; var sJudgeMsg = sTarget + "NG!"; var sCls = "JudgeNg"; if( !IsNumeric( ts)){ arrErrMsg["使用時間"] = sErrMsg; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } switch( JcScrew) { case "JWM": if( parseFloat( ts) > 6){ arrErrMsg["使用時間"]["Msg"] = sErrMsg; arrErrMsg["使用時間"]["Link"] = "Frequency"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } break; case "JWB": case "JWH": if( parseFloat( ts) > 9){ arrErrMsg["使用時間"]["Msg"] = sErrMsg; arrErrMsg["使用時間"]["Link"] = "Frequency"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } break; } sCls = "JudgeOk"; sJudgeMsg = sTarget + " OK!"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); } // 【使用頻度確認】-負荷時間率 function CheckED() { // var JcScrew = $( "#SelSpec_JcScrew").val(); var ED = $( "#Freq_ED").val(); if( JcScrew == "" || ED == ""){ IsAllInputOk = false; return; } var sErrMsg = "負荷時間率オーバーです。\n選定条件を再設定してください。"; var sAreaId = "JudgeFreUseTimeArea"; var sMsgId = "JudgeFreLoadTime"; var sTarget = "負荷時間率"; var sJudgeMsg = sTarget + "NG!"; var sCls = "JudgeNg"; if( !IsNumeric( ED)){ arrErrMsg["負荷時間率"]["Msg"] = sErrMsg; arrErrMsg["負荷時間率"]["Link"] = "Frequency"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } switch( JcScrew) { case "JWM": if( ED > 20){ arrErrMsg["負荷時間率"]["Msg"] = sErrMsg; arrErrMsg["負荷時間率"]["Link"] = "Frequency"; //$( "#id_ErrFreLoadTime").show(); ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } break; case "JWB": case "JWH": if( ED > 30){ arrErrMsg["負荷時間率"]["Msg"] = sErrMsg; arrErrMsg["負荷時間率"]["Link"] = "Frequency"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); return; } break; } sCls = "JudgeOk"; sJudgeMsg = sTarget + " OK!"; ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg); } // 判定欄を全非表示にする function HideJudgeArea() { $( "div.Judge").hide(); $( "p[id^=Judge]").hide(); } // 判定結果を表示 // sAreaId --> 判定結果を表示するDIVタグID // sMsgId --> 判定文言を表示するPタグID // sCls --> 上記Pタグに設定するクラス名 // sJudgeMsg --> 判定文言 function ShowJudge( sAreaId, sMsgId, sCls, sJudgeMsg) { if( $( "#" + sAreaId).is( ":visible") == false){ $( "#" + sAreaId).show();} $( "#" + sMsgId).html( "" + sJudgeMsg + ""); $( "#" + sMsgId).show(); } // テスト用値入力 function TestInput() { if(!event.shiftKey){return;} if(event.keyCode != 36){return;} // HOME $( "#Para_W0").val( "9.8"); $( "#Para_W1").val( "4.9"); $( "#Para_Sf").val( "1.3"); $( "#Para_W2").val( "9.8"); $( "#Para_Vdash").val( "0.4"); $( "#Para_ST0").val( "300"); $( "#Para_ST").val( "280"); $( "#Para_RunFreH").val( "1"); $( "#Para_RunFreD").val( "10"); $( "#Para_RunFreY").val( "240"); $( "#SelSpec_JcSize").val( "025"); $( "#SelSpec_JcScrew").val( "JWM"); $( "#SelSpec_JcType").val( "DM"); $( "#SelSpec_WormRatio").val( "H"); $( "#SelSpec_Tip").val( "M"); $( "#SelSpec_Jabara").val( "J"); $( "#SelSpec_Crevice").val( "C"); $( "#SelSpec_CounterLs").val( "Y"); $( "#SelSpec_InsideLs").val( "K2"); $( "#SelSpec_PMeter").val( "P"); $( "#SelSpec_Encoder").val( "R"); $( "#SelSpec_Motor").val( "G2"); $( "#Spd_Nm").val( "1500"); $( "#Spd_i").val( "5"); $( "#Bs_MountState").val( "A"); CalcAll(); }