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

أدوات الموضوع

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:135
قديم 02-10-2013, 03:51 PM المشاركة 1   
افتراضي تحكم بشده ليد Twitter FaceBook Google+



سلام عليكم
استخدمت pwm لغرض تحكم بشده ليد ولكن مشكله ليد يشتغل وينطفئ بينما اريده
كتالي
انظر كود
كود:
void keypad(char state)
{
    if( state is 1){ cont=cont1=0;}
    kp=0;number=0;
    kp=Keypad_Key_Click();
    if( kp is 1 )       number=7;
    else if( kp is 2  ) number=4;
    else if( kp is 3  ) number=1;
    else if( kp is 5  ) number=8;
    else if( kp is 6  ) number=5;
    else if( kp is 7  ) number=2;
    else if( kp is 8  ) number=0;
    else if( kp is 9  ) number=9;
    else if( kp is 10 ) number=6;
    else if( kp is 11 ) number=3;
    else if( kp is 12 ) kp=12;// inter  (#)
    else if( kp is 4  ) kp=4;// (*): delete number if writing worng number
    else if( kp is 13 ) kp=13;
    else if( kp is 14 ) kp=14;
    else if( kp is 15 ) kp=15;
    else if( kp is 16 ) kp=16;
    else kp=255;
    if(cont3> 150 && cont3<280)
        {
       [COLOR="Red"]  PWM1_Set_Duty(127);[/CO
 }
     if(cont3>280)PWM1_Stop();
    if(kp !=255)
        {
          cont3=0;
          PWM1_Stop();
          PWM1_Set_Duty(255);
          PWM1_Start();

        }

}
عند ضغط على اي مفتاح يضي ليد بشده كامله
كود:
 if(kp !=255)
        {
          cont3=0;
          PWM1_Stop();
          PWM1_Set_Duty(255);
          PWM1_Start();

        }
وبعدها 10 ثواي تنخفض شده الاضاءه الى نصف
كود:
if(cont3> 150 && cont3<280)
        {
         PWM1_Set_Duty(127);
        }
وبعدها بفتره ينطفئ ليد
كود:
if(cont3>280)PWM1_Stop();
بالنسبه لزمن يتم حسابه باستخدام تايمر 0 و cont3 يجمع بــ 1 كل 65536 مايكروثانيه
مشكله هي
1- ليد يشتغل وينطفئ
2- ظهور رساله خطا ويصبح نسبه تحميل على مايكرو ب80%
http://img02.arabsh.com/uploads/imag...414a63fa06.png

علما ان تردد مستخدم =1000هيرتز
(pwm1_init(1000


التعديل الأخير تم بواسطة : حسن هادي محمود بتاريخ 02-10-2013 الساعة 03:58 PM
اعلانات

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:135
قديم 02-10-2013, 06:36 PM المشاركة 2   
افتراضي


اخواني هل مشكله في بروتيس ام اين مشكله؟
انظر الى هذا كود وهو بسيط
كود:
char duty;
void main() {
trisc=0;
trisa=1;
PWM1_Init(1000);
ADCON1=0x07;
PWM1_start();

while(1){
  
if (portb.f1==0)
   { 
     delay_ms(200);
     if(duty>=250)duty=250;
     duty=duty+5; 
     pwm1_set_duty(duty);
   }

if (portb.f2==0)
   {
    delay_ms(200);
    if(duty<5)duty=1;
    duty=duty-1;
    pwm1_set_duty(duty);
   }

}
}
وهذا هو مشروع تحكم بشده ليد
http://arabsh.com/files/0c37414e65f3/led-pwm-rar.html
ولكنه لا اعرف السبب لايعمل ليدات تنطفئ وتشتغل ولايؤثر فيها سويجات زياده او نقصان


التعديل الأخير تم بواسطة : حسن هادي محمود بتاريخ 02-10-2013 الساعة 06:52 PM
اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

عبقرينو1
:: مهندس متميز ::
تاريخ التسجيل: Oct 2010
الدولة: جمهورية مصر العربية - الاسكندرية
المشاركات: 557
نشاط [ عبقرينو1 ]
قوة السمعة:0
قديم 02-10-2013, 07:45 PM المشاركة 3   
افتراضي


http://www.mikroe.com/download/eng/d...wm_library.htm


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:135
قديم 03-10-2013, 02:40 AM المشاركة 4   
افتراضي


سلام عليكم
وضعت مقوم نصف موجه لغرض تحويل اشاره تردديه الى فولتيه مستمره ولكن مشكله فولتيه pwm لايخرج 5 فولت لماذا
http://img02.arabsh.com/uploads/imag...414b61f204.png


Tico
:: عضو ذهبي ::
تاريخ التسجيل: May 2012
المشاركات: 1,426
نشاط [ Tico ]
قوة السمعة:114
قديم 03-10-2013, 08:25 AM المشاركة 5   
افتراضي


اخواني هل مشكله في بروتيس ام اين مشكله؟
انظر الى هذا كود وهو بسيط
كود:
char duty;
void main() {
trisc=0;
trisa=1;
PWM1_Init(1000);
ADCON1=0x07;
PWM1_start();
 
while(1){
 
if (portb.f1==0)
   { 
     delay_ms(200);
     if(duty>=250)duty=250;
     duty=duty+5; 
     pwm1_set_duty(duty);
   }
 
if (portb.f2==0)
   {
    delay_ms(200);
    if(duty<5)duty=1;
    duty=duty-1;
    pwm1_set_duty(duty);
   }
 
}
}
وهذا هو مشروع تحكم بشده ليد
http://arabsh.com/files/0c37414e65f3/led-pwm-rar.html
ولكنه لا اعرف السبب لايعمل ليدات تنطفئ وتشتغل ولايؤثر فيها سويجات زياده او نقصان
أخي في مشروعك بالميكروسي برو انت عملت بالميكرو Pic16F887
لكن في بروتوس عملت بميكرو مختلف هو Pic16F877A
لذلك تظهر لك رسالة خطأ في بروتوس .
سلام عليكم
وضعت مقوم نصف موجه لغرض تحويل اشاره تردديه الى فولتيه مستمره ولكن مشكله فولتيه pwm لايخرج 5 فولت لماذا
http://img02.arabsh.com/uploads/imag...414b61f204.png
أخي هذا طبيعي لان مهمة PWM هي تعديل الفولتية بطريقة التحكم في عرض النبضات ..
خرج PWM هو في الواقع قيمة وسطية ما بين 0 فولت و 5 فولت ..تزيد أو تنقص كلما زاد مدى عرض النبضة أو نقص.
لو الخرج يجب ان يكون دائما 5 فولت فما الفائدة من استخدام PWM ؟
من جهة ثانية فإن محاكاة بروتوس PWM ليست دائما دقيقة..
تماما كمحاكاة العرض بالملتبلكس ..
الافضل هنا هو التجربة الحقيقية.


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:135
قديم 03-10-2013, 12:36 PM المشاركة 6   
افتراضي


أخي في مشروعك بالميكروسي برو انت عملت بالميكرو Pic16F887
لكن في بروتوس عملت بميكرو مختلف هو Pic16F877A
لذلك تظهر لك رسالة خطأ في بروتوس .

أخي هذا طبيعي لان مهمة PWM هي تعديل الفولتية بطريقة التحكم في عرض النبضات ..
خرج PWM هو في الواقع قيمة وسطية ما بين 0 فولت و 5 فولت ..تزيد أو تنقص كلما زاد مدى عرض النبضة أو نقص.
لو الخرج يجب ان يكون دائما 5 فولت فما الفائدة من استخدام PWM ؟
من جهة ثانية فإن محاكاة بروتوس PWM ليست دائما دقيقة..
تماما كمحاكاة العرض بالملتبلكس ..
الافضل هنا هو التجربة الحقيقية.
اخي كريم
انا اقصد لما اجعل duty=100%
(pwm1_set_duty(255
من مفروض ان جهد =5 فولت او اقل من ذلك بقليل
اي قيمه جهد =5xduty/255
ايضا توجد مشكله في بروتيس تخبرك ان مايكرو يعمل في اقصى حمل اتمنى مشاهده الصور وقراءه رساله بروتيس
هل بأختصار ان بروتيس لايمكن تشغيل pwm
للعلم اذا وضعت اوسلوسكوب ارى اشاره pwm بشكل صحيح ولكن جهد خارج غير صحيح فأذا جعلت duty=100% يخرج احيانا 2.5v


zamalkawi
:: مهندس جيد ::
تاريخ التسجيل: May 2013
المشاركات: 270
نشاط [ zamalkawi ]
قوة السمعة:0
قديم 04-10-2013, 06:34 AM المشاركة 7   
افتراضي


السلام عليكم
لي 3 أسئلة للأخ حسن:
- هل أنت متأكد أن مصدر التغذية للمايكروكنترولر 5 فولت؟ حيث أنه وفقا للداتا شيت المصدر من الممكن أن يتراوح بين 2 و5,5 فولت، بينما الخرج يساوي مصدر التغذية أو أقل منه قليلا
- لماذا لا توجد أي مقاومات على التوالي مع الدايودات
- ما أهمية الدايود D5؟ ما وظيفته؟


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:135
قديم 04-10-2013, 07:24 AM المشاركة 8   
افتراضي


السلام عليكم
لي 3 أسئلة للأخ حسن:
- هل أنت متأكد أن مصدر التغذية للمايكروكنترولر 5 فولت؟ حيث أنه وفقا للداتا شيت المصدر من الممكن أن يتراوح بين 2 و5,5 فولت، بينما الخرج يساوي مصدر التغذية أو أقل منه قليلا
- لماذا لا توجد أي مقاومات على التوالي مع الدايودات
- ما أهمية الدايود D5؟ ما وظيفته؟
عليكم السلام
1- في بروتيس لست بحاجه الى مصدر التغذيه بالنسبه للبك فبروتيس اوتوماتك يغذي مايكرو 5 فولت
2-ايضا في بروتيس ليست هناك مشكله في وضع مقاومات ولكن يجب وضعها في حقيقه بحدود 220 الى 330 اوم
3- دايود رقم 5 مع متسعه يعملان على تحويل موجه تردديه الى موجه dc لاني لااريد ان أطفئ ليدات وشغلها وانما اريد اتحكم بشده الاضاءه ولاحظت ام pwm لايقل تردد فيها عن 1000 وهل تجعل ليد يعمل ويطفئ فوضعت ليد ليحول موجه متناوبه الى مستمره لمنع التذبذب
لاحظ صوره اداناه وضعت اوسلوسكوب قبل دايود واخر بعد دايود واشوف نتيجه
http://img02.arabsh.com/uploads/imag...41486cf30c.png


التعديل الأخير تم بواسطة : حسن هادي محمود بتاريخ 04-10-2013 الساعة 07:31 AM
إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


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

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025