自動ハンドサニタイザー
コンポーネントと消耗品
> |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 19 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
必要なツールとマシン
> |
| |||
| ||||
|
アプリとオンラインサービス
> |
| |||
| ||||
|
このプロジェクトについて
過去数ヶ月にわたって、COVID-19パンデミックは世界中に混乱を広げてきました。数え切れないほどの感染症があり、残念ながら多くの死傷者が出ています。世界保健機関によって提案された最も重要な対策の1つは、石鹸または手指消毒剤のいずれかによる継続的な手洗いです。しかし、最も重要な問題の1つは、それを行う方法です。これは、ディスペンサーに物理的に触れることによるものであり、アクションの目的全体が排除され、感染の大きなリスクが発生することさえあります。だから私 、 14歳の男の子 、この問題に対処できるArduino Nanoボードを使用して何かを作成することにしましたが、安価で、さまざまなディスペンサーに簡単、迅速、効果的に接続できるようにしたかったのです。そして、これはまさに私が作ったものであり、ほとんどの手指消毒剤/石鹸ディスペンサーに取り付けることができるアクセサリーです。 そしてそれらを完全に回します ハンズフリーで自動
まず、このビデオを見て、デバイスの動作を確認し、デバイスの動作と製造方法を理解してください。
ステップ1:メカニズムを理解する
<図> <図> <図>
つまり、基本的にステッピングモーターはカプラーでネジに接続されています。次に、3Dプリントされたプレッサーの片側をナットを使用してネジで接続し、反対側で3Dプリントされたロッドで支えます。ロッドは、スクリューの回転力がプレッサーを回転させることを許可せず、代わりにプレッサーが直線的に移動します。 。このようにして、ステッパーに任意の方向(前後)に、任意の速度で、必要な数のステップで移動するように命令できます。
ステップ2:デバイスがどのように機能するかを理解する
<図> <図> <図>
コンセプトは、3DプリントされたIRホルダーに取り付けられたIR障害物センサーが作動すると、その数センチ下に手を置くだけで、プレッサーが設定された距離を下って(ディスペンサーを押す)2を待つというものです。数秒後、エンドストップスイッチがアクティブになるまで上昇するだけで初期位置に戻ります。同様に、デバイスの電源が最初にオンになると、スイッチがアクティブになるまでプレッサーが上昇し、そこで停止します。これは、プレッサーを使用できるようにするための一種のセルフキャリブレーションです。
<図> <図>次に、ベルクロスを使用して、選択したハンドサニタイザーを包み、可能な限り締めます。
これで、自動ハンドサニタイザーディスペンサーが機能します!!
ステップ3:必要なコンポーネントを収集する
<図>
必要なコンポーネントのすべてのリンクは、「Things」セクションにあります。
ステップ4:カスタムパーツを設計する
<図> <図> <図> <図> <図> <図> <図> <図>
すべての3D印刷パーツは、私がOnshapeで設計しましたが、「添付ファイル」セクションですべての.stlファイルを提供しているので、3D設計について心配する必要はありません。
ステップ5:カスタムプラスチックパーツの3Dプリント
<図> <図> <図> <図> <図> <図> <図>
Creality3D Ender 3 V2のパーツをグレーとホワイトのPLAで、レイヤーの高さ0.2mm、インフィル20%で3Dプリントしました。 3Dプリンターにアクセスできない場合は、段ボールや木材を使用してみてください。
ステップ6:ステッパーの改造
<図>
28BYJ-48ステッピングモーターは小さくて本当に安いステッピングモーターです。ユニポーラステッピングモーターで、トルクは約 300g / cm です。 これは私たちのプロジェクトで機能しますが、より良い結果を得るために、より強力にしたいと思います。トルクを 800+ g / cm に増やすことができます 変換 バイポーラに シンプルで簡単なmodを備えたモーター!
<図>バイポーラステッパーはコイルが大きく、その結果、トルクが大幅に増加します 。
<図>まず、ドライバーで青いカバーを取り外します。
<図> <図>取り外したら、ナイフを使用して赤いワイヤーまでの真ん中のトレースを完全に切断します。
<図>しないことを確認する必要があります もう接続します。
<図> <図>これで、両側から赤いワイヤーを切断できます。
<図>これで青いカバーを再び取り付けることができます。元に戻すには、サポートの2つを切断する必要がありました。
<図>これで、独自のバイポーラ28BYJ-48ステッパーができました。初期トルクは約2.5倍です。ただし、ここで、私が使用しているDRV8825などのバイポーラステッピングドライバーを入手する必要があります。ドライバーの最小電圧供給は8.4Vで、モーターの定格は5Vです。しかし、モーターのバイポーラバージョンがその電圧を簡単に処理できることを心配しないでください!
ステップ7:DIYベルクロタイx2
<図>
アクセサリーをディスペンサーに取り付けるベルクロタイを作る時が来ました。すでにベルクロケーブルタイをお持ちの場合は、お気軽にご利用ください。
<図>好きなだけ長くしたり短くしたりできますが、一方を30cm〜40cm、もう一方を4cm〜7cmでカットすることをお勧めします。
<図>次に、2つのパーツを一緒にホチキス止めします。一緒にホチキス止めされる側面が両方とも粗いか両方とも柔らかいことを確認してください。
<図>これでベルクロタイを使用する準備が整いました!
<図> <図>これらのうち2つが必要になります。
ステップ8:回路 <図>
電子回路を作成する時が来ました!手始めに、9Vバッテリーのアースを100μFの電解コンデンサを間に挟んでArduinoアースに接続します(白い線のあるコンデンサの側がアース/カソードであることを忘れないでください)。 9Vを一般的なオンオフスイッチに接続してから、コンデンサのアノードのVinに接続します。ケースの中にぴったり収まるミニブレッドボードを2つ使用しています。スペースに限りがあるため、好きなブレッドボードを使用してください。
<図>IR障害物センサーVCCを5Vに接続し、アースをアースに接続し、最後にOUTをデジタルピン9に接続します。
<図>次に、エンドストップスイッチを接続します。コモンレッグを5Vに接続し、通常はデジタルピン8に接続し、1kΩ抵抗を介してグランドに接続します。
<図>ブレッドボードにDRV8825バイポーラモータードライバーを追加します。 VmotをArduinoのVinに接続します。 2つのアースをアースに接続します。 Dirピンをデジタルピン2に接続し、Stepピンをデジタルピン3に接続し、Enableピンをデジタルピン4に接続します。ResetピンとSleepピンを相互に接続します。
<図>最後に、28BYJ-48の青いケーブルをA2に、黄色のケーブルをA1に、オレンジ色のケーブルをB1に、ピンク色のケーブルをB2に接続します。
<図> <図>電子機器がついに接続されました!
ステップ9:プログラミング
const int dirPin =2;
ドライバのDirピンをデジタルピン2と定義します。
const int stepPin =3;
ドライバのステップピンをデジタルピン3と定義します。
const int enablePin =4;
ドライバのイネーブルピンをデジタルピン4として定義します。
const int StepsPerRevolution =6000;
1回転あたりのステップ数を6000と定義し、360度の1回転は2048ステップです。
int endStop =8;
endStopスイッチの入力ピンをデジタルピン8と定義します。
int irSensor =9;
IR障害物センサーの入力ピンをデジタルピン9と定義します。
void setup()
{
pinMode(endStop、INPUT);
pinMode(irSensor、INPUT);
セットアップでは、endStopピンとirSensorピンを入力として宣言します。
pinMode(stepPin、OUTPUT);
pinMode(dirPin、OUTPUT);
pinMode(enablePin、OUTPUT);
stepPin、dirPin、enablePinを出力として宣言します。
digitalWrite(enablePin、LOW);
enablePinをLOWに設定して、DRV8825ドライバーを有効にします
while(digitalRead(endStop)==LOW)
{
endStopスイッチのデジタル値がLOW(スイッチが押されていない)である限り
digitalWrite(dirPin、HIGH);
モーターの回転方向は反時計回りに設定されています
for(int x =0; x <1; x ++)
{
digitalWrite(stepPin、HIGH);
delayMicroseconds(2000);
digitalWrite( stepPin、LOW);
delayMicroseconds(2000);
}
ステッパーは、Whileステートメントの条件がfalseになるまで、一度に1ステップずつ反時計回りに回転します。
digitalWrite(enablePin、HIGH);
}
これによりドライバーが無効になり、使用していないときにドライバーが多くの電流を消費しないようになります。
void loop()
{
if(digitalRead(irSensor)==0)
{
ループ内で、irSensorのデジタル値が0の場合(IR障害物センサーの前に障害物(手)があります)
digitalWrite(enablePin、LOW);
ドライバーが有効になります。
digitalWrite(dirPin、LOW);
モーターの回転方向は時計回りに設定されています。
for(int x =0; x {
digitalWrite(stepPin、HIGH);
delayMicroseconds(2000);
digitalWrite( stepPin、LOW);
delayMicroseconds(2000);
}
ステッパーは時計回りに6000ステップ回転します。
delay(2000);
2秒間待機します。
while(digitalRead(endStop)==LOW)
{
endStopスイッチのデジタル値がLOWである限り(スイッチは押されていません。
digitalWrite(dirPin、HIGH);
モーターの回転方向は反時計回りに設定されています。
for(int x =0; x <1; x ++)
{
digitalWrite(stepPin、HIGH);
delayMicroseconds(2000);
digitalWrite( stepPin、LOW);
delayMicroseconds(2000);
}
}
ステッパーは、Whileステートメントの条件がfalseになるまで、一度に1ステップずつ反時計回りに回転します。
digitalWrite(enablePin、HIGH);
}
}
その後、Ifステートメントの条件が真になり、コードが再度再生されるまで、ドライバーは無効になります。
ステップ10:組み立て
カバーアセンブリ <図> <図> <図> <図>
ベルクロタイを隙間に置き、その上にホルダーを追加してネジで留めるだけです。
x2
<図> <図>ベルクログリップをカバーにねじ込みます。これでカバーの組み立てが完了しました!
x2
プレッサーアセンブリ <図> <図> <図>
リニアベアリングを中央になるまで右の穴に押し込みます。 T8ナットを4本のネジでプレッサーの左側の穴にねじ込みます。
エレクトロニクスケースアセンブリ <図>
回路を電子機器のケースに入れます。ステッパー、スイッチ、およびIR障害物センサーのケーブルを穴に通します。
IR障害物センサーホルダーアセンブリ
<図> <図>
IR障害物センサーを穴にねじ込み、ナットを使用してはめあいを締め、位置を調整します。
最終組み立て! <図> <図> <図>
ベアリングを挿入します。
<図> <図> <図>T8ネジとプレッサーアセンブリを追加します(T8ネジは 70mmから82mmの長さである必要があります 。ネジが長い場合は、弓のこなどの工具を使用して希望のサイズにカットする必要があります。それ以外の場合は、3Dプリントを試すことができます。)
<図> <図> <図> <図>カプラーをモーターのシャフトに締めます。次に、T8ネジで締めます。最後に、2本のネジでモーターをベースにネジ止めします。
<図> <図>エンドストップスイッチを追加します。
<図> <図>5本のネジでカバーをベースにねじ込みます。
<図> <図> <図>IR障害物センサーホルダーを2本のネジでベースの前面にねじ込みます。
<図> <図>最終的には、3本のネジで電子ケースをカバーにねじ込みます!よくできたプロジェクトが完了しました!
結論 <図>
ほとんどのハンドサニタイザー/ソープディスペンサーを完全に自動化してハンズフリーにすることができるアクセサリーのこのプロジェクトは、ついに完成しました!!
お時間をいただきありがとうございます!!
コード
- Automatic_Hand_Sanitizer_Transformer.code
Automatic_Hand_Sanitizer_Transformer.code Arduino
ガジェットのコード//ピン接続と1回転あたりのモーターのステップを定義しますconstint dirPin =2; // driverconst int stepPin =3のdirピンを定義します; // driverconst int enablePin =4のステップピンを定義します; // driverconst int stepPerRevolution =6000のイネーブルピンを定義します; // 1回の完全な(360度)回転は2048ステップですint endStop =8; //エンドストップスイッチの入力ピンを定義しますintirSensor =9; // IR障害物センサーの入力ピンを定義しますvoidsetup(){pinMode(endStop 、INPUT); //ピンを入力として宣言しますpinMode(irSensor、INPUT); pinMode(stepPin、OUTPUT); //ピンを出力として宣言しますpinMode(dirPin、OUTPUT); pinMode(enablePin、OUTPUT); digitalWrite(enablePin、LOW); //これによりドライバーが有効になりますwhile(digitalRead(endStop)==LOW)//コードが開始すると、ステッパーは終了停止スイッチまで回転します{//停止スイッチがアクティブになりますdigitalWrite(dirPin、HIGH ); //方向は反時計回りに設定されます//モーターをゆっくり回転させますfor(int x =0; x <1; x ++){digitalWrite(stepPin、HIGH); delayMicroseconds(2000); digitalWrite(stepPin、LOW); delayMicroseconds(2000); }} digitalWrite(enablePin、HIGH); //これによりドライバーが無効になり、//使用されていないときにドライバーが現在の} void loop(){if(digitalRead(irSensor)==0)// IR障害物センサーの前にある障害物(手){digitalWrite(enablePin、LOW); //ドライバーを有効にしますdigitalWrite(dirPin、LOW); //方向は時計回りに設定されます//モーターをゆっくり回転させますfor(int x =0; x
カスタムパーツとエンクロージャー
デバイスのメインベース。これは、実際にディスペンサーを押すコンポーネントです。デバイスのカバー。電子機器のケースとして機能します。ベルクロタイイングメカニズムを作成します。 これらのうち2つが必要になります。押え部分のサポートとして機能します。ベースに接続され、irセンサーのサポートとして機能します。カバーにベルクロを保持します。
これらのうち2つが必要になります。
回路図
製造プロセス