![Warhammer Sorcerer บนแผ่นดิสก์พร้อมมอเตอร์และไฟ LED ที่จับคู่ด้วยแม่เหล็ก: 4 ขั้นตอน Warhammer Sorcerer บนแผ่นดิสก์พร้อมมอเตอร์และไฟ LED ที่จับคู่ด้วยแม่เหล็ก: 4 ขั้นตอน](https://i.howwhatproduce.com/preview/how-and-what-to-produce/10968420-warhammer-sorcerer-on-disc-with-magnetically-coupled-motor-and-leds-4-steps-j.webp)
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12
ต้องการเพิ่ม PIZZAZZ ในโครงการศิลปะของคุณหรือไม่? มอเตอร์และไฟ LED เป็นวิธีที่จะไป!
คุณเป็นนักเล่นเกม Warhammer หรือไม่? อันนี้สำหรับคุณ! นี่คือ Tzeentch Sorcerer Lord on Disc ของฉัน ซึ่งแก้ไขโดยเพิ่ม LED 3 ดวง มอเตอร์ ไมโคร (PIC) และแบตเตอรี่ขนาดเล็ก คำแนะนำนี้ครอบคลุมการสร้างและปัญหาที่เสร็จสมบูรณ์
ขั้นตอนที่ 1: วงจร
ก่อนอื่นคุณอาจสงสัยว่านี่คืออะไร นี่คือภาพย่อที่ฉันทำเองสำหรับเกมบนโต๊ะบนโต๊ะที่เรียกว่า Warhammer ผู้ชายที่อยู่ด้านบนสุดเป็นรุ่นปกติจากผู้สร้างเกม (Gamesworkshop) แต่ดิสก์และฐานเป็นของฉันทั้งหมด การสร้างสำหรับเขาเป็นเรื่องของคำแนะนำอื่น ดังนั้นฉันจะไม่พูดถึงที่นี่ วงจร แนวคิดพื้นฐานที่นี่คือการใช้ไมโคร 8 พินขนาดเล็กเพื่อควบคุม LED 3 ดวงและมอเตอร์โดยมีแหล่งจ่ายน้อยที่สุด การใช้ "มือช่วย" เช่นเคยเป็นความคิดที่ดี สิ่งเหล่านี้มีสองคลิปสำหรับเก็บสิ่งที่คุณกำลังทำงานอยู่ ไม่จำเป็นต้องใช้แผนผังเนื่องจากการอิมเมจนั้นง่ายมาก ไมโคร 8 พิน (Microchip PIC) ที่มีเอาต์พุต 3 พินตรงไปยัง LED และ 2 พินเอาต์พุตไปที่ 1 มอเตอร์ ไฟ LED ที่ใช้เป็นแบบติดบนพื้นผิวสีน้ำเงิน สีขาว และสีแดง มอเตอร์ที่ใช้ถูกฉีกขาดจากเฮลิคอปเตอร์ขนาดเล็กในร่มที่ชำรุด แบตเตอรี่ (Lipo ขนาดเล็ก) ก็ขาดจากเฮลิเช่นกัน แต่ฉันวางแผนที่จะใช้แหล่งอื่นเพิ่มเติม power. A สวิตช์ถูกเพิ่มสำหรับเปิด/ปิด
ขั้นตอนที่ 2: รหัส
รหัสสำหรับ PIC ถูกสร้างขึ้นมาเพื่อยืดอายุการใช้งานแบตเตอรี่และใช้ "เหตุการณ์" แบบสุ่มจำนวนมาก เพื่อให้แบตเตอรี่มีอายุการใช้งานยาวนานที่สุด วงจรจะต้องใช้พลังงานในปริมาณที่น้อยที่สุดที่ฉันคิดได้ ในขณะที่ยังคงความคิดนั้นให้คงอยู่. ดังนั้นฉันจึงตัดสินใจลดกิจกรรมเริ่มต้นให้เหลือแฟลช LED เฉลี่ย 1 ดวงหรือมอเตอร์เคลื่อนที่ทุกๆ 6 วินาที รหัสมี "กิจกรรม" แบบสุ่ม 12 รายการ ตั้งแต่ LED 1 ดวงติดสว่าง มอเตอร์จะเปิดขึ้นในช่วงเวลาหรือทิศทางที่ต่างกัน ไปจนถึงสถานะรอแบบสุ่ม เหตุการณ์จะแตกต่างกันไปตั้งแต่ 3 วินาทีไปจนถึงมากกว่า 40 วินาที ขึ้นอยู่กับเหตุการณ์สุ่มที่สร้าง CODE;============================= =================================================;ตัวควบคุมแผ่นดิสก์;; ------------; Vcc-> |1 8| <-Vss; MGPIO5 |2 7| GPIO0 -LED1; MGPIO4 |3 6| GPIO1 -LED2; GPIO3-> |4 5| GPIO2 -LED3; -----------;;===================================== ==========================================; ประวัติการแก้ไข & หมายเหตุ:; V1.0 ส่วนหัวเริ่มต้น รหัส 5/19/09;;;(C) 5/2009;รหัสนี้อาจใช้สำหรับการเรียนรู้/แอปพลิเคชัน/การปรับเปลี่ยนส่วนบุคคล;การใช้รหัสนี้ในผลิตภัณฑ์เชิงพาณิชย์ใดๆ ถือเป็นการละเมิดรุ่นฟรีแวร์นี้ สำหรับคำถาม/ความคิดเห็น โปรดติดต่อ circuit dot mage ที่ yahoo dot com.;------------------------------------------------ -------------------------------#รวม P12C672. INC;============= ================================================= =================; กำหนด;------------------------------------------------ -------------------------------------;================== ================================================= ============; ข้อมูล;------------------------------------------------ -------------------------------------; ตัวแปรการรักษาเวลาcount1 equ 20 count2 equ 21 ความล่าช้า equ 22Randlo equ 23Randhi equ 24Wtemp equ 25Temp2 equ 26rand equ 27count3 equ 28;=========================== ================================================= ===; รีเซ็ตเวกเตอร์;; ตรวจสอบการกำหนดค่า BITS ก่อนการเผาไหม้!!!; อินทอสค์; MCLR: เปิดใช้งาน; PWRUP: เปิดใช้งาน; อื่นๆ ทั้งหมด: ปิดการใช้งาน!!;;------------------------------------------ ----------------------------------------------------RESET_ADDR EQU 0x00 org RESET_ADDR ไปที่ start;===== ================================================= ========================; เริ่มที่นี่!;---------------------------------------------- ---------------------------------เริ่ม; กำหนดค่าพอร์ต I/O bcf STATUS, RP1 bsf STATUS, RP0 movlw h'08';RA Outputs, PGIO3 อินพุตเสมอ tris GPIO movlw h'07'; ตั้งค่า GPIO เป็นโหมดดิจิตอล movwf ADCON1; ตั้งเวลาภายใน movlw h'CF'; Tmr0 แหล่งข้อมูลภายใน, พรีสเกล TMR0 1:256 movwf OPTION_REG movlw h'00' movwf INTCON; ปิดใช้งานการขัดจังหวะ TMR0, bcf STATUS, RP0; เริ่มต้นการลงทะเบียน clrf GPIO clrf count1 clrf count2 movlw 045h movwf Randlo movlw 030h movwf Randhi รอ 1 วินาที โทร debounce; 0.2 วินาที โทร debounce โทร debounce โทร debounce โทร debounce โทร debounce;======================================== =======================================; หลัก;------------------------------------------------ ------------------------------- สายหลัก twosec; 2 วินาทีขั้นต่ำระหว่างแต่ละการกระทำ rrf Randhi, W xorwf Randlo, W movwf Wtemp swapf Wtemp rlf Randhi, W xorwf Randhi, W; LSB = xorwf(Q12, Q3) xorwf Wtemp rlf Wtemp rlf Randlo rlf Randhi movfw Wtemp;สุ่มแถบ 16 ลงไปที่ 7 และlw 0x0F movwf rand; สุ่มเลือกรูทีน xorlw 0x00; 0? btfsc สถานะ Z ไปที่ flash1; ใช่. โทร 0 movfw rand xorlw 0x01; 1? btfsc สถานะ Z ไปที่ flash2; ใช่. โทร movfw rand ครั้งที่ 1 xorlw 0x02; 2? btfsc สถานะ Z ไปที่ flash3; ใช่. โทร movfw rand ครั้งที่ 2 xorlw 0x03; 3? btfsc STATUS, Z ไปที่ flashall; ใช่. โทร movfw rand ครั้งที่ 3 xorlw 0x04; 4? btfsc STATUS, Z ไปที่การย้าย; ใช่. โทร movfw rand ครั้งที่ 4 xorlw 0x05; 5? btfsc สถานะ Z ไปที่ movell; ใช่. โทร movfw rand ครั้งที่ 5 xorlw 0x06; 6? btfsc สถานะ, Z ไปที่ตัวย้าย; ใช่. โทรครั้งที่ 6 movfw rand xorlw 0x07; 7? btfsc สถานะ, Z ไปที่ moverl; ใช่. โทร 7th movfw rand xorlw 0x08; 8? btfsc STATUS, Z ไปที่ moveburst; ใช่. โทร 8 movfw rand xorlw 0x09; 9? btfsc STATUS, Z ไปที่ Wait1; ใช่. โทร 9th movfw rand xorlw 0x0A; NS? btfsc สถานะ Z ไปที่ Wait2; ใช่. โทร movfw rand xorlw 0x0B; NS? btfsc สถานะ Z ไปที่ Wait3; ใช่. โทรไปไม่มีอะไรเลย; 1/4 เวลา ไม่ทำอะไรเลย 10 secs.flash1 bsf GPIO, 0 call debounce bcf GPIO, 0 goto mainflash2 bsf GPIO, 1 call debounce bcf GPIO, 1 goto mainflash3 bsf GPIO, 2 call debounce bcf GPIO, 2 goto mainflashall bsf GPIO, 0 bsf GPIO, 1 bsf GPIO, 2 call debounce call debounce bcf GPIO, 0 bcf GPIO, 1 bcf GPIO, 2 goto mainmovels bsf GPIO, 4 bcf GPIO, 5 การโทร debounce bcf GPIO, 4 goto mainmovell 4 bsf GPIO GPIO, 5 การโทร debounce การโทร debounce bcf GPIO, 4 ไปที่ mainmovers bcf GPIO, 4 bsf GPIO, 5 การโทร debounce bcf GPIO, 5 ไปที่ mainmoverl bcf GPIO, 4 bsf GPIO, 5 การโทร debounce debounce bcf GPIO, 5 gotobcfmove 4 bsf GPIO, ดีบักการโทร 5 ครั้ง; เลื่อนไปทางขวา 3 ครั้ง ระเบิดสั้นๆ bcf GPIO, 5 การโทร debounce การโทร debounce bsf GPIO, 5 การโทร debounce การโทร debounce bcf GPIO, 5 การโทร debounce การโทร debounce bsf GPIO, 5 การโทร debounce bcf GPIO, 5 การโทร debounce การโทร debounce การโทร debounce การโทร debounce bsf GPIO, 4; เลื่อนไปทางซ้าย 3 ครั้ง ระเบิดสั้นๆ bcf GPIO, 5 การโทร debounce การโทร debounce bcf GPIO, 4 การโทร debounce การโทร debounce bsf GPIO, 4 การโทร debounce การโทร debounce bcf GPIO, 4 การโทร debounce การโทร debounce bsf GPIO, 4 การโทร debounce การโทร debounce bcf GPIO, 4 การโทร debounce mainWait1 goto; รอ 1 วินาที movlw.255; หน่วงเวลาการดีบัก 2/10 วินาที movwf count2 โทร pon_wait movlw.255; หน่วงเวลาการดีบัก 2/10 วินาที movwf count2 โทร pon_wait movlw.255; หน่วงเวลาการดีบัก 2/10 วินาที movwf count2 โทร pon_wait movlw.255; หน่วงเวลาการดีบัก 2/10 วินาที movwf count2 โทร pon_wait movlw.255; หน่วงเวลาการดีบัก 2/10 วินาที movwf count2 โทร pon_wait ไปที่ mainWait2; รอ 0.6 วินาที movlw.255; หน่วงเวลาการดีบัก 2/10 วินาที movwf count2 โทร pon_wait movlw.255; หน่วงเวลาการดีบัก 2/10 วินาที movwf count2 โทร pon_wait movlw.255; หน่วงเวลาการดีบัก 2/10 วินาที movwf count2 โทร pon_wait ไปที่ mainWait3; รอ 4 วินาที โทร twosec โทร twosec goto mainnothing movlw.50; หน่วงเวลา 10 วินาที Total movwf count3nothing_loop movlw.255; หน่วงเวลาการดีบัก 2/10 วินาที movwf count2 โทร pon_wait decfsz count3, F ไปที่ nothing_loop ไปที่ main;====================================== ==========================================; รอ 2 วินาที ---------------------------------------------- ---------------------------------- twosec movlw.10; หน่วงเวลา 2 วินาที Total movwf count3twosec_loop movlw.255; หน่วงเวลาการดีบัก 2/10 วินาที movwf count2 โทร pon_wait decfsz count3, F ไปที่ twosec_loopreturn;======================================== =======================================; สัญญาณดีเบต; 4 รอบในการโหลดและโทร, 2 รอบเพื่อส่งคืน; 4Mhz Tc:: count2=255 -> 0.2 วินาที;-------------------------------------- ----------------------------------------- debounce movlw.127; หน่วงเวลาการดีบัก 1/10 วินาที movwf count2 โทรกลับ pon_wait;------------------------------------------- ------------------------------------; count1=255d:: 775 รอบเป็น 0, + 3 รอบเพื่อส่งคืน;--------------------------------- ---------------------------------------------- pon_waitbig_loopS movlw.255 movwf count1short_loopS decfsz count1, F ไปที่ short_loopS decfsz count2, F ไปที่ big_loopSreturnend
ขั้นตอนที่ 3: อะไหล่
ภาพนี้แสดงให้เห็นว่าฉันต้องเล็กแค่ไหนในการประกอบส่วนประกอบให้พอดีภายใต้ชายคนนี้1 8-pin Microchip (PIC)3 SMT LED (สีน้ำเงิน, สีแดง, สีขาว)1 มอเตอร์จาก micro heli ในร่ม1 แบตเตอรี่ LIPO จาก heli เดียวกัน สวิตช์เปิดปิด 1 อัน 1 เดือยไม้ 2.5 มม. (ยาว 2 นิ้ว) แม่เหล็กแรร์เอิร์ธ 2 1 มม.
ขั้นตอนที่ 4: สร้าง
ขั้นแรกพบจุดศูนย์กลางมวลของสิ่งทั้งปวง นี่จะเป็นพื้นที่ติดตั้งมอเตอร์ มอเตอร์ติดตั้งโดยใช้ goop ที่เรียกว่า Greenstuff (ใช้ในโลกของย่อส่วน) ไฟ LED 3 ดวงถูกต่อสายไว้ ไมโครถูกติดกาวไว้นอกเส้นทาง ไม่ใกล้กับขอบมากเกินไป สวิตช์เปิดปิดและแบตเตอรี่ถูกติดตั้งเพื่อชดเชยน้ำหนัก (เล็ก) ของไมโครเพื่อให้สมดุล บัดกรีสายไฟแล้ว ส่วนที่เจ๋งจริงๆ อยู่ถัดไป Superglue ที่ส่วนปลายของเฟืองโรเตอร์บนมอเตอร์ (ซึ่งจะคว่ำลงในภายหลัง) ติดตั้งแม่เหล็กแรร์เอิร์ธ เจาะเดือยไม้ขนาดเส้นผ่านศูนย์กลาง 2.5 อันสั้น (~2 ) (โดยใช้มือและดอกสว่าน) สำหรับรูขนาดเส้นผ่านศูนย์กลาง 1 มม. ลึก 5 มม. ในรูนี้ แม่เหล็กแรร์เอิร์ธอีก 1 มม. ถูกติดกาว ตอนนี้ ฐานสำหรับฟิกเกอร์ของฉันเป็นแบบแม่เหล็ก ควบคู่ไปกับโรเตอร์ของมอเตอร์ เมื่อมอเตอร์หมุน จากจุดศูนย์กลางของความสมดุล มันจะเปลี่ยนส่วนบนของร่างทั้งหมด ตัดฟางสีแดงคลุมมอเตอร์และเดือยไม้ ซึ่งถูกวัดไว้ล่วงหน้าก่อนเดือยไม้ ติดตั้งเพื่อให้แน่ใจว่าตรงกัน เอาต์พุตแบตเตอรี่ LIPO กำลังอ่าน 3.4V โดยไม่ต้องชาร์จ เพียงพอที่จะหมุนมอเตอร์และจุดไฟ LED แต่ด้วยตัวเลขที่ติดตั้งบนฐาน มันไม่หมุนเอง รุ่นต่อไปของฉันจะ ใช้แบตเตอรี่รีโมท 12V พร้อมตัวควบคุม 5V เพื่อพลังงานที่มากขึ้น!
แนะนำ:
วิธีทำ LED Cube - LED Cube 4x4x4: 3 ขั้นตอน
![วิธีทำ LED Cube - LED Cube 4x4x4: 3 ขั้นตอน วิธีทำ LED Cube - LED Cube 4x4x4: 3 ขั้นตอน](https://i.howwhatproduce.com/images/001/image-536-j.webp)
วิธีทำ LED Cube | LED Cube 4x4x4: LED Cube ถือได้ว่าเป็นหน้าจอ LED ซึ่ง LED ขนาด 5 มม. แบบธรรมดาจะทำหน้าที่เป็นพิกเซลดิจิทัล ลูกบาศก์ LED ช่วยให้เราสามารถสร้างภาพและรูปแบบโดยใช้แนวคิดของปรากฏการณ์ทางแสงที่เรียกว่าการคงอยู่ของการมองเห็น (POV) ดังนั้น,
ไฟฉายที่ล้ำสมัยที่สุด - COB LED, UV LED และ Laser Inside: 5 ขั้นตอน (พร้อมรูปภาพ)
![ไฟฉายที่ล้ำสมัยที่สุด - COB LED, UV LED และ Laser Inside: 5 ขั้นตอน (พร้อมรูปภาพ) ไฟฉายที่ล้ำสมัยที่สุด - COB LED, UV LED และ Laser Inside: 5 ขั้นตอน (พร้อมรูปภาพ)](https://i.howwhatproduce.com/images/001/image-1229-j.webp)
ไฟฉายที่ล้ำสมัยที่สุด - COB LED, UV LED และ Laser Inside: มีไฟฉายมากมายในท้องตลาดที่มีการใช้งานเหมือนกันและมีระดับความสว่างต่างกัน แต่ฉันไม่เคยเห็นไฟฉายที่มีแสงมากกว่าหนึ่งประเภท ในโครงการนี้ ฉันรวบรวมไฟ 3 แบบในไฟฉายเดียว ฉัน
LED Clouds โดยใช้ Fadecandy, PI และ LED Strips: 4 ขั้นตอน (พร้อมรูปภาพ)
![LED Clouds โดยใช้ Fadecandy, PI และ LED Strips: 4 ขั้นตอน (พร้อมรูปภาพ) LED Clouds โดยใช้ Fadecandy, PI และ LED Strips: 4 ขั้นตอน (พร้อมรูปภาพ)](https://i.howwhatproduce.com/images/001/image-570-35-j.webp)
LED Clouds โดยใช้ Fadecandy, PI และ LED Strips: ฉันได้สร้างก้อนเมฆ LED เพื่อสร้างบรรยากาศที่ไม่มีตัวตนในบ้านของฉัน ในขั้นต้นจะใช้สำหรับเทศกาลที่ถูกยกเลิกเนื่องจากการระบาดในปัจจุบัน ฉันเคยใช้ Fade Candy Chip เพื่อให้ได้แอนิเมชั่นที่ลื่นไหล และฉันได้
วิธีใช้ Neopixel Ws2812 LED หรือ LED STRIP หรือ Led Ring กับ Arduino: 4 ขั้นตอน
![วิธีใช้ Neopixel Ws2812 LED หรือ LED STRIP หรือ Led Ring กับ Arduino: 4 ขั้นตอน วิธีใช้ Neopixel Ws2812 LED หรือ LED STRIP หรือ Led Ring กับ Arduino: 4 ขั้นตอน](https://i.howwhatproduce.com/images/001/image-401-30-j.webp)
วิธีใช้ Neopixel Ws2812 LED หรือ LED STRIP หรือ Led Ring กับ Arduino: สวัสดีทุกคนเนื่องจาก Neopixel led Strip เป็นที่นิยมอย่างมากและเรียกอีกอย่างว่า ws2812 led strip เช่นกัน พวกเขาเป็นที่นิยมอย่างมากเพราะในแถบนำเหล่านี้เราสามารถระบุแต่ละ LED แยกจากกัน ซึ่งหมายความว่าหากคุณต้องการให้ไฟ LED สองสามดวงเรืองแสงเป็นสีเดียว
ESP8266 RGB LED STRIP WIFI ควบคุม - NODEMCU เป็นรีโมท IR สำหรับ Led Strip ที่ควบคุมผ่าน Wifi - RGB LED STRIP การควบคุมสมาร์ทโฟน: 4 ขั้นตอน
![ESP8266 RGB LED STRIP WIFI ควบคุม - NODEMCU เป็นรีโมท IR สำหรับ Led Strip ที่ควบคุมผ่าน Wifi - RGB LED STRIP การควบคุมสมาร์ทโฟน: 4 ขั้นตอน ESP8266 RGB LED STRIP WIFI ควบคุม - NODEMCU เป็นรีโมท IR สำหรับ Led Strip ที่ควบคุมผ่าน Wifi - RGB LED STRIP การควบคุมสมาร์ทโฟน: 4 ขั้นตอน](https://i.howwhatproduce.com/images/001/image-2218-28-j.webp)
ESP8266 RGB LED STRIP WIFI ควบคุม | NODEMCU เป็นรีโมท IR สำหรับ Led Strip ที่ควบคุมผ่าน Wifi | การควบคุมสมาร์ทโฟน RGB LED STRIP: สวัสดีทุกคนในบทช่วยสอนนี้ เราจะเรียนรู้วิธีใช้ nodemcu หรือ esp8266 เป็นรีโมท IR เพื่อควบคุมแถบ LED RGB และ Nodemcu จะถูกควบคุมโดยสมาร์ทโฟนผ่าน wifi โดยพื้นฐานแล้ว คุณสามารถควบคุม RGB LED STRIP ได้ด้วยสมาร์ทโฟนของคุณ