الخميس، 30 مايو، 2013

حساس التيار الكهربائي Current Sensor ACS712

حساس التيار الكهربائي ACS712

Current sensor ACS712 



في كثير من التطبيقات العملية في الدوائر الكهربائية , نحتاج لمعرفة التيار الكهربائي المار في الدارة الكهربائية , في البداية التيار الكهربائي يعرف بعدد الشحنات الكهربائية المارة في موصل خلال زمن قدره 1 ثانية .

يستخدم جهاز الأميتر Ammeter لقياس التيار الكهربائي , حيث يوصل الأميتر على التوالي في الدارة الكهربائية لمعرفة التيار المار في الدارة .

و يوجد هنالك نوعان من هذا الجهاز , فهنالك الرقمي و التناظري 



حديثي اليوم سيتناول الحساس ACS712 الذي يُعد تطبيقاً مهماً على نظرية ال Hall effect .


يتميز هذا الحساس بأن له عزل كهربائي بين دارة التحكم و الدارة التي نريد قياس التيار عندها .
 مجال واسع من التيارات التي يمكننا قياسها بواسطته"تصل لغاية 30 امبير ! " .
مقاومة الدخل متدنية , مما يجعل الطاقة المتبددة خلاله قليلة .
قيمة مقاومة المخرج Vout تكون كنسبة لفولتية التغذية , مما يسهل الحسابات في هذا الحساس .












هذا الجدول يوضح حساسية هذا الحساس , حيث يعطي هذا الحساس على مخرجه فولتية تساوي 185ملي فولت\ امبير " للنوع الذي يقيس 5 امبير كحد اقصى " يمر خلاله , على سبيل المثال , لو كانت الفولتية على المخرج تساوي 200 ملي فولت نعرف وقتها ان التيار المار في الدارة هو :

I=(200mV)/(185mV/A) = 1.08 A

 و في وقت لاحق من هذا المقال سأتحدث عن الحساب الدقيق للفولتية التي تظهر على مخرج هذا الحساس .


والقيم القياسية التي تلزمنا للتعامل مع هذا الحساس في هذا الجدول 

فولتية التغذية Vcc لهذه القطعة هي 5 فولت , و في حالة عدم مرور تيار في هذا الحساس  Zero current Output voltage تساوي Vcc*0.5 اي كمثال اذا كانت فولتية التغذية 5 فولت , فإن الفولتية الخرج تساوي  
Vout= Vcc*0.5 = 5*.5 = 2.5 V
اذن هذه الفولتية هي الفولتية المرجعية في الحسابات .

لنأخذ مثالاً : كانت قراءة الخرج  للحساس ACS712-05BT هي  3.2 فولت ,فولتية التغذية VCC=5V فإن التيار المار في الدارة هو :

I =  (Vout - 2.5) /Sensitivity =(3.2-2.5)/.185=3.78A

ACS712 Module sparkFun
يمكن قياس هذه الفولتية باستخدام الفولتميتر على المخرج .

ما سنحتاجه لتنفيذ تجربة اليوم :

1) بطاقة اردوينو 
2) الحساس ACS712-BT05 الموديول 5A max
3) اسلاك توصيل Solderless Jumper
4)BreadBoard
5) حمل كهربائي " محرك DC كمثال "

طريقة التوصيل :
يوصل الحمل مع هذا الحساس على التوالي كما في الشكلين ادناه 





البرمجة :

هذا الكود ادناه يبين الكود المستخدم في البرمجة 
//This program is free software: you can redistribute it and/or modify
//it under the terms of the GNU General Public License as published by
//the Free Software Foundation, either version 3 of the License, or
//(at your option) any later version.
//This program is distributed in the hope that it will be useful,
//but WITHOUT ANY WARRANTY; without even the implied warranty of
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//You should have received a copy of the GNU General Public License
// along with this program. If not, see http://www.gnu.org/licenses/

//****************************************************
//Name :Mohannad Rawashdeh .
//Date "25/5/2013 1:00pm
// Description: this code for Current sensor ACS712 5 Amper
//connect Vout of the sensor to A0 
// Programmed for  http://www.genotronex.com                 
//****************************************************************

int Reading=0;
float volt=0.00;
float Sum=0.00;
float current =0.00;
void setup(){
 Serial.begin(9600);
 pinMode (A0,INPUT); 
}
void loop(){
  Sum=0;
  for(int i=0;i<100;i++){
  Reading=analogRead(A0);
  delay(10);
  volt=Reading*4.86E-3;
  Sum=Sum+volt;
  }
  volt=Sum/100;
  current=(( volt-2.47)/0.185);
//  current=current+0.03 ;
  Serial.print("Current= ");
  Serial.print(current);
  Serial.println(" A ");
  
}

في خلال التجارب التي قمت بها على هذا الحساس , هناك بعض الملاحظات التي يمكن لأي مستخدم لهذا الحساس أن يلاحظها , حساسية هذا الحساس ذات مجال صغير لا يتعدى مجال التغيير 185 ملي فولت لكل أمبير , و في المتحكم ATMEGA328 الموجود في اغلب بطاقات الأردوينو , نجد بأن المبدل ADC هو سعته 10Bit اي يقرأ من 0-1023 , بحساسية قراءة مقدارها :
S= (Vcc-0)/(1024) = 5/1024=4.88E-3V/reading
و لمدى قراءة هذا الحساس , فان القراءة التي سيقرأها المبدل لقيمة تيار يتراوح بين 0 - 1 أمبير هو  :

Analog read= 0.185/4.88E-3=38 ! 

بمعنى ان التغيير من 0 - 1 امبير سيأقرأه المتحكم ما بين (511-549 ) و هو يعد قليل اذا اردنا قياس القيم الصغيرة للتيار بدقة عالية .

أمر أخير هو الأنتباه إلى أن Zero current Output voltage  فولتية الخرج في حالة عدم مرور تيار تساوي نصف فولتية التغذية , فاذا كانت فولتية التغذية 4.9 فولت , فإن فولتية الخرج في حالة عدم مرور تيار تساوي 2.45 فولت , اذاً تغيير فولتية المصدر يؤثر على دقة البرنامج المكتوب .

في النهاية يتمتع هذا الحساس بمزايا عديدة , من العزل الكهربائي الى سهولة المعايرة و بساطة الحسابات المطلوبة و سهولة التركيب , و حساس ممتاز لقياس التيارات لغاية 30 أمبير , و من عيوبه هو مدى الحساسية القليل لكل امبير الذي يقلل الدقة التي يمكننا ان نستخرجها من هذا الحساس .


0 التعليقات :

إرسال تعليق

 
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.