VS Codeでvenvがうまく動作しなくなった話

結論 venvをあきらめて、Pipenvを導入すればなぜか解決した。 経緯 Pythonの開発環境にVS Codeを使っていましたが、ある日突然、venvで作った環境が見えなくなりました。 PowerShellからは切り替えができるので、venv自体は正しく動いているようでした。 PythonとVS Codeをクリーンインストールしても状況は変わりませんでした[1]。 Pipenvの使い方 最近はPipenvというものがあるらしいので、それを導入することとしました[2][3]。 pip install pipenv 以下のように環境変数を設定することで、プロジェクトのフォルダ直下に仮想環境を構築してくれます。 PIPENV_VENV_IN_PROJECT=true VS Code上にフォルダを作成し、その直下で仮想環境を作成します。 コマンドはVS Code上のPowerShellで行いました。 例えば以下のようになります。パスやPythonのバージョンはご自身の環境に合わせてください。 *pythonの後に半角スペースがあるのでうっかり詰めないでください。 *venvファイルが作成されるという情報もありますが、私の場合はPipfileのみ作られました。 PS PS C:\Users\User Name\Documents\CODE\Python\Test> pipenv install --python 3.8 VS Code上でF1キーを押して、「reload」を検索して実行します。 これで左下のPythonのバージョンセレクトから環境選択できるはずです。 仮想環境から抜けるときは以下のコマンドを使います。 deactivate 参考文献 [1] sota0726 「VScodeを完全にアンインストールする方法(windows10)「拡張機能のホストが予期せずに終了しました。」を改善するために」閲覧日:2020/09/13 https://www.atmarkit.co.jp/ait/articles/1810/12/news026.html [2] KRiver1 「pyenv、pyenv-virtualenv、venv、Anaconda、Pipenv。私はPipenvを使う。」閲覧日:2020/09/13 h

分解:K270

部屋の片づけをしていたところ、不要な家電製品をいくつか見つけました。
モノづくりに係るものとして、既存製品から勉強したいと思います。
製品を分解することで多くのノウハウを学ぶことができるはずです。

今回は株式会社ロジクールK270というロングセラーのキーボードです。
使用する工具は、No.2のプラスドライバとT9のトルクスレンチです。
いつも通り、67in1 特殊精密ドライバー スマホ分解 修理 磁石付き工具 青ので分解できました。

K270の分解


分解前の確認

分解前に製品を眺めてみます。


右上に電源スイッチがあります。
キートップの文字はシルク印刷にコーティングが施されているようです。
ON/OFFの文字と、企業ロゴも同様にシルク印刷ですが、コーティングはありません。
樹脂には粗めのシボが入っています。


背面にはスタンドが2箇所、スポンジのようなゴム足が5箇所取り付けられています
その他は、紛失防止用にUSBドングルを挿して保管するスロットと、電池交換用のカバーがあります。
筐体の固定ネジは見えるだけで14箇所確認できます。
樹脂には粗めのシボが入っています。表面の黒と同程度の深さだと思います。


注意書きはシルクで印刷されていますが、銘板はモールドされています。
Unifyingのロゴもシルク印刷のようです。

背面カバーの取り外し

見えている14本の鍋十字ネジと、1本のトルクスネジを外します。
さらに背面の目隠しシールの下に鍋十字ネジが1本隠れているのでそれも外します。
ひっかけと爪がかなりつよくかんでおり、力をいれて外す必要があります。


背面カバーはABSとHIPS(耐衝撃性ポリスチレン)の複合材のようです。


電池カバーは爪で固定されています。
スリット部を変形させて爪を外します。



スタンドは樹脂とゴム系のスポンジが貼り付けられています。
スリット部を押して変形させることで、ダボの位置を変えてはめ込む構成です。
誘い用のスリットが受け口にあり、スルッと入ります。

メンブレンの取り外し

正面カバー側にはメンブレンシートと、制御基板、キーが残ります。

まずは、左上のメンブレンの端子を外します。
その他にダボはありますがメンブレンを固定するものはないようです。



メンブレンの端子は、板金とシリコンゴムで押さえつけて固定されています。
板金は亜鉛処理鋼板で、位置決め用のスリットと穴があります。
穴にシリコンゴムをはめて、板金と筐体の取り付けで接触圧を稼いでいるようです。
これでいいのかと不安になります。



メンブレンシートは透明なFPCで構成されています。
2つの電極が圧力を受けて触れ合うと、通電する仕組みです。
マトリクス状にこのスイッチが配置され、受け側の端子で通電の組み合わせからどのキーが押されたか読み取れることができます。
2枚のFPCの間にはスペーサとして、透明なPETのようなフィルムがはいっていました。


打鍵時の反力とメンブレンの圧迫に使用する、シリコン性のラバードームがメンブレンの上に乗っています。
位置決め用のダボと、成形時の流れやすさを増すためのランナーのようなものが設けてあります。
Fキーなどは小さいので、ラバードームも小さいようです。


ラバードームは圧迫されると潰れて、FPCを微小に変形させることで電極を接触させます。
打鍵感を決めるので重要な部品です。

メイン基板の取り外し

メンブレンの接続部を抑えているネジを外せば、メイン基板が外せます。



電池用の端子が差し込まれているので、ケーブル側を引き抜きます。
次に、基板とマイナス端子を同時に持ち上げます。
メインボードは位置決め用のダボだけで、爪ではめ込まれていません。


メイン基板のチップはNORDICのnRF24LEです。
Ultra-low Power Wireless System On-Chipとのことなので、無線チップでIOを処理しているのでしょう。


ウラ面にはLEDがあります。
これはPowerランプのようです。


基板裏側に電源スイッチがあります。
スイッチの向きをまちがえないように、矢印がモールドされています。
その下のパーツは先程のLEDライトガラスで、熱圧着で固定されています。


電源スイッチの赤と緑の色はシールでつけられています。


ライトガラスのウラ面から黒のシルクが入っており、これで遮光と部品の色付けをしています。
表面から見ると黒の光沢パーツに見えるのは面白いです。

キーの取り外し

キーは角状のガイドにハマっており、爪で抜けどめがついています。


爪をマイナスドライバーなどで倒しながら押し込めば、キーが抜けます。
裏からどのキーをどこにはめるのかはわからないので、キーと配置表を見ながら作業する必要がありそうです。


Enter、Space、Shiftは大きいキーなので、安定させるためにワイヤーでスライドリンクを組んでいます。
これによって、端のほうを打鍵しても傾きにくくなっています。



キーの樹脂型は、全部で18種類あります。
共通にできそうなのに、微妙に形状が異なるものがありこだわりを感じます。


キーだけ集めると116個もあります。



キーを外すと、角状のスライド部はほぼ同じ構造であることがわかります。
背面カバーはABSとHIPS(耐衝撃性ポリスチレン)の複合材のようです。


最後に、紛失防止用にUSBドングルを挿して保管するスロットに使用するゴムパーツが残ります。
これは、スタンドに使用しているゴム系のスポンジと共通部品です。
素材は不明ですが、適度に柔らかく摩耗にも強い素材のようです。

組み立て順を考える

最後にこの製品の組順を考えます。
このキーボードの部品は大まかに以下のとおりです。

・キー116個
・スライドリンク用ワイヤ 3個
・メンブレンシート  1枚
・ラバードーム 1枚
・メンブレン抑えゴム 1個
・メンブレン抑え板金 1個
・メイン基板 1枚
・筐体上(黒)  1個
・ライトガラス  1個
・スイッチ 1個
・スイッチフィルム  1枚
・筐体下(灰)  1個
・筐体ゴム脚小 3個
・筐体ゴム脚大 2個
・スタンド 2個
・スタンド・USBドングル保持用 ゴム 3個
・シリアルナンバー 1枚
・ネジ穴目隠しシール 1枚
・B0タッピングビス φ2.6x7mm 鍋十字 16本
・B0タッピングビス φ2.6x7mmトルクス 1本

以下の部品はSubAssyにできます。
・筐体下(灰)Assy
 ・筐体ゴム脚小 3個
 ・筐体ゴム脚大 2個
 ・注意書きシール
 ・スタンドAssy 2個
  ・スタンド 2個
  ・スタンド・USBドングル保持用 ゴム 2個

・筐体上(黒) Assy
 ・キー116個
 ・スライドリンク用ワイヤ 3個
 ・スタンド・USBドングル保持用 ゴム 1個
 ・ライトガラス  1個

・スイッチAssy
 ・スイッチ 1個
 ・スイッチフィルム  1枚

・メンブレン抑えAssy
 ・メンブレン抑えゴム 1個
 ・メンブレン抑え板金 1個


SubAssyができたら、筐体上(黒)Assyに次の順で組み付けていきます。
スイッチAssyを溝にはめて、メイン基板を組み付けます。
次に、メンブレンシートを載せて、メンブレン抑えAssyで端子を抑えるように組み付けます。
最後にラバードームを載せたあとに、筐体下(灰)Assyをはめ込みネジ止めします。

動作確認ができたら、ネジ穴目隠しシールとシリアルナンバーを貼り付ければ完成です。

以上のような、組順はいかがでしょうか。

まとめ

今回は株式会社ロジクールK270を分解しました。
値段の割にパーツ数も多く、こだわった製品であることがわかります。
メンブレンのラバードームは参考になりました。

今回は以上です。

コメント

このブログの人気の投稿

C++11のためにGCCの最新版をインストールする

分解:Logicool M570

MOCO'Sキッチンのフォントに似せるβ版