قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

   

M.N.E
:: مهندس ::
تاريخ التسجيل: Mar 2012
الدولة: Graz, Austria
المشاركات: 18
نشاط [ M.N.E ]
قوة السمعة:
قديم 11-08-2012, 08:34 PM المشاركة 9   
افتراضي



طيب بس ايش الفرق بينو وبين LM35 ?

اعلانات

hunter27
:: مهندس جيد ::
تاريخ التسجيل: Jul 2012
الدولة: المغرب
المشاركات: 284
نشاط [ hunter27 ]
قوة السمعة:
قديم 11-08-2012, 08:47 PM المشاركة 10   
افتراضي


طيب بس ايش الفرق بينو وبين LM35 ?
حسب ما قرات هو يعمل بkelvin و lm 35 يعمل بcelsius

و lm35 يربط مباشرة مع البيك
اما lm335 فتوضع معه مقاومة


هذا كل ما اعرفه

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )

الصورة الرمزية funky112233
funky112233
:: عضو ذهبي ::
تاريخ التسجيل: Aug 2009
المشاركات: 664
نشاط [ funky112233 ]
قوة السمعة:
قديم 11-08-2012, 09:50 PM المشاركة 11   
افتراضي


بسم الله الرحمن الرحيم

نعم اخى هو يخرج 10 مللى فولت لكل درجة حرارية بمقياس كلفن
وللتحويل الى سليسيوس تطرح من الناتج 237

اى يصبح الكود هكذا

كود:
temp0 = Adc_Read(0);
 temp0 =temp0/2.05;
   temp0=temp0-237;
وبعد كدا بقيت الكود عادى

ياريت تجرب وتعطينا النواتج


hunter27
:: مهندس جيد ::
تاريخ التسجيل: Jul 2012
الدولة: المغرب
المشاركات: 284
نشاط [ hunter27 ]
قوة السمعة:
قديم 12-08-2012, 01:27 AM المشاركة 12   
افتراضي


بسم الله الرحمن الرحيم

نعم اخى هو يخرج 10 مللى فولت لكل درجة حرارية بمقياس كلفن
وللتحويل الى سليسيوس تطرح من الناتج 237

اى يصبح الكود هكذا

كود:
temp0 = Adc_Read(0);
 temp0 =temp0/2.05;
   temp0=temp0-237;
وبعد كدا بقيت الكود عادى

ياريت تجرب وتعطينا النواتج

لقد جربه اخي لكن لم يعمل
يعطي في lcd قيم مخالفة مع التي تكون مكتوبة بجواره (lm335)


الصورة الرمزية funky112233
funky112233
:: عضو ذهبي ::
تاريخ التسجيل: Aug 2009
المشاركات: 664
نشاط [ funky112233 ]
قوة السمعة:
قديم 12-08-2012, 02:11 AM المشاركة 13   
افتراضي


بسم الله الرحمن الرحيم

طيب خلى القسمة على 2.05 زى ما هو
وشيل السطر الى بتطرح فية
وقلى هيقرأ معاك اية على ال LCD


hunter27
:: مهندس جيد ::
تاريخ التسجيل: Jul 2012
الدولة: المغرب
المشاركات: 284
نشاط [ hunter27 ]
قوة السمعة:
قديم 12-08-2012, 03:42 AM المشاركة 14   
افتراضي


بسم الله الرحمن الرحيم

طيب خلى القسمة على 2.05 زى ما هو
وشيل السطر الى بتطرح فية
وقلى هيقرأ معاك اية على ال LCD


شكراا لك اخي لقد جربتها
تعطيني قيمة قريبة

فيما يخص المحرك لقد فعلة كما قلت قلي
عكسة الامرر if و هو يعمل الان شكرا لك بقي لي سؤال واحد و هو
القيمة التي تكون مكتوبة بجوار lm335 هل هي قيمة الحرارة المحلية ب celsius ام ب kelvin


الصورة الرمزية funky112233
funky112233
:: عضو ذهبي ::
تاريخ التسجيل: Aug 2009
المشاركات: 664
نشاط [ funky112233 ]
قوة السمعة:
قديم 12-08-2012, 05:54 AM المشاركة 15   
افتراضي


بسم الله الرحمن الرحيم

واضح ان الفكرة لسة مبانتش

انت بتقولى ان القراءة اصبحت قريبة طيب تمام
يبقى احنا كدة ماشين كويس

وبما انة بيقرا بالكلفن يبقى الى انت قريتة دة كلفن ومش سليسيوس

