3Dプリントを試してみる日記:もっと複雑な形状
前回の記事でちょっとした入れ物くらいは1時間半でサクッと作れることがわかって気をよくしたので、もっと複雑な形状に挑戦してみた。
前回は直方体から直方体をブーリアン演算(Subtract)で切り抜いていたけど、今回は円柱を切り抜いた。角を丸めるのはエッジを選択してFillet。文字以外の形を作るところまでで1時間半。角を丸めると途端にかっこよくなる(解釈)
その後、今回はサイズ的に石膏で作った方が安いと判断して、石膏ならカラーで出力できるはずだからと文字を入れ始めるも、文字の入れ方を勘違いしていて色のついていない彫り込みが行われてしまう。ここまでプラス1時間。
12月23日の早朝1時に発注、740円。25日に発送。前回ナイロンで作ったのと比べて格段に速いけど、石膏だからなのか、単にすいていたのか。判断材料が足りない。
「(石膏は)微細な形状が苦手」という注意書きをあえて無視して限界を攻めた結果
- 表面に半径0.5mm円柱での溝→問題なし
- 側面に半径0.3mm円柱での溝→少し細くなったように見えるけど視認できる程度の溝自体は残ってる
- 半径0.3mm円柱で2mmの板に貫通穴→接着剤で中が1mmぐらい埋まってしまった!
- 表面の深さ0.1mmの文字→全滅
と言う感じに。石膏は接着剤で固めるタイプだから、ある程度以上に細い構造は埋まってしまうんだな。埋まってしまった穴をどうするかしばらく考えてから、画びょうを使って貫通。
ブレッドボードのジャンパーケーブルが、長いものが余りまくって、短い黄色やオレンジが足りなくなりすぎるので、長い黄色のケーブルの片端を穴に入れて右端でカット、上端でストリップして、適切な側面の溝で曲げると、短い黄色のケーブルができあがるという治具。
まあまあ使える。60点くらいかなー。ケーブルが左右にぶれないように溝を掘ったのは正しい発想だったが、治具の端だけに掘ったので、治具の端でケーブルを指で押さえる羽目になり押さえずらい。まっすぐ掘りぬいた方が良かったな〜とか。さすがに鋭角斜めの側面で曲げるのは無茶があったな、とか。0.3mmの溝が細すぎることも原因かもしれない。
0.3mmの穴は埋まるんだな、とか、ここはこう設計した方が良かったな、とかいうフィードバックが3日くらいで得られるのは良い時代だなぁと思った。
3Dプリントを試してみた
僕の初めての3Dプリンタ出力。抵抗が6本ずつ17種類入ります。これに先日のカラーバー出力スクリプトで見出し作って蓋としてつけてゴムで止める予定。一回り太い10Mの抵抗も一応4本入った。遊びがないから取り出しにくいけどそんな頻繁に使うものでもないからよいでしょう。
データをここからダウンロードして自分でプリントするとか、そのままここで発注するとかできるみたいです。 http://make.dmm.com/item/406392/
12/7の21時半に思い付いてAutodesk 123Dをインストールし始め、操作方法の解説動画を見ながら23時にSTLデータ完成。3DプリントサービスにSTLデータを投げて見積もり・発注、というすべてPCの前で完結する作業。70x70x14のサイズで、最初は透明アクリルでプリントしようと思っていたのだけど、見積もりを掛けたら9992円だったので「最初の一歩からそんなに出せないなぁ」と白色ナイロンに変えた。それで3614円。ちなみに石膏だと4668円。
12/9に造形開始されて、12/14の午後発送された。
このサイズで3000円だったらRaspberry Piのケースなんか作ったら何円かかるんだ〜とテンションが下がっていたのだけど、よく考えると料金とサイズが比例するわけないので大きくてもさほど値上がりしないかもしれないなという気がしてきた。
立方体
10mmの立方体でナイロン1554円、石膏807円。
100mmの立方体でナイロン81646円、石膏162602円
体積は1000倍になっているけど、価格はせいぜい50〜200倍。
箱
5面がふさがっている箱型で、10mm立方だとナイロン1470円、石膏656円。面は0.7mm。この辺が最小工賃か。
50mm立方だとナイロン2514円、石膏が2606円。このへんで石膏の方が高くなる。石膏の方が材料費の体積当たり価格が高いのだろう。これは面は1mm
100mm立方だとナイロン7378円、石膏11725円。ちなみにこれは面が1㎜だけど底だけ間違えて3mmある。(実はここまでの3つは上に書いてあるものほど後から作ったのでやってる最中に僕のモデリングスキルが向上してる)
その分厚い底を貫通させてチューブ状にしたらナイロン4869円、石膏7023円まで下がる。
やる前はなんとなくバウンディングボックスの大きさが価格を決める主要因のように思い込んでいたけど、100mm立方の3つの例で4869円、7378円、81646円、というわけなので、明らかに体積が一番大きな要因。壁を薄くするとか、ぺったりふさがってる必要がないならメッシュ穴開けるとかすると安くなると思われる。上の抵抗ケースは外壁2mm、隔壁1mmで設計したのだけど、少なくとも隔壁はもっと薄くてもよいと思う。
抵抗の絵を描くプログラムを書いた
https://github.com/nishio/resistor
息抜きに&プリントアウトして自分の電子工作箱に貼ろうかな〜と。
やる気の心理学を学んできた
やる気を出す方法、国立情報学研究所で科学的エビデンスに基づいて紹介してくれるイベントがあるらしいので申し込んだ! https://eventon.jp/2052/
昨日参加してきました。結構面白かったです。
個人的に一番刺さったのは、内発的動機を高める要因として「他人に教える」があるという話。過去10年の僕の行動を振り返ると、僕自身「他人に教える」ことでとてもモチベーションが高い状態に維持され続けていて、それはこういうことだったのかーと納得感がありました。後で講義資料がシェアされたら、元論文を読んでみようと思います。
質疑でも盛り上がったけど、そういう社会的報酬が「内発的動機」と呼ばれるのは、もう内発の定義ってなんだよ感がありますけどね。教えることが報酬になると、学ぶことが「確実ではないがたまに他人に教えたいと思えるネタに出会える営み」になるわけで、これってまさに間欠強化。一番強い条件付けですね。
あと、条件付き計画は今日からでもすぐ使えるテクニック。TODOリストって何も考えずに書くと「〜をする」とか書いてしまいがちだけど、これに条件を付けくわえるとタスクが実行される量が60%もアップする。前半で解説されてたタスクシュートの話も、ようは「この時間帯になったら何々をする」という条件付き計画の形になってるんだなぁと思いました。
ザイガルニック効果という言葉は今回初めて知ったのだけども、未完結のタスクは何度も記憶に浮かぶが、計画を立てると浮かばなくなるとのこと。タスクシュートなどで詳細な計画に落としてしえば考える必要がなくなるというのはそういうことか〜。
GTDなりでタスクを書きだすところまではよくやるのだけど「〜の原稿のために1ポモドーロ書き出し法をやる」とか書いて放置されていたりする。これは昔は「〜の原稿をやる」と書いていて、ありがちな「タスクの規模が大きすぎるので着手がおっくうになる」って現象が発生していた。それの改善策として「まず1ポモドーロ書き出し法をやれ」というタスクに刻んだ。これは自分のやる気システム(http://nhiro.org/yaruki/)から指示されたときには成功率が高いんだけど、TODOリストに書いちゃったときにはあんまり実行されない。この違いがなぜなのかいままでわからなかったけど、前者は要するに「今から1ポモドーロやれ」ということで後者は「いつか1ポモドーロやれ」ということだったのだなぁ。だからきっとタスクリストに書くべきなのは「明日の出社時の電車の中で書き出し法をやる」とかなのだろうなぁ。
タスクシュートに関しては「名前は聞いたことがある」程度で詳しいことは全然知らなかったのだけど、実践している人の話が聞けて面白かった。原則である「時間帯で分割する」が「条件付き計画」になっているわけだけど、計画を立てる系の方法はえてして計画を立てるコストが大きすぎて、そのタスク管理自体の最初の一歩が踏み出せない。1日のリストは140項目もあるらしいと聞いて、どうやって作るんだと質問してみたら、最初はまずはログを取ることから始まるのだそうだ。ログを取っているとそのうちにどういうタスクにはどの程度の時間がかかるかとかがわかってくるということらしい。
これは僕が実践しているポモドーロテクニックと同じ考え方。計測して管理する対象についてよりよく知ることで、よりよい計画が立てられるようになる。ポモドーロとタスクシュートの大きな違いは粒度だな。ポモドーロは25分単位で計測するがタスクシュートは分単位。分単位レコーディングは大変そうだけど、今までポモドーロの単位にならないので計測しないでスルーしていたタスク(歯磨きとか風呂とか)も計測してみるのはいいかもなぁ。自分が歯磨きにどれくらいの時間を掛けているかとか意外と把握していない。
1日の140個のリストのうち、過去ログをきちんと保管していると、変化があるのは20〜30個程度になって、それを計画するのに7分くらいでできるようになるらしい。
タスクシュート自体を今後自分が使うかどうかは疑問だけど、条件付き計画の一つの実装パターンとして興味深い。とりあえず「なぜ、仕事が予定どおりに終わらないのか? ~「時間ない病」の特効薬!タスクシュート時間術」を読んでみることにする。
Raspberry PiからWifiに接続する場合の設定
アクセスポイントがWEPなのかWPAなのかなどによってネットワーク設定が異なるが、あんまりまとまってないように思うのでここでまとめて置く。間違いがあればご指摘ください。
パスワードのかかってないアクセスポイントに接続
旅館の無料Wifiなどでたまにある。
/etc/network/interfacesに下記のように書く
wireless-essid <YOUR_SSID>
WEP
/etc/network/interfacesに下記のように書く
wireless-essid <YOUR_SSID> wireless-key s:<YOUR_KEY>
追記、この設定でなぜか169.254.…(自己割当IP)になってしまうアクセスポイントに悩まされた。wpa_supplicant.confで以下のように書くことで接続できた。何が違いなのかよくわからない。
network={ ssid="<YOUR_SSID>" key_mgmt=NONE wep_key0="<YOUR_KEY>" }
WPA
/etc/wpa_supplicant/wpa_supplicant.confに下記のように書く
network={ ssid="<YOUR_SSID>" psk="<YOUR_KEY>" }
パスワードを平文で保存しないためにwpa_passphraseを使う方法がある。また、ssidとpsk以外にkey_mgmt, proto, pairwise, groupなどを設定する必要があると主張するブログがあるが、MUSTではない。ssidとpsk以外のパラメータを正しく設定しようと何度か試行錯誤したけども、結局「どれも指定しない」にしたらあっさりつながってしまったので、指定しない方法を最初に試すべきだ。
Paho-MQTTでUnicodeDecodeErrorが起こった話→bytearrayを使う
File "/usr/local/lib/python2.7/dist-packages/paho/mqtt/client.py", line 1693, in _send_publish upayload = payload.encode('utf-8') UnicodeDecodeError: 'ascii' codec can't decode byte 0xaf in position 0: ordinal not in range(128)
なぜかペイロードをASCIIとみなしてUTF-8に変換しようとするので、整数値をstruct.packでバイナリにしているようなケースに「運悪くASCII以外の文字になった時だけ実行時例外が起こる」という罠にはまった。
-
- -
paho-mqttのpythonクライアントがstringしか扱わないのでバイナリを使いたい場合は、 bytearrayを使う、とかいう話がここに
https://t.co/zmK4raDlJA
— shirou - しろう (@r_rudi) 2015, 10月 21
# single('\xfe') # NG single(bytearray('\xfe')) # OK
なるほど、bytearrayにすればOKでした。
一般社団法人未踏の理事に就任しました
昨日9月29日の一般社団法人未踏(未踏社団)の社員総会にて、私と川合秀実さんの理事就任が決まりました。このブログ記事で理事就任のあいさつに代えさせて頂きます。
未踏社団とは
公式ページはこちら: http://www.mitou.org/
簡潔に言えば、未踏事業の関係者を中心に、創造的な人材の一人一人が創造性を最大限に発揮出来るよう、環境を整えていくことを目指す組織です。
西尾泰和とは
2002年度未踏ユース採択者で、現在はサイボウズ・ラボ株式会社にて研究開発をしています。主な関心分野は、ソフトウェアなどによる知的生産性の向上や、アイデアづくりの支援です。未踏社団の目標である「創造的な人材が創造性を最大限に発揮できる環境づくり」は、私自身の関心とも強い関連性があります。
何を大事だと考えているか
ここから自己紹介もかねて、私個人が何を大事だと考えているかを共有したいと思います。
「一緒に居続ける」場
「集まるのが最初の一歩、一緒に居続けるのが進歩、一緒に働くのが成功」というフォードの言葉があります。イベントなどで人が集まることももちろん大事ですが、単発イベントで一日盛り上がって終わりではいけません。集まった人が「一緒に居続ける」場が必要です。物理的/電子的にそのような場を作ることが大事だと考えています。
濃く小さなグループを作ること
異なる視点を持った人材の間で、知識の交換と創造が起きるためには、コミュニケーションが活発であることが必要です。しかし、例えば200人のFacebookグループを作ったとしても、コミュニケーションは活発にはなりません。どんなメンバーがいるか把握できないことが、発言の障壁になるからです。
特定のテーマに関心がある人が集まって、10人程度〜多くても30人程度のグループを作ると、この障壁がなくなり濃い話が行われるようになります。
先日キックオフが行われた未踏研究会はこの方向性の一環です。またこの研究会で私が発表したスライドは知識創造の場の設計について今私が考えていることをふんだんに含んでいますので興味があればぜひご一読ください。
真実の共有
「長期的には真実が最善の施策である」というゲバラの言葉があります。不都合なことを隠すのではなく、事実を収集し共有し信頼を培うこと、不都合の解消方法を創造的に思考できるようにすることが大事です。
この一環として毎週の会議の議事録を正会員へ公開することを推し進めています。また情報の公開や伝達過程におけるもろもろの障壁を取り払い、スピーディな情報共有を目指しています。
未踏名鑑: 協働関係の収集と可視化
未踏を通じて知り合ったOB/OGが、その後協力してイベントやプロジェクトを行った、という事例はたくさんあります。共に活動することで、知識の交換と創造が行われます。また活動を通じて信頼関係が築かれ、より効率の良い知識交換が行われるようになります。「一緒に働くのが成功」というわけです。
この信頼関係のネットワークこそが重要です。
ところで、未踏社団は経済産業省の「先端課題に対応したベンチャー事業化支援等事業(ITベンチャーのスタートアップ促進事業)」の採択事業者であり、公募要領にある通り以下の活動がMUSTです。
- 事業への参加者が、事業終了後にどのような活動を行いどのような成果をあげているかの調査を行う。
- 各事業への参加者が相互に交流することで、事業終了後の活動の振興や更なる人材育成につながるよう、参加者・経験者の間のネットワークの構築を行う。
これは、信頼関係のネットワークを可視化するために絶好の機会だと考えています。そこで以下の3点を重視しながらこのプロジェクトに協力しています。
- 個人だけにフォーカスするのではなく、協働関係のデータを収集すること
- 色々な可視化のアプローチを試しやすくするために、それらのデータが機械可読な形であること
- それらのデータが鮮度を保つために、更新することにインセンティブのある仕組みであること
貢献の機会を作り出すこと
「ご協力をお願いします」という言葉を、つい無自覚につかってしまいがちです。しかし、プランを誰が決定するのかが不明瞭です。悪く言えば「こちらが決めたプランに従って無償で奉仕せよ」と同じ意味になってしまいます。
卓越した能力を持っている人は、何をやるべきか、何が優れた仕事かを自己決定します。その決定権を奪いコントロールしようとすることはとても失礼なことです。なぜなら「あなたには決定能力がない」と言うに等しいからです。
社団とみなさんの関係は、上司部下の関係ではありません。雇用契約で縛られた関係ではなく、コミュニティとボランティアの関係に近いです。社団がやるべきことは、みなさんが能力を発揮できるチャンスを作り出すこと、みなさんが社団の目標達成へ貢献できる機会を作り出すこと、「面白そうだな、手伝ってやろう」と思っていただけるような環境づくりをすること、です。
ぜひ「あなたは何がどうなるとうれしいのか」をお聞かせください。よろしくお願いいたします。