สารบัญ:

วน LED RGB ผ่านสเปกตรัมสีโดยใช้ Raspberry Pi 2 และ Scratch: 11 ขั้นตอน
วน LED RGB ผ่านสเปกตรัมสีโดยใช้ Raspberry Pi 2 และ Scratch: 11 ขั้นตอน

วีดีโอ: วน LED RGB ผ่านสเปกตรัมสีโดยใช้ Raspberry Pi 2 และ Scratch: 11 ขั้นตอน

วีดีโอ: วน LED RGB ผ่านสเปกตรัมสีโดยใช้ Raspberry Pi 2 และ Scratch: 11 ขั้นตอน
วีดีโอ: Arduino+LED RGB _Project DIY ep.2 2024, พฤศจิกายน
Anonim
วน LED RGB ผ่านสเปกตรัมสีโดยใช้ Raspberry Pi 2 และ Scratch
วน LED RGB ผ่านสเปกตรัมสีโดยใช้ Raspberry Pi 2 และ Scratch

Update Notes พฤ 25 กุมภาพันธ์ 2016: ฉันได้ปรับปรุงโปรแกรม Scratch และออกแบบคำสั่งของฉันใหม่

สวัสดีทุกคน ในโปรเจ็กต์นี้ ฉันต้องการใช้ Scratch เพื่อหมุนเวียน RGB LED ผ่านสเปกตรัมสี

มีโครงการมากมายที่ทำสิ่งนี้กับ Arduino ดังนั้นฉันจึงอยากรู้ว่าฉันจะได้ผลลัพธ์ที่ดีกับ Raspberry Pi หรือไม่

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

โปรเจ็กต์นี้เป็นภาคต่อจากคำแนะนำของฉันเกี่ยวกับการปรับความสว่างของ LED โดยใช้ปุ่มและ Scratch ซึ่งคุณสามารถหาได้ที่นี่:

www.instructables.com/id/PWM-Based-LED-Cont…

ลิงก์ไปยัง Arduino Sketch ดั้งเดิมที่ฉันใช้โปรแกรม Scratch ของฉันบน:

www.arduino.cc/en/Tutorial/DimmingLEDs ผู้เขียน Clay Shirky

ขั้นตอนที่ 1: รวบรวมสิ่งที่คุณต้องการสำหรับโครงการนี้

รวบรวมสิ่งที่คุณต้องการสำหรับโครงการนี้
รวบรวมสิ่งที่คุณต้องการสำหรับโครงการนี้
รวบรวมสิ่งที่คุณต้องการสำหรับโครงการนี้
รวบรวมสิ่งที่คุณต้องการสำหรับโครงการนี้
รวบรวมสิ่งที่คุณต้องการสำหรับโครงการนี้
รวบรวมสิ่งที่คุณต้องการสำหรับโครงการนี้

ส่วนประกอบที่คุณต้องการ:

Raspberry Pi พร้อมระบบปฏิบัติการ Raspian และการเชื่อมต่ออินเทอร์เน็ต

1 x เขียงหั่นขนม

1 x RGB LED (แคโทดทั่วไป)

ตัวต้านทาน 3 x 330 โอห์ม (สีส้มสีน้ำตาลส้ม)

สายเคเบิลเขียงหั่นขนมชาย/หญิง 4 เส้น

1 x สายเคเบิลเขียงหั่นขนมชาย / ชาย (หรือสายจัมเปอร์แกนเดี่ยวขนาดเล็กถ้าคุณมี)

ขั้นตอนที่ 2: ทำความเข้าใจสิ่งที่ขาของ RGB LED ทำ

ทำความเข้าใจสิ่งที่ขาของ LED RGB ทำ
ทำความเข้าใจสิ่งที่ขาของ LED RGB ทำ

ใช้ RGB LED ของคุณและดูที่ขา คุณจะสังเกตเห็นว่าขาข้างหนึ่งยาวกว่าขาอื่นทั้งหมด ปรับทิศทาง LED เพื่อให้ขาที่ยาวที่สุดนี้อยู่ทางซ้าย

พิน 1 ใช้เพื่อทำให้ไฟ LED ส่องแสงสีแดง

พิน 2 คือพินกราวด์

Pin 3 ทำให้ LED ส่องแสง GREEN

Pin 4 ทำให้ LED ส่องแสง BLUE

RGB LED ที่ฉันใช้มีแคโทดทั่วไป ซึ่งโดยทั่วไปหมายความว่าคุณเชื่อมต่อขากราวด์กับพินกราวด์ Raspberry Pi เพื่อให้ทำงานได้

ขั้นตอนที่ 3: การใส่ตัวต้านทาน 330 โอห์มและสายกราวด์จัมเปอร์ลงในเขียงหั่นขนม

การใส่ตัวต้านทาน 330 โอห์มและสายจัมเปอร์กราวด์ลงในเขียงหั่นขนม
การใส่ตัวต้านทาน 330 โอห์มและสายจัมเปอร์กราวด์ลงในเขียงหั่นขนม

เพื่อให้มองเห็นได้ง่ายบนไดอะแกรม เราสามารถวางตัวต้านทานและสายกราวด์ในตำแหน่งที่จำเป็นก่อน ตัวต้านทานไม่มีขั้ว ดังนั้นจึงไม่สำคัญว่าตัวต้านทานจะไปทางไหน

หมายเหตุ: เหตุใดเราจึงต้องการตัวต้านทานสามตัวสำหรับ LED หนึ่งดวง

คิดว่า RGB LED เป็นไฟ LED ที่แตกต่างกัน 3 ดวงที่รวมเป็นหนึ่งเดียว ถ้าเรามี LED 3 ดวงในวงจร เราจะใช้ตัวต้านทานสำหรับแต่ละตัว ดังนั้นเราจึงจำเป็นต้องมีตัวต้านทานสำหรับขาแต่ละสีของ LED RGB

ขั้นตอนที่ 4: การเพิ่ม LED เข้ากับวงจรของเรา

การเพิ่ม LED ให้กับวงจรของเรา
การเพิ่ม LED ให้กับวงจรของเรา
การเพิ่ม LED ให้กับวงจรของเรา
การเพิ่ม LED ให้กับวงจรของเรา

ตอนนี้เรามีตัวต้านทานและสายกราวด์แล้ว เราสามารถติดตั้ง LED ของเราลงในวงจรเขียงหั่นขนมได้ ปรับทิศทาง LED โดยให้ขาที่ยาวที่สุดอยู่ทางซ้าย

ค่อยๆ แยกขาเล็กน้อยเพื่อให้เสียบเข้ากับเขียงหั่นขนม ตรวจสอบให้แน่ใจว่าขาแต่ละข้างอยู่ในแนวเดียวกันกับตัวต้านทานที่สอดคล้องกัน

ขาที่ยาวที่สุด (ขา 2) ควรอยู่ในแนวเดียวกับสายดินสีดำ

ขั้นตอนที่ 5: การต่อสายเคเบิลเข้ากับ Breadboard ส่วนที่ 1: การต่อกราวด์

การต่อสายเคเบิลเข้ากับเขียงหั่นขนม ส่วนที่ 1: การต่อกราวด์
การต่อสายเคเบิลเข้ากับเขียงหั่นขนม ส่วนที่ 1: การต่อกราวด์
การต่อสายเคเบิลเข้ากับเขียงหั่นขนม ส่วนที่ 1: การต่อกราวด์
การต่อสายเคเบิลเข้ากับเขียงหั่นขนม ส่วนที่ 1: การต่อกราวด์
การต่อสายเคเบิลเข้ากับเขียงหั่นขนม ส่วนที่ 1: การต่อกราวด์
การต่อสายเคเบิลเข้ากับเขียงหั่นขนม ส่วนที่ 1: การต่อกราวด์

ขั้นแรก ให้เชื่อมต่อกราวด์จาก Raspberry Pi กับขากราวด์บน LED

ในไดอะแกรมของฉันฉันได้เชื่อมต่อสายเคเบิลตัวผู้/ตัวเมียจากพิน 6 บน Raspberry GPIO กับรางกราวด์ของเขียงหั่นขนมเพื่อเชื่อมต่อขากราวด์ของ LED กับ Raspberry Pi

การ์ดอ้างอิงจะแสดงรูปแบบพินสำหรับ Raspberry Pi GPIO GPIO 40 พินทางด้านขวาของภาพมีไว้สำหรับ Raspberry Pi 2 ซึ่งฉันใช้ทำโปรเจ็กต์นี้

ขั้นตอนที่ 6: การต่อสายเคเบิลเข้ากับ Breadboard ส่วนที่ 2: การเชื่อมต่อขา LED สีแดง

การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 2: การเชื่อมต่อขา LED สีแดง
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 2: การเชื่อมต่อขา LED สีแดง
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 2: การเชื่อมต่อขา LED สีแดง
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 2: การเชื่อมต่อขา LED สีแดง
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 2: การเชื่อมต่อขา LED สีแดง
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 2: การเชื่อมต่อขา LED สีแดง

ดันปลายสายตัวผู้เข้าไปในรูเหนือตัวต้านทานทางด้านซ้าย แล้วดันปลายสายตัวเมียเข้ากับ GPIO17 (pin11) บน Raspberry Pi

การ์ดอ้างอิงสำหรับพิน GPIO จะช่วยแนะนำคุณเกี่ยวกับพินที่ถูกต้อง

ขั้นตอนที่ 7: การต่อสายเคเบิลเข้ากับ Breadboard ส่วนที่ 3: การเชื่อมต่อขา LED สีเขียว

การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 3: การเชื่อมต่อขา LED สีเขียว
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 3: การเชื่อมต่อขา LED สีเขียว
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 3: การเชื่อมต่อขา LED สีเขียว
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 3: การเชื่อมต่อขา LED สีเขียว
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 3: การเชื่อมต่อขา LED สีเขียว
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 3: การเชื่อมต่อขา LED สีเขียว

ดันปลายสายตัวผู้เข้าไปในรูเหนือตัวต้านทานที่อยู่ตรงกลาง แล้วดันปลายสายตัวเมียเข้ากับ GPIO18 (พิน12) บน Raspberry Pi

การ์ดอ้างอิงสำหรับพิน GPIO จะช่วยแนะนำคุณเกี่ยวกับพินที่ถูกต้อง

ขั้นตอนที่ 8: การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 4: การเชื่อมต่อขา LED สีน้ำเงิน

การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 4: การเชื่อมต่อขา LED สีน้ำเงิน
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 4: การเชื่อมต่อขา LED สีน้ำเงิน
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 4: การเชื่อมต่อขา LED สีน้ำเงิน
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 4: การเชื่อมต่อขา LED สีน้ำเงิน
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 4: การเชื่อมต่อขา LED สีน้ำเงิน
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 4: การเชื่อมต่อขา LED สีน้ำเงิน
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 4: การเชื่อมต่อขา LED สีน้ำเงิน
การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 4: การเชื่อมต่อขา LED สีน้ำเงิน

ดันปลายสายตัวผู้เข้าไปในรูเหนือตัวต้านทานทางด้านขวา แล้วดันปลายสายตัวเมียเข้ากับ GPIO27 (pin13) บน Raspberry Pi

การ์ดอ้างอิงสำหรับพิน GPIO จะช่วยแนะนำคุณเกี่ยวกับพินที่ถูกต้อง

ขั้นตอนที่ 9: การเขียนโปรแกรมในศูนย์: การตรวจสอบวงจร

การเขียนโปรแกรมแบบ Scratch: Circuit Check
การเขียนโปรแกรมแบบ Scratch: Circuit Check
การเขียนโปรแกรมแบบ Scratch: Circuit Check
การเขียนโปรแกรมแบบ Scratch: Circuit Check
การเขียนโปรแกรมแบบ Scratch: Circuit Check
การเขียนโปรแกรมแบบ Scratch: Circuit Check

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

การทดสอบ LED ถูกควบคุมโดยปุ่ม 3 คู่

A และ Z ควบคุม RED, A เปิดสีแดง, Z ปิดสีแดง

ตัวควบคุม S และ X เป็นสีเขียว, S เปิดเป็นสีเขียว, X ปิดเป็นสีเขียว

ตัวควบคุม D และ C BLUE, D เปิดเป็นสีน้ำเงิน, C ปิดสวิตช์สีน้ำเงิน

การตั้งค่าพินเป็นสูงจะทำให้ไฟ LED สว่างขึ้น การตั้งค่าให้ต่ำจะทำให้ไฟ LED ดับลง

ดาวน์โหลดโปรแกรมและทดสอบวงจรของคุณหากคุณต้องการให้แน่ใจว่าได้ต่อสายอย่างถูกต้อง

ขั้นตอนที่ 10: การเขียนโปรแกรมแบบ Scratch: สิ่งที่ฉันต้องการทำกับ RGB LED

การเขียนโปรแกรมแบบ Scratch: สิ่งที่ผมอยากจะทำกับ RGB LED
การเขียนโปรแกรมแบบ Scratch: สิ่งที่ผมอยากจะทำกับ RGB LED

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

นี่คือสิ่งที่ฉันต้องการจะเกิดขึ้น:

การเปลี่ยนสีจะทำในสามขั้นตอน:

ในระยะแรกเราเริ่มต้นด้วยสีแดงที่ระดับสูงสุดและสีเขียวและสีน้ำเงินที่ระดับที่เล็กมาก

จากนั้นเราเริ่มลดความสว่างสีแดงลง -1 ในขณะที่เพิ่มความสว่างของสีเขียวขึ้น 1

เราใช้ตัวนับลูปเพื่อจำกัดจำนวนครั้งที่สิ่งนี้เกิดขึ้น

เมื่อตัวนับลูปถึง 255 เราก็เริ่มเฟสที่สอง

ในระยะที่สอง สีเขียวจะอยู่ที่ระดับสูงสุด สีแดงและสีน้ำเงินจะอยู่ที่ระดับต่ำ

เราลดความสว่างสีเขียวลง -1 ในขณะที่เพิ่มความสว่างของบลูส์ขึ้น 1

ตัวนับลูปของเราสำหรับเฟสที่สองถูกตั้งค่าเป็น 509

เมื่อถึง 509 เราจะเริ่มเฟส 3

ในระยะที่ 3 สีน้ำเงินอยู่ที่ระดับความสว่างสูงสุด สีเขียวและสีแดงอยู่ที่ระดับต่ำ

เราเริ่มลดความสว่างสีน้ำเงินลง -1 ในขณะที่เพิ่มความสว่างสีแดงขึ้น 1

เมื่อตัวนับลูปถึง 763 วัฏจักรจะเริ่มใหม่ในเฟส 1

เรามีตัวแปรสามตัวคือ redVal, greenVal และ blueVal เพื่อเก็บค่าของระดับความสว่างของแต่ละสี จากนั้นค่าเหล่านี้จะถูกส่งไปยังพิน GPIO ที่ถูกต้องเพื่อจ่ายไฟให้กับขาของ LED เพื่อตั้งค่าความสว่างของแต่ละสี ซึ่งผลัดกันทำให้เรา ผสมสีที่เราต้องการ

และนั่นคือความพยายามของฉันที่จะวนรอบสเปกตรัมสีโดยใช้ RGB LED และ Scratch

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

ขอบคุณที่อ่านคำแนะนำของฉันและฉันหวังว่าคุณจะมีวันที่ดี!

ขั้นตอนที่ 11: จับภาพหน้าจอของโปรแกรม Scratch

จับภาพหน้าจอของโปรแกรม Scratch
จับภาพหน้าจอของโปรแกรม Scratch

หากคุณต้องการลองเขียนโปรแกรมด้วยตัวเอง มาดูเลย์เอาต์อย่างใกล้ชิด

แนะนำ: