2015年8月27日木曜日

FaceGear 設計の参考文献

上図はデータの一部。
全体は下記よりダウンロード。(ISO系の企業、Swiss)
http://m-sudo.sakura.ne.jp/soft_data/kikaisekkei_data/PDF_Bunken_Siryou/kisssoft/Facegears.pdf

2015年8月26日水曜日

Binomial factorials の展開式(設計とはほぼ無縁です)

直接、機械設計には無縁のテーマ。
楕円の周長を求める計算式に関係します。
http://m-sudo.blogspot.jp/2014/08/blog-post_10.htmlで紹介したソフトでより多数項にしたばあいの展開式の参考データ。

下記Webに楕円周長の部分展開式が記載されている。
下図は楕円周長を求める2項係数を利用した展開式。6次以降の計算式は上図を参照。

この計算式を使用した計算結果の精度は下記ページにて紹介済み。

しかし、楕円周長の計算は楕円積分を利用することがExcelの使用によって、15桁ほぼフル精度で算出可能である。下記Web参照。

2015年8月25日火曜日

プリマス工科大学の設計資料(機械製図:ISO系)をダウンロード可能に

表題の件、可能にしました。下記ブログより。(発行時期が古いので要注意)
http://m-sudo.blogspot.jp/2013/10/blog-post.html
主として投影法についての説明。(UK:英国の規格_ISO系)

2015年8月24日月曜日

改めて エクセル ~ AutoCAD LT へ

上図のWebもご参考に。
http://excelvba.info/
Excel ~ AutoCAD LT 描画を志している方のWebです。割と初心者向けと思います。
平明に紹介されているのかとも思います。


(続続) Excel ~ AutoCAD LT へ

画像は下記Webより
http://blog.goo.ne.jp/blue_mary_39/e/7231db39d068c8527dd72d59794ff3e7
単に、エクセルデータをコンマつきデータに変換するだけです。この操作はエクセルのCSV操作でも可能だが、すごく簡潔で判りやすいので紹介しました。上記URLに是非寄っていただきたい。

(続)エクセルからAutoCAD LT2000 へ

みなさんもご存知と思いますが、素晴らしいサイトです。自作マクロの質の高さはいまだに健在です。10年以上も昔のWebです。
http://www.geocities.jp/sugawarass/sndexcel.html

処理速度の高い最新のPCでは、AutoCAD LT 2000のように旧いソフトをエクセルのマクロで動かそうとすると変換時にPCの画面がAutoCAD上でとまってしまいます。その場合、上の画像中のコードを引用して下記の変更を行う必要があります。

追記)2015.08.26
下記コードは標準モジュールに設定してください。sheet1のコードは削除してください。このようにしないとタイマーが動作せずソフトが機能しません。面倒な方は下記リンクをクリックしてください。当方で修正したファイルが導入できます。
http://m-sudo.sakura.ne.jp/soft_data/kikaisekkei_data/acadout3A.zip

引用:
Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)  ’<<追加 最上段に追加。32bit機であれば2007以降の版でもOKと思われる。

Private Sub CommandButton1_Click()

    Dim x As Double, y As Double
    
    On Error GoTo ErrorHand
    
    'エクセルのセルデータのAutoCAD LT2000 への送信
    
    fnb = "C:\My Documents\op.scr"
    Close
    Open fnb For Output As #1
    
    jj = 0
    
    Do
        If Worksheets("Sheet1").Cells(1, jj + 1).Value = "" Then Exit Do
        Print #1, "filedia 1"
 Print #1, "PLINE"
        ii = 0
        Do
            ii = ii + 1
            cc = 0
            For j = jj + 1 To jj + 2
                If Worksheets("Sheet1").Cells(ii, j).Value = "" Then cc = 1: Exit For
                If j = jj + 1 Then x = Worksheets("Sheet1").Cells(ii, j).Value
                If j = jj + 2 Then y = Worksheets("Sheet1").Cells(ii, j).Value
            Next j
            If cc = 1 Then Exit Do
            Print #1, "none "; Trim(Str(x)); ","; Trim(Str(y))
            
        Loop Until ii > 1000
        
        Print #1, ""
        jj = jj + 2
        
    Loop Until jj > 1000
    
    Print #1, "filedia 1"
    Close
        
    AppActivate "AutoCAD"  ' アクティブにします。

  Call Sleep(Tm * 10)                   ’<<追加 Tm の単位はミリ秒だが、タイマーは当てにしないほうが良い。PCの機種によってはタイム差が大きい。

                               ' Tm の代わりに数値を記載

    SendKeys "filedia 0 " & "script" & Chr$(13) & fnb & Chr$(13), True
    
    Exit Sub

