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

   

عصـــــام
:: مهندس جيد ::
تاريخ التسجيل: Oct 2016
المشاركات: 240
نشاط [ عصـــــام ]
قوة السمعة:
قديم 28-12-2019, 01:16 AM المشاركة 57   
افتراضي



لدي هذا الخزان


السلام عليكم
هذه صورة لخزان اريد التحكم به
الان لنراجع البرنامج كي اوضح لكم ما اريد منه وارجو منكم التوضيح عن الخطأ باكثر من طريقة لو وجد .
قد تجدون اخطاء املائية ارجو تجاوزها قد كتبت باختصار .
Trisb=00111111;
هذه التعليمة تقول ان جميع منافذ المجموعة b مداخل ماعدا المنفذ ٧..٨ مخارج ....تمام .
Portb=0 ;
كل المنافذ لا يوجد عليها جهد ... تمام .
if (portb=00000001 && portb=00111111){ portb=01000000};
اعتقد ان كتابة البرنامج هكذا اصح من الذي بالرسم ... اليس كذلك .
لان المنفذ السابع والثامن مخارج ولا يجب ان يكونا كمدخلين ... ام كيف يجب ان يكون البرنامج .
هنا اريد من البرنامج ان يفتح الصمام V2 ان وصلت المياه الى دون مستوى المفتاح SW1 يعني عندما يفصل المفتاح SW1 اريد من الصمام ان يفتح ليملئ الخزان بالماء ثانية .
فكيف احقق هذا الامر ؟؟؟.
وايضا عندما يغلق المفتاح Sw6 معلنا امتلاء الخزان اريد ان يغلق الصمام V2 ويفتح الصمام V1 لكي يصرف الماء وهكذا دواليك.
هناك تعديلات اخرى سادخلها على الخزان لكن بالتدريج .
اعتقد ان هناك خطا بالتعليمة
if (portb=00000001 && portb=00111111){ portb=01000000};
لم افهم كيف هنا يتم تفسير هذا الامر اعلم ان الوقت مبكر جدا على هكذا مشاريع الا ان الحاجة من دفعني لها .
هل صحيح كتابة تعليمات الليدات هكذا وكيف الاصح .
تحياتي.لكم
السلام عليكم
قد تجدون اخطاء املائية ارجو تجاوزها قد كتبت باختصار .
Trisb=00111111;
هل تقصد أنك تركت ماأشير إليه باللون الأحمر؟
Trisb=0B00111111
هنا اريد من البرنامج ان يفتح الصمام V2 ان وصلت المياه الى دون مستوى المفتاح SW1 يعني عندما يفصل المفتاح SW1 اريد من الصمام ان يفتح ليملئ الخزان بالماء ثانية .
فكيف احقق هذا الامر ؟؟؟.
لتحقيق هذه الغاية عليك بإخبار المعالج بأن مدخلا معينا عليه جهد مرتفع ويعني (مفتاح مغلق -توصيل-) أو مدخلا عله جهد منخفض (صفر) ويعني مفتاحا مفتوحا (فصل)
تعليمة المفتاح تكتب بعلامتي ==
مثال : IF PORTB.F5==1
التعليمة السابقة تعني إذا كان الجهد على مدخل البن رقم 5 من البورت B مرتفعا (أي المفتاح مضغوط أو الدارة موصلة في الخزان .... فإن ....وتكمل بقية الشروط التي تريد...
أطيب تحية.

اعلانات

الصورة الرمزية عبدالله حجازى
عبدالله حجازى
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2011
الدولة: مصر .. محافظة دمياط
المشاركات: 1,682
نشاط [ عبدالله حجازى ]
قوة السمعة:
قديم 28-12-2019, 06:00 AM المشاركة 58   
Thumbs up السلام عليكم ورحمه وبركاته


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


التعديل الأخير تم بواسطة : عبدالله حجازى بتاريخ 28-12-2019 الساعة 06:04 AM
اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )

الصورة الرمزية مسلم11
مسلم11
:: عضو ذهبي ::
تاريخ التسجيل: Jun 2009
الدولة: بلاد الشام
المشاركات: 3,679
نشاط [ مسلم11 ]
قوة السمعة:
قديم 28-12-2019, 12:56 PM المشاركة 59   
افتراضي


السلام عليكم

هل تقصد أنك تركت ماأشير إليه باللون الأحمر؟
Trisb=0B00111111

لتحقيق هذه الغاية عليك بإخبار المعالج بأن مدخلا معينا عليه جهد مرتفع ويعني (مفتاح مغلق -توصيل-) أو مدخلا عله جهد منخفض (صفر) ويعني مفتاحا مفتوحا (فصل)
تعليمة المفتاح تكتب بعلامتي ==
مثال : IF PORTB.F5==1
التعليمة السابقة تعني إذا كان الجهد على مدخل البن رقم 5 من البورت B مرتفعا (أي المفتاح مضغوط أو الدارة موصلة في الخزان .... فإن ....وتكمل بقية الشروط التي تريد...
أطيب تحية.
وعليكم السلام
شكرا لك اخي عصام
لقد نسيت تحديد نوع اللغة 2B شكرا على التذكير .
بالنسبة لاشارة يساوي كنت اقصد ان كان المنفذ يساوي 1 .
والاشارتين تعنيان هل يساوي واحد منطقي .. هل هناك فرق بينهما.
ساكتب البرنامج كما اوصيت اخي .
بالنسبة للتعليمة التي تخبر المعالج ان كان المفتاح مغلق شغل الشيء الفلاني مثل محرك اريد وصله مع الخزان لضخ الماء منه كيف يكون شكل التعليمة
المحرك موصول على المنفذ ٢ من المجموعة C عند وصول المادة او الماء الى المفتاح السادس .
ارجو منك كتابة الكود للبيان
تحياتي


التعديل الأخير تم بواسطة : مسلم11 بتاريخ 28-12-2019 الساعة 01:01 PM

الصورة الرمزية مسلم11
مسلم11
:: عضو ذهبي ::
تاريخ التسجيل: Jun 2009
الدولة: بلاد الشام
المشاركات: 3,679
نشاط [ مسلم11 ]
قوة السمعة:
قديم 28-12-2019, 01:08 PM المشاركة 60   
افتراضي


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


التعديل الأخير تم بواسطة : مسلم11 بتاريخ 28-12-2019 الساعة 01:23 PM

عصـــــام
:: مهندس جيد ::
تاريخ التسجيل: Oct 2016
المشاركات: 240
نشاط [ عصـــــام ]
قوة السمعة:
قديم 28-12-2019, 04:55 PM المشاركة 61   
افتراضي


وعليكم السلام
شكرا لك اخي عصام
لقد نسيت تحديد نوع اللغة 2B شكرا على التذكير .
بالنسبة لاشارة يساوي كنت اقصد ان كان المنفذ يساوي 1 .
والاشارتين تعنيان هل يساوي واحد منطقي .. هل هناك فرق بينهما.
ساكتب البرنامج كما اوصيت اخي .
بالنسبة للتعليمة التي تخبر المعالج ان كان المفتاح مغلق شغل الشيء الفلاني مثل محرك اريد وصله مع الخزان لضخ الماء منه كيف يكون شكل التعليمة
المحرك موصول على المنفذ ٢ من المجموعة C عند وصول المادة او الماء الى المفتاح السادس .
ارجو منك كتابة الكود للبيان
تحياتي
السلام عليكم

الرمز المكرر(==) خاص بالسويتش وإليك هذه الصور من المؤلف أحمد سمير فايد حفظه الله مباشرة ....تحياتي.




الصورة الرمزية عبدالله حجازى
عبدالله حجازى
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2011
الدولة: مصر .. محافظة دمياط
المشاركات: 1,682
نشاط [ عبدالله حجازى ]
قوة السمعة:
قديم 29-12-2019, 06:02 AM المشاركة 62   
افتراضي


السلام عليكم

اليك برنامج للتحكم في الخزان






كود


كود:
     
     
     

        void main() {
  
      TRISB=0;   PORTB=0;
      TRISD=63; PORTD=0;
  
       while(1){
  
      if( PORTD.f0==1){ PORTB.f0=1; }
     else PORTB.f0=0;
      
      if( PORTD.f1==1){ PORTB.f1=1; }
     else PORTB.f1=0;
      
      if( PORTD.f2==1){ PORTB.f2=1;  }
     else PORTB.f2=0;
      
      if( PORTD.f3==1){ PORTB.f3=1;  }
     else PORTB.f3=0;
      
      if( PORTD.f4==1){ PORTB.f4=1;  }
     else PORTB.f4=0;
      
      if( PORTD.f5==1){ PORTB.f5=1;  }
     else PORTB.f5=0;

  
   }
  
 }

أخي مسلم أخبرني بكل النقاط والتفاصيل حول الية التحكم في المصفاة أو الخزان

وادعوك اولا أن تنفذ الدائرة والكود وتختبرهم علي محكاة او الواقع

وبعد ذالك يمكننا اضافة او تعديل ما تشاء حتي لو اردتها بشاشه LCD أو 7SEGMENT


الصورة الرمزية مسلم11
مسلم11
:: عضو ذهبي ::
تاريخ التسجيل: Jun 2009
الدولة: بلاد الشام
المشاركات: 3,679
نشاط [ مسلم11 ]
قوة السمعة:
قديم 29-12-2019, 07:28 PM المشاركة 63   
افتراضي


حياكم الله
الخزان خاص بتحضير مادة يضيفونها للماء من اجل تعادل الحموضة او القلوية يعني ضبط PH .
كما لاحظت هناك خزان توضع به البودرة و تضاف الى الخزان V7 الذي تتم به عملية الخلط مع الماء بنسب تتفاوت حسب قلوية الماء .
ساخبرك بشوطه من البداية الى النهاية .
يوضع كيس من البودرة بالخزان الصغير ثم يقومون بتبديل المفتاح من لوحة التحكم من وضعية off الى pouder كما هو واضح .
اولا يعمل الرجاج وهو عبارة عن محرك صغير يعمل على هز خزان البودرة من اجل عدم تراكمها ورقم المحرك على لوحة التحكم M11 ويفتح معه صمام ملئ الخزان بالماء حيث تبدأ تعبئة V7 و عندما يصل مستوى الماء الى الاشارة الاولى من الاسفل يعمل محرك الخلط M62 الذي سيقوم على مزج البودرة بالماء وتستمر تعبئة الماء والتحريك الى ان يصل المستوى الى المستوى الثاني عندها سيعمل محرك الحلزون الذي سيرش البودرة داخل الخزان و M61 ويبقى هكذا الى ان يصل الى الاشارة الثالثة فتتوقف رش البودرة ويتابع التحريك وملئ الخزان الى ان يصل الى المستوى او الاشارة الرابعة هنا سيتوقف صمام الماء Y32 ويتابع الخلاط عمله مدة من ٥ دقائق الى صفر اريد التحكم بهذا الزمن لان المادة او البودرة انواع يختلف كل نوع عن الاخر بسرعة الذوبان بالماء وبعد انتهاء زمن الخلط يفتح الصمام Y33 صمام التفريغ وهنا اثناء التفريغ يبقة الخلاط M62 بالعمل الى ان تنطفئ الاشارة الاولى ويبقى الصمام Y33 مفتوح بعد الاشارة الاولى لمدة من ١ دقيقة الى ١٠ ثوان ايضا اريد التحكم بهذا الزمن .
وعند انتهاء الزمن يتوقف البرنامج او عملية التحضير .
اريد اضافة خاصية وهي اضافة مفتاح يعطيني خيار اما تشغيل شوط واحد او اعادة تشغيل تلقائي اي يبقى في حالة عمل الى ان نوقفه .
اريد منك ايضا ان تضع امر من فواشة الخزان السفلي الكبير انه في حال امتلاءه للخزان الكبير السفلي فان مرحلة التحضير تتوقف عن العمل سواء يدوي او تلقائي .
بارك الله بك


الصورة الرمزية مسلم11
مسلم11
:: عضو ذهبي ::
تاريخ التسجيل: Jun 2009
الدولة: بلاد الشام
المشاركات: 3,679
نشاط [ مسلم11 ]
قوة السمعة:
قديم 29-12-2019, 08:01 PM المشاركة 64   
افتراضي


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



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