Apa yang bisa saya hubungkan ke RPi untuk mengukur suhu? Saya pikir perangkat yang terhubung ke I²C atau SPI akan lebih masuk akal.
Berikut adalah pertanyaan tentang DHT-22 dan perangkat 1-kawat lainnya. Tetapi pada tahap ini tampaknya 1-kawat sulit pada RPi karena timing yang kritis
gpio
peripherals
temperature
sensor
John La Rooy
sumber
sumber
Jawaban:
Berikut ini cara menghubungkan MCP9804 .
Anda bisa menggunakannya seperti ini:
Mengubah 0x67c1 ke suhu sedikit berbelit-belit. MSB adalah 0xc1 dan LSB adalah 0x67
4 bit pertama dari MSB dijatuhkan dan yang meninggalkan suhu dalam 16 derajat
Contoh Python
Selain memuat modul i2c di atas, Anda harus menginstal paket python-smbus. Anda dapat mengurangi pemanasan sendiri dengan mematikan MCP9804 di antara pembacaan.
sumber
Anda dapat menggunakan Raspberry Pi yang dibangun dalam porta serial, dan menghubungkannya ke IC termometer digital (mis. DS1620 )
Anda dapat mengetahui antarmuka port serial Raspberry Pi di sini
Penting : Ingat bahwa UART RPi beroperasi pada TTL 3.3V - Berhati-hatilah untuk tidak menggunakan Uart Tegangan Tinggi 5v / 12 volt langsung ke RPi. Itu akan menyebabkan kerusakan!
sumber
Saya sudah mencoba dua pendekatan untuk penginderaan suhu. Untuk I2C, saya menggunakan modul TMP102 yang mirip dengan yang dijelaskan gnibbler. Inilah posting saya tentang itu:
Untuk 1-kawat, Adafruit baru-baru ini merilis gambar di sana sendiri, dan berisi dukungan 1-kawat. Saya bisa membaca sensor suhu 1-kawat DS18B20 dengannya. Lebih detail dalam posting ini :
Akhirnya, pendekatan lain adalah dengan menggunakan sensor temp analog dan ADC eksternal. Adafruit memiliki tutorial yang bagus tentang ini.
sumber
Termometer USB "HID TEMPer" yang sederhana dan murah juga berfungsi, dan jauh lebih mudah terhubung bagi mereka yang belum mengutak-atik UART atau GPIO, seperti saya.
RPi saya menyediakan daya yang cukup untuk mengendarainya langsung dari port USB tanpa hub.
Untuk mengatur ini dengan Raspbian Wheezy, saya mengikuti instruksi ini yang ditulis untuk Ubuntu (disclaimer: tautan untuk posting di blog saya sendiri). Untuk Raspberry Pi, saya hanya perlu membuat satu tweak kecil untuk diatur
LIBUSB_LIBDIR
ketika memasangDevice::USB
modul perl sehingga bisa ditemukanlibusb
di lokasi lengan yang tidak standar. Ikuti instruksi lengkapnya.Untuk mendapatkan bacaan sederhana tanpa barang munin , instal dependensi sebagai berikut (sebagai root):
Buat
readtemp.pl
:Dan jalankan itu sebagai root untuk melihat hasilnya. Dalam kasus saya, agak dingin di garasi malam ini:
sumber
Yang saya gunakan saat ini adalah DS18B20 .
Pertama buka Pi dan ketik:
Kemudian tambahkan kata
untested
sesudahnyamain
.Kemudian ketik:
Dalam kasus saya butuh waktu lama, meskipun itu tergantung pada kecepatan wifi / ethernet Anda. Setelah itu, Anda reboot:
Hubungkan kabel putih ke GPIO4, Kabel merah ke 3V3, dan hitam ke GND. Anda juga menghubungkan resistor 4,7K antara kabel putih dan merah.
Anda dapat membacanya dengan melakukan perintah berikut:
Maka harus daftar nomor seri sensor suhu, diikuti oleh
w1_bus_master1
Lalu pergi:
Dan kemudian harus menunjukkan 2 baris kode, di mana 5 digit di akhir baris kedua adalah suhu.
Ini menggunakan sesuatu yang disebut "Dallas One-Wire Temperature Sensor Protocol", atau sesuatu.
sumber
Saya sedang membaca buku ini dan menyukainya. Dengan rute itu, visi saya adalah Anda akan memiliki sensor suhu, arduino, dan radio xbee yang direkatkan bersama. Itu sensor jarak jauh Anda yang bisa berada di mana saja asalkan berada di jangkauan stasiun rumah. Kemudian untuk stasiun rumah memiliki rasberry dan xbee lainnya. Saya menduga bahwa mungkin lebih mudah untuk memiliki xbee stasiun rumah pada arduino, dan kemudian arduino dan rasberry berbicara satu sama lain. Dengan itu Anda dapat memiliki beberapa sensor jarak jauh, dan berbagai jenis sensor.
sumber