Марафорум

форум о любительском беге, тренировках, соревнованиях

ПроБЕГ | КлбМатч | МАТЧИ IRC | УниверМАТЧ
Сервис предварительной регистрации
Youtube-канал Валерия Жумадилова (tauker)
Сайты и блоги марафорумцев
Сайты и блоги марафорумцев
(по старому)

Если у вас возникают проблемы с регистрацией, пишите на почту maraforum2reg AT mail.ru
Текущее время: 28 мар 2024, 22:39

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 153 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 8  След.
Автор Сообщение
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 18 сен 2019, 15:07 
vioshkin писал(а):
так она себя ведет ужасно только от нетренированности
Разумеется от нетренированности. И им надо показать на графике, в числах, что медленный бег лучше чем быстрый. То есть им легче бежать, меньше после болит, и при этом число ударов сердца на 1км по кругам стравы также лучше. Люди изумляются. А на хрена я раньше эпизодически лупил в полную дурь 5-8км (и гордился темпом), если правильно 10-12 км не спеша. А быстро только на соревнованиях.

Как только этап входа в сезон закончился, ПС стабилизируется, начинаешь интервалы.

Цитата:
У меня на всем диапазоне скоростей от 3:10 до 4:30 одинаковая ПС (640-650). При это на субмаксимальных скоростях ПС снижается, т.к. темп растет, а пульс почти достиг максимума.
Если вы бежите кросс, накатываете в конце и у вас ПС такая же или лучше чем в начале, то кросс в тему. Если можете накатить, но ПС при этом растет, значит пошло закисление. кросс был слишком быстрый. Особенно это важно для длительных. Если ПС в ходе длительной полстоянная, то отлично. Если ПС начинает расти и упирается в предел, новичок бежать не может и еле-еле плетется в конце длительной, или вообще шагом, стандартный случай. Остледить начало рота ПС можно задолго до того как придёт полный кирдык. И принять меры - начать бежать медленнее а не рассчитывать что еще на 1 час тебя хватит.


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 18 сен 2019, 15:16 
vioshkin писал(а):
У вас красивый график, показывающий разницу в 60-70 ПС, но это вы так удачно подобрали :)
ниже по ссылке в конце статьи другие графики 2018, тоже подбирал конечно, но это легко, если не было травмы и на пике сезона есть хороший старт, в конце 2018 повторил 2 раз личник на М, 3:28 - быстрее 5 мин/км, а начиеал сезон по 6 мин/км, и даже пропустил сентябрьский ультра в Троодосе из-за неготовности. Но потои смог всё таки разбежаться. https://drive.google.com/file/d/17wK0y5 ... sp=sharing


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 18 сен 2019, 15:21 
Еще график, надеюсь Майк не будет против что я опубликовал его данные, Sept 10 vs Sept 17

Изображение


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 18 сен 2019, 15:38 
О понимании, подборе данных и реальном эксперименте

Инженеров уже 100+ лет учат что есть эффект показанный на видео
phpBB [video]


Чтобы получить такие картинки в реальном физическом эксперименте, а не в компьютерной симуляции, надо иметь идеальные условия. Если кто захочет сделать лабораторную установку и проверить этот эффект, хрен что у него получится в начале. Но такое явление есть, и есть понимание подкреплённое экспериментами высокого качества и физическими законами.

Аналогично с ПС, да и вообще с любым сложным явлением в жизни, природе, обществе.


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 24 сен 2019, 15:22 
закладка- обзор моделей

Master‘s Thesis
Race time prediction on individual historical training data for hilly and non-hilly courses
Julian Maurer
March 2018

https://umtl.cs.uni-saarland.de/thesis/ ... Maurer.pdf

page 28 , Fig.4.6
The Normalized Grade Pace (NGP) is the adjusted pace measured by the GPS device
that reflect the changes of grade and intensity according to the physical energy costs of
running over hilly terrain28. It is a conversion from the actual pace with all variations
from running up- or downhill to a “flat” pace, which is the level-ground equivalent in
terms of physiological stressfulness.


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 24 сен 2019, 22:48 
Открывает родные FΙΤ файлы Гармина, есть исходники

https://www.gpxsee.org/


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 11 сен 2020, 14:16 
питон

garminexport - можно сгрузить все свои тренировки с гарминовского сайта одной командой
https://pypi.org/project/garminexport/

пример работы с fit файлом
https://devinrourke.github.io/posts/fit ... a-munging/

Буду рад если откликнуться специалисты по питону.


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 11 сен 2020, 15:35 
Не в сети
Аватара пользователя

Зарегистрирован: июн 18
Сообщения: 1079
Откуда: Нижневартовск
на кой что-то устанавливать?

Можно в том же хроме, находясь на страничке тренировки, вставить в консоль следующий JS скрипт:

