次回: 【smabo第2回:事前準備1】Raspberry Piの初期設定(ubuntu OSインストール,ssh接続)
smaboトップページ: スマホが入るロボットの作り方【smabo】
お疲れ様です。秋並です。
スマートフォンが入るロボット(通称、smabo)の作り方の第一回は
- smaboのボディの3Dプリンタでの印刷
- スマートフォンへのsmaboアプリのインストール
について解説します。
目次
- 今回使用する機材、パーツなど
- 今回使用するソフトなど
- windows 11
- スマホにsmaboのアプリをインストールしよう
- smaboのリポジトリをクローンしよう
- 3D CADでモデルのサイズを調整しよう
- phone_box_baseのサイズ調整
- phone_box_base.stepのアップロード
- サイズの調整
- 前面部分のスケッチ
- 右側面部分のスケッチ
- 右側面の押し出し
- 前面部分の押し出し
- 背面部分の押し出し
- stl形式でのエクスポート
- 3D プリンタで印刷してみよう
- gcodeの生成
- 3D プリンタで印刷
- smaboを組み立ててみよう
- 最後に
今回使用する機材、パーツなど
今回は、以下のパーツや機材、パーツを使用します。
パーツ名 | |
スマートフォン
(Iphone MAXのような大きなサイズのスマホや、折り畳み式のような分厚いスマホは入らないので注意してください)
pixel7a(152.0mm×72.9mm×9.0mm) + カバー でぎりぎりちょうどくらいのサイズです
それより小さいサイズに関しては「3Dプリンタで作成するスマホを入れる部分」のサイズを調整すればよいので問題ありません。 | |
M2×16mmネジ×4個
M2×8mmネジ×1個 | |
M3×12mmネジ×1個 | |
3Dプリンタ
(smaboのボディは160×160×110のサイズなので、最低でもこのサイズが印刷可能な3Dプリンタにしましょう) |
今回使用するソフトなど
windows 11
ソフト名 | バージョン | URL |
git bash | ||
Creality Slicer | 4.8.2 | |
fusion360 |
スマホにsmaboのアプリをインストールしよう
最初に、以下のリポジトリにスマホからアクセスし、SmartPhoneRobot.apkをダウンロードしてください(現在は、androidスマホのみ対応しています)。
ダウンロードしたapkファイルを選択し、スマホにインストールしましょう。
(pixel7a、Androidバージョン14で動作確認済み)
アプリを起動すると、設定画面が表示されると思います。とりあえず今回は通信しないので、そのまま「close setting」をクリックしましょう。(ちなみに、設定画面が閉じられた状態で画面をダブルタップすると再度設定画面が表示されます)
現時点では、2つの目が表示されるだけになっていますが、スマホからのセンサ情報を取得したり、目を動かしたり、表情を変化させたりすることができます。
このあたりの詳細はまた別記事で解説するので楽しみにお待ち下さい。
smaboのリポジトリをクローンしよう
最初に、先ほどスマホでアクセスしたリポジトリをご自身のPCにcloneしてください。
- 【Windows】Gitの環境構築をしよう! | プログラミングの入門なら基礎から学べるProgate[プロゲート] (prog-8.com)
- gitはいろいろな場面で使うことになるので、以下の講座などを使って勉強しておくことをおすすめします(セール時には1000~2000円の価格で購入できます)
gitの初期設定が完了したら、リポジトリをcloneしましょう。
cloneする場所は、任意の場所でよいですが パスに日本語が含まれていると後々の作業でエラーが発生する可能性 があるので注意しましょう
- git bashを起動します
- リポジトリをcloneします。今回は、
/c
にcloneするため以下コマンドを実行します。
cd /c
git clone https://github.com/akinami3/smabo.git
3D CADでモデルのサイズを調整しよう
ここからは、smaboを3Dプリンタで印刷しますが、印刷する前に、「スマホを入れる部品」であるphone_box_baseをお手持ちのスマホのサイズに合うように調整します。
phone_box_baseのサイズ調整
cloneしたリポジトリ内にある「stl/phone_box_base.step」のサイズをお手持ちのスマートフォンのサイズに合うように調整しましょう。
調整には任意の3D CADソフトを使ってもらってよいですが、ここではfusion360を使った手順をご紹介します。
phone_box_base.stepのアップロード
最初に、fusion360を起動し、「phone_box_base.step」をアップロードします。
- 「アップロード」ボタンをクリックします。
- 「ファイルを選択」をクリックします。
- 「phone_box_base.step」を開きます。
- 「アップロード」をクリックします。
- 画面左側に「phone_box_base」が追加されているので、クリックして開きます。
サイズの調整
次に、phone_box_baseをご自身がお持ちのスマホに合うように編集しましょう。
前面部分のスケッチ
phone_box_baseの前面をスケッチします。
- phone_box_baseの前面を選択した状態で「スケッチを作成」をクリックします。
- 「線分」をクリックし、縦方向と横方向の中央に線をひきます。(直線の中央付近でマウスを動かすと三角形のマークが表示される箇所があると思いますが、その箇所がちょうど中央になります)。
- 「長方形」→「中心の長方形」を選択し、3.で引いた二つの直線の交点をクリック→長方形を作成します。
- 縦方向、横方向の長さを決めます。
- ここでは、縦方向と横方向の長さは「実際のスマホのサイズより小さく設定」してください。具体的には図のように、スマホを入れた時に、smaboの目の部分が隠れない程度のサイズに調整するとよいです
上記の手順の動画
右側面部分のスケッチ
phone_box_baseの右面をスケッチします。
- phone_box_baseの右側面を選択した状態で「スケッチを作成」をクリックします。
- 「線分」をクリックし、縦方向と横方向の中央に線を引きます。
- 「長方形」→「中心の長方形」を選択し、3.で引いた二つの直線の交点をクリック→長方形を作成します
- 縦方向、横方向の長さを決めます
- ここでは、縦方向と横方向の長さは「実際のスマホのサイズ+1.0mm程度」にしてください(縦方向=スマホの横幅、横方向=スマホの厚さ)
- ただし、ケースや保護フィルムを付けている場合は、「ケースと保護フィルムを付けた状態でのサイズ+1.0mm程度」にしましょう
上記の手順の動画
右側面の押し出し
phone_box_baseの右面をスケッチした形状に従って押し出します。
- スケッチした右側面の4箇所を選択した状態で「押し出し」をクリックします(shiftを押しながらクリックすると複数選択できます)
- 押し出し量をマイナス方向に「スマホの縦幅+1.0mm程度」にします
- 「OK」をクリックして、押し出します
上記の手順の動画
前面部分の押し出し
phone_box_baseの前面をスケッチした形状に従って押し出します。
- スケッチした前面の4箇所を選択した状態で「押し出し」をクリックします(shiftを押しながらクリックすると複数選択できます)
- 「右側面の押し出し」でくり抜かれた部分の底面を選択します
- 「OK」をクリックして、押し出します
上記の手順の動画
背面部分の押し出し
phone_box_baseの背面をスケッチした形状に沿って押し出します。
- 底面の右側にある四角形の箇所を選択した状態で「押し出し」をクリックします。
- 「右側面の押し出し」でくり抜かれた部分の上面を選択します
- 「OK」をクリックして押し出します
上記の手順の動画
stl形式でのエクスポート
調整した「phone_box_base」をstl形式でエクスポートしましょう。
ここでは、「phone_box.stl」という名前でエクスポートすることにします。
- タブの「ファイルボタン」をクリックします。
- 「エクスポート」をクリックします
- 名前を「phone_box」、タイプを「stl」、「場所」を任意のディレクトリ に設定し「エクスポート」をクリックします
3D プリンタで印刷してみよう
gcodeの生成
ここまでで、3Dモデルの調整が完了したので、ここからは3Dプリンタでの印刷を行います。
今回は、「body」「phone_box」「phone_box_cover」「back_cover」を印刷します。
ここでは、Creality Slicer 4.8.2を使った印刷方法を紹介しますが、他のプリンタの場合でも共通するような注意点も述べて解説します。
- Creality Slicerを起動します。
- 「ファイル」をクリックします。
- 「ファイルを開く」をクリックします
- 印刷したいstlファイルを選択し、「開く」をクリックします
- 開いたモデルの向きや位置、3Dプリンタで印刷する際のオプションなどを設定したら「スライス」をクリックします。
- 処理が完了したら、右下のプレビューをクリックし、どのように印刷されるか確認しましょう。
- 最後に、右下の「Save as Creality Format」をクリックし、gcodeファイルを保存します
3D プリンタで印刷
gcodeの生成が完了したら、3Dプリンタをセッティングしましょう。ここでは、私がこれまで3Dプリンタを使用していて注意すべきだと思った点について述べたいと思います。
- ポイント1:3Dプリンタのプレートの位置を調整しておきましょう。
- ノズルのz軸を原点位置にした状態で、
- ノズルとプレートの間に紙を入れ、
- 紙を引っ張った際に少し抵抗がある程度の隙間になるように
- プレートの四隅の高さを調整しましょう
- ポイント2:プレートに汚れがないか確認しましょう。
- プレートが汚れている場合、印刷中にフィラメントがはがれて来る可能性があります。
- プレートの汚れを取る方法は
- プレートを外し、水で洗う(洗い終わって3Dプリンタにセットする際は、しっかり拭いてからセットしましょう)
- ヘラで汚れを削り取る
等があると思います。
設定が完了したら、印刷を開始します。bodyは印刷に丸2日かかるので、気長に待ちましょう。(具体的な3Dプリンタの操作方法はプリンタの種類によって異なると思うので、ここでの説明は割愛します)
印刷が完了したらサポート材を外しましょう。
smaboを組み立ててみよう
サポート材が外し終わったら、bodyとphone_boxを合体させてみましょう。
- phone_boxの四隅にネジ穴があるのでM2×16mmのネジをつかってphone_boxをbodyに固定しましょう。
- bodyの背面にback_coverをはめ込み、M3×12mmのネジで固定しましょう
- phone_boxにsmaboを入れましょう
- phone_boxの右側面にphone_box_coverをはめ込み、M2×8mmのネジで固定しましょう
お疲れ様です!。これで(最低限の構成ではありますが)smaboの完成です!
最後に
本記事では、
- smaboのボディの3Dプリンタでの印刷
- スマートフォンへのsmaboアプリのインストール
について解説しました。
次回は、スマートフォンとラズパイをROS2で通信する方法について解説します。
ROS2で通信することで、スマートフォンのセンサ値を取得したり、smaboの目を動かした利することが可能になるので楽しみにお待ちください。
次回: 【smabo第2回:事前準備1】Raspberry Piの初期設定(ubuntu OSインストール,ssh接続)
smaboトップページ: スマホが入るロボットの作り方【smabo】
smabo記事一覧