@jjlmoya/utils-motor 1.2.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/category/index.ts +4 -1
- package/src/entries.ts +10 -1
- package/src/index.ts +15 -0
- package/src/tests/locale_completeness.test.ts +1 -1
- package/src/tests/seo_translation_completeness.test.ts +69 -0
- package/src/tests/tool_validation.test.ts +1 -1
- package/src/tool/carMotorcycleGearRatioCalculator/bibliography.astro +6 -0
- package/src/tool/carMotorcycleGearRatioCalculator/bibliography.ts +12 -0
- package/src/tool/carMotorcycleGearRatioCalculator/car-motorcycle-gear-ratio-rpm-speed-calculator.css +668 -0
- package/src/tool/carMotorcycleGearRatioCalculator/component.astro +137 -0
- package/src/tool/carMotorcycleGearRatioCalculator/controller.ts +209 -0
- package/src/tool/carMotorcycleGearRatioCalculator/dom-views.ts +121 -0
- package/src/tool/carMotorcycleGearRatioCalculator/entry.ts +30 -0
- package/src/tool/carMotorcycleGearRatioCalculator/evaluator.ts +28 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/de.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/en.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/es.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/fr.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/id.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/it.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/ja.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/ko.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/nl.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/pl.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/pt.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/ru.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/sv.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/tr.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/i18n/zh.ts +162 -0
- package/src/tool/carMotorcycleGearRatioCalculator/index.ts +10 -0
- package/src/tool/carMotorcycleGearRatioCalculator/logic.test.ts +51 -0
- package/src/tool/carMotorcycleGearRatioCalculator/logic.ts +91 -0
- package/src/tool/carMotorcycleGearRatioCalculator/seo.astro +15 -0
- package/src/tool/carMotorcycleGearRatioCalculator/storage.ts +46 -0
- package/src/tool/carMotorcycleGearRatioCalculator/ui.ts +50 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/bibliography.astro +6 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/bibliography.ts +12 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/component.astro +166 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/controller.ts +207 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/dom-views.ts +101 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/entry.ts +30 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/evaluator.ts +7 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/de.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/en.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/es.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/fr.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/id.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/it.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/ja.ts +201 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/ko.ts +201 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/nl.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/pl.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/pt.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/ru.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/sv.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/tr.ts +185 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/i18n/zh.ts +201 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/index.ts +10 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/logic.test.ts +229 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/logic.ts +179 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/motorcycle-skid-mark-speed-estimator.css +523 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/seo.astro +15 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/storage.ts +49 -0
- package/src/tool/motorcycleSkidMarkSpeedEstimator/ui.ts +46 -0
- package/src/tool/tirePressureConverter/bibliography.astro +6 -0
- package/src/tool/tirePressureConverter/bibliography.ts +12 -0
- package/src/tool/tirePressureConverter/component.astro +82 -0
- package/src/tool/tirePressureConverter/controller.ts +120 -0
- package/src/tool/tirePressureConverter/dom-views.ts +31 -0
- package/src/tool/tirePressureConverter/entry.ts +30 -0
- package/src/tool/tirePressureConverter/evaluator.ts +8 -0
- package/src/tool/tirePressureConverter/i18n/de.ts +96 -0
- package/src/tool/tirePressureConverter/i18n/en.ts +96 -0
- package/src/tool/tirePressureConverter/i18n/es.ts +96 -0
- package/src/tool/tirePressureConverter/i18n/fr.ts +96 -0
- package/src/tool/tirePressureConverter/i18n/id.ts +95 -0
- package/src/tool/tirePressureConverter/i18n/it.ts +95 -0
- package/src/tool/tirePressureConverter/i18n/ja.ts +95 -0
- package/src/tool/tirePressureConverter/i18n/ko.ts +95 -0
- package/src/tool/tirePressureConverter/i18n/nl.ts +95 -0
- package/src/tool/tirePressureConverter/i18n/pl.ts +95 -0
- package/src/tool/tirePressureConverter/i18n/pt.ts +95 -0
- package/src/tool/tirePressureConverter/i18n/ru.ts +95 -0
- package/src/tool/tirePressureConverter/i18n/sv.ts +95 -0
- package/src/tool/tirePressureConverter/i18n/tr.ts +95 -0
- package/src/tool/tirePressureConverter/i18n/zh.ts +95 -0
- package/src/tool/tirePressureConverter/index.ts +10 -0
- package/src/tool/tirePressureConverter/logic.test.ts +37 -0
- package/src/tool/tirePressureConverter/logic.ts +47 -0
- package/src/tool/tirePressureConverter/seo.astro +15 -0
- package/src/tool/tirePressureConverter/storage.ts +27 -0
- package/src/tool/tirePressureConverter/tire-pressure-converter-psi-bar-kpa-kgf-cm2.css +293 -0
- package/src/tool/tirePressureConverter/ui.ts +20 -0
- package/src/tools.ts +4 -1
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import type { SEOSection } from '@jjlmoya/utils-shared';
|
|
3
|
+
import { bibliographyEntries } from '../bibliography';
|
|
4
|
+
import type { MotorcycleSkidMarkSpeedEstimatorLocaleContent } from '../entry';
|
|
5
|
+
|
|
6
|
+
const slug = 'kalkulator-predkosci-sladu-hamowania-motocykla';
|
|
7
|
+
const title = 'Kalkulator prędkości ze śladu hamowania motocykla';
|
|
8
|
+
const description =
|
|
9
|
+
'Oszacuj prędkość motocykla na podstawie długości śladu hamowania, tarcia nawierzchni i nachylenia drogi. Fizyczne narzędzie edukacyjne do rekonstrukcji zdarzeń.';
|
|
10
|
+
|
|
11
|
+
const faq = [
|
|
12
|
+
{
|
|
13
|
+
question: 'Co oznacza ślad hamowania ?',
|
|
14
|
+
answer:
|
|
15
|
+
'Ślad zablokowanego koła określa dystans potrzebny do rozproszenia energii kinetycznej w postaci ciepła tarcia. Równanie fizyczne wyznacza minimalną prędkość początkową na samym początku widocznego śladu na jezdni.',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
question: 'Dlaczego wynik jest podawany jako zakres ?',
|
|
19
|
+
answer:
|
|
20
|
+
'Współczynnik tarcia oraz podział siły hamowania między przednie i tylne koło zawierają niepewności. Kalkulator podaje wartości dolną, średnią i górną, aby pokazać margines błędu przyjętych założeń.',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
question: 'Czy wynik można wykorzystać w raporcie powypadkowym ?',
|
|
24
|
+
answer:
|
|
25
|
+
'Nie. Oficjalna ekspertyza wymaga pomiarów dynamometrycznych na miejscu zdarzenia, analizy działania systemu ABS i oględzin biegłego. To narzędzie służy wyłącznie jako edukacyjne laboratorium fizyczne.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Czym różni się od kalkulatora drogi hamowania ?',
|
|
29
|
+
answer:
|
|
30
|
+
'Kalkulator drogi hamowania wychodzi od znanej prędkości i wylicza dystans zatrzymania. To narzędzie wykonuje obliczenie odwrotne ze zmierzonego śladu gumy bez uwzględniania czasu reakcji kierowcy.',
|
|
31
|
+
},
|
|
32
|
+
];
|
|
33
|
+
|
|
34
|
+
const howTo = [
|
|
35
|
+
{ name: 'Zmierz ślad', text: 'Zapisz długość widocznego śladu zablokowanego koła w metrach lub stopach z dokładnością do odcinka gumy.' },
|
|
36
|
+
{ name: 'Wybierz nawierzchnię', text: 'Wybierz rodzaj drogi odpowiadający zdarzeniu lub wprowadź własny zmierzony współczynnik tarcia kinetycznego.' },
|
|
37
|
+
{ name: 'Ustaw nachylenie i hamulce', text: 'Wprowadź spadek drogi oraz określ, które hamulce zostały zablokowane przez kierującego.' },
|
|
38
|
+
{ name: 'Odczytaj wynik', text: 'Przeanalizuj prędkość średnią oraz zakres niepewności w zależności od przyjętych wariantów.' },
|
|
39
|
+
];
|
|
40
|
+
|
|
41
|
+
const seo: SEOSection[] = [
|
|
42
|
+
{ type: 'title', level: 2, text: 'Zamiana śladu hamowania na zakres prędkości' },
|
|
43
|
+
{
|
|
44
|
+
type: 'paragraph',
|
|
45
|
+
html: 'Motocykl podczas gwałtownego hamowania pozostawia wyraźny ślad tylnego koła, lżejszy ślad przedniego koła lub przerywany odcisk w przypadku obecności systemu ABS. Mierzyć należy wyłącznie odcinek z całkowicie zablokowanym kołem, wykluczając późniejsze szorowanie owiewek motocykla po przewróceniu się na jezdnię.',
|
|
46
|
+
},
|
|
47
|
+
{ type: 'title', level: 3, text: 'Fizyczne podstawy obliczeń i wzór energii' },
|
|
48
|
+
{
|
|
49
|
+
type: 'paragraph',
|
|
50
|
+
html: 'Model opiera się na zasadzie zachowania energii kinetycznej podczas tarcia ślizgowego: prędkość jest wprost proporcjonalna do pierwiastka kwadratowego z podwojonego iloczynu przyspieszenia ziemskiego, współczynnika oporu i długości śladu. Nachylenie drogi działa jako komponent wektorowy. Wzniesienie wspomaga hamowanie, podczas gdy spadek zmniejsza efektywne tarcie.',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
type: 'list',
|
|
54
|
+
items: [
|
|
55
|
+
'Automatyczna konwersja jednostek długości na metry dla zachowania spójności fizycznej.',
|
|
56
|
+
'Domyślne współczynniki tarcia dla suchego i mokrego asfaltu, betonu, żwiru oraz lodu.',
|
|
57
|
+
'Uwzględnienie dynamicznego przeniesienia masy między przednią a tylną osią.',
|
|
58
|
+
'Poszerzony zakres niepewności w przypadku nieznanego stanu użycia hamulców na miejscu zdarzenia.',
|
|
59
|
+
],
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
type: 'tip',
|
|
63
|
+
title: 'Mierz tylko zablokowane koło',
|
|
64
|
+
html: 'Rozpocznij pomiar od pierwszego widocznego cienia gumy na asfalcie i zakończ w miejscu, gdzie koło odzyskuje rotację lub następuje uderzenie. Nie wliczaj śladów tarcia ramy po upadku.',
|
|
65
|
+
},
|
|
66
|
+
{ type: 'title', level: 3, text: 'Typowe współczynniki tarcia nawierzchni drogowych' },
|
|
67
|
+
{
|
|
68
|
+
type: 'table',
|
|
69
|
+
headers: ['Nawierzchnia', 'Średnie tarcie', 'Zakres tarcia'],
|
|
70
|
+
rows: [
|
|
71
|
+
['Suchy asfalt', '0.70', '0.55 do 0.85'],
|
|
72
|
+
['Mokry asfalt', '0.50', '0.35 do 0.65'],
|
|
73
|
+
['Suchy beton', '0.75', '0.60 do 0.90'],
|
|
74
|
+
['Żwir', '0.50', '0.35 do 0.70'],
|
|
75
|
+
['Ziemia lub trawa', '0.40', '0.25 do 0.55'],
|
|
76
|
+
['Lód', '0.10', '0.05 do 0.18'],
|
|
77
|
+
],
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
type: 'paragraph',
|
|
81
|
+
html: 'Są to wartości referencyjne dla zablokowanych opon ślizgających się po jezdni. Pomiary dynamometryczne wykonane bezpośrednio na miejscu zdarzenia zawsze zapewniają wyższą dokładność.',
|
|
82
|
+
},
|
|
83
|
+
{ type: 'title', level: 3, text: 'Wpływ rozkładu hamulców motocyklowych' },
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'Ponieważ motocykle posiadają niezależne sterowanie przednim i tylnym hamulcem, sam ślad tylnego koła nie oznacza wykorzystania pełnej przyczepności. Narzędzie umożliwia osobną analizę każdego wariantu.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'diagnostic',
|
|
90
|
+
variant: 'warning',
|
|
91
|
+
title: 'Model edukacyjny i naukowy',
|
|
92
|
+
badge: 'Edukacja',
|
|
93
|
+
html: 'Działanie systemu ABS, zużycie bieżnika opony oraz uderzenia zmieniają rzeczywistą prędkość. W przypadku zbyt dużego spadku terenu strona blokuje obliczenia z powodu fizycznej niemożliwości zatrzymania.',
|
|
94
|
+
},
|
|
95
|
+
];
|
|
96
|
+
|
|
97
|
+
const schemas: WithContext<SoftwareApplication | FAQPage | HowTo>[] = [
|
|
98
|
+
{
|
|
99
|
+
'@context': 'https://schema.org',
|
|
100
|
+
'@type': 'SoftwareApplication',
|
|
101
|
+
name: title,
|
|
102
|
+
applicationCategory: 'UtilitiesApplication',
|
|
103
|
+
operatingSystem: 'Web',
|
|
104
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'PLN' },
|
|
105
|
+
description,
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
'@context': 'https://schema.org',
|
|
109
|
+
'@type': 'FAQPage',
|
|
110
|
+
mainEntity: faq.map((item) => ({
|
|
111
|
+
'@type': 'Question',
|
|
112
|
+
name: item.question,
|
|
113
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
114
|
+
})),
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
'@context': 'https://schema.org',
|
|
118
|
+
'@type': 'HowTo',
|
|
119
|
+
name: title,
|
|
120
|
+
step: howTo.map((step) => ({
|
|
121
|
+
'@type': 'HowToStep',
|
|
122
|
+
name: step.name,
|
|
123
|
+
text: step.text,
|
|
124
|
+
})),
|
|
125
|
+
},
|
|
126
|
+
];
|
|
127
|
+
|
|
128
|
+
export const content: MotorcycleSkidMarkSpeedEstimatorLocaleContent = {
|
|
129
|
+
slug,
|
|
130
|
+
title,
|
|
131
|
+
description,
|
|
132
|
+
ui: {
|
|
133
|
+
unitMetric: 'Metryczne',
|
|
134
|
+
unitImperial: 'Calowe',
|
|
135
|
+
disclaimer: 'Tylko do celów edukacyjnych.',
|
|
136
|
+
lengthLabel: 'Długość śladu',
|
|
137
|
+
lengthHint: 'Przeciągnij ślad, aby zmienić długość.',
|
|
138
|
+
gradeLabel: 'Nachylenie',
|
|
139
|
+
gradeHint: 'Jazda pod górę ułatwia hamowanie, spadek zmniejsza tarcie.',
|
|
140
|
+
surfaceLabel: 'Nawierzchnia',
|
|
141
|
+
frictionLabel: 'Współczynnik tarcia',
|
|
142
|
+
frictionHint: 'Wybierz nawierzchnię lub wpisz wartość.',
|
|
143
|
+
brakeLabel: 'Zablokowany hamulec',
|
|
144
|
+
brakeBoth: 'Oba',
|
|
145
|
+
brakeFront: 'Przedni',
|
|
146
|
+
brakeRear: 'Tylny',
|
|
147
|
+
brakeUnknown: 'Nieznany',
|
|
148
|
+
speedLabel: 'Szacowana prędkość ze śladu',
|
|
149
|
+
rangeLabel: 'Zakres prędkości',
|
|
150
|
+
dragHint: 'Przeciągnij na drodze.',
|
|
151
|
+
emptyMessage: 'Ustaw ślad, aby obliczyć prędkość.',
|
|
152
|
+
invalidMessage: 'Zbyt duże nachylenie. Zatrzymanie niemożliwe.',
|
|
153
|
+
readyMessage: 'Prędkość obliczona.',
|
|
154
|
+
educationalBadge: 'Edukacyjny',
|
|
155
|
+
surfaceDryAsphalt: 'Suchy asfalt',
|
|
156
|
+
surfaceWetAsphalt: 'Mokry asfalt',
|
|
157
|
+
surfaceDryConcrete: 'Suchy beton',
|
|
158
|
+
surfaceGravel: 'Żwir',
|
|
159
|
+
surfaceGrass: 'Ziemia',
|
|
160
|
+
surfaceIce: 'Lód',
|
|
161
|
+
surfaceCustom: 'Ręczny',
|
|
162
|
+
sensitivityLabel: 'Zakres błędu',
|
|
163
|
+
lowAssumption: 'Niski',
|
|
164
|
+
highAssumption: 'Wysoki',
|
|
165
|
+
gradeUphill: 'Pod górę',
|
|
166
|
+
gradeDownhill: 'Z góry',
|
|
167
|
+
gradeLevel: 'Płasko',
|
|
168
|
+
measureHint: 'Pomiar na miejscu jest dokładniejszy niż tabela.',
|
|
169
|
+
stencilUnitKmh: 'km/h',
|
|
170
|
+
stencilUnitMph: 'mph',
|
|
171
|
+
lengthUnitM: 'm',
|
|
172
|
+
lengthUnitFt: 'ft',
|
|
173
|
+
percentSuffix: '%',
|
|
174
|
+
dragLowLabel: 'Niskie',
|
|
175
|
+
dragMidLabel: 'Średnie',
|
|
176
|
+
dragHighLabel: 'Wysokie',
|
|
177
|
+
},
|
|
178
|
+
seo,
|
|
179
|
+
faqTitle: 'Często zadawane pytania o ślady hamowania',
|
|
180
|
+
faq,
|
|
181
|
+
bibliographyTitle: 'Źródła',
|
|
182
|
+
bibliography: bibliographyEntries,
|
|
183
|
+
howTo,
|
|
184
|
+
schemas,
|
|
185
|
+
};
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import type { SEOSection } from '@jjlmoya/utils-shared';
|
|
3
|
+
import { bibliographyEntries } from '../bibliography';
|
|
4
|
+
import type { MotorcycleSkidMarkSpeedEstimatorLocaleContent } from '../entry';
|
|
5
|
+
|
|
6
|
+
const slug = 'estimador-velocidade-marca-travagem-moto';
|
|
7
|
+
const title = 'Estimador de velocidade por marca de travagem de moto';
|
|
8
|
+
const description =
|
|
9
|
+
'Estime o intervalo de velocidade de uma moto a partir da marca de travagem, fricção e inclinação da via. Ferramenta de simulacao educacional e fisica.';
|
|
10
|
+
|
|
11
|
+
const faq = [
|
|
12
|
+
{
|
|
13
|
+
question: 'O que representa uma marca de travagem ?',
|
|
14
|
+
answer:
|
|
15
|
+
'Uma marca de pneu bloqueado indica a distancia necessaria para dissipar a energia cinetica apos a paragem da rotacao do pneu. A equacao fisica calcula a velocidade minima no inicio da marca visivel.',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
question: 'Por que o resultado e um intervalo ?',
|
|
19
|
+
answer:
|
|
20
|
+
'O coeficiente de atrito e a distribuicao de travagem entre a roda dianteira e traseira contem incertezas. O estimador fornece valores minimo, medio e maximo para demonstrar a margem de erro.',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
question: 'Pode ser usado em relatorios policiais ou seguros ?',
|
|
24
|
+
answer:
|
|
25
|
+
'Nao. Pericias oficiais exigem testes dinamometricos no local do acidente, analise de ABS e peritos qualificados. Esta ferramenta e exclusivamente um laboratorio de fisica educacional.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Qual a diferenca para um calculador de distancia de travagem ?',
|
|
29
|
+
answer:
|
|
30
|
+
'O calculador de distancia parte da velocidade conhecida para determinar a distancia percorrida. Esta ferramenta faz o calculo inverso a partir da marca de borracha sem incluir o tempo de reacao.',
|
|
31
|
+
},
|
|
32
|
+
];
|
|
33
|
+
|
|
34
|
+
const howTo = [
|
|
35
|
+
{ name: 'Medir a marca', text: 'Registe a extensao da marca visivel de roda bloqueada em metros ou pes de forma precisa.' },
|
|
36
|
+
{ name: 'Selecionar o piso', text: 'Escolha o tipo de pavimento correspondente ao local ou ajuste manualmente o valor de atrito.' },
|
|
37
|
+
{ name: 'Definir inclinacao e travoes', text: 'Insira a inclinacao da via e especifique se a marca provem de ambos os travoes ou apenas de um.' },
|
|
38
|
+
{ name: 'Ler a estimativa', text: 'Analise o valor medio como estimativa principal e considere o intervalo de variacao resultante.' },
|
|
39
|
+
];
|
|
40
|
+
|
|
41
|
+
const seo: SEOSection[] = [
|
|
42
|
+
{ type: 'title', level: 2, text: 'Converter uma marca de pneu num intervalo de velocidade' },
|
|
43
|
+
{
|
|
44
|
+
type: 'paragraph',
|
|
45
|
+
html: 'Uma moto deixa frequentemente uma marca bem visivel do pneu traseiro, um rasto mais tenue do pneu dianteiro ou uma linha intermitente se o sistema ABS estiver ativo. Meça apenas a fracao de roda totalmente bloqueada na via, excluindo o deslize posterior da carenagem no asfalto apos a queda.',
|
|
46
|
+
},
|
|
47
|
+
{ type: 'title', level: 3, text: 'Modelo fisico de calculo e equacao de energia' },
|
|
48
|
+
{
|
|
49
|
+
type: 'paragraph',
|
|
50
|
+
html: 'O modelo baseia-se na conservacao da energia cinetica durante o atrito de deslizamento: a velocidade e proporcional a raiz quadrada do dobro do produto da gravidade, do fator de arrasto e da extensao da marca. A inclinacao da estrada atua como componente vetorial. Uma subida ajuda a travar, enquanto uma descida reduz o atrito efetivo.',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
type: 'list',
|
|
54
|
+
items: [
|
|
55
|
+
'Conversao metrica automatica para garantir a precisao dos calculos fisicos.',
|
|
56
|
+
'Valores padrao de atrito para asfalto seco, molhado, betao, gravilha e gelo.',
|
|
57
|
+
'Consideracao da distribuicao de travagem entre a roda dianteira e traseira.',
|
|
58
|
+
'Margem de incerteza alargada quando a utilizacao do travao e desconhecida no local.',
|
|
59
|
+
],
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
type: 'tip',
|
|
63
|
+
title: 'Medir apenas o pneu bloqueado',
|
|
64
|
+
html: 'Inicie a medicao na primeira marca visivel de borracha depositada na estrada e termine no ponto em que a rotacao e retomada ou onde ocorre o impacto.',
|
|
65
|
+
},
|
|
66
|
+
{ type: 'title', level: 3, text: 'Coeficientes de atrito de referencia por piso' },
|
|
67
|
+
{
|
|
68
|
+
type: 'table',
|
|
69
|
+
headers: ['Superficie', 'Atrito medio', 'Intervalo de aderencia'],
|
|
70
|
+
rows: [
|
|
71
|
+
['Asfalto seco', '0.70', '0.55 a 0.85'],
|
|
72
|
+
['Asfalto molhado', '0.50', '0.35 a 0.65'],
|
|
73
|
+
['Betao seco', '0.75', '0.60 a 0.90'],
|
|
74
|
+
['Gravilha', '0.50', '0.35 a 0.70'],
|
|
75
|
+
['Terra ou relva', '0.40', '0.25 a 0.55'],
|
|
76
|
+
['Gelo', '0.10', '0.05 a 0.18'],
|
|
77
|
+
],
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
type: 'paragraph',
|
|
81
|
+
html: 'Valores de referencia para pneus bloqueados a deslizar na chausse. Um ensaio dinamometrico direto no local do acidente proporciona sempre maior precisao.',
|
|
82
|
+
},
|
|
83
|
+
{ type: 'title', level: 3, text: 'Influencia dos travoes na moto e transferencia de carga' },
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'A maioria das motos possui comandos independentes para o travao dianteiro e traseiro. Uma marca traseira isolada nao significa que o condutor tenha aproveitado toda a aderencia disponivel.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'diagnostic',
|
|
90
|
+
variant: 'warning',
|
|
91
|
+
title: 'Ferramenta educativa e laboratorio',
|
|
92
|
+
badge: 'Didatico',
|
|
93
|
+
html: 'Sistemas ABS, o desgaste do piso do pneu e os impactos alteram a velocidade real. Em descidas muito acentuadas que anulem a travagem, o sistema recusa-se a calcular por impossibilidade fisica.',
|
|
94
|
+
},
|
|
95
|
+
];
|
|
96
|
+
|
|
97
|
+
const schemas: WithContext<SoftwareApplication | FAQPage | HowTo>[] = [
|
|
98
|
+
{
|
|
99
|
+
'@context': 'https://schema.org',
|
|
100
|
+
'@type': 'SoftwareApplication',
|
|
101
|
+
name: title,
|
|
102
|
+
applicationCategory: 'UtilitiesApplication',
|
|
103
|
+
operatingSystem: 'Web',
|
|
104
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
105
|
+
description,
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
'@context': 'https://schema.org',
|
|
109
|
+
'@type': 'FAQPage',
|
|
110
|
+
mainEntity: faq.map((item) => ({
|
|
111
|
+
'@type': 'Question',
|
|
112
|
+
name: item.question,
|
|
113
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
114
|
+
})),
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
'@context': 'https://schema.org',
|
|
118
|
+
'@type': 'HowTo',
|
|
119
|
+
name: title,
|
|
120
|
+
step: howTo.map((step) => ({
|
|
121
|
+
'@type': 'HowToStep',
|
|
122
|
+
name: step.name,
|
|
123
|
+
text: step.text,
|
|
124
|
+
})),
|
|
125
|
+
},
|
|
126
|
+
];
|
|
127
|
+
|
|
128
|
+
export const content: MotorcycleSkidMarkSpeedEstimatorLocaleContent = {
|
|
129
|
+
slug,
|
|
130
|
+
title,
|
|
131
|
+
description,
|
|
132
|
+
ui: {
|
|
133
|
+
unitMetric: 'Metrico',
|
|
134
|
+
unitImperial: 'Imperial',
|
|
135
|
+
disclaimer: 'Uso exclusivamente didatico.',
|
|
136
|
+
lengthLabel: 'Comprimento da marca',
|
|
137
|
+
lengthHint: 'Arraste a marca para ajustar a extensao.',
|
|
138
|
+
gradeLabel: 'Inclinacao',
|
|
139
|
+
gradeHint: 'A subida ajuda a travar, a descida reduz o atrito.',
|
|
140
|
+
surfaceLabel: 'Tipo de piso',
|
|
141
|
+
frictionLabel: 'Coeficiente de atrito',
|
|
142
|
+
frictionHint: 'Escolha um piso ou ajuste manualmente.',
|
|
143
|
+
brakeLabel: 'Travao bloqueado',
|
|
144
|
+
brakeBoth: 'Ambos',
|
|
145
|
+
brakeFront: 'Dianteiro',
|
|
146
|
+
brakeRear: 'Traseiro',
|
|
147
|
+
brakeUnknown: 'Desconhecido',
|
|
148
|
+
speedLabel: 'Velocidade estimada na marca',
|
|
149
|
+
rangeLabel: 'Intervalo estimado',
|
|
150
|
+
dragHint: 'Arraste na estrada para ajustar.',
|
|
151
|
+
emptyMessage: 'Ajuste a marca para calcular a velocidade.',
|
|
152
|
+
invalidMessage: 'Inclinacao excessiva. Travagem impossivel.',
|
|
153
|
+
readyMessage: 'Velocidade calculada.',
|
|
154
|
+
educationalBadge: 'Didatico',
|
|
155
|
+
surfaceDryAsphalt: 'Asfalto seco',
|
|
156
|
+
surfaceWetAsphalt: 'Asfalto molhado',
|
|
157
|
+
surfaceDryConcrete: 'Betao seco',
|
|
158
|
+
surfaceGravel: 'Gravilha',
|
|
159
|
+
surfaceGrass: 'Terra',
|
|
160
|
+
surfaceIce: 'Gelo',
|
|
161
|
+
surfaceCustom: 'Manual',
|
|
162
|
+
sensitivityLabel: 'Margem de erro',
|
|
163
|
+
lowAssumption: 'Baixo',
|
|
164
|
+
highAssumption: 'Alto',
|
|
165
|
+
gradeUphill: 'Subida',
|
|
166
|
+
gradeDownhill: 'Descida',
|
|
167
|
+
gradeLevel: 'Plano',
|
|
168
|
+
measureHint: 'Um teste dinamometrico real e mais preciso.',
|
|
169
|
+
stencilUnitKmh: 'km/h',
|
|
170
|
+
stencilUnitMph: 'mph',
|
|
171
|
+
lengthUnitM: 'm',
|
|
172
|
+
lengthUnitFt: 'ft',
|
|
173
|
+
percentSuffix: '%',
|
|
174
|
+
dragLowLabel: 'Baixo',
|
|
175
|
+
dragMidLabel: 'Medio',
|
|
176
|
+
dragHighLabel: 'Alto',
|
|
177
|
+
},
|
|
178
|
+
seo,
|
|
179
|
+
faqTitle: 'Perguntas frequentes sobre marcas de travagem',
|
|
180
|
+
faq,
|
|
181
|
+
bibliographyTitle: 'Fontes',
|
|
182
|
+
bibliography: bibliographyEntries,
|
|
183
|
+
howTo,
|
|
184
|
+
schemas,
|
|
185
|
+
};
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import type { FAQPage, HowTo, SoftwareApplication, WithContext } from 'schema-dts';
|
|
2
|
+
import type { SEOSection } from '@jjlmoya/utils-shared';
|
|
3
|
+
import { bibliographyEntries } from '../bibliography';
|
|
4
|
+
import type { MotorcycleSkidMarkSpeedEstimatorLocaleContent } from '../entry';
|
|
5
|
+
|
|
6
|
+
const slug = 'kalkulyator-skorosti-po-sledu-tormozheniya-mototsikla';
|
|
7
|
+
const title = 'Калькулятор скорости по следу торможения мотоцикла';
|
|
8
|
+
const description =
|
|
9
|
+
'Оценка скорости мотоцикла по длине тормозного следа, коэффициенту трения и уклону дороги. Учебная физическая модель для анализа ДТП.';
|
|
10
|
+
|
|
11
|
+
const faq = [
|
|
12
|
+
{
|
|
13
|
+
question: 'Что показывает след торможения ?',
|
|
14
|
+
answer:
|
|
15
|
+
'След заблокированного колеса показывает расстояние, необходимое для гашения кинетической энергии за счет трения. Физическое уравнение определяет минимальную начальную скорость в момент начала видимого следа на проезжей части.',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
question: 'Почему результат представлен в виде диапазона ?',
|
|
19
|
+
answer:
|
|
20
|
+
'Коэффициент трения дорожного покрытия и распределение тормозных усилий между передним и задним колесами содержат неопределенности. Калькулятор рассчитывает нижнее, среднее и верхнее значения для учета погрешности.',
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
question: 'Можно ли использовать результат для экспертизы ДТП ?',
|
|
24
|
+
answer:
|
|
25
|
+
'Нет. Официальная автотехническая экспертиза требует профессиональных замеров на месте аварии с помощью динамометра, анализа работы АБС и осмотра эксперта. Этот инструмент является учебной физической лабораторией.',
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
question: 'Чем отличается от калькулятора тормозного пути ?',
|
|
29
|
+
answer:
|
|
30
|
+
'Калькулятор тормозного пути рассчитывает дистанцию исходя из известной скорости. Этот инструмент выполняет обратный расчет по измеренному тормозному следу резины без учета времени реакции водителя.',
|
|
31
|
+
},
|
|
32
|
+
];
|
|
33
|
+
|
|
34
|
+
const howTo = [
|
|
35
|
+
{ name: 'Измерить след', text: 'Замерьте длину видимого юза заблокированного колеса в метрах или футах с точностью до участка юза.' },
|
|
36
|
+
{ name: 'Выбрать покрытие', text: 'Выберите тип дорожного покрытия на месте ДТП или укажите коэффициент трения вручную.' },
|
|
37
|
+
{ name: 'Задать уклон и тормоза', text: 'Укажите уклон дороги и задействованные тормозные механизмы мотоцикла.' },
|
|
38
|
+
{ name: 'Получить результат', text: 'Оцените среднее значение скорости и диапазон возможной погрешности.' },
|
|
39
|
+
];
|
|
40
|
+
|
|
41
|
+
const seo: SEOSection[] = [
|
|
42
|
+
{ type: 'title', level: 2, text: 'Расчет скорости по тормозному следу мотоцикла' },
|
|
43
|
+
{
|
|
44
|
+
type: 'paragraph',
|
|
45
|
+
html: 'Длина тормозного следа заблокированного колеса позволяет определить минимальную начальную скорость в момент начала торможения. Измерять следует только участок с полностью заблокированным колесом, исключая последующее скольжение мотоцикла на боку по асфальту после падения.',
|
|
46
|
+
},
|
|
47
|
+
{ type: 'title', level: 3, text: 'Физическая модель расчета и формула энергии' },
|
|
48
|
+
{
|
|
49
|
+
type: 'paragraph',
|
|
50
|
+
html: 'Модель основана на законе сохранения кинетической энергии при трении скольжения: скорость пропорциональна квадратному корню из удвоенного произведения ускорения свободного падения, коэффициента сцепления и длины следа. Уклон дороги учитывается как векторная составляющая. Подъем помогает торможению, а спуск снижает эффективное сцепление.',
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
type: 'list',
|
|
54
|
+
items: [
|
|
55
|
+
'Автоматическая конвертация единиц измерения длины в метры для точных физических расчетов.',
|
|
56
|
+
'Стандартные коэффициенты трения для сухого и мокрого асфальта, бетона, гравия и льда.',
|
|
57
|
+
'Учет динамического перераспределения массы между передней и задней осями мотоцикла.',
|
|
58
|
+
'Расширенный диапазон неопределенности при неизвестном типе торможения на месте происшествия.',
|
|
59
|
+
],
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
type: 'tip',
|
|
63
|
+
title: 'Измерять только юз колеса',
|
|
64
|
+
html: 'Начинайте замер с первой видимой полосы отложения резины на асфальте и заканчивайте в точке возобновления вращения колеса или места удара. Не включайте след трения пластика.',
|
|
65
|
+
},
|
|
66
|
+
{ type: 'title', level: 3, text: 'Типовые коэффициенты трения дорожных покрытий' },
|
|
67
|
+
{
|
|
68
|
+
type: 'table',
|
|
69
|
+
headers: ['Покрытие', 'Среднее трение', 'Диапазон сцепления'],
|
|
70
|
+
rows: [
|
|
71
|
+
['Сухой асфальт', '0.70', '0.55 - 0.85'],
|
|
72
|
+
['Влажный асфальт', '0.50', '0.35 - 0.65'],
|
|
73
|
+
['Сухой бетон', '0.75', '0.60 - 0.90'],
|
|
74
|
+
['Гравий', '0.50', '0.35 - 0.70'],
|
|
75
|
+
['Грунт или трава', '0.40', '0.25 - 0.55'],
|
|
76
|
+
['Лёд', '0.10', '0.05 - 0.18'],
|
|
77
|
+
],
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
type: 'paragraph',
|
|
81
|
+
html: 'Это справочные значения коэффициентов сцепления заблокированных шин с дорогой. Динамометрический замер непосредственно на месте ДТП всегда обеспечивает более высокую точность.',
|
|
82
|
+
},
|
|
83
|
+
{ type: 'title', level: 3, text: 'Влияние тормозов мотоцикла и перераспределение нагрузки' },
|
|
84
|
+
{
|
|
85
|
+
type: 'paragraph',
|
|
86
|
+
html: 'У мотоциклов раздельный привод переднего и заднего тормозов. Один только след заднего колеса не означает, что водитель использовал весь потенциал сцепления. Инструмент позволяет оценить каждый вариант раздельно.',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
type: 'diagnostic',
|
|
90
|
+
variant: 'warning',
|
|
91
|
+
title: 'Учебная модель и ограничение',
|
|
92
|
+
badge: 'Обучение',
|
|
93
|
+
html: 'Работа системы АБС, износ протектора шин и столкновения меняют реальную скорость. На слишком крутом спуске калькулятор блокирует расчет из-за физической невозможности остановки.',
|
|
94
|
+
},
|
|
95
|
+
];
|
|
96
|
+
|
|
97
|
+
const schemas: WithContext<SoftwareApplication | FAQPage | HowTo>[] = [
|
|
98
|
+
{
|
|
99
|
+
'@context': 'https://schema.org',
|
|
100
|
+
'@type': 'SoftwareApplication',
|
|
101
|
+
name: title,
|
|
102
|
+
applicationCategory: 'UtilitiesApplication',
|
|
103
|
+
operatingSystem: 'Web',
|
|
104
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'RUB' },
|
|
105
|
+
description,
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
'@context': 'https://schema.org',
|
|
109
|
+
'@type': 'FAQPage',
|
|
110
|
+
mainEntity: faq.map((item) => ({
|
|
111
|
+
'@type': 'Question',
|
|
112
|
+
name: item.question,
|
|
113
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
114
|
+
})),
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
'@context': 'https://schema.org',
|
|
118
|
+
'@type': 'HowTo',
|
|
119
|
+
name: title,
|
|
120
|
+
step: howTo.map((step) => ({
|
|
121
|
+
'@type': 'HowToStep',
|
|
122
|
+
name: step.name,
|
|
123
|
+
text: step.text,
|
|
124
|
+
})),
|
|
125
|
+
},
|
|
126
|
+
];
|
|
127
|
+
|
|
128
|
+
export const content: MotorcycleSkidMarkSpeedEstimatorLocaleContent = {
|
|
129
|
+
slug,
|
|
130
|
+
title,
|
|
131
|
+
description,
|
|
132
|
+
ui: {
|
|
133
|
+
unitMetric: 'Метрическая',
|
|
134
|
+
unitImperial: 'Имперская',
|
|
135
|
+
disclaimer: 'Исключительно для учебных целей.',
|
|
136
|
+
lengthLabel: 'Длина следа',
|
|
137
|
+
lengthHint: 'Перетащите след для изменения длины.',
|
|
138
|
+
gradeLabel: 'Уклон',
|
|
139
|
+
gradeHint: 'Подъем помогает торможению, спуск снижает сцепление.',
|
|
140
|
+
surfaceLabel: 'Тип покрытия',
|
|
141
|
+
frictionLabel: 'Коэффициент трения',
|
|
142
|
+
frictionHint: 'Выберите покрытие или укажите значение.',
|
|
143
|
+
brakeLabel: 'Торможение',
|
|
144
|
+
brakeBoth: 'Оба колеса',
|
|
145
|
+
brakeFront: 'Переднее',
|
|
146
|
+
brakeRear: 'Заднее',
|
|
147
|
+
brakeUnknown: 'Неизвестно',
|
|
148
|
+
speedLabel: 'Оценочная скорость по следу',
|
|
149
|
+
rangeLabel: 'Диапазон скоростей',
|
|
150
|
+
dragHint: 'Перетаскивайте по дороге.',
|
|
151
|
+
emptyMessage: 'Задайте длину следа для расчета.',
|
|
152
|
+
invalidMessage: 'Слишком крутой спуск. Остановка невозможна.',
|
|
153
|
+
readyMessage: 'Скорость рассчитана.',
|
|
154
|
+
educationalBadge: 'Обучение',
|
|
155
|
+
surfaceDryAsphalt: 'Сухой асфальт',
|
|
156
|
+
surfaceWetAsphalt: 'Влажный асфальт',
|
|
157
|
+
surfaceDryConcrete: 'Сухой бетон',
|
|
158
|
+
surfaceGravel: 'Гравий',
|
|
159
|
+
surfaceGrass: 'Грунт',
|
|
160
|
+
surfaceIce: 'Лёд',
|
|
161
|
+
surfaceCustom: 'Вручную',
|
|
162
|
+
sensitivityLabel: 'Погрешность',
|
|
163
|
+
lowAssumption: 'Низкая',
|
|
164
|
+
highAssumption: 'Высокая',
|
|
165
|
+
gradeUphill: 'Подъем',
|
|
166
|
+
gradeDownhill: 'Спуск',
|
|
167
|
+
gradeLevel: 'Ровно',
|
|
168
|
+
measureHint: 'Реальные замеры точнее табличных значений.',
|
|
169
|
+
stencilUnitKmh: 'км/ч',
|
|
170
|
+
stencilUnitMph: 'миль/ч',
|
|
171
|
+
lengthUnitM: 'м',
|
|
172
|
+
lengthUnitFt: 'фут',
|
|
173
|
+
percentSuffix: '%',
|
|
174
|
+
dragLowLabel: 'Низкое',
|
|
175
|
+
dragMidLabel: 'Среднее',
|
|
176
|
+
dragHighLabel: 'Высокое',
|
|
177
|
+
},
|
|
178
|
+
seo,
|
|
179
|
+
faqTitle: 'Частые вопросы о следах торможения',
|
|
180
|
+
faq,
|
|
181
|
+
bibliographyTitle: 'Источники',
|
|
182
|
+
bibliography: bibliographyEntries,
|
|
183
|
+
howTo,
|
|
184
|
+
schemas,
|
|
185
|
+
};
|