สารบัญ:

Arduino Tamagotchi Clone - สัตว์เลี้ยงดิจิทัล: 8 ขั้นตอน (พร้อมรูปภาพ)
Arduino Tamagotchi Clone - สัตว์เลี้ยงดิจิทัล: 8 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Arduino Tamagotchi Clone - สัตว์เลี้ยงดิจิทัล: 8 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Arduino Tamagotchi Clone - สัตว์เลี้ยงดิจิทัล: 8 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: Arduino Digital Pet toy with a white OLED Display (Tamagotchi Clone) 2024, พฤศจิกายน
Anonim
Image
Image
Arduino Tamagotchi Clone - สัตว์เลี้ยงดิจิตอล
Arduino Tamagotchi Clone - สัตว์เลี้ยงดิจิตอล
Arduino Tamagotchi Clone - สัตว์เลี้ยงดิจิตอล
Arduino Tamagotchi Clone - สัตว์เลี้ยงดิจิตอล

ในวิดีโอนี้ เราจะสร้างสัตว์เลี้ยงดิจิทัลของเราเองโดยใช้ Arduino ซึ่งเป็นโคลน Tamagotchi

ด้วยยอดขายกว่า 76 ล้านชิ้นทั่วโลก ทามาก็อตจิเป็นหนึ่งในของเล่นที่ได้รับความนิยมมากที่สุดในยุค 90

อย่างที่คุณเห็นบนจอแสดงผล OLED ขนาดเล็ก เราดูแลไดโนเสาร์ตัวเล็ก การใช้เครื่องวัด เช่น เครื่องวัดความหิว เครื่องวัดความสุข หรือเครื่องวัดวินัย เราสามารถกำหนดได้ว่าไดโนเสาร์มีสุขภาพแข็งแรงและประพฤติตัวดีเพียงใด เราสามารถให้อาหารไดโนเสาร์ เล่นกับมัน ไปพบแพทย์เมื่อมันป่วย และอื่นๆ อีกมากมาย อย่างที่คุณเห็น เกมดังกล่าวมีคุณสมบัติและแอนิเมชั่นที่ยอดเยี่ยม มันเป็นของเล่นที่เล่นแล้วติดใจมาก ฉันจำได้ว่าเคยเล่นกับทามาก็อตจิมาหลายเดือนแล้วตอนที่ฉันยังเป็นเด็ก ฉันยังจำวันที่ทามาก็อตจิคนแรกของฉันเสียชีวิตได้ โปรเจ็กต์นี้นำความทรงจำมากมายในวัยเด็กของฉันกลับมา นั่นคือเหตุผลที่ฉันตัดสินใจสร้างมันขึ้นมา

โครงการนี้พัฒนาโดย Alojz เพื่อนจากเซอร์เบีย เขาได้ทำงานที่ยอดเยี่ยม ฉันค้นพบงานของเขาเมื่อไม่กี่เดือนที่ผ่านมา เขาได้สร้างเว็บไซต์ที่เขาแบ่งปันทุกอย่างเกี่ยวกับโครงการนี้ รหัส แผนผัง แม้แต่กล่องที่พิมพ์ 3 มิติสำหรับมัน เขาได้ทำงานที่ยอดเยี่ยมในโครงการนี้ แม้จะไม่สนใจสร้างโครงการก็ศึกษาโค้ดได้เลย Alojz เป็นนักพัฒนาที่มีทักษะสูง ดังนั้นคุณจะต้องเรียนรู้มากมายจากโค้ดของเขา

หน้าโครงการ:

ขั้นตอนที่ 1: รับชิ้นส่วนทั้งหมด

รับอะไหล่ทั้งหมด
รับอะไหล่ทั้งหมด

ในการสร้างโครงการนี้ เราจำเป็นต้องมีส่วนต่างๆ ดังต่อไปนี้:

  • Arduino Pro Mini ▶
  • จอแสดงผล I2C OLED ▶
  • 3 ปุ่มกด ▶
  • ลำโพงขนาดเล็กหรือ Buzzer ▶
  • สวิตช์ ▶
  • บอร์ดชาร์จแบตเตอรี่ LiPo ▶
  • แบตลิโพ 150mAh ▶
  • ตัวต้านทาน 10K ▶
  • บอร์ดต้นแบบขนาด 7x5 ซม. ▶
  • โปรแกรมเมอร์ FTDI ▶
  • สายบางเส้น ▶

ค่าใช้จ่ายของอุปกรณ์อิเล็กทรอนิกส์น้อยกว่า 15$!

หากคุณกำลังจะพิมพ์ 3 มิติกล่องหุ้ม คุณจะต้องใช้เส้นใยไม้สองม้วน ฉันใช้ไม้เบิร์ช Easy Wood และใยมะพร้าวของ FormFutura