قدامك حلين
ياما تسيب القراءة زى ما هى ومتغيرش فيها ولا تحولها
وتتعامل مع الدرجة على انها كلفن
يعنى 40 درجة سليسوس
تبقى
40+273 = 313 كيلفن

يعنى هتزود الرقم دة 273 للنتيجه بعد القسمة على 2.05
وكدة تبقى الدرجات صحيحة وتتعامل معاها زى ما كتبت فوق

او انك تحول القيمة الى سليسيوس
وهى الامر الى بنطرح فية - 273

الى هو

كود:
temp0 = Adc_Read(0);
 temp0 =temp0/2.05;
   temp0=temp0-237;
وبكدة هتحصل على الدرجة بالسيلسيوس

وتتعامل معاه عادى يعنى 40 درجة بس

وطبعا على البروتوس
هتلاقى النتيجة مخرفة شوية لانك بتقيس درجة عالية من الكلفين
وفى الحقيقة ان شاء الله تلاقى الكلام مظبوط

ان شاء الله تكون الفكرة اتضحت

جرب وعرفنى


التعديل الأخير تم بواسطة : funky112233 بتاريخ 12-08-2012 الساعة 05:57 AM

الصورة الرمزية kaoutar11
kaoutar11
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2012
الدولة: Algeria
المشاركات: 144
نشاط [ kaoutar11 ]
قوة السمعة:
قديم 13-08-2012, 01:07 AM المشاركة 16   
ha


بسم الله الرحمن الرحيم

السلام عليكم
كيف حالكم يا شباب
اتمنى ان تكون في افضل الاحوال

ارد ان اقوم بعمل مشروع لقياس درجة الحرارة ب 16f877 + lm335z
حيث ادا كانت درحة الحرارة اقل من 40 تشعل led صفراء و ادا كانت فوق 40
تنطفا الصفراء و تشعل led حمراء و يشعل ايضا محرك لتبريد

وتوصلة الى النتائج التالية

كود:
// LCD module connections
sbit LCD_RS at RB2_bit;
sbit LCD_EN at RB3_bit;
sbit LCD_D4 at RB4_bit;
sbit LCD_D5 at RB5_bit;
sbit LCD_D6 at RB6_bit;
sbit LCD_D7 at RB7_bit;
sbit LCD_RS_Direction at TRISB2_bit;
sbit LCD_EN_Direction at TRISB3_bit;
sbit LCD_D4_Direction at TRISB4_bit;
sbit LCD_D5_Direction at TRISB5_bit;
sbit LCD_D6_Direction at TRISB6_bit;
sbit LCD_D7_Direction at TRISB7_bit;
// End LCD module connections

unsigned char text0[4] ;
char temp0;

void main ()
{

trisb.f1=0;
trisb.f0=0;
trisc.f2=1;
Lcd_Init();                        
 Lcd_Cmd(_LCD_CLEAR);
 Lcd_Cmd(_LCD_CURSOR_OFF);
PWM1_Init(500);
 ADC_Init();

aa:
temp0 = Adc_Read(0);  

temp0 =temp0/1.82;

if (temp0>40)

{PWM1_Start();portb.f1=1;portb.f0=0;

PWM1_Set_Duty(180);
}
else {pwm1_stop();portb.f1=0;portb.f0=1;}

ByteToStr(temp0, text0);
Lcd_Out(1,1,text0);
delay_ms (10);


 goto aa;
}

بالنسبة للمحاكات



من اراد ان يحمل المشروع كامل

http://www.mediafire.com/?b0k4kqfey3s9q2d

ملاحطة في ما يخص LCD فانا كنت قد وضعتها فقط لقراءة قيمة درجة الحرارة اما في المشروع فلن استعملها (لاني لا املكها http://www.qariya.com/vb/images/smilies/hah.gif )

المشكلة
الاول هو اني لا اعرف كيف استعمل lm335 كيف احول من حرارة الى جهد
لقد راية من يضع temp0 =temp0/2.05 لكن هدا بالنسبة ل lm35

و المشكل الثاني هو اني عندما طبقة المشروع في الواقع حدث معي عكس ما كنت اريده اي عندما تكون درجة الحرارة اقل من 40 يشتغل المحرك و led الحمراء
و عندما تكون الحرارة اكتر من 40 يتطفأ المحرك و تشتعل led الصفراء

ارجو المساعدة في حل هذا المشكل
و جزاكم الله خيراا
موضوع رائع أخي لقد كنت ابحث عن هذا الموضوع يا ريت لو قمت بشرح الكود لنا من فضلك مشكور



الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 07:52 AM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)