สารบัญ:
- ขั้นตอนที่ 1: แผน
- ขั้นตอนที่ 2: การออกแบบ PCB
- ขั้นตอนที่ 3: การบัดกรี
- ขั้นตอนที่ 4: การเขียนโปรแกรม
- ขั้นตอนที่ 5: รายการส่วนประกอบ
- ขั้นตอนที่ 6: การสร้างแบบจำลอง 3 มิติ
- ขั้นตอนที่ 7: สรุป
วีดีโอ: ของขวัญคริสต์มาสต้นคริสต์มาส: 7 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:02
กลางเดือนกันยายนที่ฉันอยากทำโปรเจ็กต์สนุกๆ เพราะใกล้จะถึงคริสต์มาสแล้ว และฉันต้องการมอบของขวัญทำเองให้กับครอบครัว ฉันจึงเลือกทำต้นคริสต์มาส
ต้นคริสต์มาสควร:
- ต้องประหยัดพลังงาน
- ไม่เกิน 10*10cm
- ตั้งโปรแกรมได้
- ต้องมีฐานวางแบตเตอรี่
- ต้องมีโหมดการทำงานมากกว่า 1 โหมด
ฉันออกแบบ PCB ใน Altium Designer พิมพ์ PCBs บน JLC ตั้งโปรแกรมไมโครคอนโทรลเลอร์ atmel ใน Atmel Studio 7.0 และออกแบบโมเดล 3 มิติใน SolidWorks
ขั้นตอนที่ 1: แผน
แผนของฉันคือการออกแบบ pcbs รูปต้นคริสต์มาส 2 ชิ้น
ก่อนที่ฉันจะเริ่มทำแผนผัง ฉันเลือกไมโครคอนโทรลเลอร์ พาวเวอร์ซัพพลาย ไดรเวอร์นำ…
สำหรับไมโครคอนโทรลเลอร์ ฉันใช้ ATTINY85-20SU เนื่องจากความเรียบง่าย (8 พิน)
สำหรับการจ่ายไฟให้กับไมโครคอนโทรลเลอร์และไฟ LED ฉันเลือกแบตเตอรี่ AA 3 ก้อน
สำหรับการสลับไฟ LED ฉันเลือกมอสเฟต SI1012CR-T1-GE3
ขั้นตอนที่ 2: การออกแบบ PCB
ก่อนอื่นฉันสร้างแผนผังจากนั้นจึงจัดวาง PCB
หลังจากที่ฉันเลือกไมโครคอนโทรลเลอร์แล้ว ฉันดูที่แผ่นข้อมูลของคอนโทรลเลอร์และพินเอาต์ ไมโครคอนโทรลเลอร์จำเป็นต้องมีโหมดสลีปและพิน I/O อย่างน้อย 4 พินสำหรับ 3 มอสเฟต หนึ่งอันสำหรับแต่ละสี (แดง เหลือง เขียว) และปุ่มกด attiny85 นั้นสมบูรณ์แบบ
Pin1(RESET) - เป็นพินรีเซ็ตซึ่งฉันเชื่อมต่อตัวต้านทาน 10 kOhmPULL UP (แพ็คเกจ 1206)
Pin2 - ฉันใช้พินนี้สำหรับปุ่มกด ทุกครั้งที่ฉันกดปุ่ม หมุดจะถูกดึงลงไปที่พื้น (ดังนั้นฉันจึงตั้งโปรแกรมพินนี้เป็นอินพุตและใช้การดึงขึ้นภายใน)
Pin3 - ใน SCH1 ฉันเชื่อมต่อพินนี้กับส่วนหัวของตัวผู้ แต่ฉันไม่ได้ใช้
Pin4 - กราวด์
Pin5(MOSI) - ไปที่เกตของ mosfet Q3 สำหรับไฟ LED สีเหลือง
Pin6(MISO) - เชื่อมต่อกับเกตของ mosfet Q2 สำหรับไฟ LED สีเขียว
Pin7(CLK) - เชื่อมต่อกับเกตของ mosfet Q1 สำหรับไฟ LED สีแดง
Pin8 - Vcc
เอกสารข้อมูลของ mosfet:
ในหนึ่งมอสเฟตมีไฟ LED 12 ดวง (การสิ้นเปลืองพลังงานทั้งหมดสำหรับ 1 มอสเฟต: P=I*U, P=20mA*4.5V=90mW)
ฉันยังเพิ่ม 6 จุด (2.54 มม. จากกันสำหรับการเขียนโปรแกรม (ส่วนหัว 4 และส่วนหัว 2 ใน SCH))
หลังจาก SCH ฉันไปจัดการบอร์ด ฉันตัดรูปทรงต้นคริสต์มาสแล้วจัดวางส่วนประกอบต่างๆ
ฉันเพิ่มตัวเก็บประจุแบบแยกคัปปลิ้งสองตัว 100pF และ 10uF เพื่อทำให้แรงดันไฟฟ้าขาเข้าคงที่
ตัวต้านทาน 100 kOhm ที่อยู่ใน SCH ที่ฉันไม่ได้ใช้
ฉันเพิ่มไฟล์ gerber สำหรับ PCB ทั้งสอง
ขั้นตอนที่ 3: การบัดกรี
ฉันใช้หัวแร้งเก่าที่ฉันวางไว้
ก่อนอื่นฉันบัดกรีส่วนประกอบ smd ทั้งหมดจากนั้นจึงทำการบัดกรีส่วนประกอบรูทั้งหมด
บัดกรีเสร็จก็ได้เวลาเขียนโปรแกรมสนุกๆ:D
ขั้นตอนที่ 4: การเขียนโปรแกรม
สำหรับการเขียนโปรแกรมฉันใช้ AVRISP mk2
เนื่องจากคุณต้องการแหล่งจ่ายไฟภายนอกเพื่อจ่ายไฟให้กับไมโครคอนโทรลเลอร์และโปรแกรมเมอร์ ฉันจึงเชื่อมต่อ 5v และ gnd จาก Arduino Mega เพื่อจ่ายไฟเท่านั้น จากนั้นฉันเชื่อมต่อโปรแกรมเมอร์บน pcb ที่ตั้งโปรแกรมได้ซึ่งฉันเชื่อมต่อ:
1 พิน (RESET) เพื่อ RESET
4 พิน (GND) ถึง GND
5 พิน (MOSI) ถึง MOSI
6 พิน (MISO) ถึง MISO
7 พิน (CLK) ถึง CLK
8 พิน (Vcc) ถึง Vcc
ฉันแนบรหัสโปรแกรม
ฉันเป็นรหัสที่ฉันใช้การควบคุม pwm, โหมดสลีป, การขัดจังหวะ…
โหมดแรกเพียงแค่กระพริบไฟ LED ทั้งหมด ในโหมดที่สองฉันใช้ pwm เพื่อเปลี่ยนความสว่าง (ฉันแค่ต้องปรับแต่งเล็กน้อยเพื่อให้คล่องแคล่วขึ้น โหมดที่สามเป็นเพียงการเปิดและปิดไฟ LED ตามขั้นตอน โหมดที่สี่กะพริบแทบบ้า (ฉันใช้ฟังก์ชั่น pwm เหมือนในโหมดที่สอง) ฉันเรียกมันว่าโหมด "ขี้ขลาด":D
หลังจากที่คุณกดปุ่ม ตัวจับเวลาจะเริ่มนับ 5 นาที จากนั้นจะกลับสู่โหมดสลีป (ในโหมดสลีป การใช้พลังงานเท่ากับ 2-6 uA)
คำเตือน!!!
ก่อนที่คุณจะตั้งโปรแกรม attiny85 ของคุณด้วยโปรแกรมนี้ คุณต้องปิดการใช้งานฟิวส์ 8 Mhz เพราะถ้าไม่ใช่ attiny85 ของคุณจะทำงานที่ 1 Mhz. เท่านั้น
ขั้นตอนที่ 5: รายการส่วนประกอบ
ฉันสั่งส่วนประกอบสำหรับต้นคริสต์มาส 12 ต้น ฉันเพิ่มไฟล์ของส่วนประกอบที่ฉันสั่งจาก Farnell และ Mouser ส่วนประกอบอื่นๆ ที่ฉันสั่งจาก aliexpress:
- LEDS
- ต้นแบบ PCB
- ส่วนหัวหญิง
- ส่วนหัวมุมขวาชาย
- ปุ่มกด
- สวิตช์เปิด/ปิด
Amazon.de:
- แบตเตอรี่
ขั้นตอนที่ 6: การสร้างแบบจำลอง 3 มิติ
ฉันจะไม่อธิบายว่าฉันออกแบบโมเดล 3 มิติสำหรับฐานอย่างไร แต่ถ้าคุณต้องการคุณสามารถ PM มา แล้วฉันจะส่งไฟล์ให้คุณ
ฉันได้ทำการเปิดสวิตช์เปิด/ปิดและปุ่มกด
ก่อนอื่นฉันบัดกรีสายไฟบนปุ่มกดและสวิตช์ จากนั้นฉันจัดตำแหน่งและติดกาวร้อนจากด้านในของฐาน จากนั้นฉันตัดแผง perf ออก และบัดกรีตัวเชื่อมต่อและสายตัวเมียเข้าด้วยกัน และติดกาวทุกอย่างภายในฐานด้วยความร้อน.
ขั้นตอนที่ 7: สรุป
จุดประสงค์หลักของโครงการนี้คือ ฉันต้องการเซอร์ไพรส์ครอบครัวด้วยของทำเอง นั่นคือแรงจูงใจที่ช่วยให้ฉันทำสำเร็จ
ขอขอบคุณเป็นพิเศษกับเพื่อน ๆ ที่ช่วยฉันในโครงการนี้
ฉันเพิ่มไฟล์ excel โดยที่ฉันคำนวณว่าแบตเตอรี่จะใช้งานได้นานเท่าใด (ในสภาวะที่เหมาะสม)
หากคุณมีคำถามใด ๆ แสดงความคิดเห็น
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: 3 ขั้นตอน
การตรวจจับใบหน้าบน Raspberry Pi 4B ใน 3 ขั้นตอน: ในคำแนะนำนี้ เราจะทำการตรวจจับใบหน้าบน Raspberry Pi 4 ด้วย Shunya O/S โดยใช้ Shunyaface Library Shunyaface เป็นห้องสมุดจดจำใบหน้า/ตรวจจับใบหน้า โปรเจ็กต์นี้มีจุดมุ่งหมายเพื่อให้เกิดความเร็วในการตรวจจับและจดจำได้เร็วที่สุดด้วย
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: 3 ขั้นตอน
วิธีการติดตั้งปลั๊กอินใน WordPress ใน 3 ขั้นตอน: ในบทช่วยสอนนี้ ฉันจะแสดงขั้นตอนสำคัญในการติดตั้งปลั๊กอิน WordPress ให้กับเว็บไซต์ของคุณ โดยทั่วไป คุณสามารถติดตั้งปลั๊กอินได้สองวิธี วิธีแรกคือผ่าน ftp หรือผ่าน cpanel แต่ฉันจะไม่แสดงมันเพราะมันสอดคล้องกับ
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
เครื่อง Rube Goldberg 11 ขั้นตอน: 8 ขั้นตอน
เครื่อง 11 Step Rube Goldberg: โครงการนี้เป็นเครื่อง 11 Step Rube Goldberg ซึ่งออกแบบมาเพื่อสร้างงานง่ายๆ ในรูปแบบที่ซับซ้อน งานของโครงการนี้คือการจับสบู่ก้อนหนึ่ง