3Dプリンタでエアガンパーツを作ってみる話 【オスプレイサプレッサー編】
お久しぶりです。
ベレスクです。
大体、三か月ぶりの投稿になりますね。
私もまだ大学生という身分ですゆえ、テストやらレポートやらがありまして、その結果投稿が遅れてしまいました。
エアガンパーツシリーズは3作目ですね。(2作目失踪中)
↓これまでの自作パーツ
1作目 veresk.hatenablog.com 2作目 veresk.hatenablog.com
さて、今回は3Dプリンタを用いてオスプレイサプレッサーを作ってみようと思います。
OSPとも略されるらしいですね。ベクターとかについているとかっこいいです。
買うと結構いい値段するんですよね。
私はベクターを所持していませんが、近代化されたクリンコフなら似合うんじゃないですかね。
本物は口径的につかないので、架空銃感がさらに増してしまうのが欠点ですね。
それでは、作ります。
まずは、設計です。いつものFusion360にはお世話になりっぱなしです。
できました。今回は、SMG(正しくはAK74のカービンモデル?)に取り付けるのが目的なので、8.06インチのモデルにしました。
お次は3Dプリンターによる造形ですね。穴を正円にしたかったので、造形方向を縦にした結果、Biboでも結構ぎりぎりの造形サイズでした。
直径10mmのインナーバレルはさすがにサイズオーバーでしたので2つに分けて造形し、ねじでつなぎ合わせました。
最終的に三点の穴に突起を挿して組み立てます。できるだけ本家と同じ作りにしています。細部まではわからなかったので、ある程度は推測ですけどね。
販売されているエアソフト用オスプレイサプレッサーとの大きな違いは、バレルが穴あきなので消音効果があるということです。スポンジは詰めないといけませんけどね。
試しにつけてみるとこんな感じ。
なかなか苦戦したのが、ネジや穴の寸法誤差。どうやってもきれいにはまらない。そして知ったこのページ。
この人とは全く違う3Dプリンタを使っているけど同じぐらい内寸に誤差が出ている。
解決しないので、外寸も多少変わるがCuraの「水平展開」でー0.2mmほどオフセットを作って印刷。
解決策があるなら誰か教えてください。
塗装もしてみました。PLAは塗装が乗りにくいって話だが物は試しです。
紙やすりで表面を荒らし、プライマーを塗布。乾燥後、アクリルスプレーで塗装。
その結果、こうなりました。
気泡が出ちゃって、あまりきれいに塗れませんでした。私は色付きフィラメント使ったほうがいいかもしれませんね。
塗装初心者なもんで...許してください。
あんまり関係ないですけど、画像加工してるだろって思われるかもしれません。
普段、スマホのP20proで撮影してるんですけど、今回はプロモードでRAW撮影&現像してみました。(そのせいで10MB超えて、ブログにアップロードできなくなったのは内緒)
現像に使ったソフトは2つ。RawTherapeeとdarktableです。
塗装前がP20proの自動現像。いつものです。
塗装後の真横からの写真がRawTherapee、斜めからの写真がdarktableです。
RawTherapeeは基本動作が重いですが、操作が簡単。さらにエクスポートも早いです。しかし、偽色抑制が苦手なのかエクスポート後もかなり目立ちます。
darktableは基本動作が軽く、操作は少し複雑(機能が多い)。しかし、エクスポートにすごく時間がかかります。その分、ノイズや偽色抑制が得意でとてもきれいに仕上がります。プロファイルも多いので、短時間でもきれいにできました。
少し触っただけのでいろいろ言いたいことはあるかもしれませんが、個人的にはdarktableを使っていこうと思います。写真上手になりたいので ....(Lightroom買えよ)
今回はこんなもんですかね。
それでは!
【距離センサでロボットの位置がわかる?】LittleSLAMを導入してみた話
こんにちは。
お久しぶりです。べれすくです。
突然ですが、SLAMってご存じでしょうか?
レーザーレンジファインダーや深度カメラのような広範囲測距センサーを用いてマッピング、その作成したマップデータとセンサーから自己位置推定ができる技術です。
最近だと家庭用お掃除ロボットにも搭載され始めたようですね。
エンコーダーでもSLAMができるなんて話も聞きますがどうなんでしょね。
さて、そんなSLAMを勉強したいと考えて書籍を調べるとある一冊の本が出てきます。
この本です。
この本は基本的にWindowsを使って解説しているらしいです。
私はこの本を持ってないんです。ほしいんですけどね。
前置きはこのくらいにして、この本で使用されている、LittleSLAMの導入方法を説明していきましょう。
まずは必要なものをダウンロードします。
LittleSLAM
親切なことにこのサイトにほぼすべての導入方法が載ってます。
https://github.com/furo-org/LittleSLAM/blob/master/doc/install-win.md
VIsualStudioを使い慣れてる人はこのサイト見れば全部わかっちゃう気がします。
私は四苦八苦しました。
このサイトに捕捉する形で説明しようと思います。
このサイトでは、3つのフォルダを取り出すって書いてありますが、どれかわからないので全部取り出して、”LittleSLAM-master”というフォルダ名自体を”LittleSLAM”にかえてしまいました。
ファイル名を書き換える意味はありませんが、このサイトとフォルダ名を合わせます。
VIsualStudio
みんな知ってる統合開発環境。ダウンロードしてインストールしてください
2019が最新だけど当方は2017を使ってるので2017がおすすめ。
2019でも問題ないと思うけどね。
*2019/11/10追記
2019でも問題なく動きました。
2019のほうが軽いので今となってはこっちのほうがおすすめ。
Boost
C++用の汎用ライブラリです。
Boostを調べるとインストール方法とか出てきますが、今回はダウンロードしたファイルの一部を利用するだけので、ビルドも、インストールも必要ないです。
ただダウンロードして、解凍して、出てきたフォルダを適当なところに置いておくだけでいいです。
Eigen3
C++用の線形代数ライブラリです。 これもBoostと同様に中のファイルの一部を利用するだけなので、ダウンロードして解凍して適当なところにフォルダを置いておいてください。
グラフ描画ツールです。このソフトにマッピング結果が表示されます。
ダウンロードして、インストールしてください。
このソフトはWindowsのコマンドプロンプトから起動するので、パスを通しておく必要があります。
インストール時に”パスを通す”にチェックを入れてもパスが通ってなかったので、自分で通すほうがいいと思います。
パスの通し方はWindowsのバージョンによって多少違いますが、Windows10の場合は下に書いておきます。
CMake
ビルド支援ソフトウェアです。
ソフトウェア開発をしていると、いつの間にか入っているかもしれません。
ですが、入っていても最新バージョンを入れておくことをお勧めします。
これを書いている現在、最新バージョンは3.15.4です。
p2o
Graph-based SLAMソルバって奴らしいです。
詳細は知りませんが、これもファイルを使うだけので適当なところに解凍します。
そして、p2oの中にある必要なファイルをいただきましょう。
p2o-masterフォルダの中にp2o.hファイルがあると思います。
それをLittleSLAMのp2oフォルダに入れます。
導入方法
それでは、必要なものはそろったので初めて行きましょう。
解凍して適当なところに置いておいてっていいましたけど、一つにファイルにまとめておくと便利です。(線が入っているのはいらないフォルダです。気にしないでください。)
と言ってもそんなにやることないんですけどね。 Cmakeを起動します。
LittleSLAMのサイトに従って、ファイル指定をしてConfigureを押す。 VIsualStudioのバージョンを指定して、Finishを押す。
おや?Boostが見つからない?
青の矢印のところからBoostのフォルダを指定してあげましょう。 フォルダを指定をして、もう一度Configureを押します。
CMake Warningですか。今回はエラーじゃなくて警告ですね。 今度はEigen3が見つからないようです。 このままでもGenerateできますが、動かない可能性があります。 さらに、こっちはBoostのようにフォルダ指定してもダメみたいです。
仕方ないのでCMakeLists.txtをいじります。
LittleSLAMフォルダ内にある、cuiとframeworkとhookという3つのフォルダの中にはそれぞれ一つずつCMakeLists.txtが入っています。
LittleSLAM\cui\CMakeLists.txt
LittleSLAM\framework\CMakeLists.txt
LittleSLAM\hook\CMakeLists.txt
これらをいじります。 LittleSLAMフォルダ直下にあるCMakeLists.txtは触らなくていいです。
いじり方はLittleSLAMのダウンロードサイトに書いてあるのでお借りします。
ここで一つ補足なのですが、ファイルパスはC://eigenのように/(テキストとして開いたら¥)を二連続で入れないといけません この3つを書き直したあと、Cmakeを再起動してもう一度Configureを押します。 また同じ警告が出ますが、今回はフォルダをCMakeLists.txtで指定したので警告は無視してGenerateしてしまいます。
指定したbuildファイルにあるLittleSLAM.slnをVIsualStudioで開きます。
Releaseにしてx64にするってLittleSLAMのダウンロードサイトには書いてありますが、x64がなかったのでWin32のままでやります。Releaseにはします。
そしてビルド→ソリューションのビルドをします。
これ以降は躓くこともないと思います。 ビルドしたファイル内にあるLittleSLAM.exeとサンプルファイルを指定するだけで勝手にマッピングが始まるはずです。 コマンドに大量の文字が出ているけど何も出てこないっていう人はgnuplotのパスが通っていません。通してください。 お疲れさまでした。
Windows10のパスの通し方。
まず、通すファイルの場所を探します。インストール時に覚えている場合は結構です。 左下のWindowsマークからgnuplotを探ます。 見つけたら右クリックし、ファイルの場所を表示します。 出てきたのがショートカットファイルの場合ショートカットファイルを右クリックし、ファイルの場所を表示します。 ファイルの場所まで行けたら、赤枠の部分を右クリックしてフォルダのアドレスをコピーしておきましょう。
ここからパスの通し方です。 左下の虫眼鏡マークを押してください。 環境変数と入力し、出てきたものをクリックします。 このようなウィンドウがでるので、環境変数をクリック 上のpathをダブルクリック、又は選択して、編集を押す。 新規を押して、先ほどコピーした通したいパスのフォルダのアドレスを入れる。
OKを押して出来上がり。
今回、LittleSLAMを入れましたが、これをどうやってロボットに組み込むかとかわからないままなんですよね。 やっぱり、あの本ほしいなぁ。
それでは!
3Dプリンタでエアガンパーツを作ってみる話 【PP-2000化編①】
お久しぶりです!Vereskです。
前回の 「3Dプリンタでエアガンパーツを作ってみる話1」から時間が経ってしまいました。
あれから作ったものが、ライザーレールぐらいだったのでここで話すほどのものでもないかと思いまして...
現状、私のRK74 CQBはこんな感じです。
この内、サプレッサーとライザーレールとストック折り畳みパーツは自作ですね。
サプレッサーだけ黒く塗装してるのでかっこいいですね。
近いうちに他のパーツまとめて塗装したいです。
今回、パーツを作るのは東京マルイの10禁エアガン、コンバットデルタです。
昔、近所の子と撃ち合いをするのに買った電動ハンドガンです。
思い出はありますが、使う機会も少なくなってしまったので生まれ変わってもらいましょう。
名づけて、PP2000化計画!
PP2000という銃をご存じでしょうか?
M4やAKのシリーズからすれば少しマイナーですが、ゲームや映画で使われることも多く、人気が高い銃です。
特徴的なフォルムと貫通力の高い弾を使えるってところがいいですよね。
MP7やP90と肩を並べるPDWの一つです。
このコンバットデルタをPP2000にしようという計画です。
まずは、いらないパーツを外します。
結構簡単に外れました。
本当はメカボックスだけ利用するつもりだったのですが、本体と一体型だったのでグリップごと使うしかなさそうですね。
ギアとピストンだけ利用してもいいんですが、少し設計を誤るだけで動かなくなりそうなんですよね。
採寸してCADで設計します。
刻印も掘りました。我ながらかっこよくできたのはないでしょうか。
ちゃんと中にコンバットデルタとコッキングレバーが入るように穴をあけています。
早速プリントしていきましょう。と行きたいところですが。
今回のものはかなり大きいです。
後ろのパーツだけで造形可能サイズギリギリ...。そして過去最高の16時間です。
これでも50%中抜きしてるんですけどねぇ。
これは後回しにして先に前部分だけやりましょう。
5時間か。まぁこれならいいかな。
出力しちゃいましょう。
五時間後...
出来ました!
早速はめてみます。
ぴったりですね。
下の細いところがちょっと折れそうで怖かったのですが、意外としっかりしてます。
力のほとんどは上の固定部分で吸収してるのでそこにはかからないんですけどね。
そんなことより、トリガーガードが想像以上に邪魔です。
どうしましょう...
今回のパーツはうまくいきました。
次回は時間がかかる後ろのパーツを出力したいと思います。
それでは!
PythonでRealSenseの開発環境を整える話
RealSenseって知ってますか?
インテル製の深度カメラです。
深度カメラっていうとあんまりピンとこないかもしれませんね。
Xbox360のKinectなんかもその深度カメラです。
深度カメラとは物体との距離情報を把握したカメラです。
その測量方式は様々ですが、音波や光波を使って距離をつかみ、別のカメラで撮った映像と合体させているようです。
intel RealSense™ Depth Camera D435
- 発売日: 2018/01/18
- メディア: Personal Computers
今回はIntel RealSense Depth Camera D435をお借りしたので、環境を整えて少し遊びましょう。
背面のカバーをとるとTypeCで接続が可能になります。
RealSenseを接続するUSBポートはUSB3.0でなくてはいけません。
うまく接続されているかは、デバイスマネージャーを見るとわかります。
カメラのタブにRealSenseが一つしかありません。
これではだめです。
このままサンプルプログラムを動かすとこんなエラーが出ます。
原因は
といった感じです。
自分は3つ目でした。
今もその機能の切り方がわからず、バッテリーがフルじゃないと読み込んでくれません。
<追記>
認識しました。
解決法は超勢いをつけて差し込むことでした。
公式のGitHubでも英語で議論されていました。
どうやら付属のコードはそこそこ欠陥品が混ざっているようでこういったことがあるようです。
解決はしましたが、こんなことではPC側のUSB3.0がダメになってしまいそうです。
非常に厄介です。
このようにカメラの欄に2つ表示されていればうまく接続されています。
接続が確認出来たら、開発環境の準備をします。
RealSenseをつかった開発をPythonでするにはpyrealsense2が必要です。
いろんな言語に対応してるんですね。
今回はPythonを使ってみましょう。
Python環境は各自準備して下さい。
おすすめは Python+PyCharmです。
導入方法はここがとってもわかりやすいです。
gammasoft.jp
この時、注意しないといけないことがあります。
pyrealsense2はPython2なら2.7、Python3なら3.6までにしか対応していません(2019/09/01現在)
現在、最新バージョンのPython3.7では使えないので注意してください。
導入は簡単です。
pipでインストールできるpython環境の方はいつも通りです。
pip install pyrealsense2
これだけ。
PyCharmの方も簡単ですね。
検索するとあるので、いつものパッケージ導入方法で入ります。
早速サンプルプログラムを動かしてみましょう。
プログラムはこちらからお借りしました。
自分で組みたいって方はこちらのリファレンスを読むといいと思います。
関数の一覧とか載ってるので。
左がカメラ、右が深度センサーですね。
遠くが青で近くなるにつれて赤くなっていくプログラムになっているみたいです。
これを見て気づいたのは
- 近すぎると黒くなる。(距離が測れていない)
- 太陽光のような強い外乱があると距離が測れない。
- 物体の付近は影になって測れないところがある。
- 動作中はRealSense本体がかなり熱くなる。
ということです。
距離も見れるこのカメラの存在は便利ではありますが、まだまだ難点が多そうですね。
それでは!
このサイトの合計アクセス数が100を超えた話
本日、このサイトのアクセス数が100を超えてました!
ブログを始めて2か月ほどが経ちましたが、こんなに見てもらえるとは思いませんでした。
本来であればアクセス数1000とかで喜ぶんでしょうが、私はこれでも喜んじゃいます。
100回の中でもほとんどがPID制御についての記事ですね。
この記事、うまくかけた自信がないんですよねぇ。
実際問題、プログラムを人に説明するのって難しいです。
ぶっちゃけ、私自身の経験不足や知識不足です。
どうすればいいんでしょうね。
なんだか言ってて悲しくなるので、次!
あとは全部、エアガンの関係ですかね。
タイトルに”1”って入れたので2以降を探してくれたんでしょうね。
まだ、書いてないんです。ごめんなさい。
そんな感じで、アクセス数100を突破したって話でした。
今後とも、よろしくお願いします。
それでは!
3Dプリンタでエアガンパーツを作ってみる話 【折り畳みストック編】
前回、3Dプリンタを買った話をしました。
今回はこの3Dプリンタを使ってエアガンのパーツを作ってみましょう。
(2020/02/08追記)
問題点を改善しました!
今回作るのは私が愛用しているG&G RK74 CQBのカスタムパーツです。
この子、ストックが折りたためません!
モデルがたぶんクリンコフなのに!
クリンコフなのに!
早速、ストック周りをバラして採寸します。
ここで問題発生。
ここのストックパイプとレシーバをつなぐパーツが外れません。
それらしきビスは上下にあるのですが抜いてもびくともしません。
説明書見ても、CQBだけストック部分の分解がない。
もしかしてこのモデルだけ外せないのかな?
※どうやら、メカボックスを一度外さないと外れないようです。 常識過ぎて、調べても載ってないそうです。
困ったなぁ。仕方ないので上から作ります。
Fusion360で設計します。
スケッチ書いて、モデルを作っていきます。
最後にアセンブリで動きを確認してSTLで保存します。
Ultimaker Curaでgcodeに変換します。
いざ、プリントです!
...5時間後
できました!
ちょうどM5のビスを切らしていたので固定できていませんが、完成したのはこんな感じ。
いいんじゃないでしょうか!
黒の艶消しスプレーはあるので、塗装すればきれいに見えそうですね。
PLAがどの程度、塗料が乗るのかわかりませんけどねw。
今回作ったモデルデータはこちらからダウンロードできます。
こうやって、市場に出回らないパーツが作れるのは3Dプリンタの魅力ですね。
次はどんなものを作ろうかと想像が膨らみます。
それでは!
これの他に作ったものはこちら!
安くて綺麗!家庭用3Dプリンターを買った話
突然ですが皆さんは3Dプリンター使ったことありますか?
私は大学でよく使ってます。
複雑な形のパーツや、ちょっとした小物を作るのにかなり便利です。
しかし、大学の3Dプリンターが安物のせいもあって、造形に時間がかかります。
大学で使うと造形が終わるまで帰れないので、自分で買ってしまいました!
今回、私が購入したのはこちら。
BIBO 2 Touch Laser!!
レーザーモジュールやフィラメント、予備パーツなどのおまけも入って86500円でした。
密閉型でこれだけおまけがついて、この価格!安いですねぇ!
私が購入したので、現在(2019/08/21時点)では品切れですね。
とはいえ、ほかの販売サイトもあるのでそちらで買えますね。
Amazonで購入して2日ほどで届きました。
せっせと組み立てます。
マニュアルは基本的に英語なのですが、さすがは神サポートと評判ののBiboさん。
何も言わずとも日本語マニュアルや動画をメールに添付して送ってくれます。
おかげで特に苦労することなく組み立て完了!
さて、電源を入れるためにコンセントを挿そうと思ったら
このタイプのアースなんですね。
急いで近くのドン・キホーテで購入。
500円ほどでした。
海外製品なので200vにも対応しています。
電源が100Vになってることを確認します。
スイッチON!
手前のLEDがついてフォーンとファンが回ります。
カバーをとってキャリブレーションをします。
オートキャリブレーションではないのですが、動画もありますし、1分ほどで簡単にできます。
オートキャリブレーションを謳ってる製品も、実は先に感圧センサがついてるだけで、合わせるのは手動だったりするので結局手間は変わりません。
フィラメントはレバーを押しながらチューブに通すだけで簡単に装着できます。
付属のSDカードに入っているテスト用ファイルを印刷してみます。
素晴らしい!
積層痕がほぼないんです。
安物3Dプリンターと同じ積層ピッチでも表面には大きな差が出ますね。
これは最小ピッチが0.05mmなのでもっとつるつるにできるかもしれませんね。
あと早い!
大学で使っているのが最大で100mm/sなのに対し、これは350mm/sですからね。
単純計算で3.5倍の速度が出ます。
しかし、少しファンの音がうるさい気がするので問い合わせ。
問い合わせはメールで問い合わせます。自分はGoogle翻訳を使って英語で書きましたが、日本語でも対応してくれそうです。
メールに動画を添付して送信。
10分ほどで返信が来ました。
ふむふむ。下についてるファンのビスを締めなおせばいいんですね。
再び起動すると...解決!
2個目の押し出し機が壊れてることまで指摘して、パーツを無料で送ってくれました。
押し出し機は一つあれば造形できるので、気付かなかった...。
いい対応でした。
そう思っていたら、次の日、保証を1か月延長するとメールが...
えっ、ただでさえ1年保証あるのにまだ延長してくれるのか。
これはいい買い物をしました。
日本ではFLASHFORGE(フラッシュフォージ)製の3Dプリンターが人気ですね。
大阪に支社があって、日本語でサポートが受けられるそうです。
私もCreator Proと迷っていたんですけどね。
価格もサポートの対応の良さも若干ではありますが、Biboのほうがよさそうなんですよね。
というのも、海外ではBiboの評価も高いのです。(FLASHFORGEも高いですよ)
アメリカのamazonでは270件ものレビューがあって、星も4.5ですね。
多少サクラが入っていそうな気もしますが、それでも270件もあるとその多くは客だと思います。
まぁ、私は機能や性能はカタログを見る限りBiboのほうがよさそうなのでBiboにしました。
次回は3Dプリンターでエアガンパーツでも作ってみようかと思います。
次はこちら。
それでは!