ICP 3 - Gnkhakimova/CS5590-IoT GitHub Wiki
ICP 3 - Weather Station + Bonus
Introduction
Creating an in class project of a weather station using sensors to view a variety of climate changes. Such as, the temperature, atmospheric pressure, humidity, dust, light and ultra violet ray. With the provided sensor we are able to read and transmit data at real time to cloud by using ThingSpeak.
Objectives
The objective of this in class project is to make each component work along side each other. When the temperature sensor is running the atmospheric pressure, humidity, dust, light and ultra violet ray sensor has to run along side with the temperature sensor. Because the sensor are running simultaneously we are able to view data from the sensor at real time and display values to Serial monitor, LCD and ThingSpeak.
Approach/Method
The approach that we followed to complete task was to create each sensor individually and test each component for clearness and accuracy before moving onto the next sensor. With the temperature sensor we put together the hardware and made sure it has power, LCD worked properly and we were able to connect to Arduino. After the hardware component was assembled we moved onto the software portion to make the temperature reading accurate. After finishing and displaying the temperature on our LCD we transmit our data onto ThingSpeak for a real-time view. We then continue with the next components hardware; building barometer module, light sensor module, and Dust sensor module. For each sensor we created the software and uploaded the data onto ThingSpeak for real-time visualization, for each component we followed steps mentioned above.
Workflow
We made sure that one component of the task is fully complete before we moved onto the next component of the task. We first started with putting the hardware of the temperature together by connecting the Arduino to a power sources than connecting the temperature sensor to the power sources along the Arduino connection. From there we began to code to activate the sensor. Once the sensor is active we transmitted the data coming from the temperature sensor to ThingSpeak for real-time view. We repeated the process for all the sensor; barometer, light and dust to measure atmospheric pressure, dust, and light.
Steps for each component
- Put together hardware
- Write code to read and display data from sensor
- Display data on LCD, Serail monitor and ThingSpeak.
Outputs in thinkSpeak
- Temperature
- Altitude
- Pressure
- Temperature from barometer
- Light
- Dust
Circuit Diagram
Temperature sensor
This circuit diagram is how we connect our hardware component for our temperature sensor to measure the temperature and humidity. We connected the temperature sensor onto the power sources and connected the Arduino to the power sources as well.
Barometer sensor
This circuit diagram is how we connect our hardware component for our barometer sensor to measure atmospheric pressure. We first connected the barometer to the power sources and Arduino.
Dust sensor
This circuit diagram is how we connect our hardware component for our Dust sensor to measure surrounding dust particle. We first connected our sensor to a power sources and to the Arduino.
Light sensor
We connected the same thing for the light sensor however no diagram for the light sensor.
Parameter
In our in class project coding we had to include the parameter ThingSpeak to allow us to transmit data from our sensor to ThingSpeak cloud, so we could have real time visualization of the data. We also included internet WiFi parameter in our program to allow the connection of our data to be transmitted to ThingSpeak cloud services. The other parameter we had to include were the temperature, barometer, light and dust sensor to access the sensor.
Evaluation/Discussion
As a team, and credit to our teacher, we decided it was best to work on each component separately to make sure all the component is working as intended. We first started with the temperature sensor and made sure it read accurate data before we connected to the internet via WiFi to transmit data to ThingSpeak. And we repeat the operation throughout each component. With this method we are allow to debug as we go rather than putting all the component together and trying to figure which bug is with which component. The only issue we were facing was to connect WiFi component and transmit data to ThingSpeak. After some discussions and code change, we were able to connect to WiFi.
Conclusion
Conclusion for in class project 3. As a team we were able to complete the given task plus the Bonus task. The given task were to build the temperature, barometer, light, and dust sensor and make them work while showing real time data. The bonus task were to allow all the component to run simultaneously which we were able to do. For the future work we might add more sensors and also ability to perform some operations based on values from sensors.