Talaan ng mga Nilalaman:

AtticTemp - Temperatura / Klima Logger: 10 Hakbang (na may Mga Larawan)
AtticTemp - Temperatura / Klima Logger: 10 Hakbang (na may Mga Larawan)

Video: AtticTemp - Temperatura / Klima Logger: 10 Hakbang (na may Mga Larawan)

Video: AtticTemp - Temperatura / Klima Logger: 10 Hakbang (na may Mga Larawan)
Video: Truck Campers for Adventurous Travelers: Top 10 Picks 2024, Hulyo
Anonim
AtticTemp - Temperatura / Klima Logger
AtticTemp - Temperatura / Klima Logger

Mataas na pagsukat ng temperatura ng pagpapaubaya at pag-logger ng klima para sa iyong attic o iba pang mga panlabas na istraktura

Hakbang 1: Flashing RaspberriPi Hard Disk / I-install ang Kinakailangan na Software (Paggamit ng Ubuntu Linux)

I-download ang "RASPBIAN JESSIE LITE"

Lumikha ng iyong bagong hard disk para sa DashboardPI

Ipasok ang microSD sa iyong computer sa pamamagitan ng USB adapter at likhain ang imahe ng disk gamit ang dd command

Hanapin ang iyong ipinasok na microSD card sa pamamagitan ng utos na df -h, i-unmount ito at likhain ang imahe ng disk gamit ang disk copy dd command

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

$ umount / dev / sdb1

Pag-iingat: siguraduhin na ang utos ay ganap na tumpak, maaari mong mapinsala ang iba pang mga disk sa utos na ito

kung = lokasyon ng RASPBIAN JESSIE LITE file ng imahe ng = lokasyon ng iyong microSD card

$ sudo dd bs = 4M kung = / path / to / raspbian-jessie-lite.img ng = / dev / sdb (tala: sa kasong ito, ito ay / dev / sdb, / dev / sdb1 ay isang mayroon nang partisyon ng pabrika sa microSD)

Pagse-set up ng iyong RaspberriPi

Ipasok ang iyong bagong microSD card sa raspberrypi at paganahin ito gamit ang isang monitor na konektado sa HDMI port

Mag log in

gumagamit: pi pass: raspberry

Baguhin ang password ng iyong account para sa seguridad

sudo passwd pi

Paganahin ang Mga Advanced na Pagpipilian sa RaspberriPi

sudo raspi-config

Piliin: 1 Palawakin ang System ng File

9 Mga advanced na pagpipilian

Binago ito ng A2 Hostname sa "AtticTemp"

A4 SSH Paganahin ang SSH Server

A7 I2C Paganahin ang i2c interface

Paganahin ang English / US Keyboard

sudo nano / etc / default / keyboard

Baguhin ang sumusunod na linya: XKBLAYOUT = "us"

I-reboot ang PI para sa mga pagbabago sa layout ng Keyboard / pagbabago ng laki ng file system upang magkabisa

$ sudo shutdown -r ngayon

Awtomatikong Kumonekta sa iyong WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Idagdag ang mga sumusunod na linya upang awtomatikong kumonekta ang iyong raspberrypi sa iyong WiFi sa bahay (kung ang iyong wireless network ay pinangalanang "linksys" halimbawa, sa sumusunod na halimbawa)

network = {ssid = "linksys" psk = "WIRELESS PASSWORD DITO"} I-reboot ang PI upang kumonekta sa WiFi network

$ sudo shutdown -r ngayon

Ngayon na ang iyong PI ay sa wakas ay nasa lokal na network, maaari kang mag-login nang malayuan dito sa pamamagitan ng SSH. Ngunit kailangan mo munang makuha ang IP address na kasalukuyang mayroon ito.

$ ifconfig Hanapin ang "inet addr: 192.168. XXX. XXX" sa output ng sumusunod na command para sa IP Address ng iyong PI

Pumunta sa isa pang makina at mag-login sa iyong raspberrypi sa pamamagitan ng ssh

$ ssh [email protected]. XXX. XXX

Simulang I-install ang kinakailangang mga pakete

$ sudo apt-get update

$ sudo apt-get upgrade

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

I-update ang mga setting ng lokal na timezone

$ sudo dpkg-reconfigure tzdata

piliin ang iyong timezone gamit ang interface

I-setup ang simpleng direktoryo l utos [opsyonal]

$ vi ~ /.bashrc

idagdag ang sumusunod na linya:

$ alias l = 'ls -lh'

$ mapagkukunan ~ /.bashrc

Ayusin ang VIM default na syntax na pagha-highlight ng [opsyonal]

$ sudo vi / etc / vim / vimrc

i-komento ang sumusunod na linya:

syntax sa

Hakbang 2: I-clone ang Project / Pag-install ng Mga Driver ng Software

Repository ng Clone Project

$ cd ~

$ git clone

I-install ang DHT22

$ cd ~

$ git clone

$ cd Adafruit_Python_DHT /

$ sudo python setup.py install

$ sudo python ez_setup.py

Mga halimbawa ng $ cd /

$ vi simpletest.py

Baguhin ang sumusunod na linya:

sensor = Adafruit_DHT. DHT22

I-comment ang linya sa linya

pin = 'P8_11'

Alisan ng puna ang linya at baguhin ang numero ng pin sa 16

pin = 18

Patakbuhin ang pagsubok

python simpletest.py

Dapat mong makita ang isang panukat na pagbabasa ng Temp at Humidity na ipinakita sa linya ng utos.

