เซ็นเซอร์อุณหภูมิ DS18b20 ไม่อยู่ในรายการ


15

ฉันขอขอบคุณคำแนะนำเกี่ยวกับเรื่องนี้ การเป็น noob ทั้งสิ้นฉันทำตามคำแนะนำบนอินเทอร์เน็ตอย่างใกล้ชิดเพื่ออธิบายวิธีการใช้เซ็นเซอร์ DS18b20 กับ Raspberry Pi ของฉัน คำแนะนำคือhttp://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/temperature/และค่อนข้างง่ายที่จะติดตาม

ฉันเปลี่ยนไฟล์ raspi.list เพื่ออ่าน "deb http://archive.raspberrypi.org/debian/ wheezy main untested" จากนั้นเรียกใช้ apt-get update และ apt-get upgrade ทุกสิ่งที่เกิดขึ้นโดยไม่มีการผูกปม

ฉันเชื่อมต่อ DS18b20 ถึง 3v, Ground และ Data (gpio # 4) เชื่อมต่อข้อมูลและ 3v ผ่านตัวต้านทาน 4.7 โอห์ม

ฉันใช้คอนโซลเพื่อเรียกใช้แล้ว

sudo modprobe w1-gpio
sudo modprobe w1-therm
cd /sys/bus/w1/devices/

ทั้งหมดนี้ทำงานได้ดี อย่างไรก็ตามเมื่อชนิดls, w1_bus_master1คู่มือบอกฉันว่าฉันควรจะเห็นหมายเลขของเซ็นเซอร์ที่ระบุไว้ตามด้วย

ทั้งหมดที่ฉันได้รับจริง ๆ คือw1_bus_master1แต่ไม่มีหมายเลขซีเรียล ฉันลองทุกอย่างที่ฉันสามารถคิดได้ (ซึ่งไม่มาก) ใครบ้างที่สามารถให้คำแนะนำเกี่ยวกับปัญหาที่อาจเกิดขึ้น?

ขอบคุณมาก

Raspnoob


1
ดูเหมือนว่า RaspberryPi ของคุณจะไม่เห็นเซ็นเซอร์ของคุณ ตรวจสอบอีกครั้งว่ามันเชื่อมต่ออย่างถูกต้อง (เช่นหากคุณไม่ได้เชื่อมต่อเซ็นเซอร์ขา 1 เป็นขา 3 ฯลฯ ) ให้ตรวจสอบอีกครั้งว่าคุณเชื่อมต่อหมุดข้อมูลกับ gpio 4 ตรวจสอบเซ็นเซอร์อื่น (บางทีคุณอาจทำการเบรก อันที่คุณกำลังทดสอบอยู่ตอนนี้) นอกจากนี้เนื่องจากฉันไม่รู้ว่านี่เป็นตัวพิมพ์ผิดให้ตรวจสอบอีกครั้งว่าคุณใช้ตัวต้านทาน 4.7k Ohm (4700 Ohm) หรือไม่ไม่ใช่ 4.7 Ohm
Krzysztof Adamski

ขอบคุณสำหรับคำตอบนั่นคือตัวพิมพ์ผิดคือตัวต้านทานโอห์ม 4.7k (สีเหลืองสีม่วงสีแดงสีทอง) ฉันมีเซ็นเซอร์วัดอุณหภูมิสามตัวและไม่มีเซ็นเซอร์ใดที่ทำงานได้ แต่เป็นไปได้ว่าฉันสามารถแยกเซ็นเซอร์ทั้งสามได้โดยการพลาด อย่างน้อยดูเหมือนว่าจะไม่มีอะไรโดดออกมาผิดปกติดังนั้นฉันจะเริ่มต้นด้วยการซื้ออีกสองสามครั้ง
Raspnoob

คำตอบ:


15

ฉันขอแนะนำให้ตรวจสอบการเชื่อมต่อของคุณอีกครั้ง ภาพการเชื่อมต่อ
wiring การเดินสายของฉัน (ซึ่งใช้งานได้สำหรับฉัน)

Pi ส่วนหัวหมุด←จากแผ่นโกง pi

สกรีนช็อตของกราฟอุณหภูมิและคำสั่ง pi
คำสั่ง and และตัวอย่างเอาต์พุต + กราฟ RRDTOOL จาก DS18B20 (อันที่แสดงในรูปบนสุด)

หากรูปภาพมีค่าหนึ่งพันคำทำไมการแลกเปลี่ยนสแต็คยืนยันที่อักขระ 30 ตัว


ขอบคุณ HeatfanJohn ที่เป็นอย่างที่เป็นอยู่ ข้อผิดพลาดในการเดินสายไฟ รูปภาพของคุณแก้ไขปัญหาในไม่กี่วินาที ฉันสับสนเล็กน้อยว่าสำหรับฉันแล้วคือพิน 7 ซึ่งไดอะแกรมฉันมีป้ายกำกับว่าเป็นนาฬิกาเอนกประสงค์ GPIO # 4 เป็นอย่างไร ขอขอบคุณอีกครั้ง
Raspnoob

@Raspnoob: ดู pinout ในคำตอบที่ปรับปรุงแล้วการกำหนดหมายเลขทำให้เกิดความสับสน การกำหนดหมายเลข GPIO นั้นเป็นไปตามข้อมูลจำเพาะของผู้ผลิตระบบหลักบนชิป แต่หมุดส่วนหัวมีการจัดระเบียบที่แตกต่างกัน ป.ล. โปรดคลิกที่เครื่องหมายถูกเพื่อยอมรับคำตอบหากมันช่วยแก้ปัญหาของคุณได้
RedGrittyBrick

1
ฉันสามารถใช้ GPIO อื่นได้หรือไม่
Andres

4
ฉันไม่สามารถให้ฉันทำงานร่วมกับ Raspbian 1.4.0 และโมเดล B + ได้จนกว่าฉันจะทำสิ่งนี้: เพิ่มบรรทัดต่อไปนี้ที่ท้าย /boot/config.txt: dtoverlay = w1-gpio, gpiopin = 4
David Tinker

14

ผมมีปัญหาเดียวกันกับพี่ B + /boot/config.txtและแก้ไขได้โดยการเพิ่มเส้นเพื่อ เพิ่มรายการต่อไปนี้ลงด้านล่าง:

dtoverlay=w1-gpio,gpiopin=4

พบวิธีแก้ปัญหาได้ที่: www.raspberrypi-spy.co.uk


มันทำเพื่อฉัน ดูเหมือนว่านี่ไม่จำเป็นสำหรับ Pi Model 1 ฉันมี model 2 และต้องการสิ่งนี้ ไม่modprobeจำเป็น
Oliv

ก็จำเป็นสำหรับรุ่นพี่ของฉัน 3 B.
user100464

3

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

ตามแผ่นข้อมูล ( http://datatab.maximintegrated.com/en/ds/DS18B20.pdfหน้า 2): VDD จะต้องต่อสายดินเพื่อการทำงานในโหมดพลังงานปรสิต

DS18B20 ต้องการการดึงข้อมูลที่แรงในโหมดนี้ทำได้โดยการออกคำสั่งนี้:

sudo modprobe w1-gpio pullup=1
sudo modprobe w1-therm strong_pullup=1

แก้ไข (ตอบกลับความคิดเห็น):

  • โหมดพลังงานปรสิตมีความเรียบง่ายในการเดินสาย ต้องการเพียงสาย 2 เส้นสำหรับโหมดนี้ สิ่งนี้มีความสำคัญอย่างยิ่งเมื่อต้องการรวมเซ็นเซอร์จำนวนมากเข้าด้วยกัน

  • ข้อเสียของโหมดปรสิตคือ IO ต้องการ pullup ที่แรงเพื่อให้กระแสไฟฟ้าเพียงพอ อย่างไรก็ตามนี่ไม่ใช่ปัญหาจริงกับเซ็นเซอร์อุณหภูมินี้

  • ข้อเสียอีกประการหนึ่งของพลังงานปรสิตคือความเร็วในการสื่อสารที่ช้าลง เราต้องชาร์จตัวเก็บประจุปรสิตและต้องใช้เวลาในกรณีของเซ็นเซอร์นี้> 500 ms


1
ประโยชน์หรือข้อเสียของการใช้ DS18B20 ในโหมดพยาธิมากกว่าโหมดปกติคืออะไร?
Matthew Moisen

(ช้าไปหน่อย) คำตอบที่เพิ่ม
sanyi

ขอขอบคุณ. "โหมดพลังงานของกาฝาก ... เป็นสิ่งสำคัญอย่างยิ่งเมื่อต้องการเชื่อมต่อเซ็นเซอร์จำนวนมากเข้าด้วยกัน" ขณะนี้ฉันเชื่อมโยงโพรบจำนวนมากถึง 7 โพรบบนเขียงหั่นขนมโดยไม่ต้องใช้โหมดกาฝาก เหตุใดจึงเป็นสิ่งสำคัญในกรณีนี้ให้ไปกาฝาก?
Matthew Moisen

ในบางสถานการณ์สายที่น้อยลงสามารถลดต้นทุนหรือช่วยหลีกเลี่ยงปัญหาทางกลหรือพื้นที่ นี่ไม่เกี่ยวข้องกับโครงการงานอดิเรกขนาดเล็กบนโต๊ะของใครบางคน
sanyi

1
สมมุติว่าคุณใช้ pull-up ภายนอกแล้วไม่จำเป็นต้องทำการตั้งค่า pullup = 1?
piers7

-1

หากคุณมี Wheezy รุ่นใหม่ห้ามใช้ "ทรีอุปกรณ์" ในโปรแกรมกำหนดค่า! ฉันพบว่ามันทำให้เกิดความเสียหายทุกชนิดกับฮาร์ดแวร์ Pis ของคุณ

การทำเช่นนั้นคุณจะไม่ต้องเพิ่มบรรทัดจากความคิดเห็นที่กล่าวถึงข้างต้น:

dtoverlay = W1-GPIO, gpiopin = 4


-1

ในการตั้งค่าสายเดียวด้วยเคอร์เนลล่าสุดคุณสามารถทำตามทิศทางได้ที่: http://bigfieldsblog.cloudapp.net/keyes-18b20-temperature-sensor-and-raspberry-pi-2/


1
เพื่อให้สอดคล้องกับนโยบายของเราเกี่ยวกับคำตอบลิงก์อย่างเดียวที่ไม่มีข้อมูลหากโพสต์นี้ไม่ได้รับการแก้ไขเพื่อให้มีข้อมูลที่สามารถเป็นคำตอบได้ แต่น้อยที่สุดใน 48 ชั่วโมงจะถูกแปลงเป็น Community Wiki เพื่อให้ชุมชนทำการแก้ไขได้ง่ายขึ้น
Ghanima

-2

PIN 3 จะต้องต่อสายดินในโหมดพลังงานปรสิต! ต่อแผ่นข้อมูล


3
สวัสดียินดีต้อนรับคุณ โปรดขยายคำตอบของคุณเช่นลิงก์คำอธิบายเพิ่มเติมรูปภาพหรือสิ่งที่คล้ายกัน
myhd
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.