قياس تدفق السوائل أو الاستهلاك هذا مهم في بعض الحالات ، ولهذا تحتاج إلى مقياس تدفق. على سبيل المثال ، إذا اتبعت Formula 1 ، فستعرف أن FIA يجبر الفرق على استخدام مقياس التدفق في المحرك لاكتشاف الاستهلاك الذي يحققه كل فريق في سياراتهم ، وبالتالي تجنب الفخاخ المحتملة عن طريق حقن تدفق أكبر للحصول على المزيد احيانا القوة او كيف يستخدم الزيت لحرق المحرك ...
لكن خارج F1 ، قد تكون مهتمًا بامتلاك أحد هذه الأجهزة لمعرفة استهلاك الماء أو أي سائل آخر للنظام ، أو أيضًا تحديد معدل تدفق الأنبوب الذي يسحب من الخزان لتحديد وقت استهلاكه ، أنظمة الري الآلي للحدائق ، إلخ. ال تطبيقات هذه العناصر كثيرة، يمكنك تعيين الحد بنفسك.
مقياس الجريان أو مقياس الجريان
كيف يجب أن تعرف التدفق هي كمية السائل أو السائل الذي يدور عبر أنبوب أو كعب لكل وحدة زمنية. يقاس بوحدات الحجم مقسومة على وحدة الوقت ، مثل لتر في الدقيقة ، لتر في الساعة ، متر مكعب في الساعة ، متر مكعب في الثانية ، إلخ. (لتر / دقيقة ، لتر / ساعة ، متر مكعب / ساعة ، ...).
ما هو مقياس التدفق؟
El مقياس التدفق أو مقياس السوائل إنه الجهاز القادر على قياس كمية التدفق التي تمر عبر الأنبوب. هناك العديد من الطرز والشركات المصنعة التي يمكن دمجها بسهولة مع Arduino. يعتمد معدل التدفق هذا على عدة عوامل ، مثل قسم الأنبوب وضغط الإمداد.
من خلال التحكم في هاتين المعلمتين ومع مقياس التدفق الذي يقيس التدفق ، يمكنك الحصول على نظام تحكم متطور للسوائل. مفيد جدًا لأتمتة المنازل أو غيرها من المشاريع الإلكترونية وحتى الصناعية. بالنسبة للمشاريع المنزلية ، يمتلك صناع موديلات معروفة مثل YF-S201 و FS300A و FS400A، الخ.
أنواع مقياس الجريان
سوف تجد في السوق أنواع مختلفة من عدادات التدفق أو عدادات التدفق حسب الاستخدام الذي تقدمه والميزانية التي تريد استثمارها. بالإضافة إلى ذلك ، بعضها مخصص للسوائل ، مثل الماء والوقود والنفط ، والبعض الآخر بدقة أكبر أو أقل ، وتتراوح الأسعار من بضعة يوروهات إلى آلاف اليورو في بعضها متقدم جدًا على المستوى الصناعي:
- مقياس الجريان الميكانيكي: هو مقياس نموذجي للغاية يمتلكه كل فرد في المنزل لقياس المياه التي يستهلكها بالأمتار. يدير التدفق التوربين الذي يحرك عمودًا متصلًا بعداد ميكانيكي يتراكم فيه القراءات. كونها ميكانيكية ، في هذه الحالة لا يمكن دمجها مع Arduino.
- مقياس الجريان بالموجات فوق الصوتية: تستخدم على نطاق واسع في الصناعة ، ولكنها مكلفة للغاية للاستخدام المنزلي. يمكنك قياس معدل التدفق بالوقت الذي تستغرقه الموجات فوق الصوتية للمرور عبر السائل المراد قياسه.
- مقياس الجريان الكهرومغناطيسي: غالبًا ما تستخدم أيضًا في الصناعة للأنابيب حتى 40 بوصة والضغوط العالية. تكلفتها باهظة الثمن وتستخدم نظامًا كهرومغناطيسيًا للقياس.
- مقياس الجريان التوربيني الإلكتروني: تكلفة منخفضة ودقيقة للغاية. هذه هي الأجهزة التي يمكنك دمجها بسهولة مع Arduino وتستخدم للاستخدام المنزلي أيضًا. يستخدمون توربينًا به شفرات تدور أثناء مرور تدفق السوائل من خلاله ، وسيقوم مستشعر تأثير هول بحساب التدفق وفقًا لـ RPMs التي يصل إليها في المنعطف. المشكلة هي أن كونها تطفلية ، فإن لديهم انخفاض ضغط مرتفع ويعانون من تدهور في أجزائهم ، لذلك لن يستمروا طويلاً ...
مع الأخذ في الاعتبار أننا مهتمون بالإلكترونيات ، سنواصل دراسة هذه ...
مقاييس الجريان لاردوينو وأماكن الشراء
الكثير أجهزة قياس التدفق الإلكترونية المستخدمة في الأردوينومثل YF-S201 و YF-S401 و FS300A و FS400A ، لديهم غلاف بلاستيكي ودوار مع شفرات بالداخل ، كما ذكرت من قبل. سيحدد المغناطيس المثبت على الدوار ودورانه ، بتأثير هول ، التدفق أو الاستهلاك الذي يقيسه في جميع الأوقات. سيكون خرج المستشعر عبارة عن موجة مربعة ذات تردد يتناسب مع التدفق من خلاله.
يعتمد ما يسمى بعامل التحويل K بين التردد (هرتز) والتدفق (لتر / دقيقة) على المعلمات التي قدمتها الشركة المصنعة إلى المستشعر ، وبالتالي فهي ليست نفسها للجميع. في ال أوراق البيانات أو معلومات النموذج التي تشتريها ستحتوي على هذه القيم بحيث يمكنك استخدامها في كود Arduino. لن تكون الدقة هي نفسها أيضًا ، على الرغم من أن هذه العناصر في Arduino تميل بشكل عام إلى التفاوت بين 10 ٪ أعلى أو أقل فيما يتعلق بالتدفق الحالي.
الكثير النماذج الموصى بها هي:
- YF-S201: له وصلة لأنبوب 1/4 ، لقياس التدفق بين 0.3 إلى 6 لترات في الدقيقة. الحد الأقصى للضغط الذي تتحمله هو 0.8 ميجا باسكال ، مع درجات حرارة السوائل القصوى تصل إلى 80 درجة مئوية. جهدها يعمل بين 5-18 فولت.
- YF-S401: في هذه الحالة ، يكون الاتصال بالأنبوب 1/2 ″ ، على الرغم من أنه يمكنك دائمًا استخدام المحولات. التدفق الذي يقيسه من 1 إلى 30 لتر / دقيقة ، مع ضغوط تصل إلى 1.75 ميجا باسكال ودرجات حرارة السوائل تصل إلى 80 درجة مئوية. ومع ذلك ، فإن جهدها لا يزال 5-18 فولت.
- FS300A: نفس الجهد ونفس درجة الحرارة القصوى السابقة. في هذه الحالة مع أنابيب 3/4 with ، بحد أقصى لتدفق من 1 إلى 60 لتر / دقيقة وضغط 1.2 ميجا باسكال.
- لا توجد منتجات: يحافظ أيضًا على الجهد ودرجة الحرارة القصوى فيما يتعلق ببدائلها ، كما أن الحد الأقصى للتدفق والضغط هو نفسه بالنسبة لـ FS300A. الشيء الوحيد الذي يختلف هو أن الأنبوب يبلغ 1 بوصة.
يجب عليك اختيار أكثر ما يهمك لمشروعك ...
التكامل مع Arduino: مثال عملي
La اتصال مقياس التدفق الخاص بك بسيط للغاية. عادة ما يكون لديهم 3 كبلات ، أحدهما لجمع البيانات عن التدفق والآخران للطاقة. يمكن توصيل البيانات بمدخل Arduino الذي يناسبك ثم برمجة كود الرسم. والقوى ، واحد إلى 5 فولت والآخر لـ GND ، وهذا سيكون كافيًا لبدء العمل.
ولكن لكي يكون لها نوع من الوظيفة ، عليك أولاً إنشاء ملف كود في Arduino IDE. طرق استخدام مستشعر التدفق هذا كثيرة ، وكذلك طرق برمجته ، على الرغم من وجودك هنا مثال عملي وبسيط حتى تتمكن من البدء في معرفة كيفية عملها:
const int sensorPin = 2; const int measureInterval = 2500; volatile int pulseConter; // Si vas a usar el YF-S201, como en este caso, es 7.5. //Pero si vas a usar otro como el FS300A debes sustituir el valor por 5.5, o 3.5 en el FS400A, etc. const float factorK = 7.5; void ISRCountPulse() { pulseConter++; } float GetFrequency() { pulseConter = 0; interrupts(); delay(measureInterval); noInterrupts(); return (float)pulseConter * 1000 / measureInterval; } void setup() { Serial.begin(9600); attachInterrupt(digitalPinToInterrupt(sensorPin), ISRCountPulse, RISING); } void loop() { // Con esto se obtiene la frecuencia en Hz float frequency = GetFrequency(); // Y con esto se calcula el caudal en litros por minuto float flow_Lmin = frequency / factorK; Serial.print("Frecuencia obtenida: "); Serial.print(frequency, 0); Serial.print(" (Hz)\tCaudal: "); Serial.print(flow_Lmin, 3); Serial.println(" (l/min)"); }
وايضا لو اردت احصل على الاستهلاك، ثم يمكنك استخدام هذا الرمز الآخر ، أو الجمع بين كليهما ... للاستهلاك ، يجب أن يتكامل التدفق المحقق مع الوقت:
const int sensorPin = 2; const int measureInterval = 2500; volatile int pulseConter; //Para el YF-S201 es 7.5, pero recuerda que lo debes modificar al factor k de tu modelo const float factorK = 7.5; float volume = 0; long t0 = 0; void ISRCountPulse() { pulseConter++; } float GetFrequency() { pulseConter = 0; interrupts(); delay(measureInterval); noInterrupts(); return (float)pulseConter * 1000 / measureInterval; } void SumVolume(float dV) { volume += dV / 60 * (millis() - t0) / 1000.0; t0 = millis(); } void setup() { Serial.begin(9600); attachInterrupt(digitalPinToInterrupt(sensorPin), ISRCountPulse, RISING); t0 = millis(); } void loop() { // Obtención del afrecuencia float frequency = GetFrequency(); //Calcular el caudal en litros por minuto float flow_Lmin = frequency / factorK; SumVolume(flow_Lmin); Serial.print(" El caudal es de: "); Serial.print(flow_Lmin, 3); Serial.print(" (l/min)\tConsumo:"); Serial.print(volume, 1); Serial.println(" (L)"); }
أنت تعلم بالفعل أنه بناءً على ما تحتاجه ، يجب عليك تعديل هذا الرمز ، بالإضافة إلى ذلك ، من المهم جدًا وضعه عامل K. من النموذج الذي اشتريته أو لن يأخذ قياسات فعلية. لا تنساه!