Eagleが気づかないうちに進化を遂げていた

自作、改造問わず電子回路を自分で作る必要があるときが多々あります。
そんなときは、まずは回路図を考慮し基板・部品を調達して作ることになりますがこの分野も昔から電子化・自動化が取り入れられてきた分野です。
フリーの電子工作ファンの間で有名(だと聞いています)な電子回路系のCADにEagleがあります。
ソフトウェアが外国製であるため利用には英語の知識は必要ですが、Eagleは最大基板サイズの制限と多層基板の層の数に制限を問題にならなければ無料で利用させていただけたける非常にありがたい存在でした。購入しとしても当時は200ドル程度のバージョンで十分オーバースペックな状況でした。そして数千円程度でEagleのPCBファイルで実際の基板を1枚から製造してくれるメーカーもこれまた海外ですがあり、非常に重宝したものでした。(*1)

そしてこのEagle,しばらくご無沙汰している間に進化を遂げていました。
まず、製造元(メーカー)Autodeskにかわっていました。Autodeskさんに変わっても条件によっては引き続き無料で使わせていただけるようです。条件は変更なく、1プロジェクトあたり回路図2ファイル(シートという記載ですが)・信号レイヤ2点(両面基板までOK、多層基板はNG)・作る基板が80cm^2以下となるようです。
それ以上の大規模プロジェクトになると有償版もしくは条件が合えば教職員・学生向け3年ライセンスを選択する必要がありそうです。

そして何よりびっくりしたのが、Autodeskに変更になってアップデートされた結果、基板を3Dモデルで自動で作成しFusion360等のCADに自動的にインポートしてくれる機能が追加されておりました。この恩恵は非常に大きいと思います。ためしに自身の環境でチュートリアルプロジェクトを試したところ、シルク印刷・ランド・信号パターンまで再現された立体的(3D)な部品実装済み基板が自動的にFusion360側にインポートされておりました。

注意事項としては、初期状態ではEagleのライブラリ内には基本的な電子パーツしか登録されていないため、日本メーカの部品はあまりありません。そのため自身でフットプリント・3D形状を作るもしくはメーカーサイトから入手するなどの方法で持ち込む必要があります。また、電子回路CADの自動配線機能(*2)は結構なCPUパワーを要求しますし、出来上がる配線パターンが必ずしも理想形で出来上がらない可能性もあります。このあたりは慣れが必要になります。参考にならないとは思われますが、チュートリアルにあるdemo2.schをXeon2699 メモリ64GBの環境で両面自動配線させると条件によりますが数十秒から1分程度ルーティング時間が必要でした。ただし、この結果はCPUメモリともにかなり強力なパワーを持っての結果ですので、多層化や基板サイズ増加、部品点数増加によってはかなりの時間を必要にする場合があると思います。
現在はかなり性能が向上したようですが、オートルーターの性能もあまりよくなく、数時間がんばってみて自動配線が終わりませんでしたということもよくありました。

いずれにしても、このようなすごいソフトを無料で利用させてくださる前メーカーおよびAutodeskさまには非常に多謝です。

 

*1)基板作成も、一般的に大量生産の恩恵を受けられる分野です。現在は職を離れて久しいため相場はわかりませんが、当時基板を作る必要がある仕事をしていたころは1品ものの基板は安くて数万円、ものによっては十数万円しました。

*2) 回路図から実際のプリント基板の銅箔パターン・その上に載るレジスト・シルク印刷を自動的に計算し作成する機能のこととなります。

3Dプリンター用の小型PCを用意してみる

家庭用の3DプリンターといえばGコードの入ったSDカードをプリンターに挿入したり、USB経由でPCから直接印刷するといった方法が一般的だと思います。
我が家ではUSB経由で3Dプリンターを接続し、Repetier-Hostというソフトウェアで3Dプリンター操作/印刷/Gコード作成を行っています。
この方法で問題はないのですが、PCでブログも書けばばCADも操作しRepetierも動いているため印刷の安定性(PCの意図しないフリーズやメモリ不足)という意味ではあまりよくない状況のような気がします。少なくてもCADの再計算実行中に少なくても5回は印刷停止してしまい復旧できずに最初からということはありました。途中で印刷が止まってしまうと最低でもフィラメントは無駄になり、印刷の時間も電気代も無駄になってしまいます。

今回、この無駄を少なくするために一計を案じました。
Repetier-Hostは優秀なフリーウェア(Proバージョンは有料)ですが、Repetier-Serverというソフトウェアも同梱されています。このソフトを利用すれば3Dプリントサーバーを構築することが可能になります。プリントサーバーとは一種の3Dプリント用専用PCを用意することが可能になるということです。(もちろん普段使いのPCに入れても動作しますが、わざわざ同一PC上でサーバーを立てるメリットは少ないのではないかと思います)普段使いのPCとサーバーPCを別々のPCに分ければCAD操作でフリーズしても関係ありません。なぜなら別なパソコン(みたいなもの)で3Dプリンターは動いているからです。

Repetier-ServerはLinux/Windows/Macいずれかのハードウェアで動作します。今回は廉価Linux PCとして利用可能なRaspberryPI 3を利用することにしました。
RaspberryPIは一般的にワンボードマイコンに分類されるら商品ですが、5千前後で購入可能であり公式HPに掲載されている専用OSをインストールすればLinuxPCとしても動作します。USB/HDMI/イーサーネットポート/WIFIが標準搭載されています。OSをインストールするには8GBの容量のMicroSDが別途必要です。
また、インターネット上に3Dプリントサーバーとしての運用やOSのインストール方法などの各種情報も豊富にあるため非常に便利なマイコンボードといえると思います。

USBポートは4ポートあり、HDIMIポートもありますので3Dプリンター・マウス・キーボードをつなげばスタンドアロン3Dプリンターとしても運用できます。また、家庭内LANなどを組んでネットワーク上から操作すればモニターやキーボード・マウスをRaspberryPI用に用意する必要もありません。ただしネット経由操作の場合、OSの設定・操作にはSSHクライアントというソフトウェアが必要になります。Repetier-Serverのインストール・初期設定さえ完了すれば3Dプリンターの操作・印刷はPC上のブラウザから可能になります。
※RaspberryPIのOSインストールから3Dプリント完了までの流れは膨大になりますのでご要望が多ければ記事にしたいと思います。

我が家では、ネットワークから操作する前提で、RaspberryPI用のマウス・キーボードは用意せずブラウザで操作する方針でOSインストール・Repetier-Serverインストール+設定をこなし、無事に3Dプリンターサーバーを作ることができました。これで、少しは安定性が向上すればと願うばかりです。
1点、注意としてRaspberryPIはHDDの代わりにSDカードが記憶媒体となります。そのため記憶容量が格段に少なく、印刷が終わったGコードファイルはこまめに消さないとSDカードがすぐに一杯になります。Linuxとしてのログファイルも同様にメンテナンスしないと容量が足りなくなります。

3Dプリンターにオートレベルセンサーをつけてみた

更新、期間が開きまして申し訳ないです。
いろいろとごたごたしており、ご無沙汰してしまいました。

3Dプリンターの出力精度ですが、パラメーター設定もさることながら ベッドの水平レベルというものも非常に重要なようです。
我が家のプリンターはベッド4隅にスプリングを挟んだ螺子が設置されておりスプリングのテンションを上げたり下げたりすることで水平調整をする仕組みになっています。
この調整ですが、朝プリンターを利用始める前に必ずするようにしているのですが、治具をつけていても手回しで毎朝ねじ高さ調整をやるのは実は結構な手間です。

いい手はないかと調べたところ、エクストルーダーに取り付けしベットとセンサーの間の距離を測定。測定結果から自動的にレベリングの補正をするセンサーがあるということがわかりましたので早速センサーを取り付けてみました。このセンサー、海外の情報は非常に豊富なのですが、結構面倒な作業をする必要があるためか日本ではあまり情報がないようです。

続きを読む