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

   

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 27-11-2013, 05:29 AM المشاركة 25   
افتراضي



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

اعلانات

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 27-11-2013, 06:20 PM المشاركة 26   
افتراضي


أخي جرب الكود
https://www.mediafire.com/?v128ltl0g5o7gsp
ارجو مراجعه الرسم في بروتيس حيث أستخدمت الانتربت على portb0
أخي كريم ياريت تعطيني نتيجه المشروع على بروتيس شغال ولكن لم أستطع تجربه عملي لان مواد غير متوفره عندي حاليا
وياريت تعجل بالنتيجه لان الانترنيت سيتوقف بعده أسبوع تقريبا وقد أتاخر في تجديد الاشتراك بسبب مشاكل عندي في الانترنيت لذا أستطيع مساعدتك بمشيئه الله خلال هذه الفتره ولا أعلم بعدها متى يعمل النت عندي من جديد
وبالتوفيق

وبالنسبه لاستخدام البك الارسال وأخر الاستقبال فمكن ولكن دعنا بأستخدام البك واحد فقط.

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

علي00
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2012
المشاركات: 110
نشاط [ علي00 ]
قوة السمعة:
قديم 27-11-2013, 08:58 PM المشاركة 27   
افتراضي


السلام عليكم استاذ حسن الله يحفظك
على البرتونس لايعمل الريلي عندي عند فتح مفتاح قطع الاشعاع
ماهو السبب استخدم بترونس اصدار Proteus 8 Professional


علي00
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2012
المشاركات: 110
نشاط [ علي00 ]
قوة السمعة:
قديم 27-11-2013, 09:47 PM المشاركة 28   
افتراضي


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


Tico
:: عضو ذهبي ::
تاريخ التسجيل: May 2012
المشاركات: 1,423
نشاط [ Tico ]
قوة السمعة:
قديم 28-11-2013, 01:33 AM المشاركة 29   
Arrow


سم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته

أخواني هل من الممكن استخدم سينسور ir كجهآآز انذار

أي : وضع مرسل ir ومستقبل بحيث أنه يقوم بعمل خط موجي وعند قطع الخط هذا يقووم جهآز المستقبل بإرسال بازر تحذير

وشكرا
ان شاء الله سأضع قريبا تطبيقا تجريبيا بسيطا للتحكم بالاشعة تحت الحمراء ب Flowcode 5 كما طلبت .
وباستخدام برتوكول RC5..
ربما يكون هو الحل أو على الأقل بداية الحل بالنسبة لك ولكل من يبرمج بواسطة فلوكود..


علي00
:: مهندس متواجد ::
تاريخ التسجيل: Feb 2012
المشاركات: 110
نشاط [ علي00 ]
قوة السمعة:
قديم 28-11-2013, 12:53 PM المشاركة 30   
افتراضي


السلام عليكم
أرجو المعذره تاخرت عليك بالاجابه لاني كنت مشغول
اخي كريم حسب مالاحظ أنت لغيت كود الاستقبال من ريموت أخر ولهذا لايمكن أن تصبح stop=1 لذا اخذ هذا التعديل
كود:
 unsigned int x=0;
 char flag_ir=0 , kk=0;
 sbit led at RB0_bit;
 sbit led_dir at trisB0_bit;
 sbit reciver at RB4_bit; 
 sbit reciver_dir at trisB4_bit; 
 sbit relay at RB5_bit;
 sbit relay_dir at trisB5_bit;
void send_signal();
 void main() 
 { 
  cmcon=7; 
  reciver_dir=1;
  led_dir=0; 
  led=0; 
  relay_dir=0;
   relay=0;
  PWM1_Init(38000);//38khz
  PWM1_Set_Duty(127); // set duty 50%
  for (x=0;x<10;x++) // flashing for check is micro is ok init. 
         { led=1; 
          delay_ms(100);
          led=0;
          delay_ms(100);
          } 
   while(1) 
         { 
           send_signal();
          if(flag_ir==6)
              {

                 led=1;
                relay=1;
               flag_ir=0;
               for(x=0;x<60;x++)delay_ms(1000);// wait 60 sec ;
               led=0;
              relay=0;
              }

         }
}
 //*********************************** 
 void send_signal() 
 { 
  flag_ir=0; // intial value
  while(1) 
        { 
         PWM1_Start(); 
         delay_ms(20); 
         if(reciver==0) flag_ir=0; 
         else flag_ir++; 
         PWM1_Stop(); 
         delay_ms(20); if(flag_ir==6)break; 
         } 
       }
رجعت الى الكود الثاني وبعد اضافة دايود على خرج المستقبل اشتغل طبيعي ولكن اقصى مسافة 40 سم وبعد وضع عدسه للمستقبل اصبحت المسافة 1
متر ولكن احتاج مدى 7 متر
اخ حسن هل السبب في قيمة PWM1_Set_Duty
او اشارة المستقبل يحتاج تكبيرها قبل ان تدخل في البك
او قيمة التردد ..
نرى مثلا الستلايت يستقبل على بعد 7 متر او اكثر
شكرا لك وجزاك الله خيرا


Tico
:: عضو ذهبي ::
تاريخ التسجيل: May 2012
المشاركات: 1,423
نشاط [ Tico ]
قوة السمعة:
قديم 28-11-2013, 01:30 PM المشاركة 31   
افتراضي


أرى أن الموضوع تحول عن مساره الأصلي ..


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 28-11-2013, 03:09 PM المشاركة 32   
افتراضي


رجعت الى الكود الثاني وبعد اضافة دايود على خرج المستقبل اشتغل طبيعي ولكن اقصى مسافة 40 سم وبعد وضع عدسه للمستقبل اصبحت المسافة 1
متر ولكن احتاج مدى 7 متر
اخ حسن هل السبب في قيمة PWM1_Set_Duty
او اشارة المستقبل يحتاج تكبيرها قبل ان تدخل في البك
او قيمة التردد ..
نرى مثلا الستلايت يستقبل على بعد 7 متر او اكثر
شكرا لك وجزاك الله خيرا
سلام عليكم
اجعل PWM1_Set_Duty بنسبه 100% اي يخرج 5 فولت وتكتب كتالي
(255)PWM1_Set_Duty
وشوف النتيجه



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