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

   

low voice
:: مهندس ::
تاريخ التسجيل: Mar 2013
المشاركات: 9
نشاط [ low voice ]
قوة السمعة:
قديم 13-03-2013, 05:23 PM المشاركة 169   
ha



بعد إذن المهندس باسم ..أعتقد التغيير في قيمة المتغير rtemp ، هنا :
http://upload.qariya.info/images/qar...f9b72804bd.png

هكذا نعمل في فلوكود ولا أظن الامر مختلف في الميكروسي .
مرحبا اني عندي مشروع التحكم في درجات الحراره وعندي بعض المشاكل اكو من يسمعني ويشرفني بالرد على اسئلتي ؟

اعلانات

low voice
:: مهندس ::
تاريخ التسجيل: Mar 2013
المشاركات: 9
نشاط [ low voice ]
قوة السمعة:
قديم 13-03-2013, 05:26 PM المشاركة 170   
افتراضي


ممكن احد يساعتنى انا عملت الدائرة وشغالة ذى الفول بس درجة حرارة السينسور قراءة عشوائية وانا غيرت السينسور مافيش حاجة حصلت ممكن احد يساعدنى انا غيرت منافذ adc كلها من الميكروسى مافيش فايدة ممكن الرد السريع بالله عليكم

Read more: http://www.qariya.com/vb/showthread....#ixzz2IPSkHhp8
ممكن اجوبه على اسئلتي ررررررررررررررررجاءااااااااااااااااااااااا

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

low voice
:: مهندس ::
تاريخ التسجيل: Mar 2013
المشاركات: 9
نشاط [ low voice ]
قوة السمعة:
قديم 13-03-2013, 05:31 PM المشاركة 171   
افتراضي


بعد إذن المهندس باسم ..أعتقد التغيير في قيمة المتغير rtemp ، هنا :
http://upload.qariya.info/images/qar...f9b72804bd.png

هكذا نعمل في فلوكود ولا أظن الامر مختلف في الميكروسي .
Tico س ع ممكن اخي اتجاوبني على اسئلتي


low voice
:: مهندس ::
تاريخ التسجيل: Mar 2013
المشاركات: 9
نشاط [ low voice ]
قوة السمعة:
قديم 13-03-2013, 05:40 PM المشاركة 172   
افتراضي


unsigned short kp, cnt, oldstate = 0;
char txt[6];

// Keypad module connections
char keypadPort at PORTD;
// End Keypad module connections
هذا البرنامج الي برمجنه بيه الic للkeypad
// LCD module connections
sbit LCD_RS at RB4_bit;
sbit LCD_EN at RB5_bit;
sbit LCD_D4 at RB0_bit;
sbit LCD_D5 at RB1_bit;
sbit LCD_D6 at RB2_bit;
sbit LCD_D7 at RB3_bit;

sbit LCD_RS_Direction at TRISB4_bit;
sbit LCD_EN_Direction at TRISB5_bit;
sbit LCD_D4_Direction at TRISB0_bit;
sbit LCD_D5_Direction at TRISB1_bit;
sbit LCD_D6_Direction at TRISB2_bit;
sbit LCD_D7_Direction at TRISB3_bit;
// End LCD module connections

void main() {
cnt = 0; // Reset counter
Keypad_Init(); // Initialize Keypad
ANSEL = 0; // Configure AN pins as digital I/O
ANSELH = 0;
Lcd_Init(); // Initialize LCD
Lcd_Cmd(_LCD_CLEAR); // Clear display
Lcd_Cmd(_LCD_CURSOR_OFF); // Cursor off
Lcd_Out(1, 1, "1");
Lcd_Out(1, 1, "Key :"); // Write message text on LCD
Lcd_Out(2, 1, "Times:");

do {
kp = 0; // Reset key code variable

// Wait for key to be pressed and released
do
// kp = Keypad_Key_Press(); // Store key code in kp variable
kp = Keypad_Key_Click(); // Store key code in kp variable
while (!kp);
// Prepare value for output, transform key to it's ASCII value
switch (kp) {
//case 10: kp = 42; break; // '*' // Uncomment this block for keypad4x3
//case 11: kp = 48; break; // '0'
//case 12: kp = 35; break; // '#'
//default: kp += 48;

case 1: kp = 49; break; // 1 // Uncomment this block for keypad4x4
case 2: kp = 50; break; // 2
case 3: kp = 51; break; // 3
case 4: kp = 65; break; // A
case 5: kp = 52; break; // 4
case 6: kp = 53; break; // 5
case 7: kp = 54; break; // 6
case 8: kp = 66; break; // B
case 9: kp = 55; break; // 7
case 10: kp = 56; break; // 8
case 11: kp = 57; break; // 9
case 12: kp = 67; break; // C
case 13: kp = 42; break; // *
case 14: kp = 48; break; // 0
case 15: kp = 35; break; // #
case 16: kp = 68; break; // D

}

if (kp != oldstate) { // Pressed key differs from previous
cnt = 1;
oldstate = kp;
}
else { // Pressed key is same as previous
cnt++;
}

Lcd_Chr(1, 10, kp); // Print key ASCII value on LCD

if (cnt == 255) { // If counter varialble overflow
cnt = 0;
Lcd_Out(2, 10, " ");
}

WordToStr(cnt, txt); // Transform counter value to string
Lcd_Out(2, 10, txt); // Display counter value on LCD
} while (1);
}


low voice
:: مهندس ::
تاريخ التسجيل: Mar 2013
المشاركات: 9
نشاط [ low voice ]
قوة السمعة:
قديم 13-03-2013, 05:42 PM المشاركة 173   
افتراضي


لمن ضغطنه على الارقام ماطلع بس حرفaو timeمتغير.


low voice
:: مهندس ::
تاريخ التسجيل: Mar 2013
المشاركات: 9
نشاط [ low voice ]
قوة السمعة:
قديم 13-03-2013, 05:59 PM المشاركة 174   
ha 91d990073dd0b7daab2e560be5767846f624b160


مررررررررررررررررررررررررررررررررررررررررررررررررر رررررررررررررررررررررررررررررررررررررررررررررررررر رررررررررررررررررررررررررررررررررررررررررررررررررر رررررررررررررررررررررررررررررررررررررررررررررررررر رررررررررررررررررررررررررررررررحبااااااااااااااااا اااااااااااااااااااااااااااااااااااااااااااااااااا اااااااااااااااااااااااااااااااااااااااااااااااااا اااااااااااااااااااااااااااااااااا


زهرة مصر
:: مهندس ::
تاريخ التسجيل: Apr 2013
المشاركات: 1
نشاط [ زهرة مصر ]
قوة السمعة:
قديم 16-04-2013, 08:04 PM المشاركة 175   
افتراضي


بسم الله الرحمن الرحيم
المشروع الأول :
تصميم وتنفيذ نظام تحكم ومراقبة لدرجة الحرارة
باستخدام المتحكم المصغر PIC16F877A

[IMG][IMG]http://up.**********/files/i0nirs9i0klryle7t4mv.jpg[/IMG][/IMG]
1- فكرة المشروع :
تقوم فكرة المشروع على تصميم نظام متكامل للمراقبة والتحكم لدرجة حرارة غرفة أو عملية . من خلال ضبط درجة حرارة مرجعية مرغوبة , وبالتالي تشغيل التسخين أو التبريد تبعا للمقارنة بين درجة الحرارة المقاسة والمرغوبة.


2- مبدأ العمل :
سيتم قياس الحرارة من خلال حساس الحرارة LM35 الذي يعطي على خرجه جهد متناسب مع هذه الدرجة والذي ستتم معالجته من خلال المتحكم المصغر PIC16F877A الذي سيقارن درجة الحرارة المقاسة مع الدرجة المرغوبة التي سيتم إدخالها يدويا من خلال أزرار . وبنتيجة المقارنة سيقوم المتحكم بتشغيل دارة التبريد أو التسخين . وسيتم عرض درجة الحرارة المقاسة والمرغوبة على شاشة اظهار كريستالية LCD في كل لحظة .
ستتم برمجة المتحكم من خلال لغة البرمجة C بالبرنامج MicroC.

3- عناصر المشروع


- المتحكم PIC16F877A

- عناصر تشغيل المتحكم :
( هزاز كريستالي 4MHZ , مكثفتين 22pF, منظم جهد 5Volt L7805 )

- حساس الحرارة LM35

- شاشة اظهار كريستالية LCD 2×16

- ترانزستورات BC337 .

- زواجل ( ريليه ) 12 فولط .

- ليدات للدلالة

- مقاومات 10KΩ لتحييز الأزرار

- مقاومات 470Ω لليدات .

- مروحة للتبريد|

- مسخن

- تغذية كهربائية 12 فولط مستمرة .

4- شرح الأجزاء

4-1- حساس الحرارة LM35:
[IMG][IMG]http://up.**********/files/e3gei2o78g8msolmaiwa.jpg[/IMG][/IMG]
- يمتاز بشبه الخطية يعطي في خرجه 10مل فولت لكل درجة حرارة مئوية
- يعطي دقة تقدر بنصف درجة مئوية في درجة حرارة 25 مئوية.
- مجال الحرارة التي يقيسها من - 55إلى 150 درجة مئوية .
- مناسب لتطبيقات التحكم .
- الجهد الذي يعمل عنده من 4 – 30 فولت .
- يقدر التيار المسحوب منه ب 60 ميكرو أمبير،
- عامل التسخين الذاتي 0.08درجة مئوية .
- ممانعة خرج منخفضة 0.1 أوم عند تيار تحميل 1 مل أمبير .
- يعطي عدم خطية بمقدار - 0.25 + 0.25 درجة مئوية .

4-2- شاشة الاظهار الكريستالية : LCD

تحتل شاشات الإظھار بالبلورات السائلة حیزا واسعا من التطبیقات الالكترونیة عالمیا وقد تطورت تطورا كبیرا حتى أصبحت تستخدم في أكثر الأجھزة الالكترونیة كبدیل عن شاشات الإظھار الضوئیة LED وذلك نظرا للمیزات العدیدة التي تتمتع بھا و سنذكر منھا:
- تستھلك طاقة كھربائیة قلیلة مقارنة مع LED مما یجعلھا كثیرة الاستخدام في
الأجھزة التي تعمل على البطاریات .
- قابلیة إظھار اعقد الرسوم في مساحات صغیرة بسبب ارتفاع نسبة التباین .كون -
- شاشات LCD تعكس الضوء ولا تصدره جعلھا لا ترى في الظلام وھذا ما تم حله باستخدام الإضاءة الخلفیة .

تتوفر عالمیا أنواع عدیدة من ھذه الشاشات بقیاسات عدیدة وتقدر بعدد المحارف (الأعمدة) مضروبة بعدد الأسطر

شرح أقطاب الشاشة :
تمتلك هذه الشاشة 16 قطب وهي :
- القطب (1) VSS:قطب التغذية السالب ويطبق عليه جهد صفر فولط
- القطب (2) : VDD قطب التغذية الموجب ويطبق عليه خمسة فولط
- القطب (3) VEE قطب التباين عندما يطبق عليه خمسة فولط لايمكن رؤية شيء بينما يصبح
في أعلى حدة تباين عندما نطبق عليه صفر فولط .
- القطب (4) RS مسجل اختيار الدخل ( يطبق عليه صفر عند ارسال كلمة تحكم , ويطبق واحد
عند ارسال معطيات
- القطب (5) RW قطب القراءة أو الكتابة : عند الكتابة على الشاشة نطبق صفر وعند القراءة
منها نطبق واحد وعادة يوصل مباشرة إلى الأرضي عند استعمال الشاشة
للعرض فقط .
- القطب (6) E قطب التمكين بحيث أن اي عملية على الشاشة يجب ارفاقها بنبضة تمكين وهي
تحدث عند الجبهة الهابطة
- الأقطاب (7 إلى14) D0 ..to D7 أقطاب المعطيات للشاشة بطول 8 بت لارسال المعطيات
وكلمات التحكم .
- القطبين ( 15و 16) K , A قطبي الليد الذي يضيء خلفية الشاشة يوصل 15 بالارضي وال
16بالخمسة فولط


4-3- الترانزستور كمفتاح الكتروني : BC337

[IMG][IMG]http://up.**********/files/1zq631eb3nai5se9efet.jpg[/IMG][/IMG]

يمتاز BC337بالخصائص التالية:
VCE_max= 50 Volt
VCE_saturate = 0.2 Volt
VBE_saturate = 0.65 Volt ,
IC_max= 800mA

في حال تطبيق عدم تطبيق جهد على القاعدة أي (صفر منطقي ) سيكون الترانزستور في حالة فصل أما في حال تطبيق جهد كافي على القاعدة ( واحد منطقي ) سيتحول الترانزستور إلى حالة الوصل وتصل التغذية إلى الحمل ,

4-4- الريليه :
[IMG][IMG]http://up.**********/files/liwl31rfbab0oqf0peiu.jpg[/IMG][/IMG]

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

في الجزء القادم سأقوم بوضع الروابط ( ريثما تكتمل ) وسأكمل الشرح . يتبع ....
من فضلكم انا عايزه اضيف مروحة بمحرك تزداد سرعتها كلما زادت الحرارة ساااااااااااااااااااااااااعدوني


الصورة الرمزية Abdw9
Abdw9
:: عضو فضي ::
تاريخ التسجيل: Nov 2011
الدولة: السودان
المشاركات: 519
نشاط [ Abdw9 ]
قوة السمعة:
قديم 16-04-2013, 09:08 PM المشاركة 176   
افتراضي


لدي استفسار قد أتعبني الوصول الى نتائجة
لماذا صعوبة استعمال الحساس LM35 مع الميكروكونترولر ATMEL عموما




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