Código
library(tidyverse)
Experimento con aceleraciones \(m/s^2\)
library(tidyverse)
<- read_csv("Aceleraciones Edimer trelativo.csv")
datos_relativo %>% head() datos_relativo
<- read_csv("Aceleraciones Edimer tnormal.csv")
datos_normal %>% head() datos_normal
<- datos_normal %>%
datos_acel mutate(hora = as.POSIXct(timestamp / 1000, origin = "1970-01-01"))
%>% head() datos_acel
%>%
datos_acel summarise(min_hora = min(hora),
max_hora = max(hora),
tiempo = max_hora - min_hora)
# Metros/minuto
400 / 5.710583
[1] 70.04539
# Metros/segundo
400 / (5.710583 * 60)
[1] 1.167423
” La aceleración de un objeto es directamente proporcional a la suma de todas las fuerzas que actúan sobre él e inversamente propocional a la masa del objeto”
%>%
datos_acel ggplot(aes(x = hora, y = AccX)) +
geom_line()
%>%
datos_acel ggplot(aes(x = hora, y = AccY)) +
geom_line()
%>%
datos_acel ggplot(aes(x = hora, y = AccZ)) +
geom_line()
\[A_{total} = \sqrt{X^2 + Y^2 + Z^2}\]
<-
datos_acel_total %>%
datos_acel mutate(acel_total = sqrt(AccX ^ 2 + AccY ^ 2 + AccZ ^ 2))
%>% head() datos_acel_total
%>%
datos_acel_total ggplot(aes(x = hora, y = acel_total)) +
geom_line()
<-
aceleracion_promedio %>%
datos_acel_total mutate(tiempo = timestamp %/% 100) %>%
group_by(tiempo) %>%
summarise(
acelx_mean = mean(AccX, na.rm = TRUE),
acely_mean = mean(AccY, na.rm = TRUE),
acelz_mean = mean(AccZ, na.rm = TRUE)
%>%
) ungroup() %>%
mutate(acel_total_mean = sqrt(acelx_mean ^ 2 + acely_mean ^ 2 + acelz_mean ^
2))
%>% head() aceleracion_promedio
%>%
aceleracion_promedio pivot_longer(cols = c(acelx_mean, acely_mean, acelz_mean)) %>%
ggplot(aes(x = tiempo, y = value, color = name)) +
geom_line(alpha = 0.5) +
geom_smooth(size = 1)
%>%
aceleracion_promedio ggplot(aes(x = tiempo, y = acel_total_mean)) +
geom_line(alpha = 0.5)
<-
periodograma %>%
aceleracion_promedio filter(!is.na(acel_total_mean)) %>%
pull(acel_total_mean) %>%
spec.pgram()
<- periodograma$freq[which(periodograma$spec == max(periodograma$spec))]
maxFrec maxFrec
[1] 0.1811343
<- diff(range(aceleracion_promedio$tiempo)) / 10
tiempo_total <- tiempo_total * maxFrec
numPeriodos numPeriodos
[1] 62.0566
tiempo_total
[1] 342.6