Skip to content
Menu
bsm300gb120dlc
  • Home
  • components
  • الإخبارية
bsm300gb120dlc

تصميم إشارات المرور الذكية بناءً على نظام التشغيل في الوقت الفعلي RTX51 و AT89C52 متحكم

Posted on 2022-08-13

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

“

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

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

1 مخطط مظاهرة

الشكل 1 هو رسم تخطيطي لتقاطع نموذجي. استخدم 1 و 2 و 3 و 4 للإشارة إلى الممرات الرئيسية لاتجاهات التدفق الأربعة ، على التوالي ، واستخدم a و b و c و p للإشارة إلى الممر الأيسر والحارة المستقيمة والحارة اليمنى وعبور المشاة لكل رئيسي حارة ، على التوالي. من السهل أن تعرف من خلال التحليل أنه بالإضافة إلى الممرات الأربعة اليمنى ، يمكن أن يمر مساران على الأكثر في نفس الوقت. على سبيل المثال ، عندما يمر 1a و 1b ، سيتم حظر الممرات الأخرى. لذلك ، عند تصميم إشارات المرور ، يمكن دمجها في أزواج ، وهناك أربع مجموعات في المجموع (مثل la-1b ، 2a-2b ، 3a-3b ، 4a-4b) ؛ ووقت الضوء الأحمر ووقت عبور المشاة من كل حارة يتم تحديدها من خلال هذه الأربعة يتم تحديد وقت نافذة الضوء الأخضر مجتمعة. ستصف هذه المقالة تصميم إشارات المرور الذكية في تسلسل حركة المرور المعتمد على نطاق واسع الموضح في الشكل 2.

2 تصميم برامج النظام والأجهزة

تتبنى أجهزة هذا النظام تصميم الكمبيوتر العلوي والكمبيوتر السفلي ، ومن بينها تستخدم أجهزة الكمبيوتر الأربعة السفلية AT89C52 الحواسيب الصغيرة أحادية الشريحة للتحكم في المجموعات الأربع الموضحة في الشكل 2 على التوالي. يحتوي متحكم AT89C52 على MCS-51 core ، و 8 KBFlash ، و 256 بايت من ذاكرة الوصول العشوائي ، و 6 مصادر للمقاطعة ، ومنفذ تسلسلي واحد ، ويمكن أن يصل تردد التشغيل الأعلى إلى 24 ميجا هرتز ، والذي يمكنه تلبية احتياجات هذا النظام بشكل كامل. يعتمد الاتصال التسلسلي بين الكمبيوتر العلوي والكمبيوتر السفلي على الواجهة القياسية RS-485. عندما يكون تردد الاتصال 9600 بت في الثانية ، يمكن أن تصل مسافة الاتصال الفعالة إلى 2.1 كيلومتر. في تصميم البرمجيات ، يتم استخدام نظام التشغيل في الوقت الحقيقي الصغير RTX51. إنه نظام تشغيل متعدد المهام في الوقت الفعلي مخصص لمعالجات سلسلة 8051 ، والتي يمكن أن تستخدم أربع أولويات مهمة لإكمال جدولة الجولة الزمنية لشريحة زمنية وتبديل المهام الاستباقي في نفس الوقت ، ويمكنه تبسيط تلك العمليات المعقدة والحرجة للوقت مهام تصميم البرامج الهندسية.

2.1 تصميم الكمبيوتر السفلي

خذ الكمبيوتر السفلي الذي يتحكم في مجموعة 1a-1b-3c-4c-2p كمثال. يتم توصيل الكمبيوتر السفلي بدائرة الكشف عن المركبات الديناميكية ومصباح LED وكاميرا رقمية. يقوم كل كمبيوتر منخفض بمسح دائرة الكشف عن السيارة بانتظام ، ويقرأ المعلومات الحالية لكل حارة ، ويقرر ما إذا كانت هناك سيارة تمر عبرها ؛ يعرض مؤشر LED سهم الاتجاه لكل حارة والوقت المتبقي ؛ تلتقط الكاميرا الرقمية المركبات غير القانونية. يظهر هيكل دائرة الكشف الديناميكي للمركبة في الشكل 3. تتوافق مستشعرات الملف الحلقي المدفونة تحت سطح الطريق أمام خط الأمان لكل حارة مع المذبذب لتشكيل إشارة دورية لتردد معين. يمكن استخدام الإشارة كنبض عد بعد تحويلها إلى إشارة عرض نبضة بواسطة دائرة تشكيل شميت. عندما تمر مركبة عبر الحلقي ، يتغير المجال المغناطيسي للملف ، مما يؤدي إلى تغيير في عدد نبضات العد. يتم استخدام عدد الترددات عند عدم مرور أي مركبة خلال 100 مللي ثانية كأساس العد المرجعي ، ويكون العدد الفعلي هو Num. عندما يكون NumBase> 0 ، يمكن تحديد أن السيارة قد مرت. ما يلي هو تحليل وتحقيق تعدد المهام في الكمبيوتر السفلي.

تصميم إشارات المرور الذكية بناءً على نظام التشغيل في الوقت الفعلي RTX51 و AT89C52 متحكم

(1) تقوم مهمة التهيئة بتهيئة الواجهة التسلسلية وبدء جميع المهام الأخرى. تحذف نفسها في النهاية ، لأن التهيئة مطلوبة مرة واحدة فقط.

(2) تقرأ مهمة الحصول على البيانات معلومات دوائر الكشف الديناميكي للمركبة للممرات الأربعة (1 أ ، 1 ب ، 3 ج ، 4 ج) بالتسلسل كل 100 مللي ثانية ، وتحدد ما إذا كان Num-Base أكبر من 0. إذا كان هذا صحيحًا ، يتم تعيين العلم المقابل على 1 ، وإلا فسيتم ضبطه على 0 (يشير الفلاش إلى ما إذا كانت هناك علامة مرور مركبة في الحارة). دع FLAG1 و flag1 يحددان على التوالي نتائج الكشف السابقة والحالية للممر 1 أ. إذا كان FLAG1-flag1 = 1 ، فهذا يعني أن هناك مركبة تمر عبرها (بالمثل ، يمكن استخدام FLAG2 و flag2 لتحديد الممر 1b و FLAG3 و flag3 لتحديد الممر 3c و FLAG4 والعلم 4 لتحديد نتائج الكشف عن الممر 4c قبل وبعد). إذا كانت هناك مركبة تمر في أي مسار ، فإنها ترسل إشارة إلى إحصائيات المرور ومهام مراقبة المخالفات. الإجراء كالتالي: voidjob2 () _ task_job2 {while (1) {قراءة معلومات دائرة كشف السيارة ، وتعيين قيم لـ flag1 و flag2 و flag3 و flag4 من خلال الحكم ؛ if (FLAG1-flag1 == 1 || FLAG2 -flag2 == 1 || FLAG3-flag3 == 1 || FLAG4-flag4 = 1) // إذا كانت هناك مركبة تمر في ممر {سجل المسار الذي مرت فيه السيارة ؛ os_send_signal (job3) ؛ // أرسل إشارة إلى إحصاءات حركة المرور ومهام مراقبة الانتهاكات} FLAG1 = flag1 ؛ FLAG2 = flag2 ؛ FLAG3 = flag3 ؛ FLAG4 = flag4 ؛ // يصبح العلم الحالي هو العلم السابق وكل عداد يستعيد القيمة الأولية ؛ os_wait (100 مللي ثانية) ؛} }

(3) مهمة إحصائيات المرور ومراقبة المخالفات بعد تلقي الإشارة من المهمة 2 ، يمكنها إدراك وظيفة إحصائيات المرور أو مراقبة المخالفات وفقًا لسجل المسار المقدم من قبلها وحالة العرض الحالية للمسار. voidjob3 () _ task_job3 {while (1) {os_wait (K_SIG، 0،0) ؛ إذا (1a || 1b lane به سيارة تمر) {إذا (الضوء الأحمر حاليًا) ابدأ الكاميرا الرقمية لالتقاط وقراءة الوقت الحالي من ساعة الوقت الحقيقي ؛ elseN1 ++ ؛ // عد المركبات المارة أثناء مدة الضوء الأخضر} آخر إذا كان الضوء الأحمر الحالي أحمر ، ابدأ الكاميرا الرقمية لالتقاط الوقت وقراءته. 3 ج ، 4 ج مراقبة الانتهاك}}

(4) مهمة العرض يوضح الشكل 2 مخططًا تخطيطيًا لتسلسل حركة المرور النموذجي عند تقاطع. على مصابيح LED الخارجية ، يتم عرض أربعة أسهم لاتجاه الممر وإشارات المرور الخاصة بعبور المشاة ، بالإضافة إلى الوقت المتبقي للممرات 1a-1b . يتم إعطاء وقت النافذة الأولي بواسطة الكمبيوتر المضيف. يتم تحديث القيمة المعروضة كل ثانية. Voidjob4 () _ task_job4 {t1 = T1؛ // T1 هو وقت نافذة الضوء الأخضر الذي يمنحه الكمبيوتر المضيف بينما (1) {أسهم الاتجاه لكل تقاطع وإشارات المرور في الممر والوقت المتبقي للممرات 1 أ و 1 ب (t1) معروضة ؛ os_wait (1000 مللي ثانية) ؛ // 1s تحديث t1– ؛ إذا (t1 == 0) {os_create_task (job6) ؛ // إذا انتهى الوقت ، أنشئ مهمة اتصال os_delete_task (job4) ؛} / / حذف مهمة العرض}}

(5) تقوم مهمة إعادة تعيين الوكالة الدولية للطاقة الذرية بإعادة تعيين هيئة المراقبة بشكل دوري ، مما يشير إلى أن البرنامج يعمل بشكل طبيعي.

(6) مهمة الاتصال عندما يحين الوقت ، قم بتبديل عرض إشارة المرور وفقًا للوضع الحالي.إذا كان 1a و 1b حاليًا أضواء خضراء ، فسيتم إخطار الكمبيوتر العلوي عند انتهاء الوقت ، وسيكون تدفق حركة المرور الإحصائي ينتقل إلى الكمبيوتر العلوي من خلال المنفذ التسلسلي. يقوم الكمبيوتر بتشغيل المجموعة التالية من الأضواء الخضراء للعرض ؛ اليمين 1 أ و 1 ب هما ضوءان أحمران حاليًا ، ثم انتظر حتى يقوم الكمبيوتر العلوي بتشغيل الإشارة بعد انتهاء الوقت. بهذه الطريقة ، يمكن للجدولة الموحدة للكمبيوتر العلوي تجنب الفارق الزمني الذي تسببه الإدارة المستقلة لكل كمبيوتر منخفض. نظرًا لأن مهمة الاتصال لها متطلبات عالية بشأن خصائص الوقت ، يجب تعيين مهمة الاتصال كأولوية عالية. Voidjob6 () _task_job6_prority_1 {إذا (انتهى وقت الضوء الأخضر) {V1 = N1 * 60 / (2 * T1) ؛ // يمثل N1 مجموع المركبات التي تمر عبر الممرات 1a و 2b خلال الوقت T1 ، V1 هي المركبتان في دورة الضوء الأخضر ينقل متوسط ​​تدفق حركة المرور لكل دقيقة في الممر قيمة V1 إلى الكمبيوتر العلوي ؛ يتم مسح N1 إلى 0 ؛ يتحول 1a ، 1b ، 3c ، 2p إلى اللون الأحمر للعرض ؛} إذا (انتهى وقت الضوء الأحمر) {os_wait (K_SIG، 0، 0)؛ // انتظر الكمبيوتر العلوي تقوم إشارة الكمبيوتر بتحديث T1 وفقًا لبيانات حساب الكمبيوتر العلوي ؛ 1a، 1b، 4c، 2p turn green display؛} os_create_task (job4)؛ // Create عرض المهمة os_delete_task (job6)؛ // Delete نفسه}

2.2 تصميم الكمبيوتر المضيف

يكمل الكمبيوتر العلوي بشكل أساسي وظيفة التفاعل بين الإنسان والحاسوب. إنها شاشة LCD خارجية ولوحة مفاتيح. تعرض شاشة LCD وقت نافذة الضوء الأخضر الحالي لكل تقاطع في حالة السكون. عندما يكون هناك استجابة لوحة المفاتيح ، يتم عمل الشاشة المساعدة المقابلة. لوحة مفاتيح هذا النظام تستخدم 9 مفاتيح. يمكن الضغط على هذا المفتاح عندما تتطلب سيارات الطوارئ (مثل سيارات الشرطة أو سيارات الإطفاء أو سيارات الإسعاف ، إلخ) مرورًا في الحارة الرئيسية. قام النظام بتعيين 6 خيارات وظيفية: خيار ضبط الوقت لنافذة الضوء الأخضر للممرات الأربعة الرئيسية ، وخيار تبديل وضع التشغيل اليدوي / التلقائي وخيار الاستعلام عن سجل الانتهاك. يمكن تبديل هذه الوظائف الست بالضغط على مفاتيح الوظائف. فيما يلي تحليل وتنفيذ تعدد المهام في الكمبيوتر المضيف.

(1) مهمة التهيئة قم بتهيئة الواجهة التسلسلية ونافذة الضوء الأخضر (20 ثانية) لكل مجموعة حارة ، وابدأ المهام الأخرى ، وأخيراً احذف نفسها.

(2) تستخدم مهمة مسح لوحة المفاتيح طريقة الاستعلام المتسلسل لفحص لوحة المفاتيح بانتظام لتحديد ما إذا كان المفتاح مضغوطًا أم لا. إذا كان الأمر كذلك ، فحدد المفتاح الذي تم الضغط عليه وأرسل إشارة إلى المهمة 3. voidjob2_task_job2 {while (1) {scan the keyboard؛ if (تم الضغط على مفتاح) {judg أي مفتاح هو؛ os_send_signal (job3)؛} os_wait (10ms)؛}}

(3) مهمة معالجة لوحة المفاتيح إذا تم الضغط على مفتاح الوظيفة في الموقف الأولي ، فسوف يدخل 6 عناصر وظيفية. اضغط على مفتاح الوظيفة مرة أخرى للتبديل بين عناصر الوظائف الستة هذه ؛ إذا تم الضغط على مفتاح OK ، فسيتم إنشاء المهمة المحددة بواسطة عنصر الوظيفة المقابل. سيؤدي الضغط على مفتاح الوصول في حالة الطوارئ تحت أي ظرف من الظروف إلى إنشاء مهمة وصول طارئة.

(4) مهمة العرض عندما لا تكتشف مهمة مسح لوحة المفاتيح إشارة الإدخال خلال فترة زمنية معينة ، سيتم تحويل شاشة LCD إلى حالة السكون ، وستعرض اللوحة وقت نافذة الضوء الأخضر الحالي لكل مجموعة حارات. إذا تم تحديث وقت النافذة بسبب المهمة 5 ، فعند الضغط على أحد المفاتيح ، سيتم عرض الشاشة المساعدة المقابلة وفقًا لحالة المفتاح.

(5) مهمة الضبط التلقائي للوقت في وضع التشغيل التلقائي ، كل 10 دقائق ، قم بتحليل تدفق حركة المرور لكل مجموعة حارة تم تحميلها بواسطة كل كمبيوتر منخفض ، وحدد التخصيص الأمثل للوقت لكل مجموعة حارات وفقًا للخوارزمية الضبابية. تُستخدم V1 ، V2 ، V3 ، V4 لتمثيل تدفق حركة التوازن الحالي لكل دقيقة من مجموعات الممرات الأربعة 1a-1b ، 2a-2b ، 3a-3b ، 4a-4b ، و t1 ، t2 ، t3 ، و t4 تمثل وقت نافذة الضوء الأخضر المعني ، ثم يتم سرد تخصيص وقت الضوء الأخضر في الجدول 1. الجدول 1 جدول تخصيص وقت الضوء الأخضر Vi (i = 1 ~ 4) Vi≤55 <5i≤101020ti / S1520253035 ليس من الصعب فهم أن وقت نافذة الضوء الأحمر لكل مجموعة يساوي مجموع وقت نافذة الضوء الأخضر من المجموعات الثلاث الأخرى. لتجنب وقت انتظار طويل جدًا لمجموعة معينة من الممرات ، عندما يكون هناك أكثر من مسارين مقترنين بتدفق حركة مرور متوازن في الدقيقة أكبر من 15 ، يتم ضبط وقت الضوء الأخضر على 30 ثانية. وبهذه الطريقة ، لا تتجاوز أطول مدة انتظار 90 ثانية.

تصميم إشارات المرور الذكية بناءً على نظام التشغيل في الوقت الفعلي RTX51 و AT89C52 متحكم

(6) مهمة الضبط اليدوي للوقت في كل مرة يتم فيها الضغط على “مفتاح +” ، يتم زيادة وقت نافذة الضوء الأخضر لمجموعة الممر الحالية بمقدار 1 ، ويتم تقليل “- المفتاح” بمقدار 1. عند الضغط على مفتاح OK ، يتم تخزين الوقت المحدد الحالي في المتغير Ti.

(7) مهمة التبديل اليدوي / التلقائي عند التبديل إلى وضع التشغيل التلقائي ، قم بإنشاء المهمة 5 ، وأرسل إشارة لجعل عنصر الوظيفة “ضبط وقت نافذة الضوء الأخضر للممر الرئيسي” في المهمة 3 غير قابل للتحديد. عند التبديل إلى وضع التشغيل اليدوي ، يتم حذف المهمة 5 ، ويتم تحرير القيد على عنصر وظيفة ضبط الوقت.

(8) تقرأ مهمة الاستعلام غير القانوني السجلات غير القانونية لكل كمبيوتر ، بما في ذلك الممرات غير القانونية والوقت غير القانوني ، وتعرضها على شاشة LCD. يمكن الحصول على معلومات الصور للمركبات غير القانونية بواسطة الكاميرات الرقمية.

(9) مهمة الوصول في حالات الطوارئ عند الضغط على مفتاح إعلام الطوارئ ، يتم إنشاء المهمة. تقوم المهمة أولاً بحفظ وقت نافذة الضوء الأخضر لمجموعة الممرات الحالية ، ثم تفرض مجموعة الممرات مع الطوارئ لعرض الضوء الأخضر ومجموعة الممرات الأخرى لعرض الضوء الأحمر ، وذلك لضمان المرور المنظم للمركبة التالية . بعد مهلة 10 ثوانٍ ، ستتم استعادة عرض التسلسل السابق. نظرًا لأن الخاصية الزمنية لهذه المهمة متطلبة للغاية ، فيجب تعيين أولويتها على 2 ، وهي أعلى من مهمة الاتصال. أخيرًا تحذف نفسها.

(10) تقوم مهمة إعادة تعيين الوكالة الدولية للطاقة الذرية بإعادة تعيين هيئة المراقبة بشكل دوري ، مما يشير إلى أن البرنامج يعمل بشكل طبيعي.

(11) مهمة الاتصال عندما يقوم جهاز كمبيوتر منخفض بتشغيل مقاطعة المنفذ التسلسلي بسبب وقت الضوء الأخضر ، يجب أخذ تدفق حركة المرور الحالي VI للكمبيوتر السفلي ، ويجب تشغيل الكمبيوتر السفلي الذي يتحكم في مجموعة الممرات التالية لعرض الضوء الأخضر ؛ في نفس الوقت ، يتم تعيين وقت نافذة الضوء الأخضر المحدث ti (i = 1 ~ 4) لكل كمبيوتر منخفض ، وذلك لتحقيق التعديل الديناميكي لتدفق حركة المرور. نظرًا للمتطلبات العالية لخصائص الوقت لهذه المهمة ، يتم تعيين أولويتها على 1.

3 – الخلاصة

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

  • components
  • الإخبارية
  • ابدأ من أبعاد متعددة لإنشاء معدات اختبار أوتوماتيكية مستقرة وفعالة لتلبية الفرص والتحديات في عصر تكامل الدائرة المتكاملة
  • نتحدث عن حالة صناعة شنغهاي IC
  • Fuji 2MBI100U4A-120 New Stock
  • Fuji 2MBI200U4H-120 New Stock
  • ما هو الفرق بين المستشعر والمشغل
©2022 bsm300gb120dlc | Created by bsm300gb120dlc
Go to mobile version