球やアールを展開図にする

アールはともかく球は展開図にできない。サッカーボールは球だが、複数の六角形の展開図でボールっぽく作ることができる。だから、細かくすれば球に見える。

ソリッドワークス/SolidWorksの板金のタブの「とめつぎフランジ」は、スケッチで直線を書くとフランジを作ってくれる。いろいろな角度があり、複雑な形状を描く場合は便利です。次図は、直線をアールっぽく、底を12多角形で円っぽく。

球の1/8やアールが多いと加工がしにくい。溶接するとなると直線的で短い方がひずみ、研磨が少なくていい。

参考にこっちも。

展開は最後の最後にしてます。

正三角錐 板金展開図

  1. 板金に変換
  2. とめつぎフランジ
  3. エッジフランジ

上記は板金のタブにあるコマンドです。正三角錐を上記のコマンドで作成します。

その前に経過説明。

ソリッドワークス/Solidworksを使い始めて、同僚から「三角錐」って作るの難しいよ」と言われる。

確かに、「押し出しボス」を多用するのでななかなか斜めに描くことは慣れていなし。それに、斜面がある図面って3Dではなく三面図なんかでは読図が難しい。

以前にこんなのアップしている。

高評価もいただいている。m(_ _)m。

時は随分と経って、技能もアップしたので以下の展開図可能な正三角錐を作った。順に、

  1. 板金に変換
  2. とめつぎフランジ
  3. エッジフランジ

角エルボ(出入り口のサイズ違い)

入り口と出口のサイズが違い、ねじりや曲げにくい板厚3.2以上を前提に展開図を描く。

ロフトで作ると絞りや打ち出し加工が必要になる。ロフトの作成例

まず、球は展開できない。円筒や面は展開図を作ることができる。面は三角形で考える。

ソリッドワークス/Solidworksのサーフェスを使って展開できない状況を判断する。ロフトを使って3Dモデルを作った。

ロフトで絞り、打ち出しが必要なことを確認。展開サーフェス、変形プロットで確認する。

展開サーフェースを作る時にメッシュ/ワイヤーフレームが見える。サーフェースってワイヤーフレームなんです。CADの表現方法、モデルとして以下の3つある。

  1. ワイヤーフレーム
  2. サーフェース
  3. ソリッド

ソリッドワークス/SolidWorksのサーフェースはワイヤーフレームでもある。

で、

ワイヤーフレームと言えば三角形、展開図ができる最小の面でもある。三角形ができれば2つの直角三角形が作れるので展開図の手法の三角形法が使える。ん。つなげすぎか。

さて、元に話に戻って。

角エルボを作る基本部分の作成方法

展開可能な角エルボの例。出口側は直線の面。

Rの部分は順次変化するように変更。

角ダクトの骨格

以下はマクロ記録を一部修正したます。動画の下に置きたかったが5000文字までという制約で置けませんでした。

Option Explicit

Dim swApp As SldWorks.SldWorks

Dim Part As SldWorks.PartDoc
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()


Set swApp = Application.SldWorks

Set Part = swApp.ActiveDoc
Dim myModelView As Object
Set myModelView = Part.ActiveView
myModelView.FrameState = swWindowState_e.swWindowMaximized

Dim skSegment As Object
Set skSegment = Part.SketchManager.Create3PointArc(0.025, 0.084, 0#, 0.118798, 0.029, 0#, 0.088, 0.073, 0#)
Part.ClearSelection2 True
Set skSegment = Part.SketchManager.CreateCenterLine(0.025, 0.084, 0#, 0.109064, 0.084, 0#)
Part.SetPickMode
Part.ClearSelection2 True
boolstatus = Part.Extension.SketchBoxSelect("0.079", "0.058", "0.000", "0.090", "0.095", "0.000")
boolstatus = Part.Extension.SelectByID2("Arc1", "SKETCHSEGMENT", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("Line1", "SKETCHSEGMENT", 0, 0, 0, True, 0, Nothing, 0)
Part.SketchAddConstraints "sgTANGENT"
Part.ClearSelection2 True
Part.SketchManager.InsertSketch True
boolstatus = Part.Extension.SelectByID2("平面", "PLANE", 0, 0, 0, False, 0, Nothing, 0)
Part.SketchManager.InsertSketch True

Part.ShowNamedView2 "*等角投影", 7

Part.ClearSelection2 True
boolstatus = Part.Extension.SetUserPreferenceToggle(swUserPreferenceToggle_e.swSketchAddConstToRectEntity, swUserPreferenceOption_e.swDetailingNoOptionSpecified, False)
boolstatus = Part.Extension.SetUserPreferenceToggle(swUserPreferenceToggle_e.swSketchAddConstLineDiagonalType, swUserPreferenceOption_e.swDetailingNoOptionSpecified, True)
Dim vSkLines As Variant
vSkLines = Part.SketchManager.CreateCornerRectangle(0.061, 0.046, 0, 0.11, -0.05, 0)
Part.ClearSelection2 True
Part.SketchManager.InsertSketch True
boolstatus = Part.Extension.SelectByID2("スケッチ1", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("スケッチ1", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.SelectedFeatureProperties(0, 0, 0, 0, 0, 0, 0, 1, 0, "外側R")
boolstatus = Part.Extension.SelectByID2("スケッチ2", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("スケッチ2", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.SelectedFeatureProperties(0, 0, 0, 0, 0, 0, 0, 1, 0, "入り口")
boolstatus = Part.Extension.SelectByID2("右側面", "PLANE", 0, 0, 0, False, 0, Nothing, 0)
Part.SketchManager.InsertSketch True
Part.ClearSelection2 True
boolstatus = Part.Extension.SetUserPreferenceToggle(swUserPreferenceToggle_e.swSketchAddConstToRectEntity, swUserPreferenceOption_e.swDetailingNoOptionSpecified, False)
boolstatus = Part.Extension.SetUserPreferenceToggle(swUserPreferenceToggle_e.swSketchAddConstLineDiagonalType, swUserPreferenceOption_e.swDetailingNoOptionSpecified, True)
vSkLines = Part.SketchManager.CreateCornerRectangle(-0.041, 0.074, 0, 0.041, 0.033, 0)
Part.ClearSelection2 True
Part.SketchManager.InsertSketch True
boolstatus = Part.Extension.SelectByID2("スケッチ3", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.SelectedFeatureProperties(0, 0, 0, 0, 0, 0, 0, 1, 0, "出口")
boolstatus = Part.Extension.SelectByID2("出口", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
Part.EditSketch
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("Line3", "SKETCHSEGMENT", 0, 0, 0, False, 0, Nothing, 0)
Part.SelectMidpoint
boolstatus = Part.Extension.SelectByID2("Point1@原点", "EXTSKETCHPOINT", 0, 0, 0, True, 0, Nothing, 0)
Part.SketchAddConstraints "sgVERTICALPOINTS2D"
Part.ClearSelection2 True
Part.SketchManager.InsertSketch True

' Named View
'Part.ShowNamedView2 "*等角投影", 7
Part.ViewZoomtofit2
boolstatus = Part.Extension.SelectByID2("外側R", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("入り口", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("入り口", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
Part.EditSketch
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("Line2", "SKETCHSEGMENT", 0, 0, 0, False, 0, Nothing, 0)
Part.SelectMidpoint
boolstatus = Part.Extension.SelectByID2("Point1@原点", "EXTSKETCHPOINT", 0, 0, 0, True, 0, Nothing, 0)
Part.SketchAddConstraints "sgHORIZONTALPOINTS2D"
Part.ClearSelection2 True
Part.SketchManager.InsertSketch True
boolstatus = Part.Extension.SelectByID2("外側R", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
Part.EditSketch
Part.ClearSelection2 True
Part.SketchManager.InsertSketch True
boolstatus = Part.Extension.SelectByID2("外側R", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.ReorderFeature("外側R", "出口")
boolstatus = Part.Extension.SelectByID2("外側R", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
Part.EditSketch
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("Point1", "SKETCHPOINT", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("Line1@出口", "EXTSKETCHSEGMENT", 0, 0, 0, True, 0, Nothing, 0)
Part.SketchAddConstraints "sgATPIERCE"
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("Point2", "SKETCHPOINT", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("Line4@入り口", "EXTSKETCHSEGMENT", 0, 0, 0, True, 0, Nothing, 0)
Part.SketchAddConstraints "sgATPIERCE"
Part.ClearSelection2 True
Part.SketchManager.InsertSketch True
boolstatus = Part.Extension.SelectByID2("正面", "PLANE", 0, 0, 0, False, 0, Nothing, 0)
Part.SketchManager.InsertSketch True
Part.ClearSelection2 True
Set skSegment = Part.SketchManager.Create3PointArc(0.018, 0.035, 0#, 0.048, 0.004, 0#, 0.046, 0.031, 0#)
Part.ClearSelection2 True
Set skSegment = Part.SketchManager.CreateCenterLine(0.018, 0.035, 0#, 0.167765, 0.035, 0#)
Part.SetPickMode
Part.ClearSelection2 True
boolstatus = Part.Extension.SketchBoxSelect("0.029", "0.028", "0.000", "0.043", "0.044", "0.000")
boolstatus = Part.Extension.SelectByID2("Arc1", "SKETCHSEGMENT", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("Line1", "SKETCHSEGMENT", 0, 0, 0, True, 0, Nothing, 0)
Part.SketchAddConstraints "sgTANGENT"
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("Point1", "SKETCHPOINT", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("Line3@出口", "EXTSKETCHSEGMENT", 0, 0, 0, True, 0, Nothing, 0)
Part.SketchAddConstraints "sgATPIERCE"
Part.ClearSelection2 True
boolstatus = Part.Extension.SelectByID2("Point2", "SKETCHPOINT", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("Line2@入り口", "EXTSKETCHSEGMENT", 0, 0, 0, True, 0, Nothing, 0)
Part.SketchAddConstraints "sgATPIERCE"
Part.ClearSelection2 True
Part.SketchManager.InsertSketch True
boolstatus = Part.Extension.SelectByID2("スケッチ4", "SKETCH", 0, 0, 0, False, 0, Nothing, 0)
boolstatus = Part.SelectedFeatureProperties(0, 0, 0, 0, 0, 0, 0, 1, 0, "内側R")
End Sub

ビードフラッシュ?

聞くとビードカットかな。グライダーかけ。ナンカね、フラッシュとなると閃光(せんこう)なんでグラインダーかけの様子を言うのかな?

ビードの盛り上がりを切除してすると溶接跡もわからないし、盛り上がった部分の引張応力の除去になるし、板厚が均一になるので応力の集中も避けることができる。

アークストライクのことでも無い。

青いところがアークストライク。炭酸ガスアーク溶接の立て向き溶接でアークを切ってすぐに左にトーチを移動したときに付いた傷。

YourChannel プラグイン

WordPressでチャンネルの一覧を作りたくてこのプラグインをインストール。インストールはいいのですが、「有効」後に以下の設定がわかりませんでした。

  1. API Keyはどうやって取ってくる?
  2. WordPressの固定ページになんと書くのか?

こちらがいいかもしれません。

こうゆうのを動画にしたかったのですが、調べたり、食事なんかで2時間はかかる。動画にしにくいですね。keyなどが見えるので編集もしないといけないのでボツ。2についてはここに書いてます。API Keyは以下で取る。

https://console.developers.google.com/projectcreate

Username Or Channel IDとやらはUsernameをこのサイトの名前というかチャンネル名「 プログラムは仕事の道具 」が結果的に入るが、以下でユーザーIDとチャンネルIDがコピーできる。

https://www.youtube.com/account_advanced