工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

液体レベルインジケーターとコントローラー

コンポーネントと消耗品

>
Arduino UNO
× 1
超音波センサー-HC-SR04(汎用)
× 1

アプリとオンラインサービス

>
Arduino IDE

このプロジェクトについて

次の図は、超音波センサーとArduinoを示しています。作成されたモデルはプレゼンテーションのみを目的としています

はじめに

レベルインジケーターは、主にすべての産業部門で使用されます。小規模な作業や家庭用にも同じように実装できます。連続データの読み取りに役立つ液面センサーを構築しました。これにより、タンク内で占有されている液体の量の値がわかります。私たちが作成したシステムは、占有されている液体の量を提供するだけでなく、ポンプを使用してそれを制御するフィードバックシステムです。

<図>

建設

上の図は、私が作成したシステムの簡略化したブロック図です。 Arduinoは私たちが使用しているマイクロコントローラーです。超音波センサーHC-SR04はArduinoに接続されています。センサーはタンクの上部に取り付けられています。モデルには2つの水中ポンプを使用しました。水中ポンプは一方向です。つまり、流体をある方向から別の方向にのみ輸送できます。両方向に運転できる双方向ポンプを使用することができます。両方のポンプはArduinoから信号を受け取ります。ポンプは動作するのに12vを必要とするので、モータードライバーも使用する必要があります。 (モータードライバーはブロック図には示されていません。)

作業中

理解を容易にするために、モデルをさまざまなセクションに分割します。

  • センシングシステム
  • 制御システム

センシング

センシングシステムには超音波センサーHC-SR04が搭載されています。超音波範囲は20kHzを超えます。このセンサーには送信機と受信機があります。送信機は40kHzの周波数を生成します。この超音波は液面から跳ね返り、受信機で受信されます。このセンサーには4つのピンがあります。アースはArduinoのアースに与えられ、VCCは+ 3.3vまたは5vにすることができます。トリガーピンは、トランスミッタにトリガー信号を与えるために使用されます。エコーピンは、超音波からのエコーを受信するために使用されます。これから、生成および受信する超音波の期間を取得します。時間を距離に変換する必要があります。以下に以下を示します。

  duration =pulseIn(echoPin、HIGH); //距離を計算するdistance =duration * 0.034 / 2;  
<図>

制御システム

Arduinoはセンサーからデータを受信し、ポンプに目的の信号を送ります。コードから指定されたレベルを設定できます。レベルが指定されたしきい値を超えると、タンク内のポンプに信号が送信され、しきい値を下回るまでタンクから水を汲み出し始めます。レベルが上記のしきい値を下回ると、リザーバー内のポンプがタンクへの液体のポンプを開始します。タンクと1つのポンプのみが使用されます。

将来の改善

次の方法でプロジェクトの効率を向上させることができます。

  • タンクの外側に配置できる双方向ポンプを使用できます。使用する必要があるポンプは1つだけです。
  • 結果はOLEDまたはLCD画面に表示できます。
  • IOTに接続している場合は、データをクラウドに保存することもできます。
  • IOTに接続されている場合は、液体レベルを制御したり、アプリケーションから液体レベルを確認したりできます。
  • タンクがオーバーフローしたときに安全ブザーを提供することもできます。また、タンクのオーバーフローを回避するようにコードを変更することもできます。

コード

  • 水位コントローラー
水位コントローラー Arduino
 int tankPump =3; int reserviorPump =2; int trigPin =9; // whiteint echoPin =10; // brownlong duration; int distance; void setup(){Serial.begin(9600); pinMode(tankPump、OUTPUT); pinMode(reserviorPump、OUTPUT); pinMode(trigPin、OUTPUT); // trigPinをOutputpinMode(echoPin、INPUT);として設定します// echoPinを入力として設定します} void loop(){ultrasound(); pump();} void Ultrasonic(){digitalWrite(trigPin、LOW); delayMicroseconds(2); // trigPinをHIGH状態に10に設定しますmicro secondsdigitalWrite(trigPin、HIGH); delayMicroseconds(10); digitalWrite(trigPin、LOW); // echoPinを読み取り、音波の移動時間をマイクロ秒単位で返します。duration=pulseIn(echoPin、HIGH); //距離の計算=期間* 0.034 / 2; //距離をシリアルモニターに出力Serial.print( "Distance:"); Serial.println(distance); delay(1000);} void pump(){if(distance> 10){digitalWrite(tankPump 、高い); digitalWrite(reserviorPump、LOW); } else {digitalWrite(tankPump、LOW); } if(distance <6){digitalWrite(reserviorPump、HIGH); digitalWrite(tankPump、LOW); } else {digitalWrite(reserviorPump、LOW); }} 

回路図


製造プロセス

  1. 血圧センサー–動作とその用途
  2. 電圧センサーの動作とその応用
  3. Arduinoセンサー–タイプとアプリケーション
  4. 指紋センサーの動作とアプリケーション
  5. トランスミッションフルードとは何ですか?それは何をしますか?
  6. PythonとRaspberryPiの温度センサー
  7. ラズベリーパイ温度および光センサー
  8. ラズベリーパイセンサーとアクチュエーター制御
  9. ラズベリーパイと湿度センサーを備えたエアロポニックス
  10. 湿度センサーをチェックして校正する方法
  11. Windows 10 IoTCoreおよびSHT15