finishで角がなまる(CNC)

Posted by ゆのじ on 1月 6th, 2009

玩具を持つと本物がほしくなるという王道パターン通り、本職用のマシニングセンタが欲しくてしょうがない。当然置き場(何トンもある)も予算(数千万から)もないのだが。

そんな話をする予定じゃなかった、うちのhakuの話。

先日書いたように、SolidWorks -> MeshCAM -> Mach3という流れで色々と試しているのだが、今日の加工でオリジナルマインド推奨の設定が実は正しくないのではないかという疑いが出てきた。その理由がこれ。

写真

この元になったモデルはこんな感じ。

sw01

見てわかるとおり、内側の彫り込みは、単純に彫り込むだけで、エッジはそのまま、テーパーはいっさいかけていない。が、実際のモデルはなんだか角がなまってしまっている。この現象が見られるのはF1200での切削(finishの薄皮一枚はぐときにしか使ってない)のような速い送りの時だけ。ということは恐らくはMach3のConfig->Motor Tuningのページにある設定が、オリジナルマインド推奨の値では厳しすぎるんじゃないかと予想。その割には脱調している気配がないのが微妙なんだが。

それと、MeshCAMの吐き出すコードにゴミが混じっていたせいで、変なところに穴が・・。このゴミがどこの段階で発生したものなのかちょっとわかりかねるが、再現すると困るので要調査。

調べて追記予定。

謹賀新年

Posted by ゆのじ on 1月 1st, 2009

2009年になった。去年は世界的に不穏な空気の年だったし、その辺の厭な雰囲気はいまだに残っていて、いまいちrenewされた気がしない。今年は我々のような自営業/自由業のみならず、どんな職業の人でも自分自身の能力で戦う必要がある年になるのではないかと思う。我々は覚悟があってやっているからいいようなものの、会社に属している人は大変だろうと思う。重要なのは常に最悪の悲観論で考えつつ、楽観視して生きることだと思う。

年末に新しく機械を導入して、色々物作りの練習に勤しんでいるわけだが、やっていて思うのは、いわゆるIT系が得意とする「仕組み」や「コンサル」というものよりは、物(ソフトウェアじゃないもの)自体を作るほうが自分に向いているのではないかということ。どうも、やもすると机上の空論になりがちなソフトウェアより上のレイヤだけをやるというのは、地面に立っていない気がして落ち着かない。モノがあって人とのインタフェイスがありき、の上に必要なソフトウェアや仕組みの実装は絶対に必要だが、モノまで携わることのできない仕組みなんて、推測に次ぐ推測、蓄積誤差でどこに行ってしまうのかわからない。そういう仕事はそういう仕事に慣れている人に任せて、もっと人にダイレクトにつながるインタフェイスからさわれる仕事をしたいと思う。

ま、そんな感じで気負ったことを言ってみるが、無理せず身の丈で走ることが肝要なのは言うまでもない。ぼちぼち進んで行ければいいかと思う。ゆっくり急ぐ感じで。

今年もよろしくお願いいたします。

*ばたばたしていて1/2になってしまったが、1/1扱いのポストで書いている。あしからず。;-)

SolidWorks -> 切削パス -> 切削

Posted by ゆのじ on 12月 29th, 2008

連日CNCネタ。今日はSolidWorks2009から切削を行ってみた。極力無駄なところに費用をかけない方向で、CAMはMeshCAM(Ver2 Build6715)を使うことにする。

1.データの用意
step1
データはSolidWorksで部品として作成後、STLファイルとして出力する。今回は超いい加減な出っ張りパーツを削ってみることにする。

2.そのSTLファイルをMeshCAMで読み込む。
step2
読み込むときは単位は「MM」にする。また、HAKUのような3軸機で切削する場合、Job typeは3 Axisにする。
これで読み込むことは出来たが、そのままだと軸方向が違う。それを直すため、Geometry->Rotate GeometryでX方向に90度、Rotate Around Axisで回転させる。これでSolidWorksの「平面」がこちら側を向いているはず。

3.材料のサイズを定義
CAM->Define Stockで材料のサイズを定義する。Stock Sizeは材料そのものの大きさ、Geometry Offsetは材料に対してのデータオフセット。たとえば、30x30x10の大きさの材料に25x25x3の大きさのデータを材料中央に彫り込むことにしたので、オフセットは2.5(30-25/2), 2.5, 0(Z軸は0にしておくと上端があうはず)となる。
※これ以降、ここの設定がおかしかったのでGコードも切削後の絵も変。あしからず。
なお、MeshCAMを使うと、図面外のエリアには全て削るGコードが出力される。材料をセットしたステージごと削られるのが嫌ならば、材料のサイズのZ方向を材料より少ない値にしておくといいだろう。

4.CAM->Generate ToolpathでGコードを生成する。
まず、Toolは適切なものを追加しておく。Select Toolボタン(どれでもいい)をクリックして開いたメニューに「Add」で追加する。最低限入力が必要なのは黄色くなっている入力欄のみ。Feedrate(送り速度)、Plunge Rate(Z方向送り速度)は相手の材料によって違うはずなので、間違っても大変なことにならないように小さい(10とか)値にしておくと安心。この値はGenerate Toolpath画面で上書きできる。あと気をつけたいのはStepover(切削幅)の設定。エンドミルの太さそのままだと微妙に残ってしまうので、90%程度の値にしておくといい。
次に、Roughingにチェックしないといきなり深いところまで彫り込んでしまうのでかならずRoughingの設定も行う。大事なのは、Depth per Pass(1度あたりの削り込み量)と、Stock to Leave(Finishまでに残しておく分)。
Waterlineは等高線切り込み。Pencil cleanupは外形線の荒れを切り込んで修正する。

生成にはかなり時間がかかる。ちょっとお茶でも飲んで待とう。

5.生成されたGコードを確認。
step3
Gコードは「必ず」NCVCなどのツールで確認すること。可能な限りすべてトレースして目視確認すべし。ここで手抜きをすると、割と高価なエンドミルを折ったり、ただ折れるだけでなく破片が飛び散ったり、怪我をしたり、ろくなことにはならない。

6.CNCコントローラで実行
Mach3に放り込んで、スピンドルを回転させ、先を材料の左下隅にあわせて(無理ならX,Yを材料左下隅にあわせてゼロ点設定してから、太さ/厚みの正確にわかっている何かを挟んで確認して、その値をいれてやってもいい。いずれにしても材料左下隅が0,0,0になっているようにする)、一呼吸してここまでの確認を全て思い出して頭の中でトレースしてみる。本当に問題ないか、これで削って大丈夫か。問題なければCycle startを押して後は時々様子をみる(切り子掃除と切削油追加)だけだ。
ポケット加工など目じゃないくらい、大抵は時間がかかる。じっくりと構えてやることが肝要。この手の自動工具は全部そうだが、焦ると大けがをしかねない。

7.完成!
step4
真鍮を0.1mmステップで、F45送りで削ったせいで7時間ほどかかり、こんな感じに。上で警告しておきながら、1mmのエンドミルでStepoverを1mmにしたせいで酷い有様。その上細いエンドミルがスクエアのものしか無かったが、次はボールエンドミルを用意してもっときれいに削ってみたいところ。(言い訳)
Pencil cleanupを設定したのに、45度角面取りしてあるところ(一番上のエッジ)が横方向の走査時にカジられているのも気になる。この辺はStepoverをもっともっと細かくしてもっと時間をかけて処理するしかないかもしれない。もしくはWaterlineの設定か。これも課題だ。

メモ:

実はR2(φ4)のボールエンドミルも持っているのだが、こいつを使う設定でMeshCAMにGコードを吐かせると、不思議な切削パスを生成してしまう。角が丸くなったというか。切削パス的にそうしなければならない理由もないので、バグか何かなのではないかと邪推する。追って調査。

今後の課題:

RoughingとFinishでツールを変えたときの段取りを考える。単純にGコードを足して一時停止させて、ツール交換すればいいわけではなく、ツール先端での原点だしをしなければいけない。だが、すでにRoughing前に原点取りに使った部分はすでに削られてしまっている場合が多い。ケースによっては上面全部が削られている場合もある。そういう状態でうまくツール交換する方法をどうにかしたい所。やはり機械原点からの距離じゃないと駄目かなぁ。

追記(2009/01/06):

Rotate Axisで向きを変える件、SolidWorksは「平面」がX-Z平面であることが原因となっている。これはツールの都合なので、いちいち面倒ならば、X-Y平面にモノをおいてやれば一手間減らせる。