ErrorHand:
    Close
    Exit Sub

End Sub

このコードを走らせるとポリラインが AutoCAD LT に描かれます。
訂正)
以下の記述はCADで操作するスプラインとは異なる図形になります。この差異は追って 項を改めて、新規に説明します。下記コードの操作で得られたスプラインはポリラインの端を通過しません。

AutoCAD LT 上で描かれたポリラインを マウスで選択 => 離れたところで右ボタンクリック
=> ポリライン編集 の表示 をクリック  => コマンドラインに S を入力 この操作でポリラインがスプラインに変わります。お試しください。
ただ、私はこのスプラインの品質にちょっと不安があるので、当方自作のソフトを使用します。

エクセルから直接AutoCAD LTにデータ転送後、点列を描画するソフト

追記)2015.11.30
    過日、予告を行った通りですが、本ソフトは明日より有償とします。(プログラムコードは有償購入者に公開します。) 譲渡価格は¥200。ご希望の方はメールにてご連絡お願いします。





エクセルのデータをDXF変換を介さずに、Autocad LTに描画するソフトを作成した。このソフト作成については、当方で作成したものの、どうしても動作せず、やむを得ず、IT上の業者に作成を依頼した(有償)。作成されたデータを動かしても、依然として動作しない。当初はWindowsXPが壊れてしまったのかと心配したが、よく考えると原因がExcelからAutoCADへのデータの転送のタイミングと気がつき、対応するコードの改修をしたところ動作した。この改修は業者ではなく、当方で行ったものです。この改修を業者依頼前の当方作成のソフトに行ったところ、こちらも動作した。(こちらはポリライン作成。調子に乗ってスプラインも可能かと思ったが、ちょっとうまく行かない(歯形は描画したが)ので中止した。)

このソフト開発の目的はDXF変換を通すと数値が丸められてしまうので、これを有効数字8桁の精度を確保したままでAutoCADLT上に描画することでした。上の図のとおり、うまく、データが渡っています。

上記ソフトは冒頭のWebより直接ダウンロード可能です。当初は、当方、プログラムコードをも紹介のつもりでしたが、業者の意向があって、非公開とさせて頂きました。(非公開にするような内容でもないのですが。)


2015年8月8日土曜日

Big _Data なるものへの識見:Webより

下記 URLをご参照。
http://jbpress.ismedia.jp/articles/-/44480

コメント欄を含めて関心を抱かせる記述が目につきます。ビッグデータで無価値なるものは(経済的にメリットがないものは淘汰される・・・・。)という方向性。小生は、ビッグデータに経済的関与はあり得ても、その方向にビッグデータの意義を収斂させることには違和感を抱きます。

2015年8月5日水曜日

JIS_溶接記号_一覧(PDF)

下記よりJIS_溶接記号_一覧(PDF)をダウンロード可能にしました。
但し、スポット溶接などの新表示には対応していません。
http://m-sudo.sakura.ne.jp/soft_data/kikaisekkei_data/List_weld_JIS.pdf

2015年8月3日月曜日

AutoCAD_LT_2000でまたぎ歯厚を検証

追記)2015.08.05 AutoCAD_LT_2000による高精度寸法確認は、現在、再現性がなくて、戸惑っております。現在小数点以下3桁目で誤差が発生。0.0015㎜レベル。
追記)2015.08.05 誤差の原因をよく考えてみると、理由が2つほど考えられる。一つは、分割数が少ないために曲線のスプライン化が大まかにすぎた。もう一つは、スプライン化を歯元曲線部と歯面曲線部で一つのスプラインとして描画したために誤差が拡がった。スプライン化は歯元曲線と歯面曲線部で分けて描画する必要があった。後日、この対策を織り込んで計測してみよう。

追記)2017.03.23
またぎ歯厚許容値の計算式を変更したので下記記述は参考程度に。ソフトウエア修正完了後は
下記記述は新規に全面更新予定です。
--------------------------------------------------------------------------------

上図はAutoCAD_LT2000を利用してInvolute_Curve_3.1のまたぎ歯厚の出力値を検証した図。

MicrocadamV5R2でも検証したが、AutoCAD_LT_2000の方が精度がよかった。モジュール5で有効数字6桁目まで合致していれば十分実用に耐えると判断してよいと思う。この作業で、AutoCAD_LT_2000の精度確認に10日ほど要した。AutoCAD_LTの使い方に不慣れな箇所が確認できたことも貴重な副産物である。