13- طرق بناء هياكل البرامج :مخططات التدفق Flow والحالة State
قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الاليقسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots
طرق بناء هياكل البرامج :مخططات التدفقFlow والحالة State
عند القيام بتصميم برنامج فعلى فمن المهم التفكير فى هيكله أوشكله قبل بدء كتابة الكود أو الشفرة او التعليمات البرمجية . لذا يجب علينا البحث عن وسائل يمكن بها تمثل البرنامج تخطيطيا. دعونا ننظر كيف نفعل ذلك بطريقتين شائعتين .
1- مخططات أو خرائط التدفق : Flow Diagrams
ويستخدم فى ذلك القليل من الرموز مثل شكل المستطيل للمعالجةأو الفعل وشكل المعين للقرار. الشكل يوضح مثال بسيط لمخطط تدفق لمتحكم فى الثلاجة. المستخدم لديه وسيله واحدة للتحكم مقاومة متغيرة تسمح له بتحديد أو ضبط درجة الحرارة المطلوبة. بالثلاجة يوجد حساس لدرجة الحرارة .يتم التحكم فى درجة الحرارة بتوصيل أو فصل الضاغط .. تهبط درجةالحرارة عندما يعمل . البرنامج يقرأ كل من درجة الحرارةالفعلية والمطلوبة ويحدد أيهما أكبر أو أعلا . اذا كان الأكبر هودرجة الحرارة الفعلية فيتم تشغيل الضاغط. . وإذا كان الفرق بينهما كبير يعطىالبرنامج انذار مسموع . مخطط التدفق يوضح هذا الفعل أو الإجراء باستخدام الرمزين المذكورين . لاحظ أن الشكل المعين الذى يمثل رمز القرار يحتوى على علامة إستفهام داخيله باجابة بنعم أو بلا . ونقطتى خروجه تناظران الإجابتان المحتملتان . ويمكن ملاحظة أن هذا البرنامج على شكل حلقة غير محددة أى إلى أجل غير مسمى . هذا البرنامج يعتبر نموذج مشترك كمثال لهيكل برامج الأنظمةالشبيهة والمسماة بالانظمة المتضمنة ويطلق عليه أحيانا الحلقة السوبر super loop
من الممكن رسم مخططات التدفق بكثير من التفاصيل أو بالقليل جدا.مع العنايةوالخبرة من الممكن رسمها على مستوى بحيث يمكن تحوبل المخطط إلى برنامج باللغة المطلوبة دون صعوبات . مخططات التدفق تعتبرفى رأى البعض تقنية قديمة الطراز .مع ذلك فمن السهل تعلمها و استخداها فهى يمكن أن تمثل بوضوح أفكار البرنامج البسيط. لذلك سنستفيد منها.
2- مخططات الحالة : State Diagrams
مخططات التدفق تظهر الحياة على شكل سلسلة من الإجراءات أو الأحداث التي تمر بسرعة.والعديد من المنتجات تتصرف بشكل مختلف عن هذه الطريقة. حيث تميل إلى الانتقال من حالة إلى أخرى ، وربما تستغرق فترة طويلة من الوقت في هذه الحالة وتتركها فقط عند اكتمال الفترة الزمنية أو وقوع حدث معين. هذه من الأفضل تمثيلها بمخطط الحالة والذي يشكل بديلا لمخطط التدفق. كما هو الحال مع مخططات التدفق يجب التدريب عليها للوصول إلى شكلها الكامل . وكل ما نحتاجالقيام به هو رسم كل حالة كدائرة أو حلقة لها عنوان أو وصف والتوصيل بينها بأسهم. وتظهر أو تتصرف تحت هذاالشرط (أو الشروط) كحالة واحدة وتنتقل إلى أخرى . كل سهم يكون (يأخذ) إسما أوعنوانا لشرط يتسبب في تغيير الحالة. الشكل يبين وظيفة آلةغسيل الملابس المنزلية ممثلة بمخطط حالة بسيط . عند تشغيلهافإنها أولا تدخل إلى حالة التجهيز Ready .فإذا كان الباب مغلق وبدأ المستخدم الغسيل تقوم الآلة بتحميل (فتح-دخول) المياه. يقوم حساس(جهازاستشعار) مستوى المياه بالإحساس بتمام مستوى المياه . ومع ذلك فان الآلة تقيس الزمن الذى تستغرقه عملية الملء بالماء . فإذا لم يتم الملو فى حدود الزمن المخصص أو المسموح به نفترض حدوث خلل أو عطل . قد يكون هذا راجعا إلى عدم كفاية ضغط المياه أو خلل الصمام. استخدام طريقة انتهاء المهلة كطريقة منخفضةالتكلفة وبديلة عن استخدام حساسات لاستشعار ضغط أو تدفق المياه . حالةالملء يتبعها حالة تسخين المياه . مرة أخرى طريقة (انتهى الوقت ) إذا لم تسخن المياه فى المدة المحددة . وتستمر العملية كما هو موضح وكل حالة لها خرج مشروط هو النجاح “successful” وخرج آخر يؤدى إلى حالة العطل . من وجهة نظر البرمجة فان مخططات الحالة أكثر صعوبة من مخططات التدفق ولا يمكن بسهولة أن تترجم مباشرة إلى لغات البرمجة . في الواقع ، غالبا ما يكون من المفيد تحويل كل حالة إلى مخطط تدفق خاص بها . للحفاظ على وضوح الهيكل أو البناء وضمان ممارسة جيدة للبرمجة ينبغي أن يكون لكل حالة تعريف محدد واضح يحدد نقاط الدخل والخرج .
الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 05:34 AM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)