Daftar Isi:

AtticTemp - Pencatat Suhu / Iklim: 10 Langkah (dengan Gambar)
AtticTemp - Pencatat Suhu / Iklim: 10 Langkah (dengan Gambar)

Video: AtticTemp - Pencatat Suhu / Iklim: 10 Langkah (dengan Gambar)

Video: AtticTemp - Pencatat Suhu / Iklim: 10 Langkah (dengan Gambar)
Video: Part 5 - The Jungle Audiobook by Upton Sinclair (Chs 18-22) 2024, November
Anonim
AtticTemp - Pencatat Suhu / Iklim
AtticTemp - Pencatat Suhu / Iklim

Pengukur suhu toleransi tinggi dan pencatat iklim untuk loteng Anda atau struktur luar ruangan lainnya

Langkah 1: Flashing RaspberriPi Hard Disk / Instal Perangkat Lunak yang Diperlukan (Menggunakan Ubuntu Linux)

Unduh "RASPBIAN JESSIE LITE"

Buat hard disk baru Anda untuk DashboardPI

Masukkan microSD ke komputer Anda melalui adaptor USB dan buat gambar disk menggunakan perintah dd

Temukan kartu microSD yang Anda masukkan melalui perintah df -h, lepaskan dan buat gambar disk dengan perintah salin disk dd

$ df -h /dev/sdb1 7.4G 32K 7.4G 1% /media/XXX/1234-5678

$ umount /dev/sdb1

Perhatian: pastikan perintahnya benar-benar akurat, Anda dapat merusak disk lain dengan perintah ini

if=lokasi file gambar RASPBIAN JESSIE LITE of=lokasi kartu microSD Anda

$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (catatan: dalam hal ini, /dev/sdb, /dev/sdb1 adalah partisi pabrik yang ada di microSD)

Menyiapkan RaspberriPi

Masukkan kartu microSD baru Anda ke raspberrypi dan nyalakan dengan monitor yang terhubung ke port HDMI

Gabung

pengguna: pi pass: raspberry

Ubah kata sandi akun Anda untuk keamanan

sudo passwd pi

Aktifkan Opsi Lanjutan RaspberriPi

sudo raspi-config

Pilih: 1 Perluas Sistem File

9 Opsi Lanjutan

A2 Hostname ubah menjadi "AtticTemp"

A4 SSH Aktifkan Server SSH

A7 I2C Aktifkan antarmuka i2c

Aktifkan Keyboard Inggris/AS

sudo nano /etc/default/keyboard

Ubah baris berikut: XKBLAYOUT="us"

Reboot PI untuk perubahan tata letak Keyboard / pengubahan ukuran sistem file agar berlaku

$ sudo shutdown -r sekarang

Sambungkan Otomatis ke WiFi Anda

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Tambahkan baris berikut agar raspberrypi Anda terhubung secara otomatis ke WiFi rumah Anda (jika jaringan nirkabel Anda bernama "linksys" misalnya, dalam contoh berikut)

network={ ssid="linksys" psk="WIRELESS PASSWORD HERE" } Nyalakan ulang PI untuk menyambung ke jaringan WiFi

$ sudo shutdown -r sekarang

Sekarang PI Anda akhirnya berada di jaringan lokal, Anda dapat login dari jarak jauh melalui SSH. Tetapi pertama-tama Anda harus mendapatkan alamat IP yang dimilikinya saat ini.

$ ifconfig Cari "inet addr: 192.168. XXX. XXX" di output perintah berikut untuk Alamat IP PI Anda

Buka komputer lain dan login ke raspberrypi Anda melalui ssh

$ssh [email protected]. XXX. XXX

Mulai Menginstal paket yang diperlukan

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo apt-get install vim git python-requests python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip libi2c-dev

Perbarui pengaturan zona waktu lokal

$ sudo dpkg-konfigurasi ulang tzdata

pilih zona waktu Anda menggunakan antarmuka

Atur perintah direktori l sederhana [opsional]

$ vi ~/.bashrc

tambahkan baris berikut:

$ alias l='ls -lh'

$ sumber ~/.bashrc

Perbaiki penyorotan sintaks default VIM [opsional]

$ sudo vi /etc/vim/vimrc

batalkan komentar pada baris berikut:

sintaks aktif

Langkah 2: Proyek Klon / Instal Driver Perangkat Lunak

Repositori Proyek Klon

$cd ~

$ git clone

Instal DHT22

$cd ~

$ git clone

$ cd Adafruit_Python_DHT/

$ sudo python setup.py install

$ sudo python ez_setup.py

$cd contoh/

$ vi simpletest.py

Ubah baris berikut:

sensor = Adafruit_DHT. DHT22

Komen line outnya

pin = 'P8_11'

Batalkan komentar pada baris dan ubah nomor pin menjadi 16

pin = 18

Jalankan tes

python simpletest.py

Anda akan melihat pembacaan metrik Suhu dan Kelembaban ditampilkan pada baris perintah.

Pemasangan SSD1306

Ekstrak driver/SSD1306.zip ke folder proyek

Instal Drivernya

$ cd ssd1306/ $ sudo python setup.py install

Konfirmasi register perangkat Anda, biasanya \0x3c di bus i2c

$ sudo i2cdetect -y 1

0 1 2 3 4 5 6 7 8 9 abcdef 00: -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- - - -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- - - -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- 3c -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- Jalankan demo untuk memastikan tampilan Anda berfungsi dengan baik

$ cd contoh/ $ python demo.py

Langkah 3: Perlengkapan yang Dibutuhkan

Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan
Perlengkapan yang Dibutuhkan

Raspberry Pi Zero

Sensor suhu-kelembaban DHT22

0.96 I2C IIC SPI Serial 12864 OLED LCD LED White Display Module

2,4 400x240 16:9 Serial: Tampilan Layar Sentuh UART/I2C/SPI TFT

Langkah 4: Hubungkan Perangkat

Kawat Perangkat
Kawat Perangkat
Kawat Perangkat
Kawat Perangkat

Tampilan SSD1306

GND -> GND

DATA -> SDA

CLK -> SCL

VCC -> 3V

Tampilan Digole

GND -> GND

DATA -> SDA

CLK -> SCL

VCC -> 3V

DHT22 Humidistat

VCC -> 5V

GND -> GND

DATA -> GPIO 18 / PIN 12

Langkah 5: Bangun Perangkat

Bangun Perangkat
Bangun Perangkat
Bangun Perangkat
Bangun Perangkat

Potong Plexiglass agar pas dengan bagian depan perangkat di bawah bingkai cetak 3D

Pasang kaca dengan sekrup melalui bingkai cetak 3D

Langkah 6: Bangun Perangkat (lanjutan…)

Bangun Perangkat (lanjutan…)
Bangun Perangkat (lanjutan…)
Bangun Perangkat (lanjutan…)
Bangun Perangkat (lanjutan…)
Bangun Perangkat (lanjutan…)
Bangun Perangkat (lanjutan…)

Komponen Lem Panas pada panel depan

Unit Kawat di dalam

Pasang bagian belakang dan harus siap digunakan

Langkah 7: Konfigurasikan Aplikasi untuk Berjalan dengan Benar di File Konfigurasi Settings.py

Temukan file settings.py dan sesuaikan dengan pengaturan Anda saat ini

# kunci API forecast.io untuk informasi cuaca lokal

weatherAPIURL = 'https://api.forecast.io/forecast/'

weatherAPIKey = 'KUNCI API ANDA UNTUK FORECAST. IO'

# opsional untuk menjalankan pencatat suhu/kelembaban jarak jauh

deviceLoggerAPI = 'mydevicelogger.com'

# cari google untuk mendapatkan Lintang/Bujur untuk lokasi rumah Anda

garis lintang = 41.4552578

bujur = -72.1665444

Langkah 8: Siapkan Skrip Terjadwal

$ crontab -e

Tambahkan baris berikut: */7 * * * * python /home/pi/AtticTemp/displays.py

OPSIONAL: Temp Logger ke skrip API setiap 10 menit

$ crontab -e

Tambahkan baris berikut: */10 * * * * python /home/pi/EnvironmentClock/temp-check.py

Langkah 9: OPSIONAL: Membuat Gambar Cuaca Anda Sendiri untuk Dirender di Layar

Unggah file 128x128 Anda sendiri ke URL berikut:

www.digole.com/tools/PicturetoC_Hex_converter.php

Pilih file gambar Anda untuk diunggah, tambahkan ukuran apa yang Anda inginkan di layar (Lebar/Tinggi)

Pilih "256 Warna untuk Warna OLED/LCD(1 byte/piksel)" di menu tarik-turun "Digunakan untuk"

Dapatkan output heksagonal

Tambahkan output hex ke file display/build/header (.h), gunakan yang lain sebagai panduan untuk sintaks.

Sertakan file baru di file digole.c #include myimage.h

Sertakan kait baris perintah baru ke file gambar Anda di file. Catatan: perintah di bawah ini mengatakan gambar Anda pada posisi 10 piksel di atas 10 piksel ke bawah. Anda dapat mengubahnya ke koordinat X, Y yang berbeda, Anda juga dapat mengubah nilai 128, 128 ke ukuran berapa pun gambar baru Anda sebenarnya.

} else if (strcmp(digoleCommand, "myimage") == 0) { drawBitmap256(10, 10, 128, 128, &myimageVariableHere, 0); // myimageVariableDi sini didefinisikan dalam file (.h) Anda }

Sekarang bangun kembali (abaikan kesalahan) di bawah ini agar gambar baru Anda dirender dengan perintah berikut.

$./digole myimage

Re-Building [Termasuk] Digole Display Driver untuk perubahan opsional Anda

$ tampilan/pembuatan cd

$ gcc digole.c

$mv a.out../../digole

$ chmod +x../../digole

Direkomendasikan: