Mục lục:
- Quân nhu
- Bước 1: Chuẩn bị phần cứng
- Bước 2: Cài đặt Cloud4RPi
- Bước 3: Kết nối cảm biến
- Bước 4: Gửi kết quả đọc của cảm biến tới đám mây
- Bước 5: Biểu đồ và Báo động
Video: Độ ẩm trong đám mây: 5 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:32
Mùa hè sắp đến, những ai không có máy điều hòa thì nên chuẩn bị tinh thần để kiểm soát bầu không khí trong nhà bằng tay. Trong bài đăng này, tôi đang mô tả cách hiện đại để đo các thông số quan trọng nhất đối với sự thoải mái của con người: nhiệt độ và độ ẩm. Dữ liệu thu thập này được gửi đến đám mây và được xử lý ở đó.
Quân nhu
Tôi đang sử dụng bảng Raspberry Pi và cảm biến DHT22. Bạn có thể thực hiện tương tự trên bất kỳ máy tính nào có Internet, GPIO và Python. Cảm biến DHT11 rẻ hơn cũng hoạt động tốt.
Bước 1: Chuẩn bị phần cứng
Hãy bắt đầu lại từ đầu, vì tôi đã không sử dụng Raspberry Pi của mình trong một thời gian dài.
Chúng tôi sẽ cần:
- Bảng Raspberry Pi (hoặc nền tảng định hướng IoT khác).
- Thẻ SD hoặc microSD (tùy thuộc vào nền tảng).
- 5V / 1A qua cáp micro-USB. LAN, cung cấp kết nối Internet.
- Màn hình HDMI, màn hình RCA hoặc cổng UART (để bật SSH).
Bước đầu tiên là tải xuống Raspbian. Tôi đã chọn phiên bản Lite vì tôi sẽ sử dụng SSH thay vì hiển thị.
Mọi thứ đã thay đổi kể từ lần cuối cùng tôi làm điều đó: bây giờ có một phần mềm ghi đĩa tuyệt vời tên là Etcher, hoạt động hoàn hảo và có thiết kế tuyệt đẹp.
Sau khi hoàn tất quá trình ghi hình ảnh, tôi đã lắp thẻ SD vào Pi của mình, cắm dây mạng LAN và cáp nguồn vào và sau một lúc, bộ định tuyến của tôi đã đăng ký thiết bị mới.
Tuyệt vời! Hãy tiếp tục và SSH vào đó.
Bảo mật là được, tôi thích nó, nhưng điều này làm cho mọi thứ khó khăn hơn một chút. Tôi sẽ sử dụng bộ điều hợp UART-USB để truy cập shell và bật SSH…
Sử dụng màn hình thay vì UART làm cho nó dễ dàng hơn nhiều.
Sau khi khởi động lại, tôi cuối cùng cũng tham gia.
Trước tiên, hãy cập nhật:
cập nhật sudo apt && sudo apt nâng cấp -y
Bây giờ, hãy kết nối thiết bị mới này với Đám mây.
Bước 2: Cài đặt Cloud4RPi
Tôi quyết định dùng thử nền tảng đám mây có tên Cloud4RPi, được thiết kế cho IoT.
Theo tài liệu, chúng tôi cần các gói sau để chạy nó:
sudo apt install git python3 python3-pip -y
Thư viện máy khách có thể được cài đặt trong một lệnh duy nhất:
sudo pip3 cài đặt cloud4rpi
Bây giờ chúng ta cần một số mã mẫu.
git clone https://github.com/cloud4rpi/cloud4rpi-raspberrypi-python && cd cloud4rpi-raspberrypi-python
Tập lệnh thực thi là control.py.
Chúng tôi cần một mã thông báo cho phép Cloud4RPi liên kết các thiết bị với các tài khoản. Để có được một tài khoản, hãy tạo một tài khoản trên cloud4rpi.io và nhấn vào nút Thiết bị mới trên trang này. Thay thế chuỗi _YOUR_DEVICE_TOKEN_ trong tệp control.py bằng mã thông báo trên thiết bị của bạn và lưu tệp. Bây giờ chúng tôi đã sẵn sàng cho lần ra mắt đầu tiên.
sudo python3 control.py
Mở trang thiết bị và kiểm tra xem dữ liệu có ở đó không.
Bây giờ, hãy chuyển sang dữ liệu trong thế giới thực.
Bước 3: Kết nối cảm biến
Chúng tôi sẽ cần:
- Cảm biến độ ẩm DHT22 hoặc DHT11
- Điện trở kéo lên (5-10 KΩ)
- Dây điện
Cảm biến DHT22 đo nhiệt độ và độ ẩm đồng thời. Giao thức truyền thông không được chuẩn hóa, vì vậy chúng tôi không cần kích hoạt nó trong raspi-config - một chân GPIO đơn giản là quá đủ.
Để thu thập dữ liệu, tôi sẽ sử dụng thư viện tuyệt vời của Adafruit dành cho cảm biến DHT, nhưng nó có thể không hoạt động. Tôi đã từng phát hiện thấy mã có độ trễ liên tục kỳ lạ, mã này không hoạt động đối với phần cứng của tôi và sau hai năm, yêu cầu kéo của tôi vẫn đang chờ xử lý. Tôi cũng đã thay đổi hằng số phát hiện bảng vì Raspberry Pi 1 với BCM2835 của tôi đã bị phát hiện một cách đáng ngạc nhiên là Raspberry Pi 3. Tôi ước điều đó là sự thật… Vì vậy, tôi khuyên bạn nên sử dụng fork của mình. Nếu bạn gặp bất kỳ sự cố nào với nó, vui lòng dùng thử kho lưu trữ ban đầu, có thể nó phù hợp với ai đó, nhưng tôi không phải là một trong số họ.
git clone https://github.com/Himura2la/Adafruit_Python_DHT.gitcd Adafruit_Python_DHT
Vì thư viện được viết bằng C, nó yêu cầu biên dịch, vì vậy bạn cần các gói build-Essential và python-dev.
sudo apt install build-essential python-dev -ysudo python setup.py install
Trong khi các gói đang cài đặt, hãy kết nối DHT22 như trong hình.
Và kiểm tra nó:
cd ~ python -c "nhập Adafruit_DHT dưới dạng d; in d.read_retry (d. DHT22, 4)"
Nếu bạn nhìn thấy thông tin như (39.20000076293945, 22.600000381469727), bạn nên biết rằng đây là độ ẩm tính bằng phần trăm và nhiệt độ tính bằng C.
Bây giờ, hãy tập hợp mọi thứ lại với nhau!
Bước 4: Gửi kết quả đọc của cảm biến tới đám mây
Tôi sẽ sử dụng control.py làm cơ sở và thêm tương tác DHT22 vào đó.
cp cloud4rpi-raspberrypi-python / control.py./cloud_dht22.pycp cloud4rpi-raspberrypi-python / rpi.py./rpi.pyvi cloud_dht22.py
Loại bỏ mã mẫu như trong hình trên.
Vì DHT22 trả về cả nhiệt độ và độ ẩm trong một lần gọi, tôi sẽ lưu trữ chúng trên toàn cầu và chỉ cập nhật một lần trong một yêu cầu, giả sử độ trễ giữa chúng là hơn 10 giây. Hãy xem xét đoạn mã sau, mã này lấy dữ liệu DHT22:
nhập Adafruit_DHT
temp, hum = Không có, Không có
last_update = time.time () - 20
def update_data ():
global last_update, hum, temp if time.time () - last_update> 10: hum, temp = Adafruit_DHT.read_retry (Adafruit_DHT. DHT22, 4) last_update = time.time ()
def get_t ():
update_data () return round (temp, 2) if temp is not Không khác Không có def get_h (): update_data () return round (hum, 2) if hum is not Không khác Không
Chèn mã này sau các lần nhập hiện có và chỉnh sửa phần biến để nó sử dụng các chức năng mới:
biến = {'DHT22 Temp': {'type': 'numeric', 'bind': get_t}, 'DHT22 Humidity': {'type': 'numeric', 'bind': get_h}, 'CPU Temp': {'type': 'numeric', 'bind': cpu_temp}}
Nếu bạn thấy rằng các thao tác khó hiểu, hãy lấy phiên bản cuối cùng của tệp này. Nhấn nút màu đỏ để bắt đầu truyền dữ liệu:
Sau đó, bạn có thể kiểm tra trang thiết bị.
python3 cloud_dht22.py
Sau đó, bạn có thể kiểm tra trang thiết bị.
Bạn có thể để nguyên như vậy, nhưng tôi thích có dịch vụ cho mọi thứ hơn. Điều này đảm bảo rằng tập lệnh luôn chạy. Tạo dịch vụ với tập lệnh hoàn toàn tự động mà bạn đã có trong thư mục cloud4rpi-raspberrypi-python:
service_install.sh cloud_dht22.py
Bắt đầu dịch vụ:
khởi động dịch vụ sudo cloud4rpi
Và kiểm tra nó:
pi @ raspberrypi: ~ $ sudo service cloud4rpi status -l ● cloud4rpi.service - Cloud4RPi daemon Loaded: đã tải (/lib/systemd/system/cloud4rpi.service; đã kích hoạt) Đang hoạt động: hoạt động (đang chạy) kể từ Thứ tư 2017-05-17 20: 22: 48 UTC; 1 phút trước PID chính: 560 (python) CGroup: /system.slice/cloud4rpi.service └─560 / usr / bin / python /home/pi/cloud_dht22.py
17 tháng 5 20:22:51 raspberrypi python [560]: Xuất bản iot-hub / messages: {'type': 'config', 'ts': '2017-05-17T20… y'}]}
17 tháng 5 20:22:53 raspberrypi python [560]: Xuất bản iot-hub / messages: {'type': 'data', 'ts': '2017-05-17T20: 2… 40'}} Ngày 17 tháng 5 20: 22:53 raspberrypi python [560]: Xuất bản iot-hub / messages: {'type': 'system', 'ts': '2017-05-17T20….4'}}
Nếu mọi thứ hoạt động như mong đợi, chúng tôi có thể tiếp tục và sử dụng các khả năng của nền tảng Cloud4RPi để thao tác với dữ liệu.
Bước 5: Biểu đồ và Báo động
Trước hết, hãy vẽ biểu đồ của các biến để xem chúng thay đổi như thế nào. Điều này có thể được thực hiện bằng cách thêm Bảng điều khiển mới và đưa các biểu đồ cần thiết vào đó.
Một điều khác mà chúng ta có thể làm ở đây là đặt Cảnh báo. Tính năng này cho phép bạn định cấu hình phạm vi an toàn cho một biến. Ngay sau khi phạm vi vượt quá, nó sẽ gửi một thông báo qua email. Trên trang chỉnh sửa Bảng điều khiển, bạn có thể chuyển sang Cảnh báo và thiết lập một.
Ngay sau đó, độ ẩm trong phòng của tôi bắt đầu giảm nhanh chóng mà không có bất kỳ lý do đáng chú ý nào và chuông báo động ngay sau đó.
Bạn có thể sử dụng Cloud4RPi miễn phí với bất kỳ phần cứng nào có thể thực thi Python. Đối với tôi, bây giờ tôi luôn biết khi nào nên bật máy làm ẩm không khí và thậm chí tôi có thể kết nối nó với một rơ le để điều khiển từ xa thông qua Cloud4RPi. Tôi đã chuẩn bị cho cái nóng! Chào mùa hè!
Với Cloud4RPi, bạn có thể điều khiển Raspberry Pi và các thiết bị IoT khác của mình từ xa trong thời gian thực. Truy cập trang web của chúng tôi và kết nối các thiết bị không giới hạn miễn phí.
Đề xuất:
Màn hình cây trồng trong nhà thông minh - Biết khi nào cây trồng của bạn cần tưới nước: 8 bước (có hình ảnh)
Máy theo dõi cây trồng trong nhà thông minh - Biết khi nào cây trồng của bạn cần tưới nước: Một vài tháng trước, tôi đã làm một que theo dõi độ ẩm của đất chạy bằng pin và có thể được gắn vào đất trong chậu cây trong nhà của bạn để cung cấp cho bạn một số thông tin hữu ích về đất mức độ ẩm và đèn LED nhấp nháy để cho bạn biết khi nào cần
Theo dõi nhiệt độ và độ ẩm trong phòng với đám mây ESP32 và AskSensors: 6 bước
Theo dõi nhiệt độ và độ ẩm trong phòng với đám mây ESP32 và AskSensors: Trong hướng dẫn này, bạn sẽ học cách theo dõi nhiệt độ và độ ẩm của phòng hoặc bàn làm việc bằng DHT11 và ESP32 được kết nối với đám mây. Bạn có thể tìm thấy các bản cập nhật hướng dẫn của chúng tôi tại đây.DHT11 Thông số kỹ thuật: Cảm biến DHT11 có thể đo nhiệt độ
Xây dựng cảm biến chất lượng không khí IoT trong nhà không cần đám mây: 10 bước
Xây dựng cảm biến chất lượng không khí Inhouse IoT Không cần đám mây: Chất lượng không khí trong nhà hoặc ngoài trời phụ thuộc vào nhiều nguồn ô nhiễm và cả thời tiết. Thiết bị này ghi lại một số thông số phổ biến và một số thông số thú vị nhất bằng cách sử dụng 2 chip cảm biến. Nhiệt độ Độ ẩm Áp suất Khí hữu cơMicro
Trồng nhiều rau diếp trong ít không gian hơn hoặc Trồng rau diếp trong không gian, (nhiều hơn hoặc ít hơn).: 10 bước
Trồng nhiều rau diếp hơn trong ít không gian hơn hoặc … Trồng rau diếp trong không gian, (Nhiều hơn hoặc ít hơn): Đây là bài dự thi chuyên nghiệp cho Cuộc thi trồng trọt ngoài Trái đất, được gửi thông qua Huấn luyện viên. Tôi không thể vui mừng hơn khi được thiết kế cho sản xuất cây trồng vũ trụ và đăng Tài liệu hướng dẫn đầu tiên của mình. Để bắt đầu, cuộc thi yêu cầu chúng tôi
Mặc trống: Đánh trống trong quần áo của bạn!: 7 bước
Drum Wear: Drums in Your Clothing !: Hãy nhìn những người đi xe buýt trong thành phố. Nhiều người trong số họ được cắm vào máy nghe nhạc của họ, gõ theo nhịp, giả vờ như họ có trống theo ý của họ. Bây giờ không cần phải giả vờ! Mòn trống mang đến cho những tay trống đầy tham vọng một khả năng di động hoàn toàn và