読者です 読者をやめる 読者になる 読者になる

DreamerDreamのブログ

夢想家の夢です。

スティックPC DG-STK1B 分解レポート

現在ドスパラ5000円程度で投げ売りされている激安PCの分解レポートです。

この度はこの古いタイプのレポートです。

現行モデルはこちらで、こちらはイロイロと改善されているようです。

 

 

スティックPCを使っていると最初は調子が良く、なかなかやるやん。と思っていたのだが、

問題として段々見えて来たのが

  • Wi-Fiがすごく不安定。
  • すぐ発熱して遅くなる。

この2点だ。

 

この筐体は放熱し易いようにアルミ筐体になっている。

しかしWi-Fiのような電波は金属に遮られる。

 

ということで

ひん剥いて風に当ててあげれば全て解決じゃーん!!

と安直な思考。

 

で、分解方法を纏めることにする。

まずHDMI端子の4つのネジを外す。

f:id:DreamerDream:20170306143506j:plain

 

ここが一番注意するところ

電源ボタンを出した状態(電源ボタンが下向きにして)でHDMIの反対側へ押し込む。

f:id:DreamerDream:20170306143541p:plain

 

するとスポっと中の基盤が抜ける。

(実際には抵抗があるが、これはUSB端子上にあるスポンジ?のような物

体のせい)

f:id:DreamerDream:20170306143718p:plain

 

HDMIの反対側にはWi-FiBluetoothどちらかのアンテナが見える。

f:id:DreamerDream:20170306143900p:plain

 

放熱版は銅シートがペロッと貼ってあるだけ。

これで放熱してるんだから限界が甘いんだと思う。

f:id:DreamerDream:20170306144113j:plain

 

基盤一枚物なのでメモリやストレージ増設も不可能なのが解る。唯一交換できそうな部品は・・・電池?

まま、とりあえずこの状態で電源ONしてWi-Fiの様子を見てみた

 

結果

 

変わらんっ!!!

 

な〜んにも変わらんっ!

 

素直にWi-Fiドングル買った方がヨカッタです。

というお話でした。チャンチャン

 

 

3Dプリンター用データをBlenderで作る③オブジェクトを組み合わせてオブジェクトを作る

3Dプリンター Blender

 前回はこちら

dreamerdream.hateblo.jp

 

今回は実際に作っていきます。

まずは3Dプリンターには必須ともいわれる「スプールホルダー」

いろんな型があるけど、単純にトイレットペーパー方式のものを作る。

このフィラメントのままでもパイプを通せば使えるんだけど、エクストルーダーの為にあまり力を入れずに出力させるためには穴の直径を小さくしてその中にパイプを通す。こだけでかなり抵抗少なくフィラメントを引き出す事が出来る。

 

f:id:DreamerDream:20170302093526p:plain

穴の直径が33mm、リール直径が163mm、パイプが直径1cmを使う予定なのでこれに合わせて作成していく。

 

まず、直径50mm、厚さ2mmで円柱を作成する。

f:id:DreamerDream:20170302094033p:plain

次に穴の33mmに入る大きさのホルダーなので-1mmの余裕を見て直径32mm、20mmの円柱を作成し、原点位置をYを10mmに配置する。

f:id:DreamerDream:20170302094351p:plain

 

表示をソリッドにするとスプールホルダーの大体の型が見えて来た。

f:id:DreamerDream:20170302094500p:plain

次にホルダーの肉厚を2mm程度にして他は除去したいので直径30mmの穴を空ける。

穴を空けるためには穴の大きさの円柱を用意する。ドリルの刃を作るようなものだ。

強度も持たせたいのでY軸を12mmに配置しておく。これで根元が少し丈夫になる。

f:id:DreamerDream:20170302094923p:plain

次に鉄棒の直径1cmに合わせて穴を空ける。

穴開け用の11mmの円柱を用意する。長さは適当に50mm程度

f:id:DreamerDream:20170302095241p:plain

これで準備OK

 

あとは加工するだけ。

 

最初に作った円柱を選択しておいて、スパナマークのモディファイアーというツールを選択する。

その中のブーリアンを選択。

f:id:DreamerDream:20170302095808p:plain

 

どのオブジェクトとブーリアンを行うのか?という選択で2番目に作ったオブジェクトを選択。

f:id:DreamerDream:20170302095909p:plain

すると最初の物体が初期値の重複に合わせて変形するので、演算方法の「統合」を選択する。

f:id:DreamerDream:20170302100009p:plain

 

すると最初のオブジェクトが2番目のオブジェクトと合体する。

これでスプールホルダーの型オブジェクトが完成した。

f:id:DreamerDream:20170302100121p:plain

 

2番目のオブジェクトはそのまま変形していない。

邪魔なので削除しておく。

f:id:DreamerDream:20170302100301p:plain

 

次に穴開けをしていく。

同じようにブーリアンを選択して、3番目に作成したオブジェクトを選択、今度は「差分」を選択すると穴開けが出来る。

f:id:DreamerDream:20170302103502p:plain

 

f:id:DreamerDream:20170302103547p:plain

 

同じ要領で4番目に作成したオブジェクトで穴開けする。

f:id:DreamerDream:20170302103647p:plain

 

要らない物体を削除して、ワイヤーフレームモードからソリッドモードに変更するとちゃんとスプールホルダーが形成されている。

f:id:DreamerDream:20170302103756p:plain

 

 同じ要領で、立方体を2つ作ってブーリアンで統合

f:id:DreamerDream:20170302104713p:plain

f:id:DreamerDream:20170302104740p:plain

 

ホルダーに統合させるとホルダーをしっかり固定するための輪ゴム掛けが完成。

f:id:DreamerDream:20170302104827p:plain

ちゃんと1センチパイプを通して干渉しないかも確認しておく。

f:id:DreamerDream:20170302104957p:plain

 

完成!

 

要約するとこうだ。

  1. 素材を準備して
  2. 素材同士を繋ぐ
  3. 加工用のドリルを準備して
  4. 素材を切り出す
  5. 細々と細工を施す

 

 

あとは

ファイル→エクスポート→プリンタが対応しているstlかobj形式でエクスポートする。

f:id:DreamerDream:20170302105329p:plain

 Slic3rで開くとちゃんと展開出来てる。

f:id:DreamerDream:20170302105806p:plain

 

どうだろう。

1からデザインするのではなく、円柱や立方体をブーリアンで組み合わせて作っていくのは以外と簡単だったと思う。

しかし、ブーリアンは頂点の配置によってはおかしくなったり組み合わせによってエラーが出たりするので単純なオブジェクトの組み合わせなら大丈夫だろうが複雑なオブジェクトになると多少工夫が必要になる。

 

Blenderの記事はとりあえずデータ作成が完了したので今回で終了。

気が向いたら(珍しい使い方を覚えたら)また掲載するかもしれない。 

SSHポートフォワードの使い方

備忘録 RaspberryPi

SSHポートフォワードとかSSHトンネリングとか言ったりするらしいが閉鎖された環境のPCの同ネットワーク内にSSHログイン出来るPCがあるならSSH接続の中を通ってアクセスできるというものだ。

f:id:DreamerDream:20170220122328p:plain

 

以下の環境を説明する。

f:id:DreamerDream:20170220092552p:plain

今、自分(user)は外出先からメインPCを操作しているとする

クライアントPC、サーバーPC、ローカルPCという用語は自分がポートフォワードする時に壮大な勘違いしていたので(汗 あえて用いないことにする。

メインPCから自宅のSSHサーバーにはアクセス権があり、且つSSHサーバーはSSHポートをインターネットに開放している状態である。

ターゲットは外部に開放していない状態でWebサーバーが動いている。SSHサーバーのブラウザからはターゲットPCのWebページを閲覧することは出来る

図の「」がインターネットに開放されているネットワークで「」が閉鎖されているLAN内のネットワークを示す。

 

  • メインPCからSSHサーバーへはSSH接続が可能
  • メインPCからターゲットへはアクセス不可能
  • SSHサーバーからターゲットへはアクセス可能

 

という状態である。

 

 

 

このような状態の時にSSH操作をしてメインPCのブラウザからターゲットのWebページを表示させることが出来るのがSSHポートフォワード機能だ。

イメージにするとこうだ。

f:id:DreamerDream:20170220113719p:plain

ターミナルでSSH接続をしている中をHTTP接続を通すということになる。

なので本当にトンネルのような接続になる。

 

僕は勘違いしてこのようなイメージをしていた。

f:id:DreamerDream:20170220115721p:plain

ルーターのポートフォワード設定のようなものだと思っていたのだ。

このようなイメージで操作すると壮大な勘違いからななかなか抜け出せないので注意。

 

このイメージから救ってくれたページもご紹介しておきます。

vogel.at.webry.info

書式

ssh user@sshserver.com -L 8000:192.168.0.10:80

ssh [sshユーザー名]@[sshサーバーアドレス] -L [メインPCで接続操作するポート]:[SSHサーバーから見たターゲットのアドレス]:[ターゲットのポート]

 

という書式になる

ここで気をつけるのが[メインPCで接続操作するポート]である。

Webページを繋ぎにいくのはSSH接続要求をだしているメインPCである。

Webページを表示する時はメインPCのブラウザから「メインPCアドレス:ポート」に繋ぐのである。

ブラウザで

http://localhost:8000

と入力するとブラウザでターゲットのWebページを閲覧することが出来る。

通信はSSH接続の中を通るので当然セキュアな通信だ。

 

SSHのポートを変更(3000だとする)している場合は-pオプションで

ssh user@sshserver.com -L 8000:192.168.0.10:80 -p 3000

となる。

3Dプリンター用データをBlenderで作る②基礎

3Dプリンター Blender

 全開はBlenderをCADとして使える準備をしたので今回は操作の基礎。

dreamerdream.hateblo.jp

 

今回の内容 

  1. 移動/回転/拡大縮小
  2. 原点の変更
  3. オブジェクトモードと編集モード

 

まずは

1.移動

元々何もしなければ矢印が出ていて移動モードになっている。

矢印の向きは色別で画面左下にXYZの方向が書いてある親切設計。

そのまま移動させたい向きに矢印をドラッグすれば物体がついて来る。

f:id:DreamerDream:20170217095000p:plain

画面下に矢印、弧、四角に棒のボタンがある。

順番に、「移動」「回転」「拡大縮小」の機能だ。

f:id:DreamerDream:20170219214859p:plain

回転は先ほどの移動と同じ色分けで、それぞれXYZの軸を中心として回転させることが出来る。

f:id:DreamerDream:20170219214936p:plain

拡大縮小も移動と同じでそれぞれXYZ軸の向きに拡大縮小が出来る。

f:id:DreamerDream:20170219215052p:plain

 

なんとなーくな感じの図だとこれで充分。

精密な図を書きたい場合は前回の準備編で呼び出した「Nキー」の枠から細かな指定をすると良い。

位置、回転、拡大縮小結構細かく指定する事が出来る。

f:id:DreamerDream:20170219215345p:plain

 

 

さて、ここまでしてきてお気付きかもしれないが、回転させると必ず中心で回転し、拡大すると必ず逆方向にも同じ分だけ拡大される。

これは物体に「原点」が設定されていて物体がその原点を中心とした動きをするようになっているからだ。

場合によっては真ん中以外で回転させたかったりする。

 

 

2.原点の移動

原点移動は下のメニューにある「オブジェクト」→「トランスフォーム」の中にある。

試しに3Dカーソル(左クリックに反応して着いて来るカーソル)を原点に設定する。

「原点を3Dカーソルへ移動する」を選択する。

f:id:DreamerDream:20170219220034p:plain

 

すると、拡大縮小の始点が変わり先ほどと違った変形をさせることが出来る。

f:id:DreamerDream:20170219220312p:plain

 

ちなみにこの3Dカーソルも左クリックのみでなく厳密な設定が可能。

先ほどの「Nキー」のメニューの下の方で3Dカーソルの座標が入力可能だ。

f:id:DreamerDream:20170219220423p:plain

 

 

 

3.オブジェクトモードと編集モード

さて、これまで説明してきたものは「オブジェクトモード」というモードでの説明でした。

「編集モード」ではオブジェクトモードで作成された物体の頂点の変更等が可能になるのだ。

このメニューから編集モードを選択する。

f:id:DreamerDream:20170219220850p:plain

 

すると物体が全部オレンジ色に囲まれる。

f:id:DreamerDream:20170219220956p:plain

これは編集モードで「全ての頂点を選択している」という状態なのだ。

隅っこを右クリックすると1つだけ頂点が選択出来る。

f:id:DreamerDream:20170219221145p:plain

この矢印で頂点の移動が出来るというわけ。

f:id:DreamerDream:20170219221247p:plain

下のメニューにあるこれらのボタンは選択する箇所を示し左から「頂点」「辺」「面」を表しており、それぞれ個々に移動か移転拡大縮小が可能になる。

f:id:DreamerDream:20170219221357p:plain

で、あまりに極端に変形をさせると面がおかしくなるポイントがある。

厳密には法線向きやらポリゴンやら面倒くさい説明が必要なので他サイトに丸投げするとして(汗)(僕もよく解っていない)

ポリゴンの表裏の判定方法

キチンと囲われた面で仕上げないと3Dプリンターで出力出来るモデルを作れないので裏表がひっくり返ったりしないように注意が必要だ。

f:id:DreamerDream:20170219221556p:plain

 

とりあえずこれで単純な物体の変形は出来るようになる。

 

3Dプリンター用データをBlenderで作る①準備

3Dプリンター Blender

3Dプリンターを扱うようになって、無料の3Dモデリングソフト「Blender」のお世話になることが多くなった。

Blenderは3DCADというより3Dアニメーションや物理エンジン等が扱える何でもござれの3Dモデルツール。

だから一般的な3DCADとして使うには少し初期設定が必要なのだ。

特に基本単位が1mmという単位の設定が大事。

作ったモデルは3Dプリンタのスライサーで認識できる.stl.objファイルとして出力出来るので便利なのだ。

しかし若干操作方法が特殊なのでよく使う基本動作を纏めることにする。

特殊といってもCADとしては優秀で、アニメーションやら特殊な機能が多すぎて一般受けしにくいというだけ。Jw_cadよりは遥かに操作方法は一般的なので覚え易い。

 

今回の内容

  1. オブジェクト選択
  2. オブジェクト削除
  3. スケールの変更
  4. 1cmのオブジェクト作成

 

1.オブジェクト選択

一般的なアプリであれば左クリックで選択するが、Blenderの場合は右クリックで選択になる

初期プロジェクトを開始したらこの画面になる。

オレンジで光っている物体が現在選択されれている物体。

f:id:DreamerDream:20170217091713p:plain

選択解除するには「shift」+オブジェクトの上で「右クリック」

f:id:DreamerDream:20170217092302p:plain

全て選択するには「Aキー」

f:id:DreamerDream:20170217092351p:plain

 

2.オブジェクト削除

初期で作成されている「カメラ」「光源」「立方体」を削除する。

3Dアニメーションには「カメラ」「光源」の概念は必要だけどプリンター用のデータとしては不要なので削除する。

先ほどの説明の通り全選択して

「xキー」を押すと確認メッセージが出て「Enter」で削除完了となる。

f:id:DreamerDream:20170217092644p:plain

何もないスッキリした画面になる

f:id:DreamerDream:20170217092756p:plain

 

3.スケールの変更

3Dデータはソフトによってデフォルトのスケールは異なる。

Blenderの場合はデフォルトのスケールは「無し」

作った物体が何ミリの物体なのか?が不明だと3Dプリンタで出力することは出来ないから初期設定する必要がある。

初期設定しないと1cmの物体を作ったはずが10mの物体でしたー!ってなことになる。

 

右メニューの中からこのボタン「シーン」を選択する。

f:id:DreamerDream:20170217093405p:plain

単位の選択で「メートル法」を選択する。

f:id:DreamerDream:20170217093710p:plain

単位に「0.001」と入力して「Enter」で完了。

1mmが単位として扱われることになる。

f:id:DreamerDream:20170217093720p:plain

 はい、ここまでで3DCADソフトとして使う為の設定が完了です。

 

4.1cmのオブジェクト作成

単位が設定出来たので実際に1cmのオブジェクトを作成してみる。

左のメニューの「作成」タブを開くとオブジェクトを作成出来る。

「立方体」を選択する。と

f:id:DreamerDream:20170217094229p:plain

 

あれれれ?

変な画面になる。これは物体が大きすぎるってこと。

f:id:DreamerDream:20170217094320p:plain

 

じゃあどのぐらいのサイズの物体なの?

ってことで、今度は「Nキー」を押す。選択している物体の情報取得と変更が可能になる。

なんと2mもの立方体が出来ていたのでしたー。

f:id:DreamerDream:20170217094622p:plain

「寸法」のX,Y,Zに「10」と入力する。

f:id:DreamerDream:20170217094819p:plain

 

単位がmmなので1cmの物体は10mmなのだ。

するとキチンと1cmの物体になる。

f:id:DreamerDream:20170217095000p:plain

 

お疲れさまでした。

ここまでの流れでSketchUP等の3Dソフトを使った事がある人ならある程度変形やら移動やら扱えるようになると思う。

 

dreamerdream.hateblo.jp

 

RaspbianにSSH接続する

RaspberryPi Raspbian 備忘録

古いRaspbian(Wheezy)のシステムを最新のイメージ(Jessy)で再構築しようとしたらSSH接続が出来なかった。

ダウンロードしたのは

RASPBIAN JESSIE LITE

www.raspberrypi.org

Raspbianの最小イメージで、展開してSDカードに焼き込んで有線LANに繫ぎ、リモートでSSH接続しようとしたら弾かれた。

pingは通るので「?」となりssh繋がらないで検索かけたらこちらのページがヒットした。

raspberry pi 3でSSH接続できない? - Qiita

ふんふん、なるほど。2016/11以降のイメージではSSHがデフォルトで無効になっているらしい。

pi:raspberryでログイン出来てしまうので安全面を考えると納得の処置だけど面倒くさいなあ。と思いながらキーボードやディスプレイを繋いでブログの通りにコマンド打ってみたが

ラズパイ

訳(感情移入あり)

「そんなマウントポジションありましぇーんw touchってなんですの?」

 

 

って弾かれた^^;くそー。

てことで、とりあえず

sudo systemctl start ssh

と打ってみたら

ssh接続出来た。

なーんだ、デーモンが動いてなかっただけじゃん。

で、デフォルトでssh動くように

sudo systemctl enable ssh

 

これでデフォルト起動するようになった。

 

今までイメージ焼いて電源とLAN刺して後はSSHで設定していたのに、若干面倒くさい仕様になった。いや、LITEイメージだからかもしれないけど、とりあえず覚え書きとして纏めておいた。

 

ついでに、rpi-updateコマンドも通らなくなっていた。

これは、通常パッケージアップグレードで安定板にアップされているので必ずしも最新にアップデートする必要無いということで非推奨だそうな。

どうしても最新版が使いたければ

sudo apt-get install rpi-update

とすればrpi-updateコマンドが通り、ファームの最新版が入手出来る。

いろいろ変わるもんだなー。

オートキャリブレーション機能とは何か

3Dプリンター

3Dプリンターについているオートキャリブレーションという機能が便利だと以前のブログで紹介した。

dreamerdream.hateblo.jp

 

キャリブレーションとは「調整」であるが、3Dプリンターでは一般的に水平レベル調整のことを指す。

3Dプリンターは3軸で動いて物体を構成するので、作成された物体が乗るベッドとホットエンドよ呼ばれる出力ノズルの動きが水平でないとちゃんとした物体が構成できない。

 

3Dではややこしいので真横から見た2Dの図として説明すると

これが完ぺきに水平が取れている理想の型

f:id:DreamerDream:20170210111558p:plain

 

白がノズル用のレール

赤がノズルが移動する位置、当然レールと平行

緑が作成された物体

青がベッド

 

で、レールの高さが狂うと

極端にいうとこういう状態になる

f:id:DreamerDream:20170210085809p:plain

 

実際にここまで傾くと販売出来るレベルでは無いがわかりやすく傾けてある。

製品として完成した状態ではキチンと調整してあるが、出力用ベッドにシートをつけたりヒーターを付けたりすることで傾きが出るの。また長期間使用によるレールの摩耗等によって傾きが出ることもある。

 

そこで手動のキャリブレーションの場合、レールの位置やベッドの位置をネジ等で調整して真っ直ぐにする訳だが

オートキャリブレーションの場合はネジを回す必要がない

もちろんキャリブレーション専用のモーターなんぞ搭載していない(高級機にはついているかもしれないが知らない)。

 

じゃあどうやって高さ調整しているの?

ってことで、オートキャリブレーションの仕組み

基準になる点までノズルを移動させて

f:id:DreamerDream:20170210090401p:plain

ノズルがベッドに当たるまでレールを下げる

f:id:DreamerDream:20170210090453p:plain

次に、調整したい点にノズルを移動させて

f:id:DreamerDream:20170210090652p:plain

またノズルがベッドに当たるまでレールを下げる

f:id:DreamerDream:20170210090738p:plain

 

すると、最初の基準点とどのぐらいズレているかレールを昇降した量でわかる

f:id:DreamerDream:20170210091100p:plain

この差とヘッドの移動量を計算してヘッド左右に動く度にレールやベッドを上げ下げするのだ

f:id:DreamerDream:20170210091405p:plain

こうして綺麗な物体を形成できる。という仕組み。

もちろんベッド側が傾いている場合でも要領は同じ

f:id:DreamerDream:20170210091723p:plain

 

実にうまく出来ているが、実際にはノズルとベッドには多少の傾き発生している状態で上下調整しながらの不安定な出力になるので本当は手動でクリアランスがちゃんと取れているか確認して調整した方が綺麗な物が出来るのは間違い無い。

ただ調整の手間や機械慣れしていない場合だと便利な機能なのでプリンター購入の際の基準に入れて良いと思う。