var a = window.location.pathname.split("/");
var id = a[a.length-1];
var tcxUrl = "https://connect.garmin.com/modern/proxy/download-service/export/tcx/activity/";
var cnt = 1, ttl = 100; /*Change ttl from 100 to whatever # of activities you want to download*/
var downloadTimeoutLength = 1000;
var downloadUrl = tcxUrl + id;
window.location.href = downloadUrl;

setTimeout(
(getMore = function(){
jQuery.getJSON("https://connect.garmin.com/modern/proxy/activity-service/activity/"+id+"/relative?_="+Math.random()
,function(d){
id = d.previousActivityId;
downloadUrl = tcxUrl + id;
window.location.href = downloadUrl;
if(++cnt<ttl){
setTimeout(getMore,downloadTimeoutLength );
}
}
);
})
,downloadTimeoutLength
);

будет скачано ttl (100) тренировок с таймаутом downloadTimeoutLength (1000). в хроме в настройках убрать галку "Всегда указывать место для скачивания" в Дополнительные -> скачанные файлы. Быстро и просто.

_________________
1500: 4:17.94(i) 3000: 9:13.59(i)


Вернуться к началу
  Профиль  
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 11 сен 2020, 18:38 
Если вы сами придумали, то восхищаюсь. Сразу же критика.

tcxUrl только для tcx файлов. Очень рыхлый формат. Какой адрес для fit файлов?

Можно допилить так:
(1) скачать файл
(2) тут же распарсить
(3) сделать свой анализ распарсенных переменных, включая графики, например, на одном поле поместить кривые с разных тренировок

Есть пример такого скрипта?

PS: похоже, вот источник скрипта
https://ps-sports.de/garmin-fit-dateien ... n-connect/


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 11 сен 2020, 18:45 
Не в сети
Аватара пользователя

Зарегистрирован: ноя 13
Сообщения: 2132
Клуб: IRC
Похоже где то ошибка в скрипте.
Цитата:
{"message":"For input string: \"activities\"","error":"NumberFormatException"}

_________________
>>>>>
5 км. 19:59.25 06.06.2021
марафон 3:28:11 23.09.2021


Вернуться к началу
  Профиль  
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 11 сен 2020, 23:02 
скрипт на питоне

диалог запрашивает *.fit file
полный парсинг *.fit файла
из парсинга доступны все переменные, поэтому любой график возможен

т.к. поле уже определено, то новые данные ложатся на прежнее поле

Изображение

Скрытый текст: показать
скрипт
---------------------------------------------------------------
Код:
from fitparse import FitFile
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import easygui


# Load the fitfile
# fitfile = FitFile('2019-03-11-185427-ELEMNT BOLT 4043-167-0.fit')
#fitfile = FitFile('D:/GoogleDrive/RUN/backup_tcx/backupGarminFR935/ACTIVITY/A82I5744.FIT')

fname=easygui.fileopenbox()
fitfile = FitFile(fname)

# This is a ugly hack
# to avoid timing issues
while True:
    try:
        fitfile.messages
        break
    except KeyError:
        continue

# Get all data messages that are of type record
workout = []
for record in fitfile.get_messages('record'):
    r = {}
    # Go through all the data entries in this record
    for record_data in record:
        r[record_data.name] = record_data.value

    workout.append(r)

df = pd.DataFrame(workout)

plotlabel=fitfile.messages[0].get_value('time_created').strftime('%Y-%m-%d')

df['pace']=1/(60*df[ 'enhanced_speed']/1000)
df['HRE']=df['pace']*df['heart_rate']


plt.figure(1)
ax1=plt.subplot(311)
ax1.plot(df['distance']/1000,df['pace'], label=plotlabel)
plt.ylim([3,7])
plt.grid(True)
plt.title('Pace')
plt.legend()


plt.subplot(312)
plt.plot(df['distance']/1000,df['heart_rate'], label=plotlabel)
plt.ylim([110,190])
plt.grid(True)
plt.title('Heart rate')
plt.legend()

plt.subplot(313)
plt.plot(df['distance']/1000,df['HRE'], label=plotlabel)
plt.ylim([550,1250])
plt.grid(True)
plt.title('Heart rate efficiency')
plt.legend()

plt.tight_layout()


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 25 янв 2021, 19:52 
Одним питоном не наелся, захотелось то же самое на jаvаscript.

Есть парсер для исходных гарминовских файлов
https://www.npmjs.com/package/fit-file-parser
Работает только в node.js, в сыром виде использовать нельзя

Решил допилить чтобы заработало в броузере, заменил пакеты node.js в парсере, сделал html форму которая парсирует а потом рисует график из fit файла. На рисунке что получилось. jаvаscript работает заметно быстрее питона, в начале не мог такого предположить. Теперь можно всячески изощряться, объединять графики, считать пульсовую стоимость и проч

Изображение

Если есть интересующиеся, можно было бы поговорить. Можно например сделать веб страницу, которая при открытом гармин-коннекте будет сгружать fit файлы с гарминовского сайта и делать любой анализ которого нет на сайте, например строить на одном поле графики разных тренировок и сравнивать напрямую. Можно брать fit файлы с локальной директории, но тогда юзеру нужно запускать свой http-server, чтобы иметь доступ к локальным файлам, а это уже пляски с бубном

И тогда не надо грузить мегатонны для питона или node.js, все будет работать в одном html файле


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 08 фев 2021, 19:45 
Продолжаю пилить JS. Вот что получается. Слева область для графиков, можно нарисовать все что находится в гарминовском .fit файле. Внизу легенда. Легко сделать несколько полей для графиков. На одно поле можно поместить любое число пробежек и напрямую сравнивать, в т.ч. динамику ПС по ходу пробежки в разные дни. Щёлкая на легенде, можно включать/выключать разные кривые. Увеличение масштаба по клику мыши. Для разнородных датчиков свои оси Υ. Справа карта с треком.

Код выложил на github, если есть желающие протестировать - пишите сюда или в ЛС, буду рад. Для инсталляции ничего не надо, работает в броузере, размер крошечный.

JS - отличная штука.

Изображение


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 09 фев 2021, 12:53 
Не в сети
Аватара пользователя

Зарегистрирован: ноя 13
Сообщения: 6143
Откуда: раньше была Москва
Клуб: Мöрдераторы
сообщение panmatros удалено по просьбе автора темы, как оффтопик.

_________________
Ich reise viel, ich reise gern, fern und nah, nah und fern


Вернуться к началу
  Профиль  
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 10 фев 2021, 04:11 
Вот что получилось.

В левое окно грузятся по выбору датчики которые пишет гармин в *.fit file. Каждый датчик масштабируется своей осью. В правое поле автоматически грузятся треки, карта подкачивается из сети. По клику мыши увеличиваем область на левом поле, на правом поле автоматически идет выделение сегмента краcным цветом на треке. Когда выделение закончено, автоматически считается и выводится среднее для всех кривых на графике для выделенной области. Работает мгновенно, по сравнению с гарминовским тормознутым сайтом, который грузит кучу ненужного мусора.

Изображение

Теперь можно это всё разукрашивать, вместо модального окна сделать красивый вывод, понавесить стили и проч., но прототип работает.

Думал что будет сложно синхронизировать карты и графики, оказалось нет.

Пакеты: node.js + fit-parser + canvasjs + leaflet


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 10 фев 2021, 08:02 
Не в сети

Зарегистрирован: фев 18
Сообщения: 1776
Интересная штука. Где дают?


Вернуться к началу
  Профиль  
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 10 фев 2021, 08:29 
Не в сети
Аватара пользователя

Зарегистрирован: июл 16
Сообщения: 5950
Откуда: Оттуда! :)
А здорово!

_________________
Куча нетренированного мясца на лаврах.
Флужу, к спорту отношения не имею, занимаюсь профанацией,
рвусь к несоответствующему статусу, обабливаю трейлраннинг,
красуюсь, заменяю прославленных МСМК, звеню крючьями
ради медалек и социального одобрения.


Вернуться к началу
  Профиль  
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 10 фев 2021, 12:01 
Не в сети

Зарегистрирован: фев 18
Сообщения: 1776
karaul писал(а):
Теперь можно это всё разукрашивать
Вот у Гармина и Суунто так же все начиналось...


Вернуться к началу
  Профиль  
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 10 фев 2021, 12:27 
Мне нужен помощник. Документация - самая муторная часть.

Написал на скорую руку . Можно всё не читать, а сразу перейти к (1-4) и кликать по ссылкам.
https://app.box.com/s/lmell4n816wpygiu2gjepofwqf3kmmak
Извините что английский и за ошибки в английском, спал мало
Файлы упомянутые в (1-4) здесь
https://app.box.com/s/arl9w19vty453nnyiubw4m1jltjqrfmz

Если кто захочет получить доступ к github, пишите ЛС, я пока открыть не готов.

Если найдется энтузиаст в помощь, то лучше всего устроить zoom сессию. Списаться через ЛС.


Вернуться к началу
   
 
 Заголовок сообщения: Re: Программирование
СообщениеДобавлено: 10 фев 2021, 17:33 
Не в сети

Зарегистрирован: фев 18
Сообщения: 1776
У меня какая-то проблема с выделением и определением средних - не работает. Плюс так и не поняла, как работает масштабирование куска графика - работает через раз, периодически начинает задалбывать окном с просьбой подтвердить действие (видимо, вместо демонстрации среднего). Причем проблема на моих фит-файлах, на вашем все ок. Могу прислать для опытов


Вернуться к началу
  Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 153 ]  На страницу Пред.  1, 2, 3, 4, 5 ... 8  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот раздел просматривают: нет зарегистрированных пользователей и гости: 5


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB