もちょる日記

大事なことを言葉として残しておくブログです。

Simplify3Dを使ってSTLを3Dプリントしてみる。

どうも、Marieです。

 

今回は、Fusion360で生成したモデルを実際に3Dプリンタで印刷してみたいと思います。

 

今回用いた環境はこちら。

  • winsow10
  • Simplify3D
  • GENKEI TITAN 3

 

印刷する際には、Simplify3Dというソフトウェアを用います。まずソフトウェアを開きましょう。開くと以下のような画面が表示されると思います。

f:id:sarusuke7260:20201227155849p:plain

Fig1. Simplify3D

 

さて、作成したstlファイルを、画面の空間にドラックアンドドロップすると、無事読み込むことができます。

 

モデルの向きを回転させる際には、左側メニュー、モデルに存在する、今回作成するモデルの名前をダブルクリックすると、移動回転のメニューが出てきます。

f:id:sarusuke7260:20201227155901p:plain

Fig.2 回転などの設定ができる画面



サポート材を生成するためには、右側のツールバーの一番下、サポート材設定のページを開きます。

その後表示されるメニューから自動サポート生成をクリックすると、サポート材が生成されます。

f:id:sarusuke7260:20201227160105p:plain

Fig.3 サポート材生成の画面。自動生成のほかにも、サポート材を追加したり、削除したりすることができる。

さて、では実際に印刷してみましょう。

まず、右側の、歯車のマークをクリックします。すると、接続されている3Dプリンタの情報が出てきます。これがマシンコントロールパネルです。

f:id:sarusuke7260:20201227155847p:plain

Fig.5 マシンコントロールパネル

最初に、コミュニケーション画面で、正常に3Dプリンタと通信ができているか確認します。その後、タブをジョグコントロールに移動させ、xホーム->yホームの順にクリックして、ノズルをホームポジションに移動させます。

 

次に、ヒートベッドとノズルを温めていきます。

画面の、エクストルーダー、ヒーテッドベッドと書いてある項目にあるボタンで電源をオンします。

 

なにか不具合がない限り、エクストルーダーとヒーテッドベッドが温まっていきます。温度が上がっている様子は温度プロットのタブで確認できると思います。

温度設定は、もうすでになされていますが、PLAならエクストルーダー210, ベッド60がちょうどいいと思います。

 

温度が上がりきったら、先ほどのモデルが描画されている画面に戻って、プリント開始の準備をクリックします。

表示レイヤーレンジの下のバーをいじって、印刷の際に怪しい動作が起こらないことを確認したら、USB経由でプリントを開始をクリック。

f:id:sarusuke7260:20201227155857p:plain

Fig.6 最終確認画面。これでボタンを押せば3Dプリントが始まります!

これでプリントが始まります。

お疲れさまでした。

※ランドの校正とかについては、追記するかもしれません。

 

質問があれば、コメント、もしくは、Marie(@Marie_Haptic)まで。

論文hack2020-僕流論文の扱い方-

どうも,Marieです.

ちょっとラボの方で知識の資産化をしていきたいなと考えたので投稿を.

 

今回は僕がやっている論文の探し方,読み方,まとめ方(ver.2020なので,来年また変わるかも)についてまとめたいとおもいます.

 

論文の探し方

まず,論文の探し方です.

論文の探し方は,主に2ステップ."あたりをつける"と"芋づる式に掘る"です.

 

まずはあたりをつける工程.

自分のやりたいこと,やっていることに対して,似ている,かつ質のいい論文をいくつも探すのは,大変骨が折れます.

なので最初にあたりをつけましょう.

あたりをつける,というのは,ひとつ,自分の分野に似た質の良い論文を探し出す,ということです.

そんな時参考になるのが,トップカンファ(僕の分野だと,CHI, UIST, SIGGRAPH, AHなど......)やIEEE Transaction等のつよつよジャーナルの論文です.

また,被引用件数が多いということはその分野の多くで参考にされているということの証拠です.

そのような質の良い文献に簡単にあたりをつけられるツールがあります.

Microsoft Academicです.

academic.microsoft.com

Microsoft Academicが,探すという点で優れているところは,

  • 論文の被引用数でソートできる
  • publishされた学会,ジャーナルで検索ができる
  • relatedのような項目があり,にている論文をみつけやすい.

の3点です.

(探す,という点には関係ないですが,ブックマークをしてbibtexに一括exportできます.ベンリ!)

 

完全に僕たちが最初にやりたいことと一致していますね.

ということで,まずこのツールを使ってあたりをつけていきます.

 

その後は,芋づる式に掘る工程に移っていきます.

まず,先ほどのあたりをつけた論文の引用文献をチェックして,そこから関係するような論文をどんどん読んでいきましょう.これが芋づる式に掘る仕組みのひとつです.

 

しかしながら,この芋づる式もすぐに息切れてしまうことが往々にしてあります.

さて,どうしましょうか.

そんな時は,Microsoft Academicのrelatedの項目にある論文に手を伸ばしてみましょう.この項目は,引用,被引用の関係にないかもしれないけれど,workとしては似ているよというものが項目に入っています.

 

しかしながら,これも息切れする可能性があります(ここまでだいぶ論文を漁れていると思いますが).

ここで,最終兵器,connected papersを使います.

www.connectedpapers.com

connected papersでは,論文の名称を入力すると,関係する論文が,距離が分野の近さ,円の大きさが被引用件数,色の濃さが出版年を表すグラフとして表示されます.ちょーべんり.

このようなツールを使って掘っていくと結構効率的に論文を掘ることができます.

 

さて,ここまでをまとめていきましょう.

論文を探す時は,まず

Microsoft Academicを用いて質の良い学会,ジャーナルから質の良い論文を探してあたりをつける.

そこから,

1. 引用文献

2. Microsoft Academic

3. connected papers

を用いて論文を掘りまくる.

とすればうまくいく場合が多いです.

 

論文の読み方

個人的には,abstract -> introduction -> conclusion -> discussion -> user study -> propose section -> related worksの順です.

人によって重視する場所が変わるので,皆さんの好きなパターンを見つけてもらえればと思います.図をパラ見してからこれをやると僕は効率がいいのでこれです.

 

論文のまとめ方,管理の仕方

論文をまとめる,ということは主に2つの役割があると考えています.

まず,"2回目時間を置いて読んだ時に,読みやすくするため"です.

内容がある程度わかっている文章を読むことは,相当楽です.あとある程度まとまっていたらむしろ読まなくてもまとめを読むだけで済みます.楽ちん.

もう一つは,"論文を書くため"です.

論文を読んでいる方は当然知っていると思いますが,論文は他人との差分を示す必要があります.

そのためには,既存研究をまとめる必要があります.

しかし,人間の脳は割とメモリ寄りです.揮発します.(僕の脳みそはメモリのように揮発するくせに速度がHDDなので困っています,助けて)

そのため,なんらかの形で情報を分野ごとにまとめておく必要があります.

 

さて,ではどうやってまとめるとよいのでしょうか.

僕の場合,利用しているツールは

google slide

・growi

・MindNode

の3つです.

では,それぞれの役割を説明していきましょう.

google slideでは,論文を筑波大学准教授の落合先生フォーマットにまとめます.

www.slideshare.net

このフォーマット個人的に最高です.これを作ることで,最初の2回目時間を置いて読んだ時に,読みやすくするという役割は十二分に達成できます.

 

次にgrowiです.

growiとは,自作wikiの一種で,自分でページを作成しながら情報をまとめていくことができます.

growi.org

このgrowiは,いわばデータベースの役割を果たします.

growiでは,各論文に対して固有のページを作成し,内容をちょこっと書いた上でタグ付けをします.このgrowiのいいところは,

・ページに対して自由に何個でもタグ付けができる

・タグで検索ができる

という2点です.タグをつけて整理し,タグ検索で論文を一括で引っ張ってくることで,その分野のいままで読んだ論文を漏れなく引用の候補に入れることが可能です.

 

最後に,MindNode

aco-tokyo.com

これは論文を書く際に,自分の知識を整理するために使います.

MindNodeはマインドマップを自由に形成することができるものです.これを使って細かい分野ごとにツリー状に論文をまとめていきます.

そうすることで,脳内が整理されて,スムーズにたりない情報を見つけることが可能です.

 

まとめると,

google slideで落合先生フォーマットを作成 -> growiでタグ付けをして論文を保存 -> 必要になったらタグづけ検索して論文を引っ張り出し,MindNodeで整理

このような形で論文の管理をしています.

 

最後に

さて,ざっくりと僕が論文に関してやっていることをまとめましたが,いかがだったでしょうか.

使える部分だけ参考にしてもらえれば幸いです.

今年こそは,やることを絞ろう(今年度の目標設定の話)

こんちは.Marieです.

 

今年で,大学生生活半分も過ぎたということで,焦りを感じてきたMarieです.

今までは,まだ大学いっぱい時間あるしーと言い訳してきましたが,そろそろそんなわけにもいかなくなるってことに最近気がついて焦っているのです.

 

つー訳で,言語化した方が,目標を意識できるかなーと思い,抱負の記事を書くことにしました.

 

じゃあ,学科と自主研究と趣味の3つに分けて抱負を整理して行きたいと思います.

学科

  • レポートにかける時間を増やす.もっと理路整然にレポートを書く

ちょっとフルペを書くことを想像しながらレポートを書くといい練習になりそうなので,リファレンスも抑えつつ,論理的に,この手法のどこが既存手法よりも優れているのか,このデータからなにがわかるのか,などちゃんと素早く言語化していく力をつけようと思いました.

(フルペ書こうとして,うまくかけなかったから.)

研究

  • フルペ
  • 触原色定理とPseudo Hapticsと,筋紡錘が受けるの定理について知らないことをなくす.

Outputのほうは,今年こそは今やっているネタでフルペ絶対に出すぞ,というやつです.いや,2年も自主研究やってて(まぁゆったりだが),フルペ出せてないのダサ過ぎでしょ.今年こそはフルペを出す.

Inputの方は,触覚について.今年度,触覚をフィードバックするデバイスを自作して思ったことは,触覚について何にもわかってないな,俺ということです.なので,各刺激の効果的な範囲,評価法を勉強したいなぁと思いました.また,視覚の影響強スギィ!となったので,Psudo Hapticsの知識はどこかで絶対使えると思って,調べたいなぁと.

趣味

  • 積みげー消化
  • 積んである小説を消化する

まじでこれ.やばい.小説10冊以上溜まってます.困った.なので読みます.なんか最近は,"意味のないものにこそ(自分という存在の)意味があるのでは"という意味不明な思考になってきたので,社会貢献とか,そんなことじゃなくて,好きなことを突き詰めて行きたいなぁと思いました.

 

まぁ,総じて,締めがあって,達成できなかったりして困るものを減らしました.実はもっと色々やりたいことがあったりするんですが,これ以上やるとパンクしそうなので.

まぁこんなもんで.今年も頑張ります〜〜

 

 

Pseudo-Haptics ~視覚で作る触覚~

(Haptics Advent Calendar 2019 16日目の投稿です.url →https://adventar.org/calendars/4151)

 

Marieです.

0. はじめに

まずは,Haptics Advent Calendarに参加してくださった方,またこうして記事を読んでくださっている方々.本当にありがとうございます.

今までこのカレンダーに寄稿して頂いた記事や,これから寄稿される記事は,よりHapticsを身近に感じることのできるようなものとなると思いますので,ぜひ他の記事にも目を通していただければと思います.

(url →https://adventar.org/calendars/4151)

 

Advent Calendarの所感などは追々,別途の記事で話させていただきたいと思っております.

前置きが長くなってしまい,申し訳ございませんでした.

 

1. 自己紹介

改めまして.Marieです.(Twitter -> @Marie_Haptic)

現在,筑波大学のB2で,他の感覚を触覚で代替する,触覚を用いたモーダル変換の研究をしています.

 

2. 視覚から触覚が提示できる仕組み

今回は,Pseudo-Hapticsについての記事を書いていこうと思います.

Pseudo-Hapticsってなんぞ,っていう人もいると思います.

簡単に言ってしまうと,視覚情報を適度に歪ませることによって,触覚を提示する技術のことです.

 

この説明では,相関がわからないという方も多いと思います.なぜ,視覚を歪ませると触覚に作用するのか.その理由をざっくりと説明して行きたいと思います.

 

突然ですが,先日,堀江さんの寄稿してくださった記事に,こんなことが書いてありました.

(堀江さんの記事はこちらから->http://aratahorie.com/self-motion-haptics)

加速度を感じる度にどこかしらの皮膚に力を知覚していると考えると,相当な学習効果を生んでいると思いませんか?

この例は,運動感覚と触覚との間における学習ですが,これは視覚と触覚との間においても発生するはずです.(視覚と運動感覚,運動感覚と触覚それぞれに相関があったら,そりゃ相関あるやん?)

 

では,相関がある場合,片方の情報を一部分だけ歪めて提示するとどうなるか.

その片方の情報が確からしいと認識しているなら,脳は,片方の情報からもう一方の情報を推察し,補完するのです.言い換えると,視覚を歪めると,都合のいいように脳が解釈し,それに対応する触覚を当てはめ,勝手に感じるのです.

これが,視覚を提示するだけで触覚を感じることのできる仕組みです.

 

人間の視覚情報と受ける触覚を同期させるために,提示されていないはずの触覚を知覚する作用を利用した触覚提示.それがPseudo Hapticsです.

 

まぁ,これだけだとまだどんなものかわかりづらいと思うので,例をあげたいと思います.

3. Pseudo Hapticsの例

マウス,ポインタの速度調整による抵抗感の提示 

 マウスポインタを操作する際に,ある一部分のみ速度を歪めることで,その部分のみ反力を感じさせることができます [1].

f:id:sarusuke7260:20191216215555p:plain

黒いCubeをマウスで操作し,凸になっている部分のみCubeの速度を調整することで,マウスを操作する手に反力を感じさせることができる.
 形状変化の提示

ディスプレイに表示されるオブジェクトの形を変更することによって,オブジェクトの形が多少違くてもその形であると認識することができるというものです [2].

f:id:sarusuke7260:20191216233548p:plain

円柱系のオブジェクトを,実際に触る指と一緒に映像を歪ませることによって,凹凸のあるオブジェクトを触っていると認識させることができる.

動画のurlはこちら->https://www.youtube.com/watch?v=5uEVNtgOcm4&feature=youtu.be

柔軟性の提示

プロジェクタを用いて,布などに,本来とは違う布の歪み方をプロジェクションし,物体の柔軟性を変更することができるというものです [3].

f:id:sarusuke7260:20191216235444p:plain

布の歪み具合をdepthで測った後,適応したい柔軟性の歪みを選択し,プロジェクタで投影することで,その柔軟性をユーザが感じることができる.

まだまだ種類はあるのですが,顕著な例としてこのようなものがあります.

4. まとめ

ここまで読んでくださり,ありがとうございます.

Hapticsは,基本的には提示になにかハードウェアが必要であるのですが,Pseudo Hapticsは自分の認識と齟齬が生まれないように視覚情報をうまく歪めて提示してあげることで,ハードウェアなしに触覚が提示できるというところに面白さがあるんだと個人的には思っております.

大変拙い説明で申し訳ないのですが,Hapticsという分野に少しでも興味を持っていたくきっかけとなれば幸いです.

 

最後に,クッソ読みにくい文章すみません.

 

(この記事のここ間違ってそうとか,この研究載せたほうがいいんじゃない?とかありましたら大変申し訳ないのですが,TwitterのDM解放していますので,リファレンス共に教えていただけるとありがたいです.Rebuttalだします)

 

5. 参考文献

[1] Lecuyer, Anatole, et al. "Pseudo-haptic feedback: can isometric input devices simulate force feedback?." Proceedings IEEE Virtual Reality 2000 (Cat. No. 00CB37048). IEEE, 2000.

[2] Ban, Yuki, et al. "Modifying an identified curved surface shape using pseudo-haptic effect." 2012 IEEE Haptics Symposium (HAPTICS). IEEE, 2012.

[3] Punpongsanon, Parinya, Daisuke Iwai, and Kosuke Sato. "Softar: Visually manipulating haptic softness perception in spatial augmented reality." IEEE transactions on visualization and computer graphics 21.11 (2015): 1279-1288.

 

UIST2019レポート

どうも,Marieちゃんです.

今回は,UIST(ACM User Interface System and Technology Symposium)に参加してきたレポートをば.

いや,他にも学会参加はしていたんですが,ブログ更新する時間がね(言い訳)

言い訳はよしとして,始めていきたいと思います.

1. UISTってなあに?

UIST(ACM User Interface Software and Technology Symposium), インターフェース系,HCI系のトップカンファの一つです.毎年,色々なUIについての論文が出ます(みなさんが興味あるものだと,VR系とか,ファブリケーションの分野でしょうか).やんわりとしたイメージでいうと,参加者の皆さんが自分のやって作ってきたシステムやらものやらを持ってきて,発表したり,でもしてもらったりする学会です.

(こんなゆるふわに書いていますが,普通に強い学会です.)

2. ひこうきつらい

さて,前置きはおいておいて,早速レポートをば.

今年のUISTはNew Orleans開催.たどり着くまでに14時間くらいのフライトが待っていました.海外発表はこれが初めてだったので飛行機の中で「凪のあすから」をうきうきしながらみて,ちょこちょこっとやることを片付けようと思っていました.

そう,飛行機に乗って3時間ほど経つまでは.

あきた.

飽きちゃったんです.うへぇ,アニメも飽きたしコードも書く気力がない.眠れもしないし,お酒って気分でもない.ただただ無.あとこれは11時間も続のかぁ,と思いながらぼーっとしてました.(でも少しづつプは書いていた)

何が一番辛いって,Twitterが見れない!TL動かないし!

3. New Orleans観光

 

到着して,疲れ果ててその日は就寝.

次の日は,観光でした.

観光では,街をぶらぶらと.街なみは綺麗でしたが,治安はよくないかな......

f:id:sarusuke7260:20191028111138j:plain

New Orleansの街並み

4. 学会

さーて,学会.この章はわりとがっつり書きます.今回はカンファレンスホテルで行われました.

f:id:sarusuke7260:20191028184802j:plain

学会会場

今回,UISTで僕が注目していたコンテンツは布系のFabricationとHaptics.Hapticsはもちろんのことだけど,布系に注目してた理由としては,研究室のM1の方が,布を使って面白いことを色々やっていたから.ほえーって思いながら布に関してのセッションはみてた.Hapticsのセッションは,リアルな大きさの物体を持たせて内部の処理でうまく再現するという方法か,Pseudoを使うか.あとは安くするか,新たな感覚を提示するみたいなことをやっていた(間違いでなければ).1つめに関しては,物理的障害が残るから自分的にはあんまり興味がなかったです.Pseudo Hapticsに関して自分の知見が少なすぎてどうしてそう感じられるのかがあんまりピンと来なかったです(ここは自分でsurveyしようと思った).安くするとか新たな感覚を与えるとかも,僕の(本来やりたいこととの)ベクトルとは違うかなぁと.やっぱりPseudo Haptics最近は盛り上がっているなぁという印象でした.

まぁセッションの話はこんなもんにして,UISTの面白い部分はデモ!様々なデモが出展されていました.その中でもやっぱり感動したのは,話題になったあの布を浮かせてプロジェクションするやつ!あれは魔法みたいでした!あと,企業のデモですが,長年期待していたSoliセンサをみれてよかった!あと,私事ではありますが,開発者の方とお話する機会があり,大変勉強になりました.

さて,次は自分の発表.ポスター発表は1hだけで,発表者今回もちょこっとしたものなのでポスター発表だったのですが,海外での発表は初めてで割と緊張しました.(日本での国際学会経験はあり......)

英語で説明する,(というか人と話す)ことが慣れていないので最初はコミュ障を発揮していたのですが,なんとか慣れました.いい経験でした.あと,来年はOral出したいなぁという欲も出てきました(進捗を出せ)

詳しくはTwitterとかでUIST2019って調べてみてね♡

 

5. 帰りの飛行機

虚無.

読んでくださってありがとうございます.オチも何もないw 終わりw

 

 

 

 

情報科学を学ぶとは(自分の反省と自分の中でのこの学問の再定義)

こんにちは,まりぃちゃんです.

今回は,私の学部(一応大学生なので)について,自分の学部で学ぶ意義を考えたいと思います.

 

まず,情報科学部とは.

現在,情報社会を支える様々なシステムや要素(例えばアルゴリズム)を学習する,それをよりよく改善する力を育成する学部である(と,私は考えております).

では,情報科学を学ぶ上で大事なことはなにか.

そりゃあ,よりよくするためにはどのような理由でこの技術がよしとされるのか理解することであると思います.でなかったら評価もくそもないし,勉強している意味がない.

実際,大学の授業,生徒の態度はどうか.

問題はここです.当然,大学なので課題が出されます.しかしながら,その課題は"〜を実装しろ"というものばかり.確かに実装力は今後システムを構築していく上で必要不可欠です.しかしながら,プログラミング教室と何が違うのでしょうか.

また,生徒側は実装に躍起になって"どうしてこれがこの時間的計算量なのか","どうしてこれが有効な方法なのか"議論せずに終わってしまうこともしばしばです.

ほら,負のスパイラル.

 

かと言って、勉強しないのは自分の責任です。

自分もこうなっていたので,ここ最近反省しました.バカね私.

情報科学にはなぜか(あまり)興味がなかったのですが,4年次の研究などのことを考えるとあまりに危ない状況だったので,この夏に数学的にアプローチしてみたいと思いました.まる.おしまい.

初の学会 ~Raspberry Pi, Arduinoとの格闘を添えて~

お久しぶりです。Marieちゃんです。

 

更新する、更新すると言っておきながら全然更新していませんでした。

すみません。正直こういう作業本当に苦手なんです......(言い訳すな)

さて、茶番はここら辺にしておいて、本題に入りましょう。

 

発表者として、初学会参加しました!

今回は触覚を用いた音源定位能力のウェアラブルサポートデバイスの作成をしました。

しかし!ArduinoRaspberry Pi君の扱いがなかなかうまくいきませんでした.......

なので、今回は学会発表にこぎつけるまでの様々な失敗をまとめてみようと思います。

 

失敗その1.

Arduinoの実行速度とメモリが圧倒的に足りない。

まず、ArduinoRaspberry Piを比較した際にArduinoのほうがアナログデータの観測が得意という特徴があります。

なので、初めはマイクをArduinoに接続し、そのデータをRaspberry Piに送って音声処理をしようとしました。

しかし、Arduinoにはある弱点があったのです......

それは音速に耐えられるだけの速さを持つCPUがないことと、メモリが圧倒的に少ないことです。

 

まず前者から行きましょう。波形観測の際私は位相差法を用いていたのですが、音速がCPU処理速度に対して速すぎて、maxで遅れるパターンでも配列の要素3つ分くらいしか波形がずれず、角度分解能が悲惨なことになりました。

(だったらマイク間の距離を広げればいいじゃないと考えるそこのあなた。これはウェアラブルバイスとして開発したので、広げられないんです。詰んだ \(^o^)/ )

 

次に後者。Arduinoはおよそ32kBしかフラッシュメモリを持ちません。(種類によって違いますが多くても64kとかそこらへん。)

つまり、大型のデータを保持できないのです。int型配列の要素も持ててせいぜい2048とかそんなもんです。これも詰み要素の一つですね。

 

失敗その2.

Arduino to Raspberry Pi間の通信がボトルネック

ここの間の通信がシリアルなので、さっきの長い配列をシリアルで渡そうとすると自明にここがボトルネックになります。

今回はこれらの操作をリアルタイムに行いたかったために、これも解消しなくちゃ行けなかったですね。

 

これら2つの失敗を元に、拡張モジュールを買ってRaspberry Piで音を取ることにしました。

しかし、失敗はまだ続きます。

 

失敗その3.

Raspberry PiPyaudioの相性が悪い

Raspberry Piはもともと録音モジュールがないため、そこらへんは考慮されなかったのかもしれません。pyaudioはpipではwheelの時点でエラーを吐いてしまうので、brewからインストール。しかしここでもCFFIが入っていないためCFFIもインストールすることに。かなり環境作成が大変でした。

 

そのほかにも配線のことだったり、3Dプリンターのことだったりいろんな失敗をしましたが、マイコン関係はこんなもんです。

 

やっぱりハードって難しいね。と思った出来事でした。