ไส้มะพร้าว ▶

ไส้ไม้เบิร์ช ▶

สำหรับโครงตู้ เราต้องการวัสดุประมาณ 70 กรัม ดังนั้นราคาจะอยู่ที่ประมาณ 5 เหรียญสหรัฐฯ ดังนั้นค่าใช้จ่ายทั้งหมดของโครงการจึงอยู่ที่ประมาณ 20 เหรียญสหรัฐฯ

ขั้นตอนที่ 2: จอแสดงผล OLED 0.96"

Image
Image
0.96
0.96

จอแสดงผล OLED ขนาด 0.96 เป็นจอแสดงผลที่ดีมากสำหรับใช้กับ Arduino เป็นจอแสดงผล OLED ซึ่งหมายความว่ามีการใช้พลังงานต่ำ การใช้พลังงานของจอแสดงผลนี้อยู่ที่ประมาณ 10-20 mA และขึ้นอยู่กับจำนวนพิกเซล จะสว่าง

จอแสดงผลมีความละเอียด 128 × 64 พิกเซลและมีขนาดเล็กมาก Furturmore มันสว่างมากและมีการสนับสนุนห้องสมุดที่ยอดเยี่ยม Adafruit ได้พัฒนาห้องสมุดที่สวยงามมากเกี่ยวกับการแสดงผลนี้ คุณสามารถค้นหาห้องสมุดนี้ได้ที่นี่ นอกจากนั้น จอแสดงผลยังใช้อินเทอร์เฟซ I2C ดังนั้นการเชื่อมต่อกับ Arduino ทำได้ง่ายมาก คุณต้องเชื่อมต่อสายไฟสองเส้นเท่านั้น ยกเว้นจาก Vcc และ GND

หากคุณเพิ่งเริ่มใช้ Arduino และต้องการจอแสดงผลราคาไม่แพงและใช้งานง่ายเพื่อใช้กับโปรเจ็กต์ของคุณ ให้เริ่มด้วยจอแสดงผล เป็นวิธีที่ง่ายที่สุดในการเพิ่มการแสดงผลในโครงการ Arduino ของคุณ

ได้ที่นี่ ▶

ขั้นตอนที่ 3: สร้างวงจร

สร้างวงจร
สร้างวงจร
สร้างวงจร
สร้างวงจร
สร้างวงจร
สร้างวงจร

วงจรหลัก

ก่อนอื่นมาสร้างอุปกรณ์อิเล็กทรอนิกส์กันก่อน ฉันใช้บอร์ดต้นแบบขนาดเล็ก 7x5 ซม. เพื่อประสานอุปกรณ์อิเล็กทรอนิกส์ทั้งหมดเข้าด้วยกัน นี่เป็นครั้งแรกที่ฉันใช้บอร์ดต้นแบบในโครงการ ดังนั้นฉันจึงไม่รู้ว่ามันจะออกมาเป็นอย่างไร อันดับแรก ฉันจัดเรียงชิ้นส่วนทั้งหมดบนกระดานต้นแบบ จากนั้นฉันก็เริ่มประสานชิ้นส่วนทีละส่วนตามแผนผัง

หนึ่งชั่วโมงต่อมาทุกอย่างถูกบัดกรี ปรากฎว่าง่ายกว่าที่ฉันคิด ถึงเวลาโหลดโค้ดลง Arduino Pro Mini ฉันใช้โปรแกรมเมอร์ FTDI เพื่อโหลดโค้ดและทุกอย่างทำงานได้ดี!

วงจรแบตเตอรี่

จากนั้นก็ถึงเวลาสร้างวงจรแบตเตอรี่ ฉันใช้บอร์ดชาร์จ LiPo ขนาดเล็กที่สามารถชาร์จและปกป้องแบตเตอรี่ LiPo ได้ กระแสไฟชาร์จเริ่มต้นที่บอร์ดจ่ายให้กับแบตเตอรี่คือ 1000mA นี้ใหญ่เกินไปสำหรับแบตเตอรี่ขนาดเล็กของเรา เราใช้แบตเตอรี่ขนาด 150mAh ดังนั้นกระแสไฟชาร์จต้องไม่เกิน 150mA ดังนั้นเราจึงต้องถอดตัวต้านทานนี้ที่นี่และแทนที่ด้วยตัวต้านทาน 10K วิธีนี้ทำให้เราลดกระแสไฟชาร์จลงเหลือประมาณ 130mA ซึ่งเหมาะสำหรับแบตเตอรี่ 150mAh ตอนนี้ได้เวลาย้ายไปที่กรงแล้ว

