Building a Weather Station with the RaspberryPi

E9a8393b5ad337ea9103d50169aa6d32?s=47 Lukas
September 01, 2017

Building a Weather Station with the RaspberryPi

E9a8393b5ad337ea9103d50169aa6d32?s=128

Lukas

September 01, 2017
Tweet

Transcript

  1. Building a Weather Station with the RaspberryPi Lukas Prasuhn M3

    TechTalk #78 Sept, 1st 2017
  2. About Me - Lukas Prasuhn - From Germany, near Hameln

    - In Japan for already ~12 years - Github: lukasjapan - RaspberryPi Bluetooth Speaker (without PulseAudio) - Favourite Languages - Kotlin - Ruby - C++ around here
  3. Index - (little long) Introduction - Architecture and Used Technologies

    - Demo - (rather short) Closing
  4. (little long) Introduction

  5. (little long) Introduction (1) - Why building a Weather Station?

    - Ok, this is going to take some time to explain - I made the R2D2 Speaker! - ...and said that I wanted to build a bigger one… - ...so I did!
  6. (little long) Introduction (2) Wait, what?! Here it is!

  7. (little long) Introduction (3) Oh...

  8. (little long) Introduction (4) (Still work in progress here)

  9. (little long) Introduction (5) - How does this connect to

    a weather station? - We will get to it… - I wanted to try to add one more feature...
  10. (little long) Introduction (6) - A beer cooling compartment! -

    Peltier element - Hot side, cold side - Uses lots of energy and not so powerful - but small - Used in digital cameras/surgery tools, etc - Powered by Solarpanel (or battery)
  11. (little long) Introduction (7) - Finished! - Now I want

    to measure the efficiency of the cooling compartment - How?
  12. (little long) Introduction (8) - Option A) Buy a temperature

    logger - easy - fast - 2.000-3.000 Yen - Option B) Buy a sensor for the Raspberry Pi and work with that - takes lots of work - takes lots of time - but it is fun
  13. (little long) Introduction (9) - Yes! Option B! - Bosch

    BME280 - Temperature - Humidity - Air Pressure - Build a Weather Station - Constant logging - Visualizing - Accessing by Web
  14. Architecture and Used Technologies

  15. Architecture I2C Protocol Logger Daemon Web Server DB WiFi (or

    LAN)
  16. Reading the sensor data from the BME280 - SWITCHSCIENCE/BME280/blob/master/Python27/bme280_sample.py -

    Ruby Gem - lukasjapan/i2c-bme280 - built by reading the Datasheet and above sample script - later I found a driver collection gem where the bme280 was included :(
  17. Data Logger - Ruby script -   - loop that

    inserts data - ActiveRecord - can be stopped by SIGINT and TERM signal
  18. Web Server - Used Libraries (1) - SPA Reactive Solution

    - Sinatra - index.html - latest data API (.json) - data by time range API (.json) - Vue.js - Reactive Frontend Framework - Fast to get results - rather slim - Made in China (by former Google employee)
  19. Web Server - Used Libraries (2) - Webpacker - JavaScript

    asset management pipeline - Builds ‘packs’ of JavaScript - Modular Architecture - Transpiling Plugins - Minifying Plugins - ... - ElementUI - GUI Elements for Vue.js - Chart.js - Chart Library for Frontend Application - HTML5 Canvas Element - very vertasile
  20. VPS Demo tethering DB Internet Web Server Logger Daemon Source

    code available at: lukasjapan/bme280-web
  21. Some graphs just in case...

  22. Some graphs just in case...

  23. Some graphs just in case...

  24. (rather short) Closing

  25. (rather short) Closing - How about the Suitcase speakers cooling

    compartment? - Measuring before/after 30 minutes - just 4 degrees difference - back in less than 1 minute - possible causes - peltier element is too weak - I have to improve isolation (... a lot)