Talaan ng mga Nilalaman:
- Hakbang 1: Pagsisimula
- Hakbang 2: Temperatura at Humidity: DHT22 / DHT11
- Hakbang 3: Temperatura na Hindi Tumatagal ng Tubig: DS18B20
- Hakbang 4: Liwanag: Photoresistor / Photocell (digital: On / off)
- Hakbang 5: Liwanag: Photoresistor / Photocell (analog)
- Hakbang 6: Optical Detector: QRD1114
- Hakbang 7: Pangwakas na Mga Salita
2025 May -akda: John Day | [email protected]. Huling binago: 2025-01-13 06:58
Ang itinuturo na ito ay bahagi ng aking serye ng DIY Home Automation, tingnan ang pangunahing artikulong "Pagpaplano ng isang DIY Home Automation System". Kung hindi mo pa alam kung ano ang Homie, tingnan ang homie-esp8266 + homie mula kay Marvin Roger.
Maraming mga sensor. Sinasaklaw ko ang mga pangunahing kaalaman upang mabigyan ang mga mambabasa ng mga kinakailangan upang masimulan ang pagbuo ng "isang bagay". Maaaring hindi iyon rocket science ngunit dapat talaga itong gumana.
Kung wala kang mga piyesa, abangan ang aking paparating na maituturo na "Sourcing Electronic Parts From Asia".
Hayaan mo akong magdagdag ng ilang mga salitang buzz: IoT, ESP8266, Homie, DHT22, DS18B20, pag-automate ng bahay.
Ang paksa ay dapat na malinaw na ngayon:-)
Gayundin, magagamit din ang itinuturo na ito mula sa aking personal na pahina:
Hakbang 1: Pagsisimula
Mga Kumbensiyon
Ang itinuturo na ito ay gumagamit ng mga clone ng D1 Mini. Ang mga ito ay pinagana ng WiFi na mga katugmang Controller ng Arduino na gumagamit ng ESP8266 chip. Nagpapadala sila sa napakaliit na form factor (~ 34 * 25mm) at mura ang dumi (~ 3-4 $ para sa mga clone).
Ilalarawan ko ang bawat pagbuo gamit ang isang D1 Mini, isang breadboard at ilang (mga) sensor. Nagsasama ako ng isang Bill Of Materials (BOM) para sa bawat isa ngunit lalaktawan ang mga halatang bagay tulad ng mga jumper wires at breadboard (mini o puno). Magtutuon ako sa "mga aktibong bahagi".
Para sa mga wire / cable sa mga diagram (Fritzing + AdaFruitFritzing library), ginamit ko:
- Pula / Kahel para sa lakas, karaniwang 3.3V. Minsan magiging 5V, mag-ingat.
- Itim para sa lupa.
- Dilaw para sa mga signal ng digital na data: Ang mga bit ay naglalakbay at maaaring mabasa bilang-ng mga chips.
- Blue / Lila para sa mga signal ng data ng analog: Walang mga piraso dito, simpleng boltahe lamang na dapat sukatin at kalkulahin upang maunawaan kung ano ang nangyayari.
Ang Homie para sa ESP8266 ay nagpapadala ng isang dosenang mga halimbawa, doon nagsimula akong buuin ang itinuturo na ito.
Breadboard
Ang D1 ay medyo friendly na tinapay ngunit mai-save lamang ang isang hilera ng mga pin pataas at pababa. Ang bawat halimbawa ay magkakaroon ng D1 sa kanang bahagi at ang mga bahagi sa kaliwang bahagi. Ang pang-itaas at mas mababang mga riles ng kuryente ay gagamitin upang dalhin ang alinman sa 3.3V o 5V.
Tandaan
Ang mga halimbawa ng homie ay itinayo bilang ".ino" na mga sketch para sa Arduino IDE. Ang aking sariling code ay itinatayo bilang ".ccp" para sa PlatformIO.
Gagawa ito ng napakaliit na pagkakaiba habang ang mga sketch ay sapat na simple upang makopya / mai-paste kung ano man ang iyong tool na pinili.
Hakbang 2: Temperatura at Humidity: DHT22 / DHT11
Pagbuo ng aparato
Gumagamit ang DHT22 ng:
- Isang digital pin upang makipag-ugnay sa controller, ikonekta ito sa D3
- Dalawang wires para sa lakas (3.3V o 5V + GND)
- Ang digital pin ay dapat panatilihing mataas (konektado sa kapangyarihan), para sa mga ito ay gumagamit kami ng isang risistor sa pagitan ng power rail at data pin
Code
Maaaring ma-download ang proyekto ng PlatformIO mula sa:
Ang orihinal na halimbawa ng Homie ay narito (ngunit hindi gumagamit ng isang sensor):
Para sa DHT22, gumamit ng DHT sensor library (ID = 19)
BOM
- Controller: Wemos D1 Mini
- Resistor: 10KΩ
-
Sensor: (isa sa mga ito)
- DHT22: Ginamit ko ang uri ng 4 na pin na nangangailangan ng isang labis na risistor. Mayroong 3 mga pin na module ng pagpapadala bilang SMD na kasama ang risistor.
- DHT11: Ito ay mas mura ngunit hindi gaanong tumpak, suriin ang iyong mga kinakailangan
Hakbang 3: Temperatura na Hindi Tumatagal ng Tubig: DS18B20
Pagbuo ng aparato Ang DS18B20 ay gumagamit ng:
- Isang digital pin upang makipag-ugnay sa controller, ikonekta ito sa D3
- Dalawang wires para sa lakas (3.3V o 5V + GND)
- Ang digital pin ay dapat panatilihing mataas (konektado sa kapangyarihan), para sa mga ito ay gumagamit kami ng isang risistor sa pagitan ng power rail at data pin
Ang DS18B20 ay isang 1-wire sensor. Gumagamit ito ng isang bus at tulad ng maraming mga sensor ay maaaring gumamit ng isang solong data pin.
Posible ring HUWAG gumamit ng 3.3V / 5V upang mapagana ang sensor, ito ay tinatawag na mode na power na parasitiko. Tingnan ang datasheet para sa mga detalye.
Code
Maaaring ma-download ang proyekto ng PlatformIO mula sa:
Tulad ng para sa DHT22, ang orihinal na halimbawa ng Homie ay narito (ngunit hindi gumagamit ng isang sensor):
Para sa 1-Wire bus, gumamit ng package na OneWire (ID = 1)
Para sa DS18B20, gamitin ang DallasTemperature (ID = 54)
BOM
- Controller: Wemos D1 Mini
- Resistor: 4.7KΩ
- Sensor: Ang DS18B20, nakalarawan ay isang hindi tinatagusan ng tubig
- 3 pin na terminal ng tornilyo upang mapadali ang koneksyon ng cable sa breadboard
Hakbang 4: Liwanag: Photoresistor / Photocell (digital: On / off)
Pagbuo ng aparato
(Paumanhin, walang sangkap na Fritzing para sa digital photocell)
Gumagamit ang photocell digital module:
- Isang digital pin upang makipag-ugnay sa controller, ikonekta ito sa D3
- Dalawang wires para sa lakas (3.3V + GND)
Posibleng gumamit ng isang analog photocell ngunit hindi ito nai-dokumento dito, tingnan ang mahusay na artikulo ng Adafruit na "Paggamit ng isang Photocell".
Tandaan: Sa halimbawang ito mayroong isang potentiometer sa sensor board. Ginagamit ito upang maitakda ang hangganan sa pagitan ng "ilaw" at "madilim" na ilaw sa paligid. Kapag ang pagbabasa ng 1 ilaw ay patay, kung gayon ang pagbabasa ng 0 ay nangangahulugang magaan kung nakabukas.
Code
Maaaring ma-download ang proyekto ng PlatformIO mula sa:
BOM
Controller: Wemos D1 Mini
Sensor: Module ng Photosensitive / Light Detection
Hakbang 5: Liwanag: Photoresistor / Photocell (analog)
Pagbuo ng aparato
Ang sensor ng photocell analog ay gumaganap bilang isang risistor. Ito ay kumokonekta sa pagitan ng isang analog input at 3.3V.
Ang isang risistor ay inilalagay sa pagitan ng GND at pin ng data upang lumikha ng isang divider ng boltahe. Ang layunin ay upang lumikha ng isang kilalang saklaw ng mga halaga:
- Kung walang ilaw, ang photocell ay karaniwang hahadlang sa VCC, sa gayon ay kumokonekta sa GND sa iyong data pin: Babasahin ng Pin ang halos 0.
- Mayroong maraming maliwanag na ilaw, hahayaan ng photocell ang VCC na dumaloy sa pin ng data: Babasahin ng pin ang halos buong boltahe at tulad ng malapit sa max (1023).
Tandaan: Ang mga halaga ng mga analog na pin ay nababasa sa isang saklaw na 0-1023 gamit ang analogRead. Hindi praktikal na makitungo sa 1 mga halaga ng byte, para dito ang function ng Arduino mapa ay makakatulong mabawasan mula 0-1023 hanggang (halimbawa) 0-255.
Para sa pagkakalibrate ng mga halagang min / max para sa iyong sensor, gumamit ng sketch na tulad nito mula sa Arduino.
Code
Maaaring ma-download ang proyekto ng PlatformIO mula sa:
BOM
- Controller: Wemos D1 Mini
- Sensor: Light Dependent Resistor (LDR) / Photoresistor
- Resistor: 1K o 10K, kailangang i-calibrate batay sa iyong cell
Mga Sanggunian
- Ang source code ng server ng PiDome para sa kondisyon ng pag-iilaw ng isang lokasyon
- "Paggamit ng isang Photocell" ni Adafruit
- "Photoresistors" dito sa mga itinuturo
- Ang ilang sumpain na nakatutuwang "Photocell Tutorial" kung nais mo ng ilang matematika at mga graph
Hakbang 6: Optical Detector: QRD1114
Pagbuo ng aparato
Code
BOM
Mga Sanggunian
- Physical Computing: Kasama sa QRD1114 ang sample code upang mabasa ang sensor at gumamit ng makagambala para sa rotary encoder + tumpak na disenyo ng PCB
- QRD1114 Gabay sa Pag-optup ng Optical Detector sa Sparkfun
Hakbang 7: Pangwakas na Mga Salita
Ang itinuturo na ito ay isang napakaikli upang ipaliwanag ang pangunahing pagsubaybay.
Upang pumunta sa karagdagang kailangan namin upang ikonekta ang mga relay, IR emitter … Inaasahan kong masakop ito sa paglaon dahil pinapayagan ako ng libreng oras. Ang pangunahing pagkakaiba ay hindi lamang tayo "magbabasa" (may ilaw ba?) Kundi pati na rin "magsulat" (i-on ang ilaw!).