Jedz według wysiłku, nie według zegara — jak działa Smart Fueling w WattLog.pro
Każdy kolarz zna radę: jedz co 45 minut. Każdy, kto zrobił ciężki trening interwałowy, wie też, że to nieprawda. Godzina na progu spala więcej węglowodanów niż półtorej godziny spokojnej regeneracji, a minutnik nie odróżni jednego od drugiego. Moment, w którym orientujesz się, że trzeba było zjeść, to moment, w którym jest już za późno: jesteś w środku serii, ręce na kierownicy, a odcięcie prądu przychodzi dwadzieścia minut później.
Rozwijam WattLog.pro samodzielnie: platformę treningową z odczytem czujników na żywo, treningami strukturalnymi sterującymi trenażerem w trybie ERG i symulowanymi trasami GPX. Aplikacja miała już ustawienie „przypominaj o jedzeniu co X minut”, a ja i tak zapominałem jeść, bo przypomnienie nie miało nic wspólnego z tym, jak mocno jechałem. Tak zastąpiłem je czymś, co ma.
Minutnik kontra rzeczywiste spalanie
Ta sama osoba, trzy różne treningi. Minutnik „co 45 minut” traktuje je według zegarka, a Smart Fueling — według tego, ile węglowodanów faktycznie poszło z baku:
| Trening | Czas | Spalone węglowodany* | Minutnik co 45 min | Smart Fueling** |
|---|---|---|---|---|
| Regeneracja, 50% FTP | 1 h 30 min | ok. 70 g | 2 przypomnienia | 1 alert |
| Wytrzymałość, 65% FTP | 2 h | ok. 160 g | 2 przypomnienia | 2 alerty |
| Próg, 90% FTP | 1 h | ok. 155 g | 1 przypomnienie | 2 alerty |
* Kolarz z FTP 250 W, równa jazda, liczone krzywą opisaną niżej (1 kJ ≈ 1 kcal, 4 kcal na gram węglowodanów). ** Domyślny próg 400 kJ, zakładając, że jesz przy każdym alercie.
Godzina na progu spala tyle węglowodanów co dwie godziny w tlenie i ponad dwa razy więcej niż półtorej godziny regeneracji — a minutnik każe przy niej jeść najrzadziej.
Sygnał już płynie po kablu
Miernik mocy albo smart trenażer podaje waty kilka razy na sekundę. Moc razy czas to praca mechaniczna w kilodżulach, a w kolarstwie zachodzi wygodny zbieg okoliczności. Wytrenowani kolarze zamieniają energię z jedzenia na pracę na pedałach ze sprawnością około 18–26% [1], a 1 kcal to 4,184 kJ. Przy sprawności ok. 24% oba czynniki się znoszą:
To przybliżenie: sprawność różni się między kolarzami i rośnie z intensywnością [1, 2], więc prawdziwy przelicznik przesuwa się trochę w jedną lub drugą stronę. Szerzej opisuję to w tekście o spalaniu kilodżuli na trenażerze. Ten przelicznik był już w analizie po jeździe. Brakowało go tylko w trakcie jazdy.
Rdzeniem silnika jest więc akumulator w menedżerze sesji po stronie serwera. Każda próbka mocy dodaje pracę wykonaną od poprzedniej (całkowanie metodą trapezów), a przerwa między próbkami jest ograniczona do 5 sekund, żeby zerwane połączenie Bluetooth nie „wymyśliło” energii. Gdy suma przekroczy próg (domyślnie 400 kJ, ustawiany dla każdego zawodnika), kolarz dostaje komunikat, żeby coś zjeść. Stan siedzi w tych samych metadanych sesji w Redisie co reszta jazdy na żywo, więc odświeżenie strony albo ponowne połączenie z innym workerem API zaczyna od miejsca, w którym skończyło, zamiast zerować pasek.
Ta pierwsza wersja powstała szybko i już była lepsza od minutnika. Ale wciąż myliła się w ciekawy sposób.
Nie każdy kilodżul jest równy
400 kJ w spokojnym tempie wytrzymałościowym i 400 kJ na progu to ta sama praca, ale nie ten sam koszt paliwa. Fizjologia wysiłku nazywa to „crossover”: przy niskiej intensywności głównym paliwem są tłuszcze, a wraz ze wzrostem intensywności organizm przesuwa się w stronę węglowodanów, które dominują przy ciężkim wysiłku [3]. Badania z użyciem znaczników izotopowych u kolarzy pokazują ten sam obraz szczegółowo: utlenianie glikogenu mięśniowego i glukozy z krwi rośnie z każdym stopniem intensywności, a utlenianie tłuszczów osiąga szczyt przy umiarkowanej mocy i potem spada [4, 5]. Pasek liczący surowe kilodżule ostrzega za słabo w ciężkie dni i męczy w lekkie.
Rozwiązaniem jest krzywa: udział węglowodanów w energii jako funkcja intensywności względem FTP.
Krzywa jest odcinkowo-liniowa: ok. 45% przy 55% FTP, 65% przy 75%, 80% przy 95% i ponad 90% powyżej FTP. Żeby było jasne, skąd te liczby: to moje własne przybliżenie, ukształtowane tak, by oddawać kierunek i rząd wielkości z powyższych badań, a nie wartości wzięte z jednej pracy. Badania te mierzą intensywność względem VO2max lub maksymalnego obciążenia, a nie FTP, więc przełożenie to oszacowanie inżynierskie. Kilodżule z każdej próbki są następnie ważone tym udziałem względem umiarkowanego wysiłku referencyjnego:
pasek_paliwa += przyrost_kJ × waga
Liczą się tu dwie właściwości. Po pierwsze, przy umiarkowanym wysiłku waga wynosi dokładnie 1, więc próg zachowuje znaczenie, a istniejące ustawienia nie zmieniają po cichu działania. Po drugie, bez FTP nie da się ocenić intensywności, więc pasek wraca do nieważonych kilodżuli, zamiast zgadywać. W praktyce jazda na 96% FTP napełnia teraz pasek prawie 1,8 raza szybciej niż ta sama praca wykonana na 56%. Jeśli nie znasz swojego FTP, zacznij od testu FTP.
Pasek pokazuje gramy, nie kilodżule. Kolarze myślą „jeden żel” albo „jakieś 30 g”, a nie kJ, więc próg jest wyświetlany jako porcja węglowodanów: 400 kJ × 65% ÷ 4 kcal/g to ok. 65 g spalonych, z czego połowę warto uzupełnić — stąd porcja ok. 30 g.
Kiedy się odezwać
Poprawna liczba nie wystarczy, jeśli alert odpali w złym momencie. Większość pracy poszła w to, kiedy aplikacja ma coś powiedzieć. Tak wygląda pasek paliwa w trakcie jazdy w trzech stanach:
Komunikaty idą tym samym kanałem co wiadomości trenera: panel wiadomości, toast na telefonie, dźwięk i komunikat głosowy, jeśli wskazówki głosowe są włączone. Reszta to reguły, kiedy nie przeszkadzać:
| Sytuacja | Co robi Smart Fueling |
|---|---|
| Pasek dochodzi do 75% progu | Bursztynowy kolor i prośba, żeby przygotować jedzenie |
| Pasek dochodzi do 100% | „Zjedz teraz” — i powtórka co 100 kJ, dopóki nie zjesz |
| Próg przekroczony przy mocy > 105% FTP | Alert czeka, aż moc spadnie — nie przerywa interwału |
| Trasa: 0,5 km przed podjazdem ≥ 4% (po ≥ 1 km płaskiego) | „Podjazd przed Tobą, zjedz teraz” |
| Zjazd stromszy niż −5% albo podjazd stromszy niż 12% | Cisza — wszystkie podpowiedzi czekają |
| Stuknięcie „+Porcja” | Odejmuje jedną porcję od deficytu, nie zeruje go |
Wstrzymanie przy ciężkim wysiłku to flaga ustawiana w chwili przekroczenia progu, a nie sprawdzanie na żywo moc > 1,05 × FTP — naiwna wersja migała banerem przy każdym obrocie korby w ciężkim interwale. A przycisk zaczynał jako „+Żel”, co sugerowało, że żele to jedyna dobra odpowiedź. Teraz to „+Porcja”: jeśli jesteś dwie porcje do tyłu i zjesz raz, jedna wciąż zostaje do nadrobienia.
Na symulowanej trasie GPX silnik na starcie skanuje profil wysokości i szuka ostatniego spokojnego momentu, żeby zjeść, zanim droga pójdzie w górę:
Podgląd terenu wygenerował błąd, z którego wyłapania przez testy cieszę się najbardziej. Punkt minięty wewnątrz strefy ciszy był pomijany, ale zostawał na liście, a ponieważ warunek wyzwolenia brzmiał „minięty między poprzednią a obecną pozycją”, nie mógł już nigdy odpalić: podpowiedź po cichu ginęła. Poprawka odpala zaległy punkt w pierwszym takcie po końcu strefy ciszy i łączy kilka minionych punktów w jedną podpowiedź, żeby nieaktualna nie wyskoczyła później sama.
Przed jazdą: co spakować
Druga połowa odżywiania dzieje się w domu. Przed każdą sesją dłuższą niż godzina strona przygotowania pokazuje kartę z ilością węglowodanów i płynów do zabrania — bez łączenia trenażera i bez startowania czegokolwiek:
Ta jazda potrwa ok. 1 h 30 min. Zabierz około:
Dla treningu strukturalnego energia wynika wprost z planu: docelowe waty każdego kroku razy jego czas trwania dają dokładne kilodżule, moc znormalizowana daje intensywność, a ta sama krzywa węglowodanowa jest stosowana do każdego kroku. Trening z ciężkich zrywów i lekkich przerw potrzebuje więcej węglowodanów niż równa jazda o tej samej średniej mocy, i szacunek to uwzględnia. Kilka przykładów dla kolarza z FTP 250 W na trenażerze:
| Trening | Energia | Węglowodany do zabrania | Płyny |
|---|---|---|---|
| Wytrzymałość 1 h 30 min, 65% FTP | 878 kJ | 50–70 g | 1,2 l |
| Sweet spot 1 h 30 min, 88% FTP | 1188 kJ | 70–90 g | 1,2 l |
| Tempo 2 h, 75% FTP | 1350 kJ | 90–120 g | 1,6 l |
| Wytrzymałość 3 h, 65% FTP | 1755 kJ | 95–145 g | 2,4 l |
Dla trasy GPX nie ma planu, więc używam modelu fizycznego, na którym opiera się już symulacja trenażera: dla każdego 50-metrowego odcinka liczę moc potrzebną do utrzymania założonej prędkości wbrew grawitacji, oporowi toczenia i oporowi powietrza, z użyciem masy kolarza, masy roweru, CdA, Crr i gęstości powietrza. Taki model jest dobrze zwalidowany: w testach drogowych przewidywał zmierzoną moc z R² = 0,97 i błędem standardowym 2,7 W [6]. Zjazdy, które nie wymagają pedałowania, liczą się jako zerowa praca. Pagórkowata trasa słusznie wychodzi drożej niż płaska tej samej długości.
Liczby zamieniają się potem w listę do zabrania: mniej więcej połowa spalonych węglowodanów, ograniczona do tego, co jelita są w stanie wchłonąć, i podana jako zakres, bo pojedyncza liczba sugerowałaby fałszywą precyzję. Limity wynikają z aktualnych zaleceń dotyczących węglowodanów w trakcie wysiłku: pojedyncze źródło węglowodanów może być utleniane do ok. 60 g/h, a dopiero dłuższe wysiłki uzasadniają ok. 90 g/h, z użyciem kilku rodzajów węglowodanów o różnych transporterach, np. glukozy z fruktozą [7]. Te same zalecenia mówią, że przy niskiej intensywności bezwzględnej podaż należy zmniejszyć — i to właśnie robi krzywa intensywności. Współczynnik „połowa tego, co spalasz” to mój własny wybór, nie liczba z literatury.
Płyny korzystają z tabeli tempa pocenia z podsumowania po jeździe. Plan zakłada wypicie ok. 80% szacowanej straty, ale nie więcej niż 0,8 l/h:
| Intensywność jazdy | W domu | Na zewnątrz |
|---|---|---|
| Niska (IF < 0,65) | 1,0 l/h | 0,6 l/h |
| Umiarkowana (IF 0,65–0,85) | 1,4 l/h | 0,9 l/h |
| Wysoka (IF > 0,85) | 1,8 l/h | 1,2 l/h |
Tu najuczciwszym źródłem jest zastrzeżenie: tempo pocenia bardzo różni się między ludźmi, a stanowisko w sprawie uzupełniania płynów zaleca wyznaczenie własnego przez ważenie się przed i po jeździe, z celem utrzymania utraty płynów poniżej ok. 2% masy ciała [8]. Tabela to punkt wyjścia, nie twoja liczba. Więcej o tym w tekście o nawodnieniu i elektrolitach.
To ponowne użycie było celowe. Pierwsza wersja karty przed jazdą zakładała płaskie 500 ml na godzinę, podczas gdy podsumowanie po jeździe zakładało 1,4 l/h potu dla umiarkowanej sesji w domu. Kolarz usłyszałby dwie sprzeczne rzeczy o tej samej jeździe. Teraz wszystkie trzy miejsca liczą z tych samych założeń:
Błąd, który ta funkcja znalazła gdzie indziej
Testując kartę trasy, dostałem podejrzany wynik: 2,7 l płynów na trasę, która według strony miała zająć 1 h 41 min. To 1,6 l/h, dwa razy więcej niż limit.
| Czas trasy (60 km) | 2,7 l płynów to… | |
|---|---|---|
| Pokazywany przez aplikację | 1 h 41 min | 1,6 l/h ✗ |
| Prawdziwy przy 18 km/h | 3 h 22 min | 0,8 l/h ✓ |
Obliczenia płynów były poprawne. Błędny był czas trwania, i to nie w moim nowym kodzie: cztery ekrany tras szacowały czas jako odcinki × 5 sekund, ale odcinki mają 50 m, więc ten wzór działa tylko przy 36 km/h. Przy domyślnych 18 km/h każdy czas trasy w aplikacji był zaniżony o połowę. Backend zwraca teraz czas razem z planem odżywiania, a wszystkie ekrany tras korzystają z jednej funkcji „dystans przez prędkość”.
Czego to nie robi
To wskazówka, nie pomiar, i ten tekst byłby nieuczciwy bez zastrzeżeń:
- Krzywa węglowodanowa przybliża zachowanie przeciętne, a ludzie bardzo się różnią. W badaniu na 300 osobach płeć, wydolność i poziom aktywności razem wyjaśniały tylko 12% różnic w utlenianiu tłuszczów podczas wysiłku; reszta pozostała niewyjaśniona [9]. Aplikacja przy każdym szacunku pisze, że to średnie populacyjne.
- Model trasy zakłada stałą prędkość. Prawdziwi kolarze zwalniają na podjazdach, więc model prawdopodobnie zawyża moc potrzebną na stromych odcinkach.
- Ważenie na żywo wymaga FTP i źródła mocy. Bez nich pasek liczy surową pracę; wariant awaryjny oparty na tętnie dla paska na żywo jeszcze nie powstał.
- Nie porównałem jeszcze szacunków z prawdziwą długą jazdą i wagą. Zachowanie jest przypięte testami jednostkowymi, nie danymi z drogi.
Cały silnik można wyłączyć w Ustawieniach, a gdy jest włączony, zastępuje stare przypomnienie o jedzeniu w stałych odstępach, zamiast z nim konkurować.
Co z tego wynoszę
Funkcja, która wyglądała na „pokaż alert przy 400 kJ”, zamieniła się w trzy modele, które muszą się zgadzać: akumulator na żywo, plan przed jazdą i analizę po jeździe. Większość prawdziwej pracy to nie wzór, tylko sprawienie, żeby te trzy opowiadały kolarzowi tę samą historię, i wybór właściwego momentu, żeby się odezwać. Najlepszą decyzją była odmowa trzymania przez każdy ekran własnych stałych. Najbardziej przydatnym nawykiem — traktowanie liczby, która wygląda dziwnie, jak 2,7 l w niecałe dwie godziny, jako zgłoszenia błędu, a nie problemu z zaokrągleniem.
Źródła
- Coyle EF, Sidossis LS, Horowitz JF, Beltz JD. Cycling efficiency is related to the percentage of type I muscle fibers. Med Sci Sports Exerc. 1992;24(7):782–788. PubMed 1501563
- Ettema G, Lorås HW. Efficiency in cycling: a review. Eur J Appl Physiol. 2009;106(1):1–14. doi:10.1007/s00421-009-1008-7
- Brooks GA, Mercier J. Balance of carbohydrate and lipid utilization during exercise: the "crossover" concept. J Appl Physiol. 1994;76(6):2253–2261. doi:10.1152/jappl.1994.76.6.2253
- Romijn JA, Coyle EF, Sidossis LS, et al. Regulation of endogenous fat and carbohydrate metabolism in relation to exercise intensity and duration. Am J Physiol. 1993;265(3):E380–E391. doi:10.1152/ajpendo.1993.265.3.E380
- van Loon LJ, Greenhaff PL, Constantin-Teodosiu D, Saris WH, Wagenmakers AJ. The effects of increasing exercise intensity on muscle fuel utilisation in humans. J Physiol. 2001;536(1):295–304. doi:10.1111/j.1469-7793.2001.00295.x
- Martin JC, Milliken DL, Cobb JE, McFadden KL, Coggan AR. Validation of a mathematical model for road cycling power. J Appl Biomech. 1998;14(3):276–291. doi:10.1123/jab.14.3.276
- Jeukendrup A. A step towards personalized sports nutrition: carbohydrate intake during exercise. Sports Med. 2014;44(Suppl 1):S25–S33. doi:10.1007/s40279-014-0148-z (otwarty dostęp: PMC4008807)
- American College of Sports Medicine; Sawka MN, Burke LM, Eichner ER, et al. Exercise and fluid replacement. Med Sci Sports Exerc. 2007;39(2):377–390. doi:10.1249/mss.0b013e31802ca597
- Venables MC, Achten J, Jeukendrup AE. Determinants of fat oxidation during exercise in healthy men and women: a cross-sectional study. J Appl Physiol. 2005;98(1):160–167. doi:10.1152/japplphysiol.00662.2003
Ile kosztowała Cię ostatnia jazda?
Wgraj plik GPX lub TCX z dowolnej jazdy i zobacz jej TSS, moc, tętno i strefy — w 30 sekund, bez zakładania konta.
Przeanalizuj swoją jazdę — bez konta →Wgraj plik GPX lub TCX ze Stravy albo Garmina. Jak go pobrać?