[試作機開発]Blenderで筐体設計・DesignsparkPCBで回路基板設計を行い、3Dプリンタを用いてセンサーライトを開発する

###[試作機開発]Blenderで筐体設計・DesignsparkPCBで回路基板設計を行い、3Dプリンタを用いてセンサーライトを開発する
---

####ご挨拶
はじめまして。マクライオンと申します。
本職では機械製品の設計開発を行っている者です。
今回はBlenderとDesignsparkPCBなどを用いて機械製品の試作を行っていきます。

なお、本記事は「[ADVENTER版Blender Advent Calendar 2020]( https://adventar.org/calendars/5212)」に参加しています。

####目指すところ
製品開発において開発期間を短縮することは人件費の削減にもつながります。
私としてはアイディアを出した次の日には試作が完成というのが一つの目指すところです。
（飽きっぽいというのもあるので。(笑)）



今回は下記ツール/サービスを主に用いて開発を行っていきます。
１．	Blender[3DCGソフト, 無料]
２．	DesignsparkPCB[プリント基板設計ソフト, 無料（基板サイズ制限なし）]
３．	ELEGOO MARS PRO[3Dプリンタ, ￥30,000くらい]
４．	PCB GOGO[プリント基板製造サービス, ￥3,000～￥10,000]

※その他にいくつかツールは使います。順次説明します。



####作りたいもの（アイディア）
今回は自宅の壁に付いている照明スイッチを照らすカッコいいライトを作りたいと思います。
人の手が近づいたら点灯するセンサー付きです。
暗闇の中で照明スイッチ探すのは地味に手間なんですよね。
![DSC_0200.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/47aa4088-edc5-d5a6-8b14-982545703e63.jpeg)


・市場調査
次に世の中に似たような製品がないかを探します。
探す先は主に以下の通り。
・Google検索サービス
・Amazon（などの通販サイト）
・ヤフオク/メルカリ（などのオークションフリマサイト）
・特許情報プラットフォーム「J-PlatPat」※
など

※作りたいものに関する特許・実用新案が既にあれば作っても無断で売ってはいけません。
　（ただし、特許は出願日から20年経っていれば効力が消えます。実用新案は10年。）

**＜今回は自宅用のため、市場調査は詳しく行っていません＞**

####コンセプト/製品特徴
コンセプト：カッコいいセンサーライト
製品特徴：
・LEDで光る
・電池駆動（ボタン電池）
・距離センサー付き
・カッコいい見た目


####ワークフロー
今回の開発のワークフローは下記の通りです。
![図1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/d92881db-3582-f7d4-51e2-11d9f1f5cdf9.png)



####機能まとめ
１．	センサーライトの正面30cm以内に物が入れば1分間白色LEDが直下を照らす。
２．	距離値が30cmを超えた場合は白色LED消灯。
３．	距離値が0.5秒前の計測と比べ、差が2cm以内であれば消灯。

####部材
今回使用する部材は以下の通り。
●電子部品
LED		：HK-LED5H(W)[砲弾型Φ5㎜]	2個
電池		：CR2032（3V）		1個
電池ソケット	：CH25-2032LF		1個
抵抗		：カーボン抵抗1/4W 220Ohms	2個
マイコン	：AVR ATTINY85-20PU	1個
マイコンソケット：ICソケット8P(2227-08-03)	1個
コネクタ	：JST XHコネクタ3P メスオス	1セット
距離センサー	：GP2Y0E02A		1個

●プリント基板（PCB）
PCB		1枚
※回路基板設計後PCB GOGOへ発注

●筐体
レジン	：ELEGOO 光造形3Dプリンター用ABS類似UVレジン 白色
両面テープ	1個


####回路基板設計
回路基板設計は「DesignsparkPCB」というソフトを用いて行います。
ちなみにこちらのソフトは商用利用も無料で行える基板設計用のCADとなっております。
[ダウンロードはこちら](https://www.rs-online.com/designspark/pcb-software-jp)
[使い方はこちら](https://designspark.zendesk.com/hc/ja/articles/212966269-DesignSpark-PCB-%E3%82%AF%E3%82%A4%E3%83%83%E3%82%AF%E3%82%B9%E3%82%BF%E3%83%BC%E3%83%88%E3%82%AC%E3%82%A4%E3%83%891-%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C%E7%B7%A8-)

回路図は以下のようにしました。
![スクリーンショット 2020-12-20 220148.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/a8e0ed54-4947-5698-c1c6-7ebddd5b45ff.png)


基板は凡そ25x50mmの大きさにし、下記のように配線しました。（ほぼ自動配線）
![スクリーンショット 2020-12-20 220210.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/e856f457-569c-1212-5e64-ad56b9fd1aaa.png)

基板まで完成したらPCB GOGOへ発注を行います。
[サイトはこちら]( https://www.pcbgogo.jp/)
※PCB GOGOとは中国の格安基板製造サービスで、送料含め数千円で製造が可能です。ちなみに注文は5枚から。
サポートは日本語も対応可能で、質問したら親切に教えてくれます。
（スタッフの皆さん、いつもサポートしてくれてありがとうございます！🥺）


また、筐体設計を容易に行うために、基板データを3D化（STL形式）させます。
直接はSTLにできないので、一旦「DesignsparkMechanical」という同じく無料のCADソフトに移送して、STLに変換します。
![スクリーンショット 2020-12-20 220317.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/19de21a8-7c3d-ad02-9689-24f1f7ca8d1f.png)
![スクリーンショット 2020-12-20 220337.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/bd547dca-406f-bcd7-a02f-7e6db0345ea9.png)
![スクリーンショット 2020-12-20 220544.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/dbce5f59-a9d8-1d09-6f46-24523febf1d8.png)



####基板はんだ
発注した基板は最速1週間程度で届きます。（DHLを選択の場合）
電子部品は秋月電子通商さんやマルツさんなどで（オンラインで）購入可能です。

####マイコンコード製作
マイコンはAVR ATTINY85を使用しました。（電池駆動なので）

書き込み装置は「Arduino用ブートローダ/スケッチライタキット」を使用します。
[商品ページはこちら]( https://www.switch-science.com/catalog/1999/)

書き込みソフトはArduinoIDEを使用します。
コードは下記のようにしました。


```C++
#define LED_0 0
#define LED_1 1
#define Dist_S A1

int diff, dist3;

void setup() {
pinMode(LED_0, OUTPUT);
pinMode(LED_1, OUTPUT);
pinMode(Dist_S, INPUT);

dist3 = 0;

//GP2Y0E02A
}
void loop() {
     long distRead = analogRead(1);
     long dist1 = map(distRead,0,1023,0,270) ;
     long dist2 = map(dist1,55,220,50,4) ;
     int distance = dist2;   //cm 

     diff = distance - dist3;

     if(abs(diff) > 2){
      if(distance <= 30){
        digitalWrite(LED_0, HIGH);
        digitalWrite(LED_1, HIGH);

        delay(60000UL);
      }
      else{
        digitalWrite(LED_0, LOW);
        digitalWrite(LED_1, LOW);
      }

      
     }
     else{
      digitalWrite(LED_0, LOW);
      digitalWrite(LED_1, LOW);
     }

     dist3 = distance ;
    

delay (500);
}
```


####筐体設計
筐体はBlenderでデザインします。
まず、設計した基板のSTLファイルを読み込みます。
また、距離センサーモジュールのおおよそのモデルを作り、それらを基に筐体をデザインします。
![スクリーンショット 2020-12-20 220918.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/e59f2e25-1ee6-abd8-f191-10849c40c658.png)
![スクリーンショット 2020-12-20 220931.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/2b5ab045-5685-872c-cfdd-fc1d734fc466.png)




モデリングを終えたらSTL形式で保存し、
3Dプリンターで出力するため、スライサーソフト「CHITU BOX」へ移送します。
![スクリーンショット 2020-12-20 231353.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/7b772dfb-752f-b1a8-1e07-9d1ca615efba.png)



####筐体製造
CHITU BOXでスライスファイルを生成後、3Dプリンターで製造します。
![DSC_0198.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/3ed99ff1-dfd3-56be-47a7-19bf5b279395.jpeg)

製造後は塗装を行います。
![DSC_0203.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/7267a02b-225a-381a-6b45-0d304dadf854.jpeg)

※塗装きちゃない…(´・ω・`)

####組立
一部グルーガンを使い、組立てを行っていきます。
![DSC_0205.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/07fba8b3-c9ef-664f-11a3-a7240e88238e.jpeg)


####試作機完成
このような製品試作になりました。
![DSC_0209.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/b70d69ab-a892-5fd5-4b1d-5e9c0ceae499.jpeg)
![DSC_0212.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/966724/3f7dbe9b-8285-e683-ca31-e6e3c307adab.jpeg)




####原価
◎部材費
LED		：￥524
電池		：￥220
電池ソケット	：￥45
抵抗		：￥91
マイコン	：￥118
マイコンソケット：￥91
コネクタ	：￥41
距離センサー	：￥618
PCB		：￥2,090
3Dプリンターレジン：￥2,271

◎開発期間
2020年12月11日～2020年12月20日
作業時間：15時間
人件費：￥20,000-(10時間×2000円)

◎試作原価
部材費：￥2,271-
人件費：￥20,000-

トータル：￥22,271-

####広告
もし、量産し製品とするのであれば広告を打つ必要があります。
チラシやネット媒体による公告を行う場合、Blenderで作ったモデルからマテリアルを設定し製品と近い見た目にすれば、広告も早期に製作できるでしょう。

####今後の改良点
今回の試作では昼夜問わず距離によりライトが動作します。
とはいえ、真夜など暗い環境でなければライトを動作させる必要がないのも事実です。
となればCDSセルなどで明るさを感知して、部屋が明るければ動作させないというプログラムも有効だと思われます。


####まとめ
以上、機械製品の簡単な試作機の製作でした。
かなり圧縮してまとめたため、「どうしてこういうことをしたのか」という疑問もあるかもしれません。
私自身それぞれの工程で拘りがあり、全然それらが書けていないのも事実なのですが、全部書くと収まりがつかないためダイジェスト版のようにさせて頂きました。
もちろんこれが製品試作のすべての工程ではありません。
あくまで、今回はこういう流れで作ったという話なので、皆様の創作の何かの参考になれば幸いです。

何かあれば、個別でもいいのでご連絡頂ければ幸いです。

[試作機開発]Blenderで筐体設計・DesignsparkPCBで回路基板設計を行い、3Dプリンタを用いてセンサーライトを開発する

以上、わたくしマクライオンが執筆させて頂きました。

2020年12月20日　マクライオン