جدول المحتويات:
- الخطوة 1: المواد
- الخطوة الثانية: بدء الترميز
- الخطوة 3: ملف القيود
- الخطوة 4: فليب فلوب
- الخطوة 5: ملف الشرائح
- الخطوة 6: ملف مقسم الساعة
- الخطوة 7: ملف إشارة المؤازرة
- الخطوة 8: ملف علوي مؤازر
- الخطوة 9: الملف العلوي
- الخطوة 10: الاختبار في Vivado
- الخطوة 11: إنشاء مقدمة عن الأجهزة
- الخطوة 12: التحضير
- الخطوة 13: اللحام
- الخطوة 14: النهاية
فيديو: فارز القمامة CPE 133: 14 خطوة
2025 مؤلف: John Day | [email protected]. آخر تعديل: 2025-01-13 06:56
بالنسبة لفصلنا CPE 133 في Cal Poly ، فقد طُلب منا إنشاء مشروع VHDL / Basys 3 من شأنه أن يساعد البيئة وكان بسيطًا بما يكفي بحيث يمكننا تنفيذه بمعرفتنا الجديدة بالتصميم الرقمي. الفكرة الكامنة وراء مشروعنا ، بشكل عام ، أن الناس لا يفكرون في المكان الذي يلقون فيه القمامة. قررنا إنشاء آلة تجبر الناس على التفكير في المكان الذي يضعون فيه القمامة. يأخذ فارز القمامة لدينا مدخلات المستخدم من خلال ثلاثة مفاتيح ، يمثل كل منها إما القمامة أو إعادة التدوير أو السماد. بمجرد أن يختار المستخدم نوع النفايات التي يرغب في التخلص منها ، يضغط على زر. سيؤدي هذا الزر إلى فتح أغطية الحاوية المقابلة. استخدمت الآلة أيضًا شاشة العرض على Basys 3 للإشارة إلى ما إذا كان أي من الأغطية مفتوحًا حاليًا. عند تحرير الزر ، سيتم إغلاق الأغطية مرة أخرى حتى يصبح الجهاز جاهزًا للمستخدم التالي.
الخطوة 1: المواد
المواد المطلوبة لهذا المشروع هي:
مجلس 3 Basys
جهاز كمبيوتر مثبت عليه Vivado
3x مضاعفات *
3 قدم سلك نحاسي
قاطع أسلاك / متجرد
لحام الحديد ولحام
* نظرًا لأن الماكينات باهظة الثمن ونحن طلاب جامعيون ، فقد استبدلنا المقاوم 68 أوم و LED لكل مؤازر كنموذج أولي (يعمل الكود بنفس الطريقة)
الخطوة الثانية: بدء الترميز
هناك الكثير من التعليمات البرمجية التي يجب كتابتها لهذا المشروع. سنستخدم كود VHDL المكتوب بلغة Vivado. للبدء ، نريد إنشاء مشروع جديد. أولاً ستقوم بتسمية المشروع وتحديد نوع المشروع. تأكد من تحديد نفس الإعدادات كما في الصورة. عندما تصل إلى شاشة المصادر ، ستحتاج إلى إضافة ستة مصادر باسم "top" و "flip_flop" و "segments" و "servo_top" و "servo_sig" و "clk_div". تأكد من تحديد VHDL للغة كل ملف ، وليس Verilog. في شاشة القيود ، يجب إنشاء ملف واحد لتخصيص رقم التعريف الشخصي. اسم هذا الملف ليس مهما. سيُطلب منك بعد ذلك تحديد اللوحة التي ستستخدمها. تأكد من تحديد الخيار الصحيح. صور مرجعية للاختيار الصحيح. ستطلب منك الخطوة الأخيرة تحديد المدخلات والمخرجات لكل ملف مصدر. يمكن ترميز هذه الخطوة لاحقًا ، لذا انقر فوق التالي.
الخطوة 3: ملف القيود
في هذه الخطوة سنكتب ملف القيود. هذا يخبر Vivado عن المسامير التي سترسل / تستقبل الإشارات من الدائرة. سنحتاج إلى الساعة ، وثلاثة مفاتيح ، وعرض سبعة أجزاء (سبعة كاثودات وأربعة أنودات) ، وزر ودبابيس PMOD الثلاثة التي ستستخدمها المؤازرة / LED. صور مرجعية لكيفية ظهور الكود.
الخطوة 4: فليب فلوب
الملف التالي الذي سنكتبه هو ملف المصدر flip_flip. سيكون هذا تطبيق VHDL من D flip flop. بمعنى آخر ، سوف يمرر مدخلاته فقط إلى الإخراج على الحافة الصاعدة لإشارة الساعة وعند الضغط على الزر. سيستغرق الأمر الساعة ، D والزر كمدخلات وسيخرج Q. مرجع الصور للحصول على الكود. الغرض من هذا الملف هو السماح للصناديق بالفتح فقط عند الضغط على الزر بدلاً من الفتح المباشر في كل مرة يتم فيها قلب المفتاح وإغلاقه فقط عند قلب المفتاح للخلف.
الخطوة 5: ملف الشرائح
الملف التالي المراد كتابته هو ملف المقاطع. سيأخذ هذا الزر كما هو الحال في قيم المدخلات والمخرجات للكاثودات السبعة وأربعة أنود من شاشة Basys 3 السبعة. يتسبب هذا الملف في عرض الأجزاء السبعة للحرف "C" عند إغلاق الصناديق و "O" عندما تكون الحاويات مفتوحة. للحصول على رمز انظر الصورة المرفقة.
الخطوة 6: ملف مقسم الساعة
تعمل الماكينات عن طريق أخذ إشارة PWM بتردد 64 كيلو هرتز بينما تعمل الساعة المدمجة في Basys 3 عند 50 ميجا هرتز. سيقوم ملف مقسم الساعة بتحويل الساعة الافتراضية إلى تردد مألوف للمؤازرة. سيأخذ الملف الساعة وإشارة إعادة التعيين كإدخال وسيخرج إشارة ساعة جديدة. انظر الصورة المرفقة للحصول على رمز.
الخطوة 7: ملف إشارة المؤازرة
سيأخذ ملف إشارة المؤازرة مدخلات الساعة ، ومدخلات إعادة الضبط وإدخال الموضع المطلوب. سيخرج إشارة PWM التي ستقود المؤازرة إلى الموضع المطلوب. يستخدم هذا الملف إشارة الساعة التي تم إنشاؤها في الملف الأخير لإنشاء إشارة PWM للمؤازرة بدورات عمل مختلفة اعتمادًا على الموضع المطلوب. هذا يسمح لنا بتحويل الماكينات التي تتحكم في أغطية صناديق القمامة. انظر الصورة المرفقة للحصول على رمز.
الخطوة 8: ملف علوي مؤازر
الغرض من هذا الملف هو تجميع آخر ملفين في برنامج تشغيل مؤازر وظيفي. سوف يستغرق الأمر ساعة وإعادة تعيين وموضع كمدخل وسيخرج إشارة PWM المؤازرة. سيستخدم كلاً من مقسم الساعة وملف إشارة المؤازرة كمكونات وسيتضمن إشارة ساعة داخلية لتمرير الساعة المعدلة من مقسم الساعة إلى ملف إشارة المؤازرة. مشاهدة الصور في
الخطوة 9: الملف العلوي
هذا هو أهم ملف في المشروع لأنه يلتف بكل شيء قمنا بإنشائه معًا. سوف يأخذ الزر والمفاتيح الثلاثة والساعة كمدخلات. سيعطي السبعة الكاثودات ، والأنودات الأربعة وإشارات المؤازرة / LED الثلاثة كمخرجات. سيستخدم ملفات flip flop والمقاطع وملفات servo_top كمكونات وسيكون له مفتاح داخلي وإشارة مؤازرة داخلية.
الخطوة 10: الاختبار في Vivado
قم بتشغيل التوليف والتنفيذ وكتابة bitsream في Vivado. إذا واجهت أي رسائل خطأ ، فابحث عن موقع الخطأ ثم قارنه بالرمز المحدد. اعمل من خلال أي أخطاء حتى تنتهي كل هذه العمليات بنجاح.
الخطوة 11: إنشاء مقدمة عن الأجهزة
في هذه الخطوة سوف تقوم بإنشاء أجهزة LED التي استخدمناها في النموذج الأولي الخاص بنا. في حالة استخدام الماكينات ، يجب أن يكون المشروع جاهزًا للعمل طالما تم استخدام المسامير الصحيحة. في حالة استخدام مصابيح LED ، اتبع الخطوات أدناه.
الخطوة 12: التحضير
قطع السلك إلى ست قطع متساوية. قم بفصل نهايات كل قطعة من الأسلاك بما يكفي بحيث يمكن أن يحدث لحام. افصل المصابيح والمقاومات والأسلاك إلى ثلاث مجموعات. تسخين الحديد لحام.
الخطوة 13: اللحام
قم بتلحيم كل من المقاومات 68 أوم في الجانب السلبي من الصمام المقابل لها. قم بلحام سلك على الجانب الإيجابي من LED وسلك آخر على جانب المقاوم غير ملحوم بالصمام. يجب أن يكون لديك ثلاثة من موانع LED الموضحة أعلاه.
الخطوة 14: النهاية
أدخل كل سلك موجب في دبوس PMOD المقابل وكل سالب في دبوس PMOD الأرضي. أضف صناديق من الورق المقوى اختياريًا لتمثيل صناديق القمامة وإخفاء فوضى اللحام. بمجرد توصيل الأسلاك بشكل صحيح وتحميل الكود بشكل صحيح على اللوحة دون أخطاء ، يجب أن يعمل الجهاز على النحو المنشود. إذا حدث خطأ ما ، فارجع إلى الخطوات السابقة لتحري الخلل وإصلاحه. استمتع بفرز القمامة الجديد.