منظم تدفق الغاز أرخص 5 مرات من الحلول التجارية

صورة

تم تصميم وحدات التحكم في تدفق الغاز (RRG) للحفاظ على معدل تدفق يحدده المستخدم. تُستخدم مجموعات RWG في مختبرات الصناعة والبحوث لتنظيم إمدادات الغاز من الأسطوانات والطرق السريعة. أجهزة Eltochpribor و MKS و Bronkhorst وغيرها ممثلة في السوق ، وتبلغ تكلفة هذه الأجهزة 1000-2500 دولار أمريكي. الهدف من هذا العمل هو إنشاء منظم لتدفق الغاز من المكونات التي يمكن الوصول إليها بسهولة أكبر. الفكرة هي تنظيم نظام تغذية مرتدة يتضمن صمامًا نسبيًا ومقياس تدفق. فيما يلي وصف موجز للأجهزة والبرامج الخاصة بالنظام ، والتي تسمح بإعادة إنتاجه لكل من يستخدم RRG في أنشطته. جميع رموز المصدر متوفرة على GitHub .

استخدمنا منتجات SMC وصمامات سلسلة PVQ وعدادات التدفق من سلسلة PFM5 بدون إشارة. تم تجميع مجموعتي RWG مع نطاقات تدفق قابلة للتعديل تبلغ 0.2-5 لتر / دقيقة (PVQ13 + PFM510) و1-50 لتر / دقيقة (PVQ31 + PFM550) ، كما هو موضح في الشكل. يمكن تقدير تكلفة منظم تدفق واحد من فوق 100 دولار أمريكي (صمام PVQ31) + 80 دولارًا أمريكيًا (متر PFM5) + 20 دولارًا أمريكيًا (وحدة تحكم دقيقة Arduino Nano وإمدادات الطاقة ومكونات الراديو) = 200 دولارًا أمريكيًا. ينطبق كل ما هو موضح أدناه على RWG 1-50 لتر / دقيقة. إنشاء منظم 0.2-5 لتر / دقيقة ، بالإضافة إلى أي منظمات أخرى من مكونات مماثلة يتبع نفس المخطط ، ولكن قد يختلف في التفاصيل الثانوية.

المعدات


صورة

الأجهزة معروضة في الشكل وتتكون من:

  1. الصمام النسبي PVQ31
  2. مقياس التدفق PFM550
  3. منقي
  4. وحدة تزويد الطاقة (24 فولت ، 1 أمبير)
  5. دوائر التحكم الحالية
  6. متحكم اردوينو نانو ومخططات الطاقة الخاصة به

صورة

يظهر مخطط التوصيل الكهربائي للمكونات في الشكل. لتشغيل الدائرة ، يتم استخدام مصدر تيار مستمر 24 فولت ، 1 أمبير ، وهو أكثر من كافٍ ، نظرًا لاستهلاك الصمام أقل من 200 مللي أمبير ومتر أقل من 35 مللي أمبير. يتم التحكم في الصمامات التناسبية سلسلة PVQ الحالية. وفقًا للتوثيق ، لا يوصى بالتحكم فيها عن طريق التحكم في الجهد. يمكن تنفيذ الرقابة الحالية باستخدام الدائرة التي نوقشت هنا ، هنا وبمزيد من التفصيل هنا . يتم تمييز دائرة التحكم الحالية في الدائرة الكهربائية العامة (الشكل 3) بواسطة مستطيل متقطع. يتم توصيل صمامات سلسلة PVQ بواسطة سلكين للطاقة: أحمر - DC + ، أسود - DC-.

يتم تنظيم القوة الحالية باستخدام إشارة PWM التي ينتجها الدبوس التناظري لجهاز التحكم الدقيق. بشكل افتراضي ، تقوم وحدات التحكم المستندة إلى ATmega328 (Arduino UNO / Nano / Pro Mini) بإنشاء إشارة PWM 8 بت (0-255) بتردد 488 أو 976 هرتز ، اعتمادًا على الدبوس. يقلل عرض إشارة PWM المنخفض من دقة التحكم في الصمام. التردد المنخفض يؤدي إلى ضجيجها. يمكن زيادة هذه القيم برمجيًا إلى 10 بتات (0-1023) و 15.6 كيلوهرتز على التوالي. استخدمنا تردد 7.8 كيلو هرتز. وصف الأوامر التي تحتاج إلى إدراجها في setup()البرامج الثابتة اردوينو وظيفة معينة هنا و هنا .

تحتوي مقاييس التدفق من سلسلة PFM5 على سلكين للإشارة (أسود - خرج تناظري ، أبيض - إعداد وقت الاستجابة (غير مستخدم)) وأسلاك طاقة (بني - DC + ، أزرق - DC-). يعمل بمصدر تيار مستمر بجهد 24 فولت ، ويعطي مقياس التدفق إشارة تناظرية في النطاق من 1-5 فولت. وتعادل قيمة 1 فولت معدل تدفق غاز صفر ، 5 فولت - الحد الأقصى لهذا العداد. وفقًا للتوثيق ، فإن العلاقة بين التدفق والجهد خطية. وفي الوقت نفسه ، يبدو من المفيد معايرة مقياس التدفق بانتظام. يتم استقبال الإشارة التناظرية من عداد التدفق (السلك الأسود) بواسطة دبوس تناظري Arduino 10 بت (0-1023) للمعالجة والعرض. تم تصميم السلك الأبيض لتعيين وقت الاستجابة ، ونحن لا نستخدمه. في هذه الحالة ، يكون زمن الاستجابة 50 مللي ثانية.

يجب أن يتم تشغيل لوحة Arduino من خلال دبوس 5V ، ويجب ألا يتجاوز جهد الإمداد 5.5 V. يمكن توفير هذه الطاقة من صمام PSU وعداد التدفق من خلال مثبت L7805 ، كما هو موضح في الرسم التخطيطي (الشكل 3). على الأرجح ستحتاج إلى مشعاع على المثبت. الطاقة من منفذ USB للكمبيوتر المستخدم أثناء الاختبار (الشكل 2) غير مرغوب فيها لأن الجهد المرجعي في هذه الحالة غير مستقر عند استخدام ADC. لمزيد من المعلومات حول طاقة اللوحة ، انظر هنا .

جزء
البرنامج يتكون جزء البرنامج من البرنامج الثابت لوحدة التحكم الدقيقة Arduino Nano وواجهة مستخدم رسومية تعمل على جهاز الكمبيوتر.

يقوم البرنامج الذي يتم تنزيله إلى وحدة التحكم الدقيقة دوريًا بتنفيذ الإجراءات التالية:

  1. ,
  2. ,
  3. , -

يمكن أن يعمل النظام في الوضع اليدوي والتلقائي. أثناء التشغيل اليدوي ، يجب إرسال قيمة فتحة الصمام المطلوبة ، والتي يتم التعبير عنها بواسطة متغير valve(0 <= valve<1023) ، إلى المنفذ التسلسلي . تحدد قيمة هذا المتغير إشغال إشارة PWM ، التي يتم إرسالها من خلال الإخراج التناظري لجهاز التحكم الدقيق إلى دائرة التحكم الحالية وأمر الصمام النسبي analogWrite(valvepin, valve). بعد الفتح ، يظل الصمام في وضع الضبط حتى يتم استلام أمر جديد عبر المنفذ التسلسلي.

للتبديل إلى التشغيل التلقائي ، يجب إرسال رقم سالب إلى المنفذ التسلسلي -targetflow. قيمة متغيرةtargetflowتقع في النطاق 0-1023 وتحدد معدل تدفق الغاز الذي يجب الحفاظ عليه. يتم تحديد معدل تدفق الغاز الفعلي من خلال قراءات مقياس التدفق ، التي تتم قراءتها من الإدخال التناظري لوحدة التحكم الدقيقة بأمر realflow = analogRead(fmpin)(0 <= realflow<1023). في الوضع التلقائي، يسعى النظام للحفاظ على المساواة بين targetflowو realflowالسيطرة على صمام النسبي. يتم حساب قيمة فتح الصمام باستخدام جهاز التحكم التناسبي للتكامل التفاضلي (PID). يمكنك أن تقرأ عن PID تحكم هنا ، هنا و هنا . يتم استخدام مكتبة GyverPID لتنفيذ وحدة التحكم .مع بعض التغييرات والإضافات. منذ تعديل المكتبة ، استخدم المكتبة المرفقة بهذا الرمز ، ولم يتم تنزيلها من الرابط أعلاه.

لاستخدام جهاز التحكم PID ، من الضروري تحديد معاملات المكونات النسبية Kpوالتكاملية Kiوالتفاضلية Kd، وكذلك وقت التكرار dtpid. يجب تحديد قيمة المتغير dtpidاعتمادًا على القصور الذاتي للنظام. كلما زاد خمول النظام ، كلما كان يجب أن يكون أكثر dtpid. بناءً على التصنيفات ونتائج الاختبار للجهاز المعني ، اخترنا القيم dtpid= 100-330 مللي ثانية. معاملات Kp، Ki، Kdويتم اختيار في قيمة ثابتةdtpidوتعتمد بشكل كبير على النظام. توصيات بشأن اختيار معاملات يمكن العثور هنا ، هنا و هنا .

لذا ، فإن الخوارزمية التي يتم تنفيذها دوريًا بواسطة وحدة التحكم الدقيقة هي كما يلي:

if(    )
	   inp
	if(inp >= 0 && inp < 1023)
		  
		    inp
	if(inp <= 0 && inp >= -1023)
		  
		     -inp 
if(  &&      dtpid )
	      -
	    
if(     dt )
	   
	   
	   

تمت كتابة واجهة المستخدم الرسومية في Python باستخدام إطار الرسوم البيانية PyQt. تم إنشاء التصميم في برنامج Qt Designer ، وبعد ذلك تم تحويل رمز ملف .ui إلى ملف Python. للحصول على مقدمة لتطوير واجهة المستخدم الرسومية واستخدام باي كيوت، انظر هنا و هنا .

تتفاعل الواجهة الرسومية مع البرامج الثابتة Arduino عبر المنفذ التسلسلي باستخدام المكتبة pyserial. يقوم برنامج بايثون بما يلي:

  1. , ,
  2. 0-1023, ,
  3. .3
  4. , ( 0-1023)
  5. .5

يتم استعارة رمز الاتصال بالمنفذ التسلسلي من هنا .

تم تصميم الوحدة للنقل من وحدات المستخدم إلى النطاق 0-1023 units.py. هذه الوحدة تجعل من السهل إضافة وحدات جديدة. مطلوب من المستخدم الإشارة إلى اسم الوحدات وصيغة التحويل من 0-1023 إلى الوحدات الجديدة. يتم تزويد الوحدة بتعليقات مفصلة.

تتم قراءة البيانات المستلمة من مقياس التدفق والإخراج بواسطة البرنامج الثابت لوحدة التحكم الدقيقة إلى المنفذ التسلسلي من المنفذ بواسطة برنامج Python ، وبعد تحويل الوحدات ، يتم عرضها في شكل نص وصورة. تستخدم المكتبة لرسم رسم بياني للاستهلاك الحالي pyqtgraph.

النتائج


لبدء العمل مع RRG ، تحتاج إلى: وميض وحدة التحكم الدقيقة ، وتوصيل الطاقة ، وتشغيل برنامج Python ، وإنشاء اتصال بالمنفذ التسلسلي. بعد ذلك ، يمكن للمستخدم تحديد وضع التشغيل (يدوي أو تلقائي) وتعيين قيمة فتح الصمام المطلوبة في وضع التشغيل اليدوي أو قيمة التدفق المدعومة في الوضع التلقائي. يتم عرض معدل تدفق الغاز الحالي في الحقل المقابل ويتم عرضه على الرسم البياني. يتم تحديث الرسم البياني دوريًا ، بعد الوصول إلى العدد المحدد من النقاط ، يتم مسح الرسم البياني ويبدأ الرسم مرة أخرى. يمكن للمستخدم تحديد الوحدات المستخدمة.

صورة
يوضح الشكل مظهر واجهة المستخدم الرسومية ورسمًا بيانيًا لمعدل تدفق الغاز الذي تم الحصول عليه في الوضع التلقائي ويوضح التبديل بين RGG بين القيم المختلفة لمعدل التدفق المدعوم. النتائج معطاة بوحدات من 0-1023.

لتوضيح إمكانات الحفاظ على معدل تدفق غاز ثابت ، أخذنا في الاعتبار الحالة عندما يكون معدل التدفق عند فتح الصمام النسبي بقيمة ثابتة "يطفو" ، كما هو موضح على الجانب الأيسر من الرسم البياني (× <950) في الشكل أدناه. يمكن رؤية نتيجة عملية الصيانة التلقائية لمعدل التدفق المحدد على الجانب الأيمن من الرسم البياني (×> 1000). أظهرت الاختبارات أن الانحراف عن معدل التدفق المحدد في وضع التعليق التلقائي لا يزيد عن 2٪.

صورة

ملاحظات


استخدام متحكم Arduino Nano غير ضروري حيث أن جزءًا صغيرًا فقط من دبابيسها متضمن. من ناحية أخرى ، سيكون من الأفضل استخدام وحدات التحكم الدقيقة ذات سعة بت أكبر للمدخلات / المخرجات التناظرية لزيادة دقة القياس والضبط. عند تغيير نوع وحدة التحكم الدقيقة ، قد يكون من الضروري تنفيذ وحدة تحكم PID الخاصة بك ؛ لا ينبغي أن يسبب هذا صعوبات نظرًا لأن الخوارزمية بسيطة.

في مرحلة التطوير ، تم تجميع الدائرة الكهربائية على لوحة توصيل (انظر الشكل 2). لمزيد من الاستخدام ، من الضروري لحام الدائرة ووضعها في السكن.

مؤلفو المقالة ليسوا مهندسين إلكترونيين ولا مبرمجين ، لذلك ، نرحب بنصائح بناءة للتحسين.

مواد إضافية


تتوفر رموز المصدر لبرامج Arduino الثابتة وبرامج Python ، بالإضافة إلى وثائق عدادات التدفق والصمامات النسبية المستخدمة على GitHub

شكر وتقدير


نحن ممتنون لزملائنا لفكرة النظام المنفذ في هذا العمل. يشارك AlexGyver والمستخدمين الآخرين تجاربهم بسخاء للحصول على المعلومات التي استخدمناها في عملنا.

الموجودات


يتيح لك استخدام نظام التغذية الراجعة الذي يتكون من صمام متناسب ومقياس تدفق وجهاز تحكم دقيق عمل RRG للحفاظ على تدفق غاز معين. أظهرت الاختبارات انحرافًا عن معدل التدفق المطلوب في أقل من 2٪. كانت تكلفة النظام أقل من 200 دولار أمريكي. أظهر النموذج الأولي المجمع قابلية التشغيل في مجموعة واسعة من الظروف. قد يتطلب الاستخدام الإضافي صقلًا ، بما في ذلك توصيل الأسلاك ، وتصنيع العلبة ، وما إلى ذلك.

Source: https://habr.com/ru/post/undefined/


All Articles