Creating an IoT platform for smart agriculture. Collecting data and sending them to thingspeak for analysis
Dependencies: DHT11 LPS22HB LSM6DSL VL53L0X
Sensors.h
- Committer:
- kaoriw
- Date:
- 2018-06-08
- Revision:
- 1:469ea8167b80
- Parent:
- 0:07ff689741d2
File content as of revision 1:469ea8167b80:
#ifndef SENSORS_H
#define SENSORS_H
//Internal sensors
#include "Dht11.h" //Temperature & humidity sensor
#include "LPS22HBSensor.h" //Pressure sensor
#include "LSM6DSLSensor.h" //Accelerometer & gyroscope
#include "VL53L0X.h" //Proximity sensor
/* For errors while reading values */
#define VALUE_ERROR -1
int press_status;
/* Interface definition */
static DevI2C devI2c(PB_11,PB_10);
/* Environment sensors */
Dht11 hum_temp_s(D4);
DigitalIn light_s(D6);
static LPS22HBSensor press_s(&devI2c);
/* Motion sensors */
static LSM6DSLSensor acc_gyro(&devI2c,LSM6DSL_ACC_GYRO_I2C_ADDRESS_LOW,PD_11); // low address
/* Range sensor - B-L475E-IOT01A2 only */
static DigitalOut shutdown_pin(PC_6);
static VL53L0X range(&devI2c, &shutdown_pin, PC_7);
/* Variables */
int mag_axes[3];
int acc_axes[3];
int gyro_axes[3];
unsigned int distance;
float temp;
float hum;
int light;
float press;
/* Functions */
void enable_sensors();
void get_values();
void get_motion_data(int dt, int* speed, int* prev_speed, int* prev_pos, int* prev_angle);
#endif