منتديات الهندسة الكهربية والإلكترونية والميكاترونكس والكومبيوتر
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

فكرة إنشاء ثرموستات باستخدام المقاومة السالبة NTC والمحول ADC ووحدة العرض LCD مع المترجم CCS C

اذهب الى الأسفل

فكرة إنشاء ثرموستات باستخدام المقاومة السالبة NTC والمحول ADC ووحدة العرض LCD مع المترجم CCS C  Empty فكرة إنشاء ثرموستات باستخدام المقاومة السالبة NTC والمحول ADC ووحدة العرض LCD مع المترجم CCS C

مُساهمة من طرف Admin السبت مايو 02, 2015 10:30 am

فكرة إنشاء ثرموستات باستخدام المقاومة السالبة NTC والمحول ADC ووحدة العرض LCD مع المترجم CCS C
المقاومة السالبة المستخدم من النوع NTC / NTSA0WB203 وهذا النوع موجود فى برنامج ISIS .
هذه المقاومة لها معامل أو ثابت يسمى بيتا “β = 4050” ، ولها مقاومة قيمتها 20 كيلوأوم عند درجة حرارة 25 درجة مئوية .

الدائرة الكهربية :
فكرة إنشاء ثرموستات باستخدام المقاومة السالبة NTC والمحول ADC ووحدة العرض LCD مع المترجم CCS C  123

يتم تشكيل مقسم جهد من مصدر جهد (بطارية ، على سبيل المثال ) والمقاومة السالبة NTC ومقاومة ثابتة R1 بقية 10 كيلوأوم ، وحساب درجة الحرارة من المعادلات التالية :

فكرة إنشاء ثرموستات باستخدام المقاومة السالبة NTC والمحول ADC ووحدة العرض LCD مع المترجم CCS C  220


الكود:

VT=VB * RT/R1+RT
VB*RT = VT*R1 + VT * RT
VT*R1= RT(VB-VT)
RT = VT*R1/(VB-VT) = 10000VT/(5-VT)

البرنامج :


الكود:


#include "16f877A.h"
#device adc=10
#use delay(clock=4000000)
#include <math.h>                //Needed for mathematical calculations
#include <lcd.c>

void main() {

  float tv,tr,temp,y;                //Equation variables
  int16 value;
 
  lcd_init();
 
  setup_port_a( ALL_ANALOG );
  setup_adc( ADC_CLOCK_INTERNAL );
  set_adc_channel( 0 );
  delay_us(10);
 
  do {
      value = Read_ADC();
     
      tv = 5.0 * value / 1024.0;
     
      tr = tv * 10000.0 / (5.0 - tv);
     
      y = log(tr/20000.0);
      y = (1.0/298.15) + (y *(1.0/4050.0));
     
      temp=1.0/y;
      temp = temp -273.15;
     
      printf(lcd_putc,"\nT = %04.2fC", temp);
  } while (TRUE);
}


طريقة التنفيذ وحل المعادلات :
الخطوة الأولى :
تحويل نتيجة التحويل من تناظرى إلى رقمى ADC إلى الجهد المعبر عن درجة الحرارة tv بضرب القراءةvalue فى “5” (جهد المرجع) والقسمة على أقصى قيمة تحويل “1024” أو مباشرة بما يعرف بدقة المحول 0.0048828125 5/1024 = لكننا سوف نترك ذلك للمترجم يقوم به نيابة عنا :

الكود:


value = Read_ADC();
 tv = 5.0 * value / 1024.0;


ملحوظة :
تم تعريف المتغير value بالنوع int16 ليستوعب القيمة 1024 ، فى حين تم تعريف متغير نتيجة عملية التحويل السابقة بالنوع float حتى يستوعب النتيجة والتى تحتوى على عدد صحيح كسر عشرى .

الخطوة الثانية :
إيجاد قيمة المقاومة المعتمدة على الحرارة tr بمعلومية الجهد المعبر عن درجة حرارة tv كما هو موضح بالمعادلة :

الكود:

RT = 10000VT/(5-VT)

كما يلى :

الكود:

tr = tv * 10000.0 / (5.0 – tv) ;


الخطوة الثالثة :
إيجاد درجة الحرارة بمعلومية المقاومة المعتمدة على الحرارة tr كما هو موضح بالمعادلة :

فكرة إنشاء ثرموستات باستخدام المقاومة السالبة NTC والمحول ADC ووحدة العرض LCD مع المترجم CCS C  316

حل هذه المعادلة يتم على مراحل :
إيجاد قيمة اللوغاريتم :

الكود:

y = log(tr / 20000.0);

ملحوظة :
تم إدراج مكتبة الدوال الرياضية فى مقدمة البرنامج لحل هذه المعادلة :

الكود:

#include <math.h>

إيجاد مقام الحد الأول بقسمة y على 4050 وجمع الكسر 1/298.15 كما يلى :
y = (1.0/289.15) + (y * ( 1.0 / 4050.0) ) ;
إيجاد نتيجة الحد الأول :

الكود:

temp = 1.0 / y ;

أخيرا أيجاد درجة الحرارة بطرح 273.15 من الحد الأول :


الكود:

temp = temp – 273.15 ;


عرض النتيجة على شاشة LCD :

الكود:

printf(lcd_putc , “\nT = %04.2fC”, temp);

Admin
Admin

عدد المساهمات : 1194
تاريخ التسجيل : 28/01/2014

https://fathallaabdelaziz.forumarabia.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

- مواضيع مماثلة
» تدريبات على وحدات العرض السفن سجمنت 7-Segmentمع المترجم CCS C التدريب الأول :
» تدريب : برنامج إنشاء ساعة بسيطة قابلة للإعداد (الضبط) باستخدام وحدة العرض LCD :
» التدريب الثالث : إنشاء عداد بمفتاح ضاعط أو بحساس لعد الأشياء من “0” إلى “99” باستخدم وحدتى عرض سفن سيجمنت مع استخدام ترانزستورات ومع المترجم CCS C .
» مشروع متحكم رقمى فى درجة الحرارة السالبة والموجبة بالحساس DS18B20 والميكروكونترولر 16F628 والسفن سيجمنت مع المترجم CCS C :
» تدريب : برنامج بسيط لعداد تصاعدى تنازلى باستخدام وحدة العرض LCD :

 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى