สารบัญ:
- ขั้นตอนที่ 1: สิ่งที่คุณต้องการ
- ขั้นตอนที่ 2: สร้างวงจรของคุณ
- ขั้นตอนที่ 3: สร้างสคริปต์ Python เพื่ออ่านตัวต้านทานแบบพึ่งพาแสง
- ขั้นตอนที่ 4: มันทำงานอย่างไร
วีดีโอ: วงจร Raspberry Pi GPIO: การใช้เซ็นเซอร์อะนาล็อก LDR โดยไม่มี ADC (ตัวแปลงอนาล็อกเป็นดิจิตอล): 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
ในคำแนะนำก่อนหน้านี้ เราได้แสดงให้คุณเห็นว่าคุณสามารถเชื่อมโยงพิน GPIO ของ Raspberry Pi กับไฟ LED และสวิตช์ได้อย่างไร และวิธีที่พิน GPIO สามารถสูงหรือต่ำได้ แต่ถ้าคุณต้องการใช้ Raspberry Pi กับเซ็นเซอร์อะนาล็อกล่ะ
หากเราต้องการใช้เซ็นเซอร์อะนาล็อกกับ Raspberry Pi เราจะต้องสามารถวัดความต้านทานของเซ็นเซอร์ได้ พิน GPIO ของ Raspberry Pi ต่างจาก Arduino ตรงที่ไม่สามารถวัดความต้านทานได้และสามารถรับรู้ได้ก็ต่อเมื่อแรงดันไฟฟ้าที่จ่ายไปนั้นสูงกว่าแรงดันไฟฟ้าที่แน่นอน (ประมาณ 2 โวลต์) เพื่อแก้ปัญหานี้ คุณสามารถใช้ Analogue to Digital Converter (ADC) หรือคุณสามารถใช้ตัวเก็บประจุที่มีราคาถูกแทน
คำแนะนำนี้จะแสดงให้คุณเห็นว่าสามารถทำได้อย่างไร
ขั้นตอนที่ 1: สิ่งที่คุณต้องการ
- RaspberryPi ที่มี Raspbian ติดตั้งไว้แล้ว คุณจะต้องสามารถเข้าถึง Pi ได้โดยใช้จอภาพ เมาส์ และคีย์บอร์ด หรือผ่านทางเดสก์ท็อประยะไกล คุณสามารถใช้ Raspberry Pi ได้ทุกรุ่น หากคุณมีรุ่น Pi Zero คุณอาจต้องการบัดกรีหมุดส่วนหัวบางตัวเข้ากับพอร์ต GPIO
- ตัวต้านทานแบบพึ่งพาแสง (หรือที่เรียกว่า LDR หรือ Photoresistor)
- ตัวเก็บประจุแบบเซรามิก 1 ยูเอฟ
- เขียงหั่นขนมต้นแบบ Solderless
- สายจัมเปอร์ชายกับหญิง
ขั้นตอนที่ 2: สร้างวงจรของคุณ
สร้างวงจรด้านบนบนเขียงหั่นขนมของคุณเพื่อให้แน่ใจว่าไม่มีส่วนประกอบใดที่นำไปสู่สัมผัส ตัวต้านทานแบบพึ่งพาแสงและตัวเก็บประจุแบบเซรามิกไม่มีขั้ว ซึ่งหมายความว่าสามารถเชื่อมต่อกระแสลบและกระแสบวกกับตะกั่วทั้งสองได้ ดังนั้นคุณจึงไม่ต้องกังวลว่าจะเชื่อมต่อส่วนประกอบเหล่านี้อย่างไรในวงจรของคุณ
เมื่อคุณตรวจสอบวงจรแล้ว ให้เชื่อมต่อสายจัมเปอร์กับพิน GPIO ของ Raspberry Pi โดยทำตามแผนภาพด้านบน
ขั้นตอนที่ 3: สร้างสคริปต์ Python เพื่ออ่านตัวต้านทานแบบพึ่งพาแสง
ตอนนี้เราจะเขียนสคริปต์สั้นๆ ที่จะอ่านและแสดงความต้านทานของ LDR โดยใช้ Python
บน Raspberry Pi ของคุณ ให้เปิด IDLE (เมนู > การเขียนโปรแกรม > Python 2 (IDLE)) เปิดโครงการใหม่ไปที่ ไฟล์ > ไฟล์ใหม่ จากนั้นพิมพ์ (หรือคัดลอกและวาง) รหัสต่อไปนี้:
นำเข้า RPi. GPIO เป็น GPIOimport timempin=17 tpin=27 GPIO.setmode(GPIO. BCM) cap=0.000001 adj=2.13062985i=0 t=0 while True: GPIO.setup(mpin, GPIO. OUT) GPIO.setup(tpin, GPIO. OUT) GPIO.output(mpin, False) GPIO.output(tpin, False) time.sleep(0.2) GPIO.setup(mpin, GPIO. IN) time.sleep(0.2) GPIO.output(tpin, True) starttime=time.time() endtime=time.time() while (GPIO.input(mpin) == GPIO. LOW): endtime=time.time() measureresistance=endtime-starttime res=(measureresistance/cap)* adj i=i+1 t=t+res ถ้า i==10: t=t/i พิมพ์ (t) i=0 t=0
บันทึกโครงการของคุณเป็น lightsensor.py (ไฟล์ > บันทึกเป็น) ในโฟลเดอร์เอกสารของคุณ
ตอนนี้เปิด Terminal (เมนู > อุปกรณ์เสริม > Terminal) แล้วพิมพ์คำสั่งต่อไปนี้:
python lightsensor.py
Raspberry Pi จะแสดงความต้านทานของโฟโตรีซีสเตอร์ซ้ำๆ หากคุณวางนิ้วบนโฟโตรีซีสเตอร์ ความต้านทานจะเพิ่มขึ้น หากคุณฉายแสงที่สว่างบนโฟโตรีซีสเตอร์ ความต้านทานจะลดลง คุณสามารถหยุดโปรแกรมนี้ไม่ให้ทำงานโดยกด CTRL+Z
ขั้นตอนที่ 4: มันทำงานอย่างไร
เมื่อตัวเก็บประจุค่อยๆ ชาร์จ แรงดันไฟฟ้าที่ผ่านวงจรและไปยังพิน GPIO จะเพิ่มขึ้น เมื่อตัวเก็บประจุถูกชาร์จไปยังจุดหนึ่ง แรงดันไฟฟ้าจะเพิ่มขึ้นเหนือ 2 โวลต์ และ Raspberry Pi จะรู้สึกว่า GPIO pin 13 นั้นสูง
หากความต้านทานของเซ็นเซอร์เพิ่มขึ้น ตัวเก็บประจุจะชาร์จช้าลงและวงจรจะใช้เวลามากขึ้นในการเข้าถึง 2 โวลต์
สคริปต์ด้านบนจะคำนวณตามเวลาที่พิน 13 เปลี่ยนเป็น High จากนั้นจึงใช้การวัดนี้เพื่อคำนวณความต้านทานของโฟโตรีซีสเตอร์
แนะนำ:
วงจร ECG อัตโนมัติ รุ่น: 4 ขั้นตอน
Automated ECG Circuit Model: เป้าหมายของโครงการนี้คือการสร้างแบบจำลองวงจรที่มีส่วนประกอบหลายอย่างที่สามารถขยายและกรองสัญญาณ ECG ขาเข้าได้อย่างเพียงพอ ส่วนประกอบสามส่วนจะได้รับการสร้างแบบจำลองแยกกัน: แอมพลิฟายเออร์เครื่องมือวัด, ฟิลเตอร์แอคทีฟบาก และ
วงจร ECG ใน LTspice: 4 ขั้นตอน
ECG Circuitry ใน LTspice: ดาวน์โหลด LTspice สำหรับ mac หรือ PC รุ่นนี้ทำบน mac
วงจร LDR: 9 ขั้นตอน
LDR Circuit: Abstract Homes เริ่มฉลาดขึ้นทุกวันเพราะเทคโนโลยีที่อยู่รอบตัวในปัจจุบัน แอปพลิเคชันที่ใช้ในบ้านอัจฉริยะเหล่านี้คือระบบ LDR บทความนี้จะแสดงวิธีสร้างระบบ LDR ของคุณเองด้วยเครื่องมือง่ายๆ และ
วงจร LED Flasher พร้อม LDR: 6 ขั้นตอน
วงจร LED Flasher พร้อม LDR: บทนำ:สวัสดีทุกคน วันนี้ในบทความนี้ เราจะมาพูดถึงวิธีสร้างวงจร LED Flasher ด้วย LDR แน่นอน คุณจะเปลี่ยนความเร็วการกะพริบด้วยพลังเทียน LDR นี่จึงเป็นวงจรที่ยอดเยี่ยมสำหรับมือสมัครเล่น
My First Feather Wing: ตัวแปลงอนาล็อกเป็นดิจิตอล: 5 ขั้นตอน
My First Feather Wing: Analog-to-Digital Converter: สวัสดี เพื่อนผู้สร้างของฉัน! คำสั่งสอนของวันนี้เกี่ยวกับบางสิ่งที่พิเศษจริงๆ อุปกรณ์นี้เป็นขนนกตัวแรกของฉัน - ตามฟอร์มแฟคเตอร์ของ Adafruit นอกจากนี้ยังเป็น PCB ที่ติดตั้งบนพื้นผิวเป็นครั้งแรกของฉัน! การใช้โล่นี้ที่โดดเด่นที่สุดของฉันอยู่ในอุปกรณ์ที่ฉันคลั่งไคล้