// MPU6050 example
// https://wokwi.com/arduino/projects/305937248748044864
#include <Adafruit_MPU6050.h>
#include <Adafruit_Sensor.h>
#include <Wire.h>
Adafruit_MPU6050 mpu;
const int ledPin = 11;
const int terskel = 5000;
bool aktiv = false;
bool blink = false;
unsigned long sistAktiv = 0;
unsigned long forrige = 0;
void setup(void) {
Serial.begin(115200);
while (!mpu.begin()) {
Serial.println("MPU6050 not connected!");
delay(1000);
}
pinMode(ledPin, OUTPUT);
Serial.println("MPU6050 ready!");
}
sensors_event_t event;
void loop() {
mpu.getAccelerometerSensor()->getEvent(&event);
unsigned long timer = millis();
float ax = event.acceleration.x;
float ay = event.acceleration.y;
if ((abs(ax) > 8.0) || (abs(ay) > 8.0)) {
aktiv = true;
sistAktiv = timer;
}
if ((timer-forrige >= 249) && (aktiv || (timer-sistAktiv < terskel))) {
blink = !blink;
digitalWrite(ledPin, blink);
forrige = timer;
}
if ((timer-sistAktiv > terskel)) {
aktiv = false;
digitalWrite(ledPin, LOW);
Serial.println("Sykkel er parkert");
}
Serial.print("[");
Serial.print(millis());
Serial.print("] X: ");
Serial.print(event.acceleration.x);
Serial.print(", Y: ");
Serial.print(event.acceleration.y);
Serial.print(", Z: ");
Serial.print(event.acceleration.z);
Serial.println(" m/s^2");
delay(10);
}