RaspberryPiとArduinoラップトップ
コンポーネントと消耗品
> |
| × | 1 | |||
| × | 2 | ||||
| × | 1 |
このプロジェクトについて
はじめに:RaspberryPiとArduinoラップトップ
数年前にRaspberryPiについて聞いて遊んだ日から、Raspberry Piを搭載したラップトップを作りたいと思っていましたが、Raspberry Pi3がリリースされてようやく見ることにしました。それを通り抜けます。 Raspberry Piを使用して完全に機能するラップトップを作成するのはこれが初めてではありません。プロジェクトを試すたびに、リボンケーブルの破損からヒンジメカニズムの理解まで、さまざまなエラーが発生します。これらの失敗から学ぶことができたので、自分で作るときにそれらを回避する方法を紹介したいと思います。それでは始めましょう!
ステップ1:何をしたいのか <図>
使用するパーツの選択と購入を開始する前に、ラップトップで実行できるすべてのことを理解する必要があります。たとえば、ラップトップに次のように設定します。
- 統合マウス(トラックパッド)
- 長いバッテリー寿命
- 少なくとも2つのUSBポート
- フルキーボード
- 統合されたArduinoパワードバッテリーリーダー
- コンポーネントをプラグインするためのヘッダーとArduinoを統合
- スモールフォームファクター
Pi 3を使用しているので、WifiまたはBluetoothドングルがすべて統合されているため、購入の心配はありません。今、このリストは決して排他的ではありません、これをより良いラップトップにするために追加できるものは他にもたくさんありますが、追加する機能は、小さな統合されたArduinoパワードバッテリーリーダーなどの素晴らしい使いやすさを与えると思いますメイン画面の横にあるOLED画面には、バッテリーの割合と電圧が永続的に表示されます。私が本当に気に入っているもう1つの機能は、ヘッダー付きの統合されたArduinoです。これは基本的に、オスのヘッダーがはんだ付けされたArduinoです。ユーザーがオスのピンにアクセスしてコンポーネントを接続できるようにします。これはすべて、ラップトップに組み込まれているArduinoだけなので、Arduinoはいつでも手元にあります。
ステップ2:パーツ <図>
このプロジェクトでは、かなり多くの部品が必要になります。
- x1 Raspberry Pi 3(こちら)
- x2 Arduino Micro(こちら)
- x1 7インチラズベリーPIスクリーン(こちら)
- x3リチウム18650バッテリー(こちら)
- x1パワーバンク回路(ここ)
- x1 USBハブ(ここ)
- x1ミニUSBキーボード(こちら)
- x1オスUSB(ここ)
- x1 SPI OLED(ここ)
- 強化段ボール
以前のプロジェクトで作成したトラックパッドも必要になります。完全なチュートリアルはここにあります。繰り返しになりますが、これは決して排他的なリストではありません。これらのパーツの優れている点は、大部分が相互に依存しているため、パーツを好きなように交換できることです。 たくさんあります セットアップするパーツの数を増やして、個別にセットアップし、最後にすべてをまとめることができるようにします。
ステップ3:Piと画面を設定する <図>
PIと画面から始めましょう。画面はHDMIポートを介してPiに接続するのではなく、Pis GPIOに接続する50ピンリボンケーブルを介して接続しますが、接続してPiを起動するだけでは接続されません。動作しない場合は、Piのスタートアップファイルのコードの数行を編集する必要があります。
ここでは、新しいRaspbianイメージをダウンロードすることから始めます。次に、7Zip(または使用できるソフトウェア)を使用してSDカードに書き込みます。書き込んだら、SDカードで config.txt というファイルを開く必要があります。 コードを追加します。このコードは、起動時にHDMIポート(HDMIがデフォルト)ではなくGPIOヘッダーを介して画面データを送信するようにPiに指示します。コードを入れるのは本当に簡単です。メモ帳プログラムでconfig.txtを開き、メモ帳++を使用しているWindowsの場合は、このコードをconfig.txtファイルにコピーして保存して閉じます。SDカードをPiに接続し直すと機能するはずです。明るすぎたり薄暗すぎたりする場合は、画面の回路基板上の小さなペテンチオマーを正しく見えるまで回します。
また、Piは、ケース内に適切に収まるように物理的に変更する必要があります。これは、デュエルUSBポートの1つをはんだ除去する必要があります。これは、USBコネクタのピンにかなりの量のはんだを置き、ゆっくりと揺り動かすことによって行われます。それが自由になるまで前後に。これを行うのは、すべての入力デバイスを接続するためにUSBハブをPiにはんだ付けする必要があるためです。
コード:
dtoverlay =dpi24
enable_dpi_lcd =1display_default_lcd =1dpi_group =2dpi_mode =87dpi_output_format =0x6f005hdmi_cvt 1024 600 60 6 0 0 0
ステップ4:バッテリーのセットアップ <図>
私たちのバッテリーは、それぞれ2400mAhの容量を持つ3つの18650バッテリーを使用します。並行して、3つのセルの合計容量は7200 mAhです。すべてが接続されたパイは、約1アンペアを消費します。つまり、3つのセルが約4.5でパイに電力を供給できます。 5時間ですが、必要に応じてバッテリーを追加することでこれを増やすことができます。それを構築するには、3つのセルすべてを個別に最大4.2ボルトまで充電する必要があります。リチウム電池の接続は、充電状態が異なる(電圧が異なる)場合は非常に危険です。これを回避するには、接続する前にすべてが完全に充電されていることを確認するのが最も簡単です。それら。
次に、これらのセルを並列に接続して、すべてのプラス端子を接続してから、すべてのマイナス端子を接続します。これらのバッテリー間に大量の電流が流れ、細いワイヤーが熱くなる可能性があるため、太いワイヤーを使用します。次に、バッテリーのマイナス端子とポスト端子をそれぞれパワーバンク回路のマイナス入力端子とプラス入力端子に接続します。これでバッテリーはすべてです!
ここで使用したようなパワーバンク回路を使用する代わりに、リチウム充電器を使用してセルを4.2ボルトに充電し、コンバーターをブーストして4.2ボルトを5ボルトにブーストすることもできますが、これは最終的にパワーバンクとまったく同じことを行います回路とより多くのスペースを占めるでしょう。
ステップ5:バッテリーディスプレイの設定 <図>
バッテリー表示を設定するために、Pis GPIOでバッテリー電圧を読み取り、ソフトウェアでバッテリーレベルを表示できるため、この手順はそれほど必要ありませんが、OLED画面で全体が表示されると思うので、これを追加したいと思います。ラップトップは本当にクールなDIYルック。 OLEDスクリーンをArduinoにはんだ付けする必要があるようにするには、使用しているOLED imはSPIバージョンではないため、Arduinoに7ピンをはんだ付けする必要があります。
ピン配置は次のとおりです。
- OLED ------------------- Arduino
- 休憩-ピン7
- DC-ピン12
- CS-ピン9
- DIN-ピン11
- CLK-ピン13
- VCC-5ボルト
- グラウンド-グラウンド
コードをアップロードする前に、Arduinoをバッテリーに接続し、バッテリーの電圧を読み取れるようにする電圧プローブを作成する必要があります。分圧器構成の2つの10オーム抵抗器(写真を参照)をA0とArduinoのアースピンはバッテリーに接続でき、A0はプラスになり、アースはアースになります。画面用の電源も必要なので、もう1本のワイヤーをアースにはんだ付けし、もう1本をArduinoのVINにはんだ付けする必要があります。これは、後で電源用にパワーバンク回路に接続します。
最後に、以下にあるコードをアップロードできます。
batterylaptop.ino
ステップ6:残りのパーツをセットアップする <図>
これで、すべての主要部分を設定しました。次に、小さくて簡単な部分を設定する必要があります。キーボードから始めて、入っていたケーシングから取り外す必要があります(7インチタブレットで使用することを目的としています)。必要なのは、キーボードの周りの合成皮革を切り取り、キーボードとその回路を引き出すことだけです。後でUSBハブにはんだ付けする4本のワイヤーがあることが簡単にわかります。
トラックパッドも最小限のセットアップで済みます。前のプロジェクトで作成したものを使用して、マイクロUSBケーブルをUSBハブに接続するだけです。これがどのように作成されたかをここで確認できます。
>最後に、内部のArduinoでは、すべてのピンにヘッダーをはんだ付けする必要があります。これを行うには、これらのピンとArduinoをブレッドボードに配置し、それらを所定の位置にはんだ付けします。これにより、ピンがまっすぐに保たれます。その後、別のマイクロを取得します。 ArduinoをUSBハブに接続するためのUSBケーブル。これですべてがセットアップされたので、物事をまとめることができます!
ステップ7:回路(すべてを接続する)
この時点で、すべてのパーツを個別にまとめたので、ラップトップの内部を作成するためにそれらを相互に接続する必要があります。
USBハブを先にはんだ除去した2つのUSBの1つに接続することから始めます。次に、2番目のUSBを、ラップトップの反対側に配置されたメスのUSBポートに、長いワイヤーを使用してはんだ付けします。次に、トラックパッドをはんだ付けします。 、キーボードおよび内部ArduinoをUSBハブに接続します。次に、マイクロUSBケーブル、またはPiの下にある専用の5ボルトと接地はんだパッドを使用して、パワーバンク回路の5ボルト出力をラズベリーパイの5ボルト入力にはんだ付けします。
これがベースのすべてです。画面の半分に移動できます。画面にはメイン画面とバッテリーディスプレイの2つの部分しかありません。必要なのは、50ピンリボンケーブルをメイン画面と50に接続することだけです。ラズベリーパイのピンコネクタ。次に、Arduinoバッテリーディスプレイから3本の長いケーブルを配線する必要があります。これらは前に説明したバッテリー読み取りケーブルと電源ケーブルです。ピンA0に接続されたケーブルはバッテリーのプラス接続に接続され、VINピンは接続されます。パワーバンク回路の出力は5ボルトで、アースはアースに接続されます。
もちろん、ある時点でこれをオフにしたい場合があるので、パワーバンクからラズベリーパイへのアース接続の間にスイッチを追加して、システムへの電力を完全に遮断できるようにします。ラズベリーパイの電源を切るだけでは悪いので、電源を切る前にソフトウェアの電源を切るのが理想的です。これは、ラズベリーパイのオプションで[シャットダウン]をクリックするだけで実行できます。
ステップ8:ケース <図>
残念ながら、私は3Dプリンターを持っていませんが、可鍛性のあるプラスチックと段ボールから非常に頑丈で見栄えの良い(私の意見)ケースを作ることができます。この背後にある考え方は、ケースの壁が段ボールで作られ、ケースの内側に可鍛性のプラスチックが使用されて、すべてが一緒に保たれ、より頑丈になるというものです。これを行うための鍵は、必要な段ボールのサイズを測定して切り出すことです。次に、段ボールをスーパーグルーで接着します。この時点でホットグルーを使用すると、非常に見苦しい目に見える線が残ることがよくあります。スーパーグルーを使用してピースを組み立て、内側をホットグルーで補強し、続いて可鍛性プラスチックの層で補強します。このルートを選択した場合は、私の場合の寸法をここに残しましたが、3Dプリンターを使用している場合は、それがより適切なオプションだと思います(コメントでどうなるか見てみましょう!)。
ステップ9:スクリーンヒンジ <図>
不思議なことに、プロジェクトのこの部分は、とても簡単な部分のように見えますが、最も難しい部分であることがわかりました。私たちがしなければならないのは、非常に硬いヒンジを手に入れることです。言うのは簡単ですが、見始めるのに適した場所は古いラップトップや画面です。これらはewaiste施設でほとんど何も見つかりません。ヒンジを取り付けたら、画面の下部とベースの上部に切り込みを入れ、前に説明した可鍛性のプラスチックでこれらの切り込みを埋めます。まだ暖かくて可鍛性があるうちに、ヒンジを押し込み、所定の位置に固定します。これは非常に乾燥しやすいため、ヒンジが緩む問題はありません。間違えた場合は、ヘアドライヤーを使用してプロトプラティックを再溶解し、形状を変更したり、取り外したりすることができます。
ステップ10:注意すべき点/改善すべき点 <図>
このプロジェクトを作成しているときに、私を遅くしたり、多額の費用をかけたりする可能性のあるかなりの数の問題に遭遇しました。最初で最も厄介なのはリボンケーブルでした。リボンケーブルは何度も抜き差しするようには設計されていませんが、残念ながらこれはテスト中に頻繁に行うことで、実際に私のものを傷みから壊しました(新しいものを注文しました)ので、十分に注意してください。このラップトップをテストしているときに私を悩ませたもう1つのことは、間違った内部Arduinoにコードをアップロードし続けたことです!ベースには2つのArduinoがラズベリーパイに接続されています。1つ目はトラックパッドを制御するArduinoで、2つ目は内部Arduinoとして使用するためにインストールしたArduinoです。誤ってスケッチをトラックパッドにアップロードすると、煩わしさが生じます。アップロードしたいArduinoではなくArduinoです。もちろん、これはトラックパッドを台無しにして、コードを再度アップロードするまで使用できなくなるため、ArduinoIDEでどのArduinoがどれであるかを確認してください。
とはいえ、必要なコードは最小限であり、Raspberry Pi財団のスタッフが、Piのセットアップと動作を非常に簡単に行えるようになっているため、これは非常に難しいプロジェクトではないと言わざるを得ません。
ステップ11:最終
この時点で、ラップトップは完全に機能しています。私はほぼ毎日メモを取るために私のものを使用しています。RaspbianOSにはlibraofficeが付属しているため、これは学校や職場のラップトップとして使用することをお勧めします。また、WiFiおよびBluetoothネットワークに接続することで、YouTubeやその他のWebページを非常に簡単に視聴できるようになります。さらに優れたものにするために、ラズベリーパイで実行されるゲームは、マインクラフトからクラシックな古いNESゲームまで、非常に楽しいものがたくさんあります。バッテリー寿命が長い。全体として、これは本当に楽しいプロジェクトであり、試してみることを強くお勧めします。
ご不明な点がございましたら、コメントまたはメッセージをお送りください。ご連絡を差し上げるために最善を尽くします。
コード
- コードスニペット#1
コードスニペット#1 プレーンテキスト
dtoverlay =dpi24
enable_dpi_lcd =1display_default_lcd =1dpi_group =2dpi_mode =87dpi_output_format =0x6f005hdmi_cvt 1024600 60 6 0 0 0
製造プロセス
- NodeMCUとRaspberryPi 3 B +間のMQTT通信
- PythonとRaspberryPiの温度センサー
- ラズベリーパイ温度および光センサー
- ラズベリーパイセンサーとアクチュエーター制御
- 新しいRASPBERRYPI3モデルB +機能と購入
- MrRobot – Ubuntuモバイルアプリ対応のロボティクス(Raspberry Piとarduinoが関与)
- RaspberryPiとPythonを使用したロボットの構築
- Bluetoothで制御されるRaspberryPi Robot
- ArduinoとRaspberryPiを使用してインターネット制御のビデオストリーミングロボットを構築する
- LCDアニメーションとゲーム
- ArduinoおよびOLEDベースのセルオートマトン