جدول المحتويات:
- الخطوة 1: تصميم اللوحة
- الخطوة الثانية: القطع بالليزر
- الخطوة 3: بناء الجهاز
- الخطوة 4: بناء الدوائر
- الخطوة 5: قم بتحميل الكود
- الخطوة 6: الانتهاء من الجهاز
- الخطوة 7: تم !!!!
فيديو: Azimuthal Projection 3D Map Decoration X Folk Music Puzzle Game - Arduino: 7 Steps
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:37
المقدمة
ستوجهك الصفحة التالية إلى كيفية إنشاء مشروع Arduino ، الذي يحتوي على وظيفتين رئيسيتين - الديكور البسيط مع الإضاءة ولعبة ألغاز الموسيقى الشعبية ، التي تتضمن مجالات الجغرافيا والهندسة والخرائط والأمم المتحدة والموسيقى معًا في واحدة. بناءً على هيكل الأشكال السداسية ، يصور الجهاز خريطة العالم في الإسقاط السمتي المتساوي البعد ، وهو شكل إسقاط الخريطة الذي تستخدمه الأمم المتحدة (ورمزها).
عند تنشيط وضع الزخرفة ، ستتوهج قارات الخريطة بألوان مختلفة تحددها مجموعات عشوائية من قيم RGB من خلال استخدام RGB LEDs.
من ناحية أخرى ، يتطلب وضع اللعبة من المستخدمين التعرف على أصل أغاني الموسيقى الشعبية (يتم تحديدها عن طريق توليد الأرقام عشوائيًا من 1 إلى 20) ووضع اللوحة القارية للرد في موقعها المقابل على اللوحة الخشبية الرئيسية داخل مجموعة. الوقت (مضبوط مسبقًا لمدة دقيقة واحدة).
_
اللوازم
المواد الفعلية
- 5 مم RGB LEDs * 20
- الأسلاك
- المقاومات * 9
- لوحة اردوينو * 1 (أي نوع)
- ألواح التوصيل * 3
- الأزرار * 7
- لوحة عرض LCD I2C * 1
- صندوق من الورق المقوى (13 * 9 * 5.7 إنش ، 33 * 23 * 14.5 سم)
- لوح خشبي (37.5 * 29 * 0.8 سم)
- ألواح أكريليك (شفاف * 2 ، شبه شفاف * 1)
- شاحن محمول * 1
أدوات:
- شفرة * 1
- مواد لاصقة علاج الأشعة فوق البنفسجية * 1
- شريط على الوجهين * 1 لفة
- مسدس الغراء الساخن * 1
الآلات:
آلة القطع بالليزر
برمجة:
- Adobe Illustrator
- أدوبي فوتوشوب
- الكركدن 3D
الخطوة 1: تصميم اللوحة
يمكنك تنزيل الملف المرفق مباشرة أو اتباع الخطوات أدناه.
تحديد الخريطة
-
قم بتنزيل مخطط الخريطة من Google
- Google "شعار الأمم المتحدة"
- حدد "أدوات - الحجم - كبير"
- قم بتنزيل الصورة المفضلة لديك (الصورة التي يستخدمها هذا المشروع: رابط) * حاول عدم تحديد الصور ذات الخطوط المعقدة المتداخلة مع الأراضي القارية *
-
انقل الخريطة التي تم تنزيلها إلى نسخة الطباعة
- قم بتلوين المناطق غير المرغوب فيها باللون الأبيض باستخدام وظيفة الرسام في Adobe Photoshop
- تصدير الملف (JPEG)
- قم باستيراد الملف إلى Adobe Illustrator واستخدم وظيفة "تتبع الصورة" لتتبع الخريطة
- تصدير الملف (dxf)
إضافة الخلفية السداسية
- استيراد ملف dxf إلى وحيد القرن
- حدد وظيفة "المضلع" وأدخل الرقم "6" لخيار "NumSides"
- أدخل "3.5" لقيمة نصف القطر
- ارسم 28 شكل سداسي متساوي الحجم
- تصدير الملف في 3dm
الخطوة الثانية: القطع بالليزر
- قم باستيراد الملف المكتمل مسبقًا إلى xxx.
- باستخدام آلة القطع بالليزر ، قم بطباعة الجسم الرئيسي على اللوح الخشبي والقارات على ألواح الأكريليك (2 شفافة و 1 شبه شفافة) (يتم توفير مقاطع الفيديو أعلاه)
الخطوة 3: بناء الجهاز
اللوحات بعد القطع بالليزر
-
قارات أكريليك
- استخدم المواد اللاصقة القابلة للمعالجة بالأشعة فوق البنفسجية للصق الألواح الثلاثة لكل قارة معًا (مع شبه شفافة كالطبقة الوسطى)
- استخدم ضوء الأشعة فوق البنفسجية للتألق على المناطق الملصقة للسماح للمواد اللاصقة بالتصلب
-
مؤسسة لوح خشبي
- قم يدويًا بإزالة مناطق الأرض الصغيرة العالقة على اللوح الخشبي الرئيسي
- * في حالة كسر أي جزء من اللوح الخشبي ، استخدم المواد اللاصقة القابلة للمعالجة بالأشعة فوق البنفسجية للصقها مرة أخرى *
بناء القاعدة (الأساس السفلي للجهاز بأكمله)
- ابحث عن صندوق من الورق المقوى بحجم مناسب ، بأبعاد قريبة من 13 * 9 * 5.7 بوصة (33 * 23 * 14.5 سم)
- باستخدام اللوح الخشبي كنموذج مرجعي ، ارسم الأجزاء القارية على السطح العلوي للصندوق
- تتبع الجزء السفلي من الأزرار على السطح العلوي للمربع ، مع وضع كل زر في المنتصف داخل كل أجزاء قارية متتبعة
- استخدم شفرة لقطع أجزاء الزر باتباع الآثار
- داخل الأجزاء القارية التي تم تتبعها ، استخدم شفرة لقطع المقاطع القصيرة المحيطة بالزر
- تتبع جزأين سفليين آخرين من الزر على الجانب الأيمن من المربع (حاول محاذاة الآثار بنفس الارتفاع)
- تتبع لوحة شاشة LCD على الجانب الأيمن من الصندوق (فوق الزرين في الخطوة السابقة)
- استخدم شفرة لقطع جزأي الزر وجزء LCD باتباع الآثار في الخطوتين 6 و 7
الخطوة 4: بناء الدوائر
بالرجوع إلى المخططات أعلاه ، قم ببناء الدائرة.
ملحوظة:
- المقاومات الخاصة بمصابيح RGB LED ومقاومات الأزرار مختلفة ، انظر بوضوح!
-
نظرًا لأن لوحة عرض LCD أعلاه لا تحتوي على طراز I2C ، فهي غير متصلة بشكل مثالي. (يجب على لوحات عرض LCD مع طرازات I2C توصيل أربعة دبابيس فقط)
- قم بتوصيل GNDs بجهاز العرض ولوحة Arduino
- قم بتوصيل VCC على جهاز العرض مع المسامير الموجبة على اللوح
- قم بتوصيل SDAs بجهاز العرض ولوحة Arduino
- قم بتوصيل SCLs على جهاز العرض ولوحة Arduino
الخطوة 5: قم بتحميل الكود
يمكن العثور على رمز هذا المشروع هنا أو أدناه.
يحتوي كل سطر ترميز على ملاحظة جانبية توضح الغرض منه ووظيفته.
ملحوظة:
- يمكن تغيير جميع دبابيس D المحددة وتعديلها بناءً على تخطيط دائرتك
- يمكن تغيير كل الثواني المتأخرة إلى قيم مختلفة ، لكن لا تحذفها! (تسمح هذه الثواني المتأخرة بالتدفق المنطقي للشفرة. وبدون هذه الثواني ، قد لا تعمل بعض أجزاء الكود!)
- في السطر 24 (مقدمة "for loop") ، يمكنك تعيين عدد التكرار الذي تريد تشغيل الحلقة من أجله (القيمة الأصلية هي 5)
- يمكن ضبط مجموعة ألوان RGB LEDs في كل زر "إذا تم الضغط عليه" وحلقات "إذا لم يتم الضغط عليه" وتخصيصها. (في الأصل ، ستضيء مصابيح RGB LED باللون الأخضر إذا تم الضغط عليها بينما تتألق باللون الأحمر إذا لم يتم الضغط عليها. يمكنك تغيير القيم للحصول على ألوان إبداعية للإجابة على "اليمين" و "الخطأ")
#يشمل
# تتضمن LiquidCrystal_I2C lcd_I2C_27 (0x27، 16، 2) ؛ // تعيين عنوان LCD لعرض 16 حرفًا و 2 سطر int _R ؛ / / أدخل المتغير R ، والذي يرمز إلى القيمة الحمراء لمصابيح RGB LEDs int _G ؛ / / أدخل المتغير G ، والذي يرمز إلى القيمة الخضراء لمصابيح RGB LEDs int _B ؛ / / أدخل المتغير B ، والذي يرمز إلى القيمة الزرقاء لمصابيح RGB LED int _SongNumber ؛ // إدخال الإعداد المتغير SongNumber void () {pinMode (10، INPUT)؛ // يعين D10 كمدخل لزر زخرفة الخريطة pinMode (9 ، INPUT) ؛ // يعين D9 كمدخل لزر لعبة الألغاز pinMode (8 ، INPUT) ؛ // يعين D8 كمدخل لزر أوراسيا pinMode (4 ، INPUT) ؛ // يعين D4 كمدخل لزر أمريكا الشمالية pinMode (3 ، INPUT) ؛ // يعين D3 كمدخل لزر أمريكا الجنوبية pinMode (2 ، INPUT) ؛ // يعين D2 كمدخل لـ Africa button pinMode (1 ، INPUT) ؛ // يعين D1 كمدخل لزر أوقيانوسيا lcd_I2C_27.init () ؛ // تهيئة لوحة شاشة LCD lcd_I2C_27.backlight () ؛ // تشغيل الإضاءة الخلفية للوحة شاشة LCD} حلقة فارغة () {if (digitalRead (10)) {// إذا تم الضغط على زر زخرفة الخريطة لـ (int i = 0؛ i <5؛ ++ i) {// قم بتشغيل الحلقة التالية 5 مرات _R = عشوائي (0 ، 1023) ؛ // أعط المتغير R قيمة عشوائية من 0 إلى 1023 _G = عشوائي (0 ، 1023) ؛ // أعط المتغير G قيمة عشوائية من 0 إلى 1023 _B = عشوائي (0 ، 1023) ؛ // أعط المتغير B قيمة عشوائية من 0 إلى 1023 analogWrite (13، (_R / 4)) ؛ // قيمة R لمصابيح RGB LED لاستبدال المجموعة الأولى وتكتب القيمة المتغيرة من 0 إلى 255 analogWrite (12، (_G / 4)) ؛ // قيمة G لمصابيح RGB LED لاستبدال المجموعة الأولى وتكتب القيمة المتغيرة من 0 إلى 255 analogWrite (11، (_B / 4)) ؛ // قيمة B لمصابيح RGB LED لاستبدال المجموعة الأولى وتكتب القيمة المتغيرة من 0 إلى 255 analogWrite (7، (_R / 4)) ؛ // قيمة R لمصابيح RGB LED لاستبدال المجموعة الثانية وتكتب القيمة المتغيرة من 0 إلى 255 analogWrite (6 ، (_G / 4)) ؛ // قيمة G لمصابيح RGB LED لاستبدال المجموعة الثانية وتكتب القيمة المتغيرة من 0 إلى 255 analogWrite (5، (_B / 4)) ؛ // القيمة B لمصابيح RGB LED لاستبدال المجموعة الثانية وتكتب القيمة المتغيرة من 0 إلى 255 تأخير (3000) ؛ // انتظر 3000 مللي ثانية (3 ثوان)} // نظرًا لأن قيم المتغير R و G و B محددة في الحلقة ، سيكون هناك خمس مجموعات ألوان مختلفة لكل حلقة} إذا (digitalRead (9)) {// إذا يتم الضغط على زر لعبة الألغاز _SongNumber = عشوائي (1 ، 20) ؛ // أعطِ SongNumber المتغير قيمة عشوائية من 1 إلى 20 lcd_I2C_27.setCursor (0 ، 0) ؛ // اضبط المؤشر ، يبدأ العد بـ 0 lcd_I2C_27.print (_SongNumber) ؛ // طباعة قيمة SongNumber على لوحة عرض LCD analogWrite (13 ، 0) ؛ // إعادة تعيين وكتابة قيمة D13 كـ 0 analogWrite (12 ، 0) ؛ // إعادة تعيين وكتابة قيمة D12 كـ 0 analogWrite (11 ، 0) ؛ // إعادة تعيين وكتابة قيمة D11 كـ 0 analogWrite (7 ، 0) ؛ // إعادة تعيين وكتابة قيمة D7 كـ 0 analogWrite (6 ، 0) ؛ // إعادة تعيين وكتابة قيمة D6 كـ 0 analogWrite (5 ، 0) ؛ // إعادة تعيين وكتابة قيمة D5 بالشكل 0 إذا (_SongNumber> = 1 && _SongNumber = 4 && _SongNumber = 7 && _SongNumber = 11 && _SongNumber = 15 && _SongNumber = 18 && _SongNumber <= 20) {// إذا كانت قيمة SongNumber المتغير من 18 إلى 20 تأخير (60000) ؛ // انتظر 60000 مللي ثانية حتى يستمع اللاعبون إلى الموسيقى الشعبية (60 ثانية ؛ دقيقة واحدة) إذا (digitalRead (1)) {// إذا تم الضغط على زر أوقيانوسيا analogWrite (13 ، 0) ؛ // analogWrite اكتب قيمة D13 كـ 0 analogWrite (12 ، 255) ؛ // analogWrite اكتب قيمة D12 كـ 255 analogWrite (11 ، 0) ؛ // analogWrite اكتب قيمة D11 كـ 0 analogWrite (7 ، 0) ؛ // analogWrite اكتب قيمة D7 كـ 0 analogWrite (6 ، 255) ؛ // analogWrite D6 255 analogWrite (5 ، 0) ؛ // analogWrite قيمة D5 كـ 0} // ستلمع جميع مصابيح RGB LED باللون الأخضر else {// إذا لم يتم الضغط على زر Oceania analogWrite (13 ، 255) ؛ // analogWrite اكتب قيمة D13 كـ 255 analogWrite (12 ، 0) ؛ // analogWrite اكتب قيمة D12 كـ 0 analogWrite (11 ، 0) ؛ // analogWrite اكتب قيمة D11 كـ 0 analogWrite (7 ، 255) ؛ // analogWrite D7 كـ 255 analogWrite (6 ، 0) ؛ // analogWrite اكتب قيمة D6 كـ 0 analogWrite (5 ، 0) ؛ // analogWrite D5 كـ 0} // ستلمع جميع مصابيح RGB LED باللون الأحمر} // نظرًا لأن الإجابات الصحيحة لـ SongNumber 18 إلى 20 كلها أوقيانوسيا ، فإن "حلقة if" تصل إلى ما إذا كانت إجابة اللاعب صحيحة أم لا lcd_I2C_27.clear () ؛ // مسح تأخير لوحة شاشة LCD (1000) ؛ // انتظر 1000 مللي ثانية (ثانية واحدة)}}
الخطوة 6: الانتهاء من الجهاز
- افتح صندوق الورق المقوى وضع الدوائر التي تم إنشاؤها مسبقًا (بما في ذلك جميع العناصر ، على سبيل المثال: ثلاثة ألواح تجارب ، لوحة Arduino ، الشاحن المحمول)
-
بالإشارة إلى الكود والأجزاء القارية المتتبعة أعلى المربع ، ضع الأزرار في كل موقع من المواضع المقابلة لها
* يمكنك الرجوع إلى الملاحظات الجانبية خلف الرموز للتأكد من زر الدبوس المخصص للقارة *
- حشو "الأزرار الوظيفية" (map-deco of D10 و Puzzle-game of D9) في كل جزء من الأجزاء المقطوعة على الجانب الأيمن من الصندوق
- قم بتثبيت لوحة شاشة LCD في الجزء المقطوع على الجانب الأيمن من الصندوق
- افتح الصندوق وتأكد من توصيل جميع الأسلاك بشكل صحيح باللوحات
- قم بلصق أساس اللوح الخشبي بالجزء العلوي من الصندوق باستخدام شريط على الوجهين (تأكد من المحاذاة بشكل صحيح حتى تتناسب الأزرار مع الجزء المقطوع من الألواح الخشبية)
- استخدم مسدس الغراء الساخن لملء أجزاء المنطقة الصغيرة (وليس القارات الرئيسية)
الخطوة 7: تم !!!!
بالنسبة إلى لعبة الألغاز ، انتقل إلى الرابط الخاص بقائمة التشغيل التجريبية!
موصى به:
DIY RACING GAME SIMULATOR BUILD PART 1: 6 Steps
DIY RACING GAME SIMULATOR BUILD PART 1: مرحبًا بالجميع مرحبًا بكم ، سأوضح لكم اليوم كيف أقوم ببناء & quot؛ محاكي ألعاب السباق & quot؛ بمساعدة Arduino UNO. قناة يوتيوب & quot؛ تأكد من الاشتراك في قناتي A Builds (انقر هنا) & quot؛ هذه هي مدونة البناء ، لذا
مصباح WebApp Puzzle LED مع ESP32: 5 خطوات (مع صور)
مصباح WebApp Puzzle LED مع ESP32: لقد كنت ألعب بشرائط LED لسنوات ، وانتقلت مؤخرًا إلى مكان صديق حيث لم أتمكن من إجراء تغييرات كبيرة مثل تركيب الشريط على الجدران ، لذلك قمت بتجميع هذا المصباح الذي يحتوي على سلك واحد يخرج من أجل الطاقة ويمكن وضعه
الهروب من الورقة (Excel Puzzle): 5 خطوات (بالصور)
Escape the Sheet (Excel Puzzle): Escape the Sheet هي لعبة Excel صغيرة قمت بتجميعها منذ عدة سنوات لتعليم مجموعة من الزملاء بعض مهارات Excel الأكثر تقدمًا مع الاستمتاع قليلاً بألغاز Trivia و Logic ، وهما شيئان أحبهما! اللعبة عبارة عن مزيج من excel fo
Escape Robot: RC Car for a Escape Game: 7 Steps (with Pictures) (بالصور)
Escape Robot: RC Car for a Escape Game: كان الغرض الرئيسي من هذا المشروع هو بناء روبوت يميز نفسه عن الروبوتات الموجودة بالفعل ، ويمكن استخدامه في منطقة حقيقية ومبتكرة. لبناء روبوت على شكل سيارة من شأنه
Puzzle Box - Codebreakers and Groundbreakers [UCM]: 7 خطوات (بالصور)
Puzzle Box - Codebreakers and Groundbreakers [UCM]: طقم صندوق ألغاز مقطوع بالليزر مصمم لورشة عمل صانع رقمي في متحف Fitzwilliam ، كامبريدج فيما يتعلق بمعرض Codebreakers و Groundbreakers. بالنسبة لورشة العمل ، تم توصيل الزر الموجود في مربع اللغز بـ MakeyMakey a