สารบัญ:
- ขั้นตอนที่ 1: ร่างและทฤษฎีบางอย่าง
- ขั้นตอนที่ 2: การเดินสายไฟ
- ขั้นตอนที่ 3: การทดสอบ Sketch และ Design Notes
- ขั้นตอนที่ 4: การเพิ่มการควบคุมเว็บ
วีดีโอ: ควบคุมไฟฟลูออเรสเซนต์ด้วยเลเซอร์พอยเตอร์และ Arduino: 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:09
สมาชิกบางคนของ Alpha One Labs Hackerspace ไม่ชอบแสงจ้าที่ปล่อยออกมาจากหลอดฟลูออเรสเซนต์ พวกเขาต้องการวิธีที่สามารถควบคุมอุปกรณ์แต่ละชิ้นได้อย่างง่ายดาย บางทีอาจใช้เลเซอร์พอยเตอร์? ฉันขุดโซลิดสเตตรีเลย์จำนวนหนึ่งและนำไปที่แล็บ ฉันซื้อ Arduino Duemilenova และสาธิตการใช้ภาพตัวอย่าง LED Blink เพื่อกะพริบหลอดฮาโลเจน ฉันพบข้อมูลบางอย่างเกี่ยวกับการใช้ LED เป็นเซ็นเซอร์วัดแสง [1] และภาพสเก็ตช์ Arduino สาธิตเทคนิค[2] ฉันพบว่าไฟ LED แทบไม่มีความไวเพียงพอ - เลเซอร์ต้องชี้ตรงไปยังส่วนเปล่งแสงหรือ LED จะไม่ลงทะเบียน ดังนั้นฉันจึงเปลี่ยนไปใช้โฟโตทรานซิสเตอร์ พวกมันไวกว่ามากและอยู่ในช่วงความถี่ที่กว้างกว่า ด้วยตัวกรองที่เหมาะสมเหนือทรานซิสเตอร์ ฉันสามารถทำให้ไวต่อแสงสีแดงมากขึ้น และจากช่วงมุมที่กว้างกว่ามากไปจนถึงเซ็นเซอร์ได้ การปฏิเสธความรับผิดและคำเตือน: คำแนะนำนี้เกี่ยวข้องกับแรงดันไฟฟ้าของสาย (ไฟหลัก) ที่ 120 หรือ 240 โวลต์ ใช้สามัญสำนึกถ้าคุณสร้างวงจรนี้ - หากคุณมีข้อสงสัยเกี่ยวกับบางสิ่ง ให้ถามผู้รู้ คุณต้องรับผิดชอบต่อความปลอดภัยของคุณ (และของผู้อื่น) และการปฏิบัติตามรหัสไฟฟ้าในพื้นที่
ขั้นตอนที่ 1: ร่างและทฤษฎีบางอย่าง
ฉันจะถือว่าคุณรู้วิธีเพิ่มพลังงานให้กับ Arduino ของคุณและรวบรวมและโหลดภาพร่าง สำหรับโคมไฟแต่ละดวงฉันใช้สายโทรศัพท์เนื่องจากราคาถูกมีตัวนำไฟฟ้าสี่ตัวและฉันก็ยังมีพวงอยู่มากมาย ฉันใช้สีแดงแทนค่าทั่วไป + สีดำสำหรับพื้น สีเขียวสำหรับตัวสะสมโฟโตทรานซิสเตอร์ และสีเหลืองสำหรับตัวควบคุมรีเลย์ +โฟโตทรานซิสเตอร์ส่งผ่านปริมาณกระแสไฟที่แปรผันตามปริมาณแสงที่ตกกระทบ ตัวแปลงอนาล็อกเป็นดิจิตอล (ADC) ใน Arduino จะวัดแรงดันไฟฟ้าที่พินที่สัมพันธ์กับกราวด์ ฉันดูแผ่นข้อมูลโฟโตทรานซิสเตอร์และตรวจสอบด้วยมัลติมิเตอร์ว่าทรานซิสเตอร์ผ่าน 10mA เมื่อแสงเต็มที่ โดยใช้กฎของโอห์ม นั่นคือประมาณ 500 โอห์มที่ 5V เพื่อควบคุมหลอดไฟ ฉันใช้โมดูลรีเลย์โซลิดสเตต ราคาเหล่านี้ค่อนข้างถูกที่เรตติ้งปัจจุบันที่เราต้องการ ประมาณ $4 สูงถึง 4A ตรวจสอบให้แน่ใจว่าได้ซื้อโมดูลรีเลย์ที่มีตัวตรวจจับการข้ามศูนย์ โดยเฉพาะอย่างยิ่งหากควบคุมสิ่งใดก็ตามที่เป็นอุปนัย เช่น หลอดไฟฟลูออเรสเซนต์ มอเตอร์ หรือหม้อแปลงหูดที่ผนัง การเปิดหรือปิดสวิตช์ที่ใดก็ได้แต่จุดศูนย์อาจทำให้แรงดันไฟฟ้าพุ่งสูงขึ้น ซึ่งทางที่ดีที่สุดจะลดอายุการใช้งานอุปกรณ์ของคุณ และที่แย่ที่สุดก็จะเกิดไฟไหม้
ขั้นตอนที่ 2: การเดินสายไฟ
ดูบนเพดานและตัดสินใจว่าคุณจะติดตั้งคอนโทรลเลอร์ Arduino ที่ไหน จำไว้ว่ามันจะต้องมีแหล่งจ่ายไฟ 7-12v ตัดความยาวของสายโทรศัพท์ (หรือ cat5 หรืออะไรก็ตาม) ให้ยาวกว่าระยะทางจาก Arduino ไปยังไฟแต่ละดวงที่คุณต้องการควบคุมประมาณ 2 ฟุต ดูการเชื่อมต่อจากสายไฟจากสวิตช์ไปยังบัลลาสต์ คุณอาจสามารถสั่งซื้อตัวเชื่อมต่อได้ (Newark Electronics ขาย Wago 930 series ซึ่งเป็นสิ่งที่เรามี) จากนั้นคุณไม่จำเป็นต้องตัดสายไฟที่มีอยู่และสามารถถอดระบบออกได้หากมีสิ่งผิดปกติ บัดกรีกราวด์ (สีดำ) เข้ากับอินพุตรีเลย์ - และตัวควบคุม (สีเหลือง) เพื่อรีเลย์อินพุต + (รหัสสีในภาพคือ แตกต่างจากที่ฉันใส่ในหน้าแรกเนื่องจากฉันเปลี่ยนใจเกี่ยวกับสิ่งที่สมเหตุสมผล) บัดกรีหรือขันเกลียว (ขึ้นอยู่กับรีเลย์ของคุณ) ลวดสีดำ (ร้อน) ผ่านรีเลย์ ตรวจสอบให้แน่ใจว่าใช้เทปหดความร้อนและเทปพันสายไฟ! ดันสายไฟสีดำเข้าไปในขั้วต่อของคุณและสีขาว (เป็นกลาง) และกราวด์ (สีเขียว) จะตรงผ่านจากขั้วต่อไปยังขั้วต่อ ปลายอีกด้านของสายไฟไปที่ Arduino ดังนี้: สายไฟสีแดงทั้งหมด (แคโทดหรือตัวสะสมทั่วไป) ไปที่ Analog 0 (พอร์ต C0) และสีดำทั้งหมดลงกราวด์ สีเขียวแต่ละตัว (ขั้วบวกหรือตัวปล่อย) ไปที่พิน 8-13 (พอร์ต B 0-5) และสายสีเหลืองไปที่พิน 2-7 (พอร์ต D 2-7) ตรวจสอบให้แน่ใจว่าสายสีเขียวและสีเหลืองตรงกัน เนื่องจากเซ็นเซอร์จำเป็นต้องควบคุมรีเลย์ที่เหมาะสม! หากคุณใส่สีเหลืองลงในพิน 2 สีเขียวจากฟิกซ์เจอร์เดียวกันจะไปที่พิน 8
ขั้นตอนที่ 3: การทดสอบ Sketch และ Design Notes
ในขั้นตอนนี้ ฉันจะพูดถึงการทดลองและความทุกข์ยากบางอย่างที่ฉันพบระหว่างทาง และวิธีที่ฉันดำเนินการผ่านมัน ด้วยความหวังว่าจะมีประโยชน์ ข้ามไปยังขั้นตอนถัดไปได้อย่างอิสระหากเนื้อหาวิทยาศาสตร์ไม่ใช่ของคุณ:-) ขั้นตอนแรกคือการตัดสินใจว่าจะใช้การตรวจจับแบบคาปาซิทีฟหรือการตรวจจับแบบต้านทาน การตรวจจับความต้านทานกำลังเชื่อมต่อเซ็นเซอร์ผ่านตัวต้านทานกับหมุดอนาล็อกตัวใดตัวหนึ่งและทำแบบอะนาล็อกอ่านและเปรียบเทียบกับเกณฑ์ วิธีนี้เป็นวิธีที่ง่ายที่สุดที่จะนำไปใช้ แต่ต้องใช้การสอบเทียบเป็นจำนวนมาก ทฤษฎีการตรวจจับแบบ capacitive คือเมื่อมีอคติย้อนกลับ (- ถึง + ตะกั่วและในทางกลับกัน) LED จะไม่ยอมให้กระแสไหล แต่อิเล็กตรอนจะรวบรวมที่ด้านใดด้านหนึ่งและ ปล่อยให้อีกด้านหนึ่งชาร์จตัวเก็บประจุอย่างมีประสิทธิภาพ แสงที่ตกบน LED ที่ความถี่ปกติที่ปล่อยออกมาจะทำให้กระแสไฟขนาดเล็กไหล ซึ่งปล่อยประจุนี้ออกไป ดังนั้น หากเราชาร์จ 'ตัวเก็บประจุ' ของ LED และนับระยะเวลาที่ใช้ในการคายประจุผ่านตัวต้านทาน เราจะเข้าใจคร่าวๆ ว่าไฟ LED ตกบน LED นั้นมีจำนวนเท่าใด สิ่งนี้ได้ผลจริงเพื่อให้เชื่อถือได้มากขึ้นในอุปกรณ์ต่าง ๆ และใช้ได้กับโฟโต้ทรานซิสเตอร์ด้วย! เนื่องจากเราไม่ได้ทำการวัดค่าลูเมนอย่างแม่นยำ และตัวชี้เลเซอร์ควรปรากฏสว่างกว่าสภาพแวดล้อมมาก เราจึงเพียงแค่มองหาเวลาปล่อยประจุตามเกณฑ์ ส่วนสำคัญอื่นๆ ของการผจญภัยครั้งนี้คือการดีบัก สำหรับผู้ที่คุ้นเคยกับการเขียนโปรแกรมระบบที่ไม่ฝังตัว วิธีที่นิยมคือการเพิ่มคำสั่งการพิมพ์ที่จุดวิกฤตในโค้ด สิ่งนี้ใช้กับระบบฝังตัวเช่นกัน แต่เมื่อทุกไมโครวินาทีมีค่า ระยะเวลาใน Serial.write("x คือ "); Serial.writeln(x); ค่อนข้างมีนัยสำคัญจริง ๆ และคุณอาจพลาดกิจกรรมมากมายในกระบวนการนี้ ดังนั้นอย่าลืมใส่คำสั่งพิมพ์ของคุณนอกวงรอบที่สำคัญหรือเมื่อใดก็ตามที่คุณคาดหวังเหตุการณ์ บางครั้งการกะพริบไฟ LED ก็เพียงพอที่จะแจ้งให้คุณทราบว่าคุณได้ถึงจุดหนึ่งในโค้ดแล้ว
ขั้นตอนที่ 4: การเพิ่มการควบคุมเว็บ
หากคุณดูภาพสเก็ตช์ คุณสังเกตเห็นว่าฉันอ่านพอร์ตอนุกรมด้วย และดำเนินการตามคำสั่งอักขระตัวเดียวสองสามคำสั่ง อักขระ 'n' จะเปิดไฟทั้งหมด และ 'f' จะปิดไฟเหล่านั้น ตัวเลข '0'-'5' สลับสถานะของแสงที่เชื่อมต่อกับเอาต์พุตดิจิทัลนั้น คุณจึงสามารถรวมสคริปต์ CGI (หรือเซิร์ฟเล็ต หรือเทคโนโลยีเว็บใดๆ ที่ลอยอยู่บนเรือของคุณ) เพื่อควบคุมไฟของคุณจากระยะไกลได้อย่างง่ายดาย Serial.write จะส่งสัญญาณออกเมื่อใดก็ตามที่แสงเปลี่ยนจากการป้อนข้อมูลของผู้ใช้ ดังนั้นหน้าเว็บจึงสามารถมีการอัปเดต Ajax เพื่อแสดงสถานะปัจจุบันได้ อีกสิ่งหนึ่งที่ฉันจะทดลองด้วยคือการตรวจจับการเคลื่อนไหวในห้อง ผู้คนสะท้อนแสง และเมื่อพวกเขาเคลื่อนไหว แสงนั้นจะเปลี่ยนไป นั่นคือส่วน 'เดลต้า' ของคำสั่งเขียนที่ฉันมี
แนะนำ:
การออกแบบเกมในการสะบัดใน 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++)
Arduino ที่ถูกที่สุด -- Arduino ที่เล็กที่สุด -- Arduino Pro Mini -- การเขียนโปรแกรม -- Arduino Neno: 6 ขั้นตอน (พร้อมรูปภาพ)
Arduino ที่ถูกที่สุด || Arduino ที่เล็กที่สุด || Arduino Pro Mini || การเขียนโปรแกรม || Arduino Neno:…………………………… โปรดสมัครสมาชิกช่อง YouTube ของฉันสำหรับวิดีโอเพิ่มเติม……. โปรเจ็กต์นี้เกี่ยวกับวิธีเชื่อมต่อ Arduino ที่เล็กที่สุดและถูกที่สุดเท่าที่เคยมีมา Arduino ที่เล็กที่สุดและถูกที่สุดคือ arduino pro mini คล้ายกับ Arduino