
สารบัญ:
- ขั้นตอนที่ 1: รวบรวมสิ่งที่คุณต้องการสำหรับโครงการนี้
- ขั้นตอนที่ 2: ทำความเข้าใจสิ่งที่ขาของ RGB LED ทำ
- ขั้นตอนที่ 3: การใส่ตัวต้านทาน 330 โอห์มและสายกราวด์จัมเปอร์ลงในเขียงหั่นขนม
- ขั้นตอนที่ 4: การเพิ่ม LED เข้ากับวงจรของเรา
- ขั้นตอนที่ 5: การต่อสายเคเบิลเข้ากับ Breadboard ส่วนที่ 1: การต่อกราวด์
- ขั้นตอนที่ 6: การต่อสายเคเบิลเข้ากับ Breadboard ส่วนที่ 2: การเชื่อมต่อขา LED สีแดง
- ขั้นตอนที่ 7: การต่อสายเคเบิลเข้ากับ Breadboard ส่วนที่ 3: การเชื่อมต่อขา LED สีเขียว
- ขั้นตอนที่ 8: การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 4: การเชื่อมต่อขา LED สีน้ำเงิน
- ขั้นตอนที่ 9: การเขียนโปรแกรมในศูนย์: การตรวจสอบวงจร
- ขั้นตอนที่ 10: การเขียนโปรแกรมแบบ Scratch: สิ่งที่ฉันต้องการทำกับ RGB LED
- ขั้นตอนที่ 11: จับภาพหน้าจอของโปรแกรม Scratch
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12

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 ทำ

ใช้ RGB LED ของคุณและดูที่ขา คุณจะสังเกตเห็นว่าขาข้างหนึ่งยาวกว่าขาอื่นทั้งหมด ปรับทิศทาง LED เพื่อให้ขาที่ยาวที่สุดนี้อยู่ทางซ้าย
พิน 1 ใช้เพื่อทำให้ไฟ LED ส่องแสงสีแดง
พิน 2 คือพินกราวด์
Pin 3 ทำให้ LED ส่องแสง GREEN
Pin 4 ทำให้ LED ส่องแสง BLUE
RGB LED ที่ฉันใช้มีแคโทดทั่วไป ซึ่งโดยทั่วไปหมายความว่าคุณเชื่อมต่อขากราวด์กับพินกราวด์ Raspberry Pi เพื่อให้ทำงานได้
ขั้นตอนที่ 3: การใส่ตัวต้านทาน 330 โอห์มและสายกราวด์จัมเปอร์ลงในเขียงหั่นขนม

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


ตอนนี้เรามีตัวต้านทานและสายกราวด์แล้ว เราสามารถติดตั้ง LED ของเราลงในวงจรเขียงหั่นขนมได้ ปรับทิศทาง LED โดยให้ขาที่ยาวที่สุดอยู่ทางซ้าย
ค่อยๆ แยกขาเล็กน้อยเพื่อให้เสียบเข้ากับเขียงหั่นขนม ตรวจสอบให้แน่ใจว่าขาแต่ละข้างอยู่ในแนวเดียวกันกับตัวต้านทานที่สอดคล้องกัน
ขาที่ยาวที่สุด (ขา 2) ควรอยู่ในแนวเดียวกับสายดินสีดำ
ขั้นตอนที่ 5: การต่อสายเคเบิลเข้ากับ Breadboard ส่วนที่ 1: การต่อกราวด์



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



ดันปลายสายตัวผู้เข้าไปในรูเหนือตัวต้านทานทางด้านซ้าย แล้วดันปลายสายตัวเมียเข้ากับ GPIO17 (pin11) บน Raspberry Pi
การ์ดอ้างอิงสำหรับพิน GPIO จะช่วยแนะนำคุณเกี่ยวกับพินที่ถูกต้อง
ขั้นตอนที่ 7: การต่อสายเคเบิลเข้ากับ Breadboard ส่วนที่ 3: การเชื่อมต่อขา LED สีเขียว



ดันปลายสายตัวผู้เข้าไปในรูเหนือตัวต้านทานที่อยู่ตรงกลาง แล้วดันปลายสายตัวเมียเข้ากับ GPIO18 (พิน12) บน Raspberry Pi
การ์ดอ้างอิงสำหรับพิน GPIO จะช่วยแนะนำคุณเกี่ยวกับพินที่ถูกต้อง
ขั้นตอนที่ 8: การต่อสายเคเบิลเข้ากับ Breadboard ตอนที่ 4: การเชื่อมต่อขา LED สีน้ำเงิน




ดันปลายสายตัวผู้เข้าไปในรูเหนือตัวต้านทานทางด้านขวา แล้วดันปลายสายตัวเมียเข้ากับ GPIO27 (pin13) บน Raspberry Pi
การ์ดอ้างอิงสำหรับพิน GPIO จะช่วยแนะนำคุณเกี่ยวกับพินที่ถูกต้อง
ขั้นตอนที่ 9: การเขียนโปรแกรมในศูนย์: การตรวจสอบวงจร



เมื่อฉันวางสายโปรเจ็กต์นี้เป็นครั้งแรก ฉันค่อนข้างประมาทและสับสนกับสายเคเบิลสีของฉัน ซึ่งหมายความว่าเมื่อฉันต้องการให้สีแดงปรากฏ สีเขียวขึ้นมาแทน ดังนั้นฉันจึงเขียนโปรแกรมง่ายๆ เพื่อตรวจสอบว่าทุกอย่างเชื่อมต่ออย่างถูกต้อง
การทดสอบ LED ถูกควบคุมโดยปุ่ม 3 คู่
A และ Z ควบคุม RED, A เปิดสีแดง, Z ปิดสีแดง
ตัวควบคุม S และ X เป็นสีเขียว, S เปิดเป็นสีเขียว, X ปิดเป็นสีเขียว
ตัวควบคุม D และ C BLUE, D เปิดเป็นสีน้ำเงิน, C ปิดสวิตช์สีน้ำเงิน
การตั้งค่าพินเป็นสูงจะทำให้ไฟ LED สว่างขึ้น การตั้งค่าให้ต่ำจะทำให้ไฟ LED ดับลง
ดาวน์โหลดโปรแกรมและทดสอบวงจรของคุณหากคุณต้องการให้แน่ใจว่าได้ต่อสายอย่างถูกต้อง
ขั้นตอนที่ 10: การเขียนโปรแกรมแบบ 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

หากคุณต้องการลองเขียนโปรแกรมด้วยตัวเอง มาดูเลย์เอาต์อย่างใกล้ชิด
แนะนำ:
ติดตาม: ศูนย์สื่อขั้นสูงพร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): 3 ขั้นตอน

ติดตาม: Advanced Media Center พร้อม Odroid N2 และ Kodi (รองรับ 4k และ HEVC): บทความนี้เป็นบทความต่อจากบทความก่อนหน้าของฉันที่ประสบความสำเร็จค่อนข้างมากเกี่ยวกับการสร้างศูนย์สื่ออเนกประสงค์ โดยอ้างอิงจาก Raspberry PI ที่ได้รับความนิยมมากในตอนแรก แต่ ในภายหลัง เนื่องจากไม่มีเอาต์พุตที่สอดคล้องกับ HEVC, H.265 และ HDMI 2.2 จึงมีสวิตช์
Blinds Control ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: 5 ขั้นตอน (พร้อมรูปภาพ)

การควบคุมมู่ลี่ด้วย ESP8266, Google Home และ Openhab Integration และ Webcontrol: ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นว่าฉันเพิ่มระบบอัตโนมัติให้กับมู่ลี่ของฉันอย่างไร ฉันต้องการเพิ่มและลบระบบอัตโนมัติได้ ดังนั้นการติดตั้งทั้งหมดจึงเป็นแบบหนีบ ส่วนหลักคือ: สเต็ปเปอร์มอเตอร์ ตัวขับสเต็ปควบคุม bij ESP-01 เกียร์และการติดตั้ง
DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: 3 ขั้นตอน

DIY IBeacon และ Beacon Scanner ด้วย Raspberry Pi และ HM13: Story A beacon จะส่งสัญญาณอย่างต่อเนื่องเพื่อให้อุปกรณ์บลูทู ธ อื่น ๆ รู้ว่ามีอยู่ และฉันอยากได้บีคอนบลูทูธเพื่อติดตามกุญแจมาตลอด เพราะฉันลืมเอามันมาเหมือน 10 ครั้งในปีที่แล้ว และฉันก็เกิดขึ้น
การควบคุมความสว่าง การควบคุม LED ตาม PWM โดยใช้ปุ่มกด Raspberry Pi และ Scratch: 8 ขั้นตอน (พร้อมรูปภาพ)

การควบคุมความสว่าง การควบคุม LED แบบ PWM โดยใช้ปุ่มกด Raspberry Pi และ Scratch: ฉันพยายามหาวิธีที่จะอธิบายว่า PWM ทำงานอย่างไรกับนักเรียนของฉัน ดังนั้นฉันจึงตั้งค่าตัวเองให้พยายามควบคุมความสว่างของ LED โดยใช้ 2 ปุ่ม - ปุ่มหนึ่งเพิ่มความสว่างของ LED และอีกปุ่มหนึ่งหรี่ลง ในการโปรแกรม
RuuviTag และ PiZero W และ Blinkt! เทอร์โมมิเตอร์แบบ Bluetooth Beacon: 3 ขั้นตอน (พร้อมรูปภาพ)

RuuviTag และ PiZero W และ Blinkt! เครื่องวัดอุณหภูมิที่ใช้ Bluetooth Beacon: คำแนะนำนี้อธิบายวิธีการอ่านข้อมูลอุณหภูมิและความชื้นจาก RuuviTag โดยใช้ Bluetooth กับ Raspberry Pi Zero W และเพื่อแสดงค่าเป็นเลขฐานสองบน Pimoroni กะพริบตา! pHAT.หรือเรียกสั้นๆ ว่า จะสร้างสถานะอย่างไร