สารบัญ:
- ขั้นตอนที่ 1: เกี่ยวกับไฟ LED
- ขั้นตอนที่ 2: โพเทนชิโอมิเตอร์
- ขั้นตอนที่ 3: วงจร
- ขั้นตอนที่ 4: PWM
- ขั้นตอนที่ 5: โปรแกรม (ARDUINO SKETCH)
- ขั้นตอนที่ 6: MAP
- ขั้นตอนที่ 7: Arduino เคลื่อนไหว
วีดีโอ: การควบคุมความสว่าง Arduino (พร้อมภาพเคลื่อนไหว): 7 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
ในช่วงไม่กี่ปีที่ผ่านมา ฉันได้สร้างเครื่องพินบอลสองเครื่อง (pinballdesign.com) และหัวหุ่นยนต์สองตัว (grahamasker.com) ซึ่งแต่ละเครื่องควบคุมโดย Arduinos การมีอาชีพเป็นวิศวกรเครื่องกล ฉันพอใจกับการออกแบบกลไก อย่างไรก็ตาม ฉันต้องดิ้นรนกับการเขียนโปรแกรม ฉันตัดสินใจสร้างแอนิเมชั่นเพื่อแสดงแนวคิดพื้นฐานบางอย่างของ Arduino ฉันคิดว่ามันจะช่วยให้ฉันและคนอื่นๆ เข้าใจพวกเขา รูปภาพมีค่าหนึ่งพันคำและแอนิเมชั่นสามารถเป็นพันรูปภาพได้!
นี่คือคำอธิบายแบบเคลื่อนไหวเกี่ยวกับเรื่องของการควบคุมความสว่าง ภาพเคลื่อนไหวด้านบนแสดงแผนผังของโพเทนชิออมิเตอร์ที่เชื่อมต่อกับ Arduino แสดงให้เห็นว่าการปรับตำแหน่งของโพเทนชิออมิเตอร์สามารถเปลี่ยนความสว่างของไฟ LED ได้อย่างไร ฉันจะอธิบายองค์ประกอบทั้งหมดของกระบวนการนี้ สำหรับผู้ที่ไม่คุ้นเคยกับโพเทนชิโอมิเตอร์และไฟ LED ฉันจะเริ่มด้วยสิ่งเหล่านั้น จากนั้นฉันจะอธิบายว่าทำไม LED ต้องเชื่อมต่อกับพิน Arduino ที่เปิดใช้งาน PWM และวิธีการใช้ฟังก์ชั่น MAP ภายในร่าง Arduino เพื่อแปลงอินพุตจากโพเทนชิออมิเตอร์เป็นเอาต์พุตซึ่งเหมาะสำหรับการควบคุมไฟ LED
หากคุณคุ้นเคยกับไฟ LED และโพเทนชิโอมิเตอร์ คุณสามารถข้ามส่วนที่ 1 และ 2 ได้
ขั้นตอนที่ 1: เกี่ยวกับไฟ LED
ภาพประกอบด้านซ้ายด้านบนแสดงสัญลักษณ์วงจรสำหรับไฟ LED และขั้วของขา LED กระแสจะไหลผ่าน LED ในทิศทางเดียวเท่านั้น ดังนั้นขั้วจึงมีความสำคัญ ขายาวเป็นบวก นอกจากนี้ยังมีด้านแบนที่หน้าแปลนซึ่งเป็นด้านลบ
แรงดันและกระแส
แรงดันไฟฟ้าที่ต้องการโดย LED มีตั้งแต่ประมาณ 2.2 โวลต์ถึง 3.2 โวลต์ขึ้นอยู่กับสี คะแนนปัจจุบันของพวกเขาโดยทั่วไปคือ 20mA เพื่อจำกัดกระแสไฟและป้องกันไม่ให้ LED ร้อนเกินไป จำเป็นต้องใช้ตัวต้านทานแบบอนุกรมกับ LED แต่ละตัว ฉันแนะนำประมาณ 300 โอห์ม
ภาพประกอบทางด้านขวาด้านบนแสดงวิธีการบัดกรีตัวต้านทานกับขาของ LED และหุ้มฉนวนด้วยปลอกหุ้มหดด้วยความร้อน
ขั้นตอนที่ 2: โพเทนชิโอมิเตอร์
ในแง่ Arduino โพเทนชิออมิเตอร์คือเซ็นเซอร์ “เซ็นเซอร์” หมายถึงอุปกรณ์ภายนอกใด ๆ ที่ Arduino สามารถตรวจจับได้เมื่อเชื่อมต่อกับพินอินพุต เราจะใช้โพเทนชิออมิเตอร์ที่เชื่อมต่อกับ Arduino เพื่อควบคุมความสว่างของ LED โพเทนชิออมิเตอร์บางครั้งเรียกว่าตัวแบ่งแรงดันไฟฟ้า ซึ่งฉันคิดว่าเป็นคำอธิบายที่ดีกว่า แผนภาพด้านซ้ายด้านบนแสดงถึงหลักการของตัวแบ่งแรงดันไฟฟ้า ในตัวอย่างนี้ ตัวต้านทานเชื่อมต่อกับกราวด์ที่ปลายด้านหนึ่งและยึดไว้โดยแหล่งพลังงานบางส่วนที่ 5v ที่ปลายอีกด้านหนึ่ง หากตัวเลื่อนถูกเลื่อนไปตามตัวต้านทาน มันจะอยู่ที่แรงดันไฟฟ้า 0v ที่ปลายด้านซ้ายมือ และ 5v ที่ปลายด้านขวา ในตำแหน่งอื่นจะเป็นค่าระหว่าง 0v ถึง 5v ครึ่งทางเช่นจะอยู่ที่ 2.5V หากเราปรับรูปร่างการจัดเรียงดังที่แสดงไว้ด้านบนขวา นี่หมายถึงการกระทำของโพเทนชิออมิเตอร์แบบหมุน
ขั้นตอนที่ 3: วงจร
ภาพประกอบด้านบนแสดงให้เห็นว่าเราจำเป็นต้องเชื่อมต่อโพเทนชิออมิเตอร์และ LED กับ Arduino อย่างไร
Ardunio จำเป็นต้องตรวจจับแรงดันไฟฟ้าที่โพเทนชิออมิเตอร์ป้อนเข้าไป แรงดันไฟฟ้าเปลี่ยนแปลงอย่างราบรื่นเมื่อโพเทนชิออมิเตอร์ถูกหมุน จึงเป็นสัญญาณอะนาล็อกและด้วยเหตุนี้จึงต้องเชื่อมต่อกับพินอินพุตแบบอะนาล็อกบน Arduino แรงดันไฟฟ้าที่ขานี้จะอ่านโดย Arduino ทุกครั้งที่โปรแกรมร้องขอผ่านฟังก์ชัน "analogRead"
Arduino มีพินเอาต์พุตดิจิตอลเท่านั้น อย่างไรก็ตาม หมุดเหล่านั้นที่มีเครื่องหมายตัวหนอน (~) อยู่ข้างๆ จะจำลองเอาต์พุตแบบอะนาล็อกที่เหมาะสมในการควบคุมความสว่างของไฟ LED กระบวนการนี้เรียกว่า Pulse Width Modulation (PWM) และอธิบายผ่านแอนิเมชั่นถัดไป ขั้นตอนที่ 4
ขั้นตอนที่ 4: PWM
PWM, การปรับความกว้างพัลส์
ดังที่ได้กล่าวไว้ก่อนหน้านี้ หมุดที่มีทิลดา "~" ด้านข้างคือหมุด PWM เนื่องจากพินเป็นแบบดิจิทัลจึงอยู่ที่ 0v หรือ 5v เท่านั้น อย่างไรก็ตามด้วย PWM สามารถใช้เพื่อหรี่ไฟ LED หรือควบคุมความเร็วของมอเตอร์ได้ พวกเขาทำได้โดยการจ่ายไฟ 5v ให้กับ LED แต่พัลส์ระหว่าง 0v ถึง 5v ที่ 500 Hz (500 ครั้งต่อวินาที) และยืดหรือลดระยะเวลาขององค์ประกอบ 0v และ 5v แต่ละองค์ประกอบของพัลส์ เมื่อ LED เห็นพัลส์ 5v ที่ยาวกว่าพัลส์ 0v มันก็จะสว่างขึ้น ในโปรแกรมของเรา เราใช้ฟังก์ชัน analogueWrite() เพื่อส่งออก "คลื่นสี่เหลี่ยม" ของ PWM เพิ่มขึ้น 256 ค่าศูนย์ให้รอบการทำงาน 0% และ 255 ให้ "รอบการทำงาน" 100% เช่น 5 โวลต์ต่อเนื่อง ดังนั้น 127 จะให้รอบการทำงาน 50% ครึ่งเวลาที่ 0v และครึ่งเวลาที่ 5v ภาพเคลื่อนไหวด้านบนแสดงให้เห็นว่าเมื่อรอบการทำงานนี้ขยายไปถึง 100% แล้วไฟ LED จะสว่างขึ้น
ขั้นตอนที่ 5: โปรแกรม (ARDUINO SKETCH)
วิดีโอด้านบนเป็นขั้นตอนผ่านโปรแกรม (สเก็ตช์) ที่สามารถใช้ควบคุมความสว่างของไฟ LED โดยใช้โพเทนชิออมิเตอร์ วงจรจะเหมือนกับที่แสดงในขั้นตอนที่ 3
หากคุณพบว่าวิดีโอนี้อ่านเร็ว (หรือช้า) ได้สบาย คุณก็สามารถปรับความเร็วได้ ที่ด้านขวามือสุดของแถบควบคุมด้านล่างจะมีสัญลักษณ์รูปร่างคล้ายล้อเฟือง (บางครั้งมีป้าย 'HD' สีแดงติดอยู่.) หากคลิก จะแสดงเมนูที่มี "ความเร็วในการเล่น"
แน่นอน มันจะดีกว่าถ้าคุณสามารถคลิกปุ่มเพื่อข้ามแต่ละบรรทัดของโปรแกรมด้วยความเร็วของคุณเอง อย่างไรก็ตาม น่าเสียดายที่ไม่สามารถให้วิธีการโต้ตอบนั้นได้ที่นี่ หากคุณต้องการใช้วิธีนั้นในหัวข้อนี้และหัวข้อ Arduino อื่น ๆ อีกมากมาย มี ebook แบบโต้ตอบ / แอนิเมชั่นรุ่นแสดงตัวอย่างฟรีที่ animatedarduino.com
มีคุณลักษณะหนึ่งในโปรแกรมที่ฉันคิดว่าต้องการคำอธิบายเพิ่มเติม: ใน line14 จะใช้ฟังก์ชัน "map" มีคำอธิบายวัตถุประสงค์ต่อไป ในขั้นตอนที่ 6
ขั้นตอนที่ 6: MAP
เรามีโพเทนชิออมิเตอร์ที่เชื่อมต่อกับพินอะนาล็อก แรงดันโพเทนชิออมิเตอร์จะแตกต่างกันไประหว่าง 0v และ 5v ช่วงนี้ลงทะเบียนในโปรเซสเซอร์โดยเพิ่มขึ้นทีละ 1024 เมื่อใช้ค่าอินพุตเพื่อสร้างเอาต์พุตผ่านพินดิจิทัลที่เปิดใช้งาน PWM ช่วงนี้จะต้องจับคู่กับช่วงเอาต์พุตของพินดิจิทัล เพิ่มขึ้นทีละ 255 ฟังก์ชันแผนที่ใช้เพื่อจุดประสงค์นี้และให้เอาต์พุตที่เป็นสัดส่วนกับอินพุต
วิดีโอด้านบนแสดงสิ่งนี้
ขั้นตอนที่ 7: Arduino เคลื่อนไหว
รูปภาพในคำแนะนำนี้นำมาจาก ebook Animated Arduino ของฉันซึ่งมีอยู่ที่ www.animatedarduino.com ซึ่งฉันมุ่งมั่นที่จะให้ความเข้าใจที่ดีขึ้นเกี่ยวกับแนวคิดบางอย่างที่พบขณะเรียนรู้การเขียนโปรแกรม Arduino
มีสำเนาตัวอย่างฟรีของ ebook บนเว็บไซต์ ซึ่งช่วยให้คุณได้สัมผัสกับลักษณะเชิงโต้ตอบของหนังสือ มันเป็นชุดของหน้าตัวอย่างโดยพื้นฐาน ดังนั้นจึงละเว้นคำอธิบายมากมาย ประกอบด้วยหน้าตัวอย่างที่ให้คุณคลิกปุ่มที่นำคุณผ่านแต่ละบรรทัดของโปรแกรมและดูความคิดเห็นที่เกี่ยวข้อง หน้าอื่นๆ มีภาพเคลื่อนไหวและเนื้อหาเสียงที่คุณควบคุมได้ รวมหน้าเนื้อหาเพื่อให้คุณเห็นว่าฉบับสมบูรณ์ประกอบด้วยอะไรบ้าง
แนะนำ:
การควบคุมความสว่าง LED ด้วยโพเทนชิออมิเตอร์ด้วย Arduino: 3 ขั้นตอน
การควบคุมความสว่างของ LED ด้วยโพเทนชิออมิเตอร์ด้วย Arduino: ในโครงการนี้ เราจะควบคุมความสว่างของ LED โดยใช้ค่าความต้านทานแปรผันโดยโพเทนชิออมิเตอร์ นี่เป็นโปรเจ็กต์พื้นฐานสำหรับมือใหม่ แต่จะสอนคุณหลายอย่างเกี่ยวกับโพเทนชิออมิเตอร์และการทำงานของ LED ซึ่งจำเป็นต่อการเพิ่ม
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
การควบคุมความสว่าง LED ด้วยโพเทนชิออมิเตอร์และ Arduino: 6 ขั้นตอน
การควบคุมความสว่างของ LED ด้วยโพเทนชิออมิเตอร์และ Arduino: ในบทช่วยสอนนี้ เราจะเรียนรู้วิธีควบคุมความสว่างของ LED ด้วยโพเทนชิออมิเตอร์และ Arduino ดูวิดีโอสาธิต
การควบคุมความสว่าง การควบคุม LED ตาม PWM โดยใช้ปุ่มกด Raspberry Pi และ Scratch: 8 ขั้นตอน (พร้อมรูปภาพ)
การควบคุมความสว่าง การควบคุม LED แบบ PWM โดยใช้ปุ่มกด Raspberry Pi และ Scratch: ฉันพยายามหาวิธีที่จะอธิบายว่า PWM ทำงานอย่างไรกับนักเรียนของฉัน ดังนั้นฉันจึงตั้งค่าตัวเองให้พยายามควบคุมความสว่างของ LED โดยใช้ 2 ปุ่ม - ปุ่มหนึ่งเพิ่มความสว่างของ LED และอีกปุ่มหนึ่งหรี่ลง ในการโปรแกรม
POV GLOBE พร้อมภาพเคลื่อนไหว: 6 ขั้นตอน
POV GLOBE พร้อมแอนิเมชั่น: สวัสดีผู้สร้าง วันนี้ฉันจะบอกคุณเกี่ยวกับโปรเจ็กต์ใหม่ ลูกโลก POV ความคงอยู่ของการมองเห็น บทนำอย่างรวดเร็วเกี่ยวกับ POV หรือการมองเห็นอย่างต่อเนื่อง: ไฟแรงดันไฟ AC ใด ๆ ที่จริงแล้วกะพริบเปิดและปิดที่ความถี่ 60hz หรือ 60 ครั้งต่อวินาที สมองของเราต่อ