Pag-install ng SSD1306

I-extract ang mga driver / SSD1306.zip sa folder ng proyekto

I-install ang Driver

$ cd ssd1306 / $ sudo python setup.py install

Kumpirmahin ang pagrehistro ng iyong aparato, karaniwang / 0x3c sa i2c bus

$ sudo i2cdetect -y 1

0 1 2 3 4 5 6 7 8 9 abcdef 00: - - - - - - - - - - - - 10: - - - - - - - - - - - - - - - - - 20: - - - - - - - - - - - - - - - - - - - 30: - - - - - - - - - - - - 3c - - - 40: - - - - - - - - - - - - - - - - 50: - - - - - - - - - - - - - - - - - 60: - - - - - - - - - - - - - - - 70: - - - - - - - - Patakbuhin ang demo upang kumpirmahin ang iyong display ay nasa pagkakasunud-sunod

Mga halimbawa ng $ cd / $ python demo.py

Hakbang 3: Kailangan ng Mga Kailangan

Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos
Kailangan ng mga Pantustos

RaspberriPi Zero

Sensor ng temperatura-kahalumigmigan ng DHT22

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

2.4 400x240 16: 9 Serial: UART / I2C / SPI TFT Touchscreen Display

Hakbang 4: I-wire ang Device

Wire ang Device
Wire ang Device
Wire ang Device
Wire ang Device

Ipakita ang SSD1306

GND -> GND

DATA -> SDA

CLK -> SCL

VCC -> 3V

Digole Display

GND -> GND

DATA -> SDA

CLK -> SCL

VCC -> 3V

DHT22 Humidistat

VCC -> 5V

GND -> GND

DATA -> GPIO 18 / PIN 12

Hakbang 5: Buuin ang Device

Buuin ang Device
Buuin ang Device
Buuin ang Device
Buuin ang Device

Gupitin ang Plexiglass upang magkasya sa harap ng aparato sa ilalim ng naka-print na frame na 3D

I-mount ang baso gamit ang mga turnilyo sa pamamagitan ng naka-print na frame ng 3D

Hakbang 6: Buuin ang Device (cont…)

Buuin ang Device (cont…)
Buuin ang Device (cont…)
Buuin ang Device (cont…)
Buuin ang Device (cont…)
Buuin ang Device (cont…)
Buuin ang Device (cont…)

Mga Component ng Mainit na Pandikit laban sa front panel

Wire Unit sa loob

I-mount ang likod at dapat itong handa nang umalis

Hakbang 7: I-configure ang Application upang Tumatakbo nang Tamang sa Mga setting.py Config File

Hanapin ang mga setting ng file.py at ayusin sa iyong kasalukuyang mga setting

# forecast.io API key para sa lokal na impormasyon sa panahon

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

weatherAPIKey = 'IYONG API SUSI SA PAGTATAYA. IO'

# opsyonal para sa pagpapatakbo ng remote temp / halumigmig logger

deviceLoggerAPI = 'mydevicelogger.com'

# maghanap sa google upang makuha ang Latitude / Longitude para sa lokasyon ng iyong tahanan

latitude = 41.4552578

longitude = -72.1665444

Hakbang 8: Pag-setup ng Mga Naka-iskedyul na Mga Script

$ crontab -e

Idagdag ang mga sumusunod na linya: * / 7 * * * * python /home/pi/AtticTemp/displays.py

OPSYONAL: Temp Logger sa API script bawat 10 minuto

$ crontab -e

Idagdag ang mga sumusunod na linya: * / 10 * * * * python /home/pi/En environmentClock/temp-check.py

Hakbang 9: OPSYONAL: Lumilikha ng Iyong Sariling Mga Imahe ng Panahon upang Mag-render sa Display

Mag-upload ng iyong sariling 128x128 file sa sumusunod na URL:

www.digole.com/tools/PicturetoC_Hex_converter.php

Piliin ang iyong file ng imahe upang mai-upload, idagdag kung anong laki ang gusto mong maging sa screen (Lapad / Taas)

Piliin ang "256 Kulay para sa Kulay OLED / LCD (1 byte / pixel)" sa dropdown na "Ginamit para sa"

Kunin ang hex output

Idagdag ang hex output sa isang display / build / header (.h) file, gamitin ang iba pa bilang mga gabay para sa syntax.

Isama ang bagong file sa digole.c file # isama ang myimage.h

Isama ang isang bagong utos ng linya ng utos sa iyong file ng imahe sa. Tandaan: sinasabi ng utos sa ibaba na iguhit ang iyong imahe sa posisyon na 10 pixel na higit sa 10 mga pixel pababa. Maaari mo itong palitan sa iba't ibang mga X, Y coordinate, maaari mo ring baguhin ang mga halagang 128, 128 sa kung anumang laki talaga ng iyong bagong imahe.

} iba pa kung (strcmp (digoleCommand, "myimage") == 0) {drawBitmap256 (10, 10, 128, 128, & myimageVariableHere, 0); // myimageVariableHere ay tinukoy sa iyong (.h) file}

Muling itayo (huwag pansinin ang mga error) sa ibaba upang maibigay ang iyong bagong imahe sa sumusunod na utos.

$./digole myimage

Muling Pagbubuo ng [Kasamang] Digole Display Driver para sa iyong mga opsyonal na pagbabago

$ cd display / build

$ gcc digole.c

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

$ chmod + x../../digole

Inirerekumendang: