How to Make "Arduino"

Created Date: 2015-06-04/ updated date: 2015-11-16
    • Medium img 3861
    Owner & Collaborators
    License
    By nc sa
    Summary
    自作ArduinoをCNCミリングマシンによる基板切削によって作るときの手順を、
    FabKit(http://fab.cba.mit.edu/content/projects/fabkit/)の制作の一連の流れを通じて紹介します
    電子工作に精通していない方でも作れるように丁寧な書き方を心がけています。

    Materials

      Tools

        Blueprints

          Making

          • 必要なものの準備

            1
            Thumb 7531637
            このレシピは、以下を用いて制作していきます。

            [ソフトウェア]
            ・パターン設計CAD Eagle

            [切削関連]
            ・Fabmodulesに対応したCNCミリングマシン(今回はSRM-20(RolandDG社製)を利用)
            ・シャフト径3.175mmのエンドミルに合うコレット
            ・エンドミル
            ・銅箔板
            ・両面テープ
            ・高さのある捨て板

            [電子工作関連]
            ・ハンダ付けに必要なひと通りのセット
            (上記の中でも特に)フラックス
            ・表面実装用部品
            以下を参考に揃えてください。
            http://fabacademy.org/archives/2015/doc/projects/fabkit-0.4.html

            [書き込み]
            ・Arduino Uno

            • エンドミルと基板について

              0
              Thumb 7531637

              Fabmodulesを利用する場合、エンドミルは
              ・パターン切削用に、刃径1/64inch、シャフト径1/8inchのもの
              http://www.carbidedepot.com/detail.aspx?ID=180142
              ・外側の切り抜き用に、刃径1/32inch、シャフト径1/8inchのもの
              http://www.carbidedepot.com/detail.aspx?ID=180143
              それぞれが必要になります。

              また、基板は紙フェノールのものを利用してください。
              http://www.sengoku.co.jp/mod/sgk_cart/detail.php?code=EEHD-4BPG

            • FabKitについて

              0
              Thumb 7531637
              MIT Center of Bits and Atomsにてつくられたもののひとつで、
              自作Arduinoの設計図がすべてオープンにされています。
              今回はこれを利用していきます。

              http://fab.cba.mit.edu/content/projects/fabkit/

              なお、Arduino自体がオープンソースであるため、
              自由にカスタマイズすることが可能です。
          • [Eagle]回路の設計

            0
            Thumb 7531637
            パターン設計ソフトEagleを用いて、回路を設計します。

            Eagleは以下よりDL出来ます

            なお、パーツは膨大であるため、
            その中でもよく利用されるものがセレクトされたライブラリである、
            FabAcademyの"Fab.lbr"を利用するのがオススメです。
            http://academy.cba.mit.edu/classes/electronics_design/index.html

            (Eagleの使い方については各自で学習が必要です。)
            (こういったソフトウェアの利用方法については、近年ではビデオ教材がいいかと思います。)

            • [Eagle]設計した回路の書き出し

              0
              Thumb 7531637
              設計した回路は、最後に.png形式で書き出します。
              書き出すのは3種類です。
              1,パターンの模様
              2,穴の位置
              3,外形

              それぞれ800dpiで書きだすことを推奨します。
              なお、白黒で書きだした後、ミルは黒の内側を移動することに注意してください。
              (穴の位置だけ、白黒反転させる必要があります)

              Small           2015 06 09 17.24.22
              • [Fabmodules]データの変換・書き出し

                0
                Thumb 7531637
                Eagleで書きだしたpngイメージを、FabmodulesでCNCミリングマシン用のデータに書き出します。

                • 0, Fabmodulesとは?

                  0
                  Thumb 7531637
                  -.-.-.-.-.-.-.-
                  FabmodulesはMIT Center of Bits and Atomsにて開発された、FabLabで利用されているさまざまな機材を一括して操作するためのプログラムです。(FABOSより)
                  詳しく知りたい場合は以下を参照です。
                  http://fabos.sfc.keio.ac.jp/?p=208
                  http://kokompe.cba.mit.edu/index.html

                  [参考]Fablab標準機材(Fab Lab Inventory)
                  http://fab.cba.mit.edu/about/fab/inv.html
                  -.-.-.-.-.-.-.-
                • 1,Fabmodulesにアクセスします

                  0
                  Thumb 7531637
                  http://fabmodules.org/ にアクセスします。


                • 2,データを読み込みます

                  0
                  Thumb 7531637
                  input format
                  より
                  img (. png)
                  を選択します。
                  そして、Eagleで書きだした画像データを選択します。
                  Small usefabble08
                • 3, 書き出し形式を選択

                  0
                  Thumb 7531637
                  次に"output format"をクリックし、書き出しのデータ形式を指定します。

                  ここではRolandDG社のSRM-20を用いて切削しますので、
                  対応した形式である"Roland Mill(.rml)"を選択します。
                  Small usefabble03
                • 4, ミルを選択します。

                  0
                  Thumb 7531637
                  次にミルを選択します。
                  パターン切削の場合は"PCB traces(1/64)",
                  穴あけ、外形の切削の場合は"PCB outline(1/32)"を選択します。

                  Small usefabble06
                • 5, 機材設定を行います

                  1
                  Thumb 7531637
                  ※ここではSRM-20で切削を行う想定で書いています。
                  それぞれのCNCミリングマシンに合った設定をしてください。

                  画面右、outputの"machine"より"SRM-20"を選択します。
                  jog height(mm)をそれぞれ"0"とします。
                  Small usefabble002
                • 6, 切削経路をシミュレートします

                  1
                  Thumb 7531637
                  Processの""Calculateをクリックして、CNCミリングマシンの通り道(パス)を書き出します。
                  左側ではプレビューが見れるので、そこで潰れているパスがないかどうか確認します。

                  もしも細かすぎて潰れてしまっている回路があった場合など、問題があった場合にはProcessの各項目を変更して修正します。
                  たとえば、この回路(FabKit)はそのまま書き出すと、中央の2本のパスが1本につながりますが、tool diameter (mm):を変更することで解決します。
                  Small           2015 06 05 1.35.24
                • 7, 書き出します

                  0
                  Thumb 7531637
                  うまく設定できたら、Processの"Save"をクリックして、書きだされたデータを保存します。

                  このデータをSRM-20上に読み込ませて切削を行います。
                  Small usefabble05
              • [CNCミリングマシン]加工前の準備

                0
                Thumb 7531637
                ここではSRM-20を用いた切削の手順を説明します。
                • 0, ミルの取り付けについて

                  0
                  Thumb 7531637
                  エンドミルをCNCミリングマシンに取り付ける際について。

                  まずは取り付けるエンドミルの径とコレットの径が一致しているかどうかを確認して下さい。
                  もし一致しない場合は、一致するようにコレットを取り替える必要があります。
                  基板切削の際には、コレットの径が3.175mm(1/8inch)のものを利用します。
                  Small usefabble004
                • 1, 捨て板の設置と面出し

                  0
                  Thumb 7531637
                  まず、SRM-20はZ軸の可動範囲が少し高めであるため、
                  基板切削の際には下に高さのある捨て板を敷く必要があります。

                  機械に入るサイズの捨て板を用意し、
                  両面テープ等を用いてしっかりと機械に固定します。

                  捨て板を敷いた後には、平行にするため面出しを行います。
                  面出しは付属のQuickMillというソフトを用いると便利です。

                  ミルはここでは刃径が3.175mm(1/8inch)のスクエアのものを利用しています。
                  他のものでもかまいません。
                  Small usefabble011
                • 4, Z軸の原点調整

                  0
                  Thumb 7531637
                  設置した板に合わせて原点調整をします。
                  SRM-20の付属ソフトであり、.rmlデータを読み込ませて機械を動かすことの出来るV-Panelというソフトを起動します。
                  まずは高さの原点を合わせます。
                  板の上にミルを持ってきた上で、板に触れることのないようミルを少しずつ下ろしていきます。
                  ミルと板が触れないギリギリのところまで持ってきたら、(触れると最悪ミルが折れます!)
                  そこで、ナットを少しゆるめ、ミルを板の上に落とし、ナットを締め直します。
                  これで、ミルの先と板の表面がピッタリ合った状態になります。
                  この状態で、V-PanelのZ原点を押します。これで高さの原点調整は完了です。
                • 5, X,Y軸の原点調整

                  0
                  Thumb 7531637
                  Z軸の調整が終わったら、少し上にミルを上げて、
                  X,Y軸も、原点(スタート地点)を同様に設定します。
                • 2, 銅箔板の設置

                  0
                  Thumb 7531637
                  面出しをした捨て板に、両面テープ等を用いて銅箔板を固定します。
                  Small usefabble012
                • 3, パターン用エンドミルの取り付け

                  0
                  Thumb 7531637

                  最初にパターンを切削するので、
                  刃径が1/64inchのエンドミルを取り付けます。

                  そしてZ原点、XY原点を合わせます。
              • [CNCミリングマシン]切削

                0
                Thumb 7531637

                • 1, パターンの切削

                  0
                  Thumb 7531637
                  まずはFabmodulesで書きだしたデータのうち、
                  パターンの方をV-Panelで読み込み、加工をします。

                  加工中は問題が起こった時のため、その場を離れないようにしましょう。
                  Small 1
                • 2, エンドミルの交換

                  0
                  Thumb 7531637
                  パターンの切削が終わったら、
                  次に穴の部分を切削します。

                  その前にエンドミルを取り替える必要があります。
                  加工終了後、ナットを緩め刃径1/64inchのエンドミルを取り出し、
                  代わりに刃径1/32inchのミルを取り付けます。

                  そののち、忘れずにZ軸の原点調整を再び行います。
                  このとき、X,Y軸の原点は変えないように注意です。
                • 3, 穴の部分の切削

                  0
                  Thumb 7531637

                  パターンの時と同様、V-Panelでデータを読み込み、加工します。

                  Fabmodulesは黒の内側を切削しているので、
                  Eagleから書きだしたファイルそのままでは穴が大きくなってしまいます。
                  そのため、添付の画像のように画像編集ソフトで白黒反転させる必要があります。
                  Small 2new
                • 4, 外形の切削

                  0
                  Thumb 7531637
                  パターン、穴と同様に加工します。

                  Small 3
                • 5, 取り出し、掃除

                  0
                  Thumb 7531637
                  全て終了したら、切削した基板を取り出します。

                  そして削りかすを掃除します。
                  機械のため、後に使う人のために、必ず行うようにしましょう。
                  Small usefabble017
              • [電子工作]表面実装パーツのはんだ付け

                0
                Thumb 7531637

                切削した基板に、表面実装用のパーツをはんだづけしていきます。
                (筆者ははんだ付けが苦手なので写真が汚いです。。。)

                細いはんだ付けになるので、フラックス、ルーペ、ピンセットあたりが必須かと思います。
                ハンダ付けのやり方等は各自学習が必要になります。

                おすすめ参考資料(平原真さんのスライド)
                http://www.slideshare.net/makotohirahara/7led
                Small img 3861
                • はんだ付けのコツ1

                  0
                  Thumb 7531637
                  非常に細い作業であるため、ルーペやピンセット等のツールをうまく活用しましょう。

                  またマイコンに関しては、はんだ付けしたのちに、
                  はんだ吸い取り線を使ってその部分を吸うことで、
                  銅箔上のはんだのみを残すテクニックがあります(田中先生より)

                  表面実装のはんだづけが初めての場合は、いきなり行わず練習をすることを強く勧めます。
                • パーツ配置について

                  0
                  Thumb 7531637
                  配置。

                  このリストと対応
                  https://docs.google.com/spreadsheets/d/1xMm4pHPRjQ3BSsoergWULxoqeb10t3Ysul6EV6Rryfk/edit#gid=280582281

                  (訂正:C0→C1)
                  Small parts
              • [電子工作]データの書き込み

                1
                Thumb 7531637
                完成した基板には、データを書き込む必要があります。
                やり方はいくつかありますが、ここでは、既存のArduinoを書き込み器として用いる方法を紹介します。

                書き込み器は、AVR ISP(in-system programmer)と呼ばれ、
                ArduinoをこのAVR ISPとして使用する方法は、
                以下のArduino公式サイトでもやり方が紹介されています。
                http://www.arduino.cc/en/Tutorial/ArduinoISP

                これを行うにはPCにArduinoIDEをインストールする必要があります。
                バージョン1.0.6で成功することを確認しています。

                今回は、これを実践していきます。
                • 3, 自作した基板とArduinoをつなぐ

                  0
                  Thumb 7531637
                  Arduino公式サイトで紹介されているつなぎ方を参照しながら、
                  ジャンパワイヤで自作した基板とArduinoをつないでいきます

                  http://www.arduino.cc/en/Tutorial/ArduinoISP
                  Small usefabble003
                • 3, ボードを追加する

                  2
                  Thumb 7531637
                  以下のURLを参照して、今回使用しているboardの情報が入ったテキストファイルを作成します。
                  それを、Arduinoのフォルダ内に、[hardware]→[fabduino]→[boards.txt]
                  となるように、適宜フォルダを作成しながら配置します。

                  http://fabacademy.org/archives/2015/doc/projects/fabkit-0.4.html

                  そののち、ArduinoIDEを再起動します。

                  Small usefabduino015
                • 4, 書込装置の設定

                  0
                  Thumb 7531637
                  まず書込装置の設定をします。

                  Arduinoのソフトを立ち上げ、
                  [ツール]→[書き込み装置]→[Arduino as ISP]
                  を選択します。
                  Small usegfabble004
                • 5, マイコンボードを設定する

                  0
                  Thumb 7531637
                  次に書き込むマイコンボードを指定します。

                  [ツール]→[マイコンボード]→[FabKit/Fabduino w/ATmega328 (internal clock)]
                  を選択します。
                  Small usefabble006
                • 6,プログラムを書き込む

                  0
                  Thumb 7531637
                  任意のプログラムを作成し、

                  [ファイル]→[書き込み装置を使って書き込む]

                  の順で書き込んでいきます。
                • うまくいかない時は

                  0
                  Thumb 7531637
                  まずはテスターを活用して、はんだ付けがきちんと行われているか、
                  回路が正常に動いているかを確認しましょう。

                  Arduinoでエラーが出てしまう場合は、そのエラーメッセージを直接Webで調べてみましょう。
                • 1,ArduinoUnoとPCをつなぐ

                  0
                  Thumb 7531637
                  まずは自作基板にプログラムを書き込むため、ArduinoUnoを書き込み器にしていきます。
                • 2,ArduinoUnoを書き込み器にするためのスケッチを書き込む

                  0
                  Thumb 7531637
                  マイコンボード ArduinoUno
                  シリアルポート 適切なものを選択
                  書き込み装置を選択 USBtinyISP
                  としたうえで、
                  ファイル→スケッチの例→ArduinoISP
                  を選択。
                  マイコンボードに書き込む。
              • 完成!

                0
                Thumb 7531637
                無事に動作すれば完成です。

                ぜひ、これから制作する方々のために、
                制作するうえで苦労したポイントや、
                よりスムーズに制作が行えるアイデアなどのコメントをお願いします。

                *Special Thanks
                加藤未央さん(Fablab Kamakura)
                廣瀬悠一さん(田中浩也研究室OB)
                田中浩也研究室

                *Support
                若杉亮介くん(田中浩也研究室)
                Add Card Order

                References

                  Usages

                  • つくれるようになったら

                    Thumb 7531637
                     
                    FabKitを通じて、切削基板の作り方を覚えたら、
                    どんどんオリジナルの基板を作っていきましょう。


                    ex:電子工作を使った応用例
                    [ 電子手芸部(中澤未来さん(Fablab Dazaifu))]
                    http://www.slideshare.net/mikinakazawa33/denhsishugeibu
                    https://vimeo.com/85757216
                  Convert State

                   to Annotation.

                  Select the numebr of the state to annotate.

                  OK
                  cancel
                  Loading

                  facebook

                  , data-width="400", data-show-faces="true" data-send="true"
                  , data-width="400", data-order-by="reverse_time"