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

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

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:332
قديم 07-08-2013, 03:55 PM المشاركة 1   
افتراضي خطوات تصميم مشروع نظام أمن Security System لمنزل والمترجم Proton Basic : Twitter FaceBook Google+



خطوات تصميم مشروع نظام أمن Security System لمنزل والمترجم Proton Basic:
أولا : تحديد متطلبات المشروع فى شكل عبارات نصية :
نبدأ منطق التصميم عن طريق ترجمة المشكلة إلى سلسلة من العبارات النصية التى تعكس ما يجب أن يحدث فى النظام .
نحن نريد عمل نظام إنذار يطلق إشارة صوتية عالية نتيجة لتركيبة معينة من أجهزة الاستشعار بالمنزل . أيضا ، نريد أن يكون للمستخدم القدرة على اختيار واحد من ثلاث حالات تشغيل:
1- حالة فعالة : إصدار صوت عند محاولة الدخول من الباب أو النافذة . هذه الحالة مفيدة عندما يكون القائمين بالمنزل نائمين .
2- حالة فعالة : إصدار صوت عند محاولة الدخول من الباب أو الشباك أو وجود حركة بأرجاء المنزل . هذه الحالة مفيدة عندما يكون أصحاب المنزل بعيدا عنه .
3- حالة تعطيل الإنذار : عدم إصدار صوت . هذه الحالة مفيدة فى حالة النشاط العادى داخل المنزل .
ثانيا :تعريف المتغيرات التى تمثل متغيرات المداخل والمخارج المستخدم فى تصميم نظام الأمن :
· مدخل حساسات الباب والنافذة "A" .
· مدخل كاشف الحركة "B" .
· مداخل تحديد اختيار الكود CD المكون من 2 بت والمستخدم لتحديد حالة التشغيل ، أى يوجد مدخلين لتحديد الحالات الثلاثة التى يمكن تحديدها تبعا للكود التالى :

· المخرج المستخدم للإنذار الصوتى "Y"

مداخل النظام هى (A,B,C,D) والمخرج هو (Y) . المنطق المرتفع الفعال هو الواحد والمنطق المنخفض الغير فعال هو الصفر .
ثالثا : كتابة العبارات الشبه منطقية :
بعد ذلك يتم ترجمة العبارات النصية إلى عبارات شبه منطقية باللغة الإنجليزية . العبارات الشبه الشبه منطقية لنظام الأمن تكون بالشكل التالى :



كود:
Activate the alarm ( Y = 1) if A is high and the code C D is 0 1 or activate the alarm if A or B is high and the code is 1 0.

لاحظ المعاملات المنطقية ( and , or ) ، والتى سوف تساعد فى كتابة التعبير المنطقى .

رابعا :كتابة التعبير المنطقى :
الآن نكتب التعبير المنطقى بناء على العباراة الشبه منطقية .
· لإنتاج المنطق المرتفع (1) الفعال للكود (0 1) ، نحتاج لتشكيل التعبير (Cinv . D) ( تعنى Cinv and D) ، ولإنتاج المنطق المرتفع (1) الفعال للكود (1 0) نحتاج لتشكيل التعبير (C . Dinv) .
· بناء على ذلك يكون التعبير المنطقى الكامل لنظام الأمن بالشكل التالى :




سوف يتم إصدار إنذار صوتى (Y = 1 ) إذا كان التعبير A · (Cinv · D) بواحد " أو" إذا كان التعبير
(A+ B) · (C · Dinv) بواحد ، أما إذا كان كلا التعبيرين بصفر فإنه لن يصدر إنار صوتى (Y = 0 ) .
التعبير الأول سوف يكون بواحد إذا وفقط إذا كان "A" بواحد "و" "B" بواحد "و" "C" بصفر "و" "D" بواحد . والتعبير الثانى سوف يكون بواحد إذا وفقط إذا كان "A" "أو" "B" بواحد "و""C" بواحد "و" "D" بصفر .
يمكن تبسيط التعبير المنطقى السابق عن طريق استخدام جدول الحقيقة التالى للقيم المختلفة للكود :



الدائرة الكهربية :
· نفترض أن حساسات الباب والنافذة تكون مفاتيح مفتوح فى الوضع العادى NO، وتغلق عندما يتم إغلاق الباب والنافذة . يتم توصيلها بأسلاك وتوصل إلى الجهد الموجب 5V من خلال مقاومة رفع ونتيجة لذلك : إذا كان كلا المفتاحين مفتوحين ، فإن الإشارة "A" سوف تكون مرتفعة .يجب أن يتم غلق كل من المفتاحين حتى تكون الإشارة "A" منخفضة . هذه التوصيلة تمثل البوابة "AND".
· كاشف الحركة ينتج حالة مرتفعة على الخط "B"عندما يكشف الحركة .
· وتستخدم مفاتيح أحادىة القطبية بدائرتين لتحديد حالة العمل بتحديد كود الخطين C و D . فى الشكل كلا المفتاحين فى وضع الغلق العادى NC، وبالتالى يكون الكود CD=00 .
· جرس التنبيه يطلق إشارة صوتية عندما يكون المخرج Y فى الحالة المرتفعة لأنه يشكل الانحياز الأمامى للترانزستور . عندما يكون المخرج Y فى الحالة المرتفعة تقوم مقاومة القاعدة 1K بتحديد تيار الخرج لحوالى 5 mA (5 V / 1 k)، وهو فى الحدود المسموح بها (20 mA) .

البرنامج :

كود:
' security.bas ' Proton Basic program to perform the control functions of the security system ' Define variables for I/O port pins Symbol door_or_window = PORTB.0 'Name for signal A Symbol motion = PORTB.1 'Name For signal B Symbol c = PORTB.2 'Name ForName For signal C Symbol d = PORTB.3 'Name For signal D Symbol alarm = PORTA.0 ' signal Y ' Define constants for use in IF comparisons Dim OPEN As 1 ' to indicate that a door OR window is open Dim DETECTED As 1 ' to indicate that motion is detected ' Make sure the alarm is off to begin with Low alarm ' Main polling loop always: If c = 0 And d = 1 Then ' operating state 1 (occupants sleeping) (Cinv · D) If door_or_window = OPEN Then ; line A is high High alarm Else Low alarm EndIf Else If c = 1 And d = 0 Then ' operating state 2 (occupants away)(C · Dinv) If door_or_window = OPEN Or motion = DETECTED Then ; line A is high or line B is high High alarm Else Low alarm EndIf Else ' operating state 3 or NA (alarm disabled) Low alarm EndIf EndIf GoTo always ' continue to poll the inputs End

اعلانات

الصورة الرمزية nazar sss
nazar sss
:: مهندس متميز ::
تاريخ التسجيل: Mar 2008
الدولة: lraq / Salah al-Din
المشاركات: 307
نشاط [ nazar sss ]
قوة السمعة:0
قديم 08-08-2013, 06:42 PM المشاركة 2   
افتراضي


كل عام وانتم بخير وعيدكم مبارك

شكرا على هذا المجهود الرائع ، يمكن تحويل الكود الى ميكروسي
هل لغة Proton Basic أفضل من الميكروسي من ناحية اختصار الكود
او سهولة الكود شكرا

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

الصورة الرمزية Omar Mekkawy
Omar Mekkawy
:: مهندس متميز ::
تاريخ التسجيل: Aug 2011
الدولة: مصر
المشاركات: 1,523
نشاط [ Omar Mekkawy ]
قوة السمعة:0
قديم 18-08-2013, 07:20 AM المشاركة 3   
افتراضي


بارك الله فيك أستاذي
مجهود جبار بصراحة
جعله الله في ميزان حسناتك


محمد55555
:: مهندس متواجد ::
تاريخ التسجيل: Jun 2013
المشاركات: 82
نشاط [ محمد55555 ]
قوة السمعة:0
قديم 18-08-2013, 09:17 AM المشاركة 4   
افتراضي


بارك اللة فيك على هذا المجهود , ولكن هل ممكن دورة فى هذة اللغة وماهو رابط البرنامج بحيث نتمكن فى التطبيق العملى وشكرا


الصورة الرمزية Omar Mekkawy
Omar Mekkawy
:: مهندس متميز ::
تاريخ التسجيل: Aug 2011
الدولة: مصر
المشاركات: 1,523
نشاط [ Omar Mekkawy ]
قوة السمعة:0
قديم 18-08-2013, 03:01 PM المشاركة 5   
افتراضي


أستاي هل ممكن ترفق لنا نسخة من برنامج البروتون
لأن النسخة التي لدي لأنها معطوبة

الله يعطيك العافية


الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:332
قديم 18-08-2013, 07:01 PM المشاركة 6   
افتراضي


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

شكرا للأخوة المشاركين

أحد رؤوابط رابط برمجيات المترجم Proton :



مع تمنياتى بدوام التوفيق


محمد55555
:: مهندس متواجد ::
تاريخ التسجيل: Jun 2013
المشاركات: 82
نشاط [ محمد55555 ]
قوة السمعة:0
قديم 19-08-2013, 12:10 PM المشاركة 7   
افتراضي


استاذنا الكريم الرابط لايعمل ممكن رابط اخر وجزاك اللة خيرا


z_ramzi
:: مهندس متواجد ::
تاريخ التسجيل: Aug 2009
المشاركات: 143
نشاط [ z_ramzi ]
قوة السمعة:0
قديم 19-08-2013, 12:52 PM المشاركة 8   
افتراضي


الرابط يعمل 5 / 5


التعديل الأخير تم بواسطة : z_ramzi بتاريخ 19-08-2013 الساعة 01:15 PM
إضافة رد

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

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

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


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

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