ขั้นตอนที่ 4: 3D พิมพ์สิ่งที่แนบมา

3D พิมพ์สิ่งที่แนบมา
3D พิมพ์สิ่งที่แนบมา
3D พิมพ์สิ่งที่แนบมา
3D พิมพ์สิ่งที่แนบมา
3D พิมพ์สิ่งที่แนบมา
3D พิมพ์สิ่งที่แนบมา
3D พิมพ์สิ่งที่แนบมา
3D พิมพ์สิ่งที่แนบมา

ขั้นตอนต่อไปคือการพิมพ์ 3 มิติกล่องหุ้ม ฉันออกแบบกล่องหุ้มนี้โดยใช้ซอฟต์แวร์ฟรี Fusion 360 ฉันลองใช้ซอฟต์แวร์ออกแบบ 3 มิติหลายตัว แต่ Fusion 360 กลายเป็นรายการโปรดของฉันด้วยเหตุผลดังต่อไปนี้

  • มันทรงพลังมาก
  • ว่าง
  • มันค่อนข้างใช้งานง่าย
  • มีบทเรียนออนไลน์มากมายเกี่ยวกับวิธีใช้ซอฟต์แวร์นี้

นั่นคือการออกแบบที่ฉันคิดขึ้นมา ประกอบด้วย 5 ส่วน ฐาน ฝาครอบด้านบน และ 3 ปุ่ม

ดาวน์โหลดไฟล์แนบจาก Thingiverse ▶

จากนั้นก็ถึงเวลาพิมพ์ 3 มิติกล่องหุ้ม ฉันใช้ไส้ไม้สองเส้นเพื่อพิมพ์กล่องหุ้ม ฉันใช้เส้นใย EasyWood Coconut และ Birch ของ FormFutura ตัวเครื่องใช้เส้นใยประมาณ 70 กรัม ดังนั้นคุณจะเสียค่าใช้จ่ายประมาณ 5 เหรียญสหรัฐฯ หากคุณพิมพ์ที่บ้าน อย่างที่คุณอาจสังเกตเห็นว่าฉันใช้เส้นใยไม้ในทุกโครงการ! ฉันชอบพื้นผิวและสีของเส้นใยไม้จริงๆ ดังนั้นหลังจากนั้นประมาณ 3 ชั่วโมง ชิ้นส่วนทั้งหมดก็ถูกพิมพ์ออกมา

ขั้นตอนที่ 5: เสร็จสิ้นการพิมพ์ 3 มิติ

เสร็จสิ้นการพิมพ์ 3 มิติ
เสร็จสิ้นการพิมพ์ 3 มิติ
เสร็จสิ้นการพิมพ์ 3 มิติ
เสร็จสิ้นการพิมพ์ 3 มิติ
เสร็จสิ้นการพิมพ์ 3 มิติ
เสร็จสิ้นการพิมพ์ 3 มิติ

ดังนั้นหลังจากนั้นประมาณ 3 ชั่วโมง ชิ้นส่วนทั้งหมดก็ถูกพิมพ์ออกมา จากนั้นก็ถึงเวลาขัดด้วยกระดาษทรายละเอียด ซึ่งเป็นกระบวนการที่น่าเบื่อและใช้เวลามาก หลังจากกระบวนการขัดเสร็จสิ้น ผมก็ทาน้ำยาเคลือบเงาไม้กับชิ้นส่วนทั้งหมดแล้วปล่อยให้แห้งเป็นเวลา 24 ชั่วโมง ผลลัพธ์นั้นยอดเยี่ยมมาก! ชิ้นส่วนดูเท่มากเมื่อทาวานิช

โปรดอย่าข้ามขั้นตอนการขัดและเคลือบเงา เพราะจะทำให้โครงการของคุณดูน่าประทับใจ

ขั้นตอนที่ 6: นำทุกอย่างมารวมกัน

รวมทุกอย่างไว้ด้วยกัน
รวมทุกอย่างไว้ด้วยกัน
รวมทุกอย่างไว้ด้วยกัน
รวมทุกอย่างไว้ด้วยกัน
รวมทุกอย่างไว้ด้วยกัน
รวมทุกอย่างไว้ด้วยกัน

จากนั้นก็ถึงเวลาใส่ทุกอย่างลงในตู้

ก่อนอื่นฉันติดบอร์ดต้นแบบให้เข้าที่ จากนั้นฉันก็ติดแผงชาร์จแบตเตอรี่และสวิตช์ ฉันติดแบตเตอรี่เข้ากับบอร์ดโดยใช้กาวมาตรฐาน อย่าใช้กาวร้อนกับแบตเตอรี่ LiPo คุณจะทำลายมัน

ขั้นตอนต่อไปคือการประสานพินเอาต์พุตจากตัวป้องกันแบตเตอรี่ไปยังพินพลังงาน Arduino Pro Mini จากนั้นฉันก็ติดกระดุม และสุดท้ายก็ถึงเวลาติดส่วนบนของกล่องหุ้ม!

โครงการทามากิโนะพร้อมแล้ว! ด้วยแบตเตอรี่ขนาด 150mAh ภายในโครงการ สามารถใช้งานแบตเตอรี่ได้นานถึง 7 ชั่วโมง! แน่นอนว่าเราสามารถชาร์จได้อย่างง่ายดายในเวลาประมาณ 1 ชั่วโมงโดยใช้ที่ชาร์จโทรศัพท์มือถือ

ขั้นตอนที่ 7: รหัสของโครงการ

รหัสโครงการ
รหัสโครงการ

ตอนนี้เรามาดูโค้ดกันอย่างรวดเร็ว คุณสามารถดาวน์โหลดรหัสได้จากเว็บไซต์ของโครงการ

alojzjakob.github.io/Tamaguino/

ฉันใช้โค้ดที่ใช้ตัวต้านทานแบบดึงขึ้นภายในของบอร์ด Arduino ดังนั้นเราจึงไม่จำเป็นต้องใช้ตัวต้านทานภายนอกใดๆ เพื่อทำให้โปรเจ็กต์ทำงานได้ ในการจัดทำโปรเจ็กต์เพื่อคอมไพล์ เราจำเป็นต้องมีไลบรารี่ที่คุ้นเคยสองไลบรารี ได้แก่ ไลบรารี Adafruit GFX และไลบรารี Adafruit สำหรับจอแสดงผล OLED คุณสามารถค้นหาลิงก์สำหรับห้องสมุดได้ในคำอธิบายด้านล่าง

โค้ดนี้มีความยาวประมาณ 1.300 บรรทัด และใช้หน่วยความจำโปรแกรมที่มีอยู่ถึง 95%! หากเราจำเป็นต้องขยายโค้ดของโปรเจ็กต์ เราจะต้องใช้ไมโครคอนโทรลเลอร์ตัวอื่นที่มีหน่วยความจำมากขึ้น ฉันคิดว่ามันน่าประทับใจที่บอร์ด Arduino ราคาประหยัดที่เรียบง่ายสามารถทำได้!

ขั้นตอนที่ 8: ความคิดสุดท้าย

ความคิดสุดท้าย
ความคิดสุดท้าย

ฉันคิดว่านี่เป็นโครงการที่ดี โครงการที่แสดงให้เห็นว่าผู้ผลิตสามารถสร้างเกือบทุกอย่างได้แล้ว! Alojz ผู้พัฒนาโค้ดใช้เวลาประมาณหนึ่งสัปดาห์ในการเขียนโค้ดในเวลาว่าง ซอฟต์แวร์และฮาร์ดแวร์แบบเปิดช่วยให้เราทำสิ่งต่างๆ ได้ ซึ่งเมื่อไม่กี่ปีที่ผ่านมานี้ แม้แต่มืออาชีพก็ทำไม่ได้!

การสร้างโครงการนี้เป็นประสบการณ์การเรียนรู้ที่ยอดเยี่ยมสำหรับฉัน นี่เป็นครั้งแรกที่ฉันใช้บอร์ดสร้างต้นแบบและเป็นครั้งแรกที่ฉันใช้แบตเตอรี่ LiPo ในโครงการ นอกจากนี้ ฉันยังออกแบบกล่องหุ้มนี้ตั้งแต่เริ่มต้น ซึ่งยากกว่าที่ฉันคาดไว้ พูดตามตรง ฉันไม่พอใจกับตัวเครื่อง มันใหญ่เกินไปสำหรับจอแสดงผลขนาดเล็กเช่นนี้ นั่นเป็นเหตุผลที่ฉันคิดว่าจะแทนที่ OLED 1” ขนาดเล็กนี้ด้วยจอแสดงผล 2.4” ที่ใหญ่กว่าที่ฉันค้นพบ ฉันคิดว่ามันจะทำให้โครงการดีขึ้นมาก ฉันต้องการให้โครงการนี้พัฒนาเป็นคอนโซลเกม Arduino โครงการนี้เป็นการเริ่มต้นที่ดี ฉันชอบที่จะได้ยินความคิดเห็นของคุณเกี่ยวกับโครงการนี้ คุณมีข้อเสนอแนะในการปรับปรุงหรือไม่? กรุณาโพสต์ความคิดเห็นของคุณในส่วนความคิดเห็นด้านล่าง! ขอบคุณ!

แนะนำ: