ORP Redox Sensor Water Quality Testing

ORP Redox Potentiometer, Modular Redox Sensor, Water Quality Testing for Arduino


350 ₪

الناشر: ⚡ Electronic Store ⚡

القسم: Sensors

تاريخ النشر: 2026-01-26





1. ما هو حساس الـ ORP؟

هي اختصار لـ Oxidation-Reduction Potential (جهد الأكسدة والاختزال). ● الوظيفة: يقيس قدرة السائل على أكسدة أو اختزال المواد الأخرى. ● الأهمية: يُستخدم لمعرفة "نظافة" الماء. القيم العالية (الموجبة) تعني أن الماء يحتوي على مواد مطهرة قوية (مثل الكلور) وهو قادر على قتل ● البكتيريا. القيم المنخفضة أو السالبة تعني أن الماء "مختزل" وقد يكون ملوثاً أو يحتوي على مواد عضوية بكثرة.



2. المواصفات الفنية (Specifications)

التالي: ● جهد التشغيل: 5.00 فولت (يفضل مصدر طاقة خارجي مستقر) ● نطاق القياس: من -2000 ميلي فولت إلى +2000 ميلي فولت ● درجة حرارة العمل: 5 إلى 70 درجة مئوية ● الدقة: ±10 ميلي فولت (عند درجة حرارة 25 مئوية) ● وقت الاستجابة: أقل من 20 ثانية ● نوع الموصل: BNC (الوصلة الدائرية المعروفة للكابلات)



3. محتويات النظام (Hardware Components)

التالي: ● القطب (ORP Probe): وهو الجزء الذي يُغمس في الماء، وينتهي بوصلة BNC. ● لوحة المعالجة (Circuit Board): تحول الإشارة الضعيفة من القطب إلى إشارة تماثلية (Analog) يفهمها الأردوينو. ● كابل التوصيل: للربط بين اللوحة ومنفذ الـ Analog في الأردوينو.



4. طريقة التوصيل بالـ Arduino

يتم التوصيل عبر 3 أسلاك: ◄ VCC: يوصل بـ 5 فولت في الأردوينو. ◄ GND: يوصل بالأرضي (GND). ◄ Signal (A): يوصل بالمنفذ التماثلي (مثلاً A1 كما في الكود).



5. شرح الكود البرمجي والمنطق الحسابي

الكود يقوم بثلاث عمليات أساسية: ● أ. أخذ العينات (Sampling): بدل أن يأخذ قراءة واحدة، يأخذ 100 قراءة (كل 20 ميلي ثانية قراءة واحدة) ويخزنها في مصفوفة. هذا يمنع القفزات المفاجئة في الأرقام بسبب التشويش الكهربائي. ● ب. تنقية البيانات (Filtering): يستخدم دالة avergearray التي تقوم بـ:ترتيب القراءات.حذف أعلى قيمة وأقل قيمة.حساب المتوسط للبقية. ● ج. التحويل إلى mV (Equation): المعادلة المستخدمة في الكود هي معادلة خطية تحول الجهد الكهربائي الخارج من اللوحة إلى قيمة ORP حقيقية orpValue = ((30 * (double)VOLTAGE * 1000) - (75 * avergearray(orpArray, ArrayLenth) * VOLTAGE * 1000 / 1024)) / 75 - OFFSET



code

code
نسخ
اقتباس
عرض
تنزيل
	
								
#define VOLTAGE 5.00 //system voltage #define OFFSET 0 //zero drift voltage #define LED 13 //operating instructions double orpValue; #define ArrayLenth 100 //times of collection #define orpPin 0 //orp meter output,connect to Arduino controller ADC pin int orpArray[ArrayLenth]; int orpArrayIndex=0; double avergearray(int* arr, int number){ int i; int max,min; double avg; long amount=0; if(number<=0){ printf("Error number for the array to avraging!/n"); return 0; } if(number<5){ //less than 5, calculated directly statistics for(i=0;i<number;i++){ amount+=arr[i]; } avg = amount/number; return avg; }else{ if(arr[0]<arr[1]){ min = arr[0];max=arr[1]; } else{ min=arr[1];max=arr[0]; } for(i=2;i<number;i++){ if(arr[i]<min){ amount+=min; //arr<min min=arr[i]; }else { if(arr[i]>max){ amount+=max; //arr>max max=arr[i]; }else{ amount+=arr[i]; //min<=arr<=max } }//if }//for avg = (double)amount/(number-2); }//if return avg; } void setup(void) { Serial.begin(9600); pinMode(LED,OUTPUT); } void loop(void) { static unsigned long orpTimer=millis(); //analog sampling interval static unsigned long printTime=millis(); if(millis() >= orpTimer) { orpTimer=millis()+20; orpArray[orpArrayIndex++]=analogRead(orpPin); //read an analog value every 20ms if (orpArrayIndex==ArrayLenth) { orpArrayIndex=0; } orpValue=((30*(double)VOLTAGE*1000)-(75*avergearray(orpArray, ArrayLenth)*VOLTAGE*1000/1024))/75-OFFSET; //convert the analog value to orp according the circuit } if(millis() >= printTime) //Every 800 milliseconds, print a numerical, convert the state of the LED indicator { printTime=millis()+800; Serial.print("ORP: "); Serial.print((int)orpValue); Serial.println("mV"); digitalWrite(LED,1-digitalRead(LED)); } }


6. إجراءات المعايرة (Calibration Step-by-Step)

هذه أهم عملية لضمان دقة الحساس: 1- قم بتشغيل الأردوينو مع الكود البرمجي (اجعل الـ OFFSET يساوي 0) 2- افصل القطب (البروب) من اللوحة. 3- اضغط مع الاستمرار على زر المعايرة الموجود على اللوحة الصغيرة. 4- راقب شاشة الكمبيوتر (Serial Monitor). ستظهر لك قيمة (مثلاً: 8mV). 5- خذ هذا الرقم وضعه في الكود مكان الصفر: #define OFFSET 8. 6- أعد رفع الكود للأردوينو. الآن الجهاز "صفر" نفسه داخلياً.



7. تعليمات الصيانة والسلامة (مهم جداً)

انتبه انتبه انتباه !!!!!! ▼ مصدر الطاقة: لا تعتمد على USB الكمبيوتر فقط إذا كنت تريد دقة عالية؛ استخدم محولاً خارجياً 5 فولت. ▼ زر المعايرة: حذارِ من الضغط عليه والقطب (Probe) متصل، فقد يتلف الدائرة الحساسة. ▼ التنظيف: بعد كل قياس، اغسل رأس القطب بماء مقطر. ▼ التخزين: لا تترك رأس القطب يجف أبداً. يجب أن يبقى دائماً في غطاء الحماية الذي يحتوي على سائل التخزين (KCL).









عرض السلة (تأكيد الشراء) افراغ السلة
اتمام الشراء