@jjlmoya/utils-drones 1.23.0 → 1.25.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.
Files changed (37) hide show
  1. package/package.json +1 -1
  2. package/src/category/index.ts +2 -0
  3. package/src/entries.ts +4 -0
  4. package/src/tests/diacritics_density.test.ts +8 -8
  5. package/src/tests/locale_completeness.test.ts +2 -2
  6. package/src/tests/tool_validation.test.ts +2 -2
  7. package/src/tool/drone-battery-c-rating-calculator/i18n/es.ts +49 -49
  8. package/src/tool/fpv-drone-thrust-to-weight-ratio/bibliography.astro +6 -0
  9. package/src/tool/fpv-drone-thrust-to-weight-ratio/bibliography.ts +18 -0
  10. package/src/tool/fpv-drone-thrust-to-weight-ratio/component.astro +203 -0
  11. package/src/tool/fpv-drone-thrust-to-weight-ratio/controller.ts +240 -0
  12. package/src/tool/fpv-drone-thrust-to-weight-ratio/dom-views.ts +148 -0
  13. package/src/tool/fpv-drone-thrust-to-weight-ratio/entry.ts +27 -0
  14. package/src/tool/fpv-drone-thrust-to-weight-ratio/evaluator.ts +30 -0
  15. package/src/tool/fpv-drone-thrust-to-weight-ratio/fpv-drone-thrust-to-weight-ratio.css +404 -0
  16. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/de.ts +208 -0
  17. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/en.ts +208 -0
  18. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/es.ts +208 -0
  19. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/fr.ts +208 -0
  20. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/id.ts +208 -0
  21. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/it.ts +208 -0
  22. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/ja.ts +208 -0
  23. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/ko.ts +208 -0
  24. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/nl.ts +208 -0
  25. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/pl.ts +208 -0
  26. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/pt.ts +208 -0
  27. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/ru.ts +208 -0
  28. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/sv.ts +208 -0
  29. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/tr.ts +208 -0
  30. package/src/tool/fpv-drone-thrust-to-weight-ratio/i18n/zh.ts +208 -0
  31. package/src/tool/fpv-drone-thrust-to-weight-ratio/index.ts +10 -0
  32. package/src/tool/fpv-drone-thrust-to-weight-ratio/logic.test.ts +93 -0
  33. package/src/tool/fpv-drone-thrust-to-weight-ratio/logic.ts +147 -0
  34. package/src/tool/fpv-drone-thrust-to-weight-ratio/seo.astro +16 -0
  35. package/src/tool/fpv-drone-thrust-to-weight-ratio/storage.ts +19 -0
  36. package/src/tool/fpv-drone-thrust-to-weight-ratio/ui.ts +58 -0
  37. package/src/tools.ts +3 -0
@@ -0,0 +1,208 @@
1
+ import type { FpvDroneThrustToWeightRatioLocaleContent } from '../entry';
2
+ import type { WithContext, SoftwareApplication, FAQPage, HowTo } from 'schema-dts';
3
+ import type { SEOSection } from '../../../types';
4
+ import { BIBLIOGRAPHY_ITEMS } from '../bibliography';
5
+
6
+ const slug = 'calculadora-relacao-empuxo-peso-drone-fpv';
7
+ const title = 'Calculadora de Relação Empuxo Peso e Telemetria de Voo para Drones FPV';
8
+ const description = 'Calcule o empuxo estático máximo, curva de acelerador não linear, forças G verticais, ponto de sustentação e tempo 0 a 100 para drones FPV.';
9
+
10
+ const ui = {
11
+ title: 'Calculadora de Relação Empuxo Peso para Drones FPV',
12
+ subtitle: 'Analise curvas de empuxo, resposta do acelerador em tempo real, forças G e categorias de voo',
13
+ presetsHeader: 'Configurações Rápidas',
14
+ customPreset: 'Personalizado',
15
+ whoop1sPreset: '1S TinyWhoop (65mm)',
16
+ freestyle35Preset: '4S Freestyle 3.5 Polegadas',
17
+ freestyle5Preset: '6S Freestyle 5 Polegadas Pro',
18
+ longrange7Preset: '6S Mountain LR 7 Polegadas',
19
+ cinelifter8Preset: '8S Cinelifter Pesado X8',
20
+ specsHeader: 'Especificações do Drone e Propulsão',
21
+ auwGramsLabel: 'Peso Total com Bateria (g)',
22
+ motorCountLabel: 'Configuração de Motores',
23
+ thrustPerMotorLabel: 'Empuxo Estático Máximo por Motor (g)',
24
+ propellerSizeLabel: 'Diâmetro da Hélice (polegadas)',
25
+ propellerPitchLabel: 'Passo da Hélice (polegadas)',
26
+ bladeCountLabel: 'Número de Pás',
27
+ blade2Option: '2 Pás (Bipá - Máxima Eficiência)',
28
+ blade3Option: '3 Pás (Tripá - Padrão Freestyle)',
29
+ blade4Option: '4 Pás (Quadripá - Máxima Aderência)',
30
+ throttleStickHeader: 'Simulador de Acelerador em Tempo Real',
31
+ throttleStickLabel: 'Posição do Acelerador (%)',
32
+ snapIdleLabel: 'Neutro (0%)',
33
+ snapHoverLabel: 'Sustentação',
34
+ snapCruiseLabel: 'Cruzeiro (50%)',
35
+ snapPunchLabel: 'Potência Máxima (100%)',
36
+ telemetryHeader: 'Telemetria de Voo FPV e Diagnóstico',
37
+ twrRatioLabel: 'Relação Empuxo Peso (TWR)',
38
+ hoverThrottleLabel: 'Ponto de Sustentação (Hover)',
39
+ currentThrustLabel: 'Empuxo Atual Gerado',
40
+ instantGForceLabel: 'Força G Vertical Instantânea',
41
+ zeroToHundredLabel: 'Tempo 0 a 100 km/h em Punch',
42
+ recommendedCamAngleLabel: 'Inclinação de Câmera FPV Recomendada',
43
+ windResistanceLabel: 'Velocidade de Penetração ao Vento',
44
+ totalMaxThrustLabel: 'Empuxo Estático Máximo Total',
45
+ maxPitchAngleLabel: 'Ângulo Máximo de Inclinação',
46
+ tuningHeader: 'Recomendações de Ajuste Betaflight e PID',
47
+ tpaRecommendationLabel: 'Atenuação PID do Acelerador (TPA)',
48
+ dynamicIdleLabel: 'Marcha Lenta Dinâmica Recomendada',
49
+ propwashRiskLabel: 'Autoridade no Controle de Propwash',
50
+ tierUnderpoweredTitle: 'Submotorizado ou Alto Risco de Deriva com Vento',
51
+ tierUnderpoweredDesc: 'TWR inferior a 2 para 1 não oferece autoridade suficiente para recuperações rápidas. Indicado apenas para locais fechados.',
52
+ tierCinematicTitle: 'Voo Cinemático Suave',
53
+ tierCinematicDesc: 'TWR entre 2 para 1 e 4 para 1 garante aceleração progressiva e filmagens estáveis.',
54
+ tierFreestyleTitle: 'Freestyle Esportivo e Ágil',
55
+ tierFreestyleDesc: 'TWR entre 4 para 1 e 8 para 1 entrega respostas rápidas e ótima manobrabilidade acrobática.',
56
+ tierAcroProTitle: 'Acrobacia de Alta Performance e Freestyle Bando',
57
+ tierAcroProDesc: 'TWR entre 8 para 1 e 13 para 1 proporciona acelerações verticais explosivas e anulação imediata de propwash.',
58
+ tierRacingExtremeTitle: 'Corridas Extremas de Drones',
59
+ tierRacingExtremeDesc: 'TWR superior a 13 para 1 fornece a potência máxima exigida em pistas profissionais de FPV.',
60
+ hudThrustCurveTitle: 'Curva de Resposta de Empuxo Não Linear',
61
+ hudHoverMarker: 'Ponto de Hover',
62
+ hudCurrentStickMarker: 'Acelerador Atual',
63
+ hudGForceLabel: 'Forças G',
64
+ hudTiltAngleLabel: 'Ângulo de Câmera',
65
+ hudVectorPowerLabel: 'Telemetria de Potência em Tempo Real',
66
+ };
67
+
68
+ const faqItems = [
69
+ {
70
+ question: 'Qual é a relação empuxo peso ideal para um drone FPV freestyle?',
71
+ answer: 'Para drones freestyle, um TWR entre 8 para 1 e 12 para 1 oferece a força necessária para frear mergulhos verticais e contornar curvas fechadas com precisão.',
72
+ },
73
+ {
74
+ question: 'Como a curva não linear do acelerador afeta o voo pairado?',
75
+ answer: 'Motores brushless geram força proporcional ao quadrado da rotação. O ponto de sustentação costuma ficar entre 20 e 35 por cento do curso do acelerador.',
76
+ },
77
+ {
78
+ question: 'Por que o ângulo da câmera FPV depende do empuxo do drone?',
79
+ answer: 'Drones mais potentes viajam em velocidades de cruzeiro mais altas com inclinação frontal acentuada. Os pilotos inclinam a câmera entre 35 e 50 graus para nivelar a visão.',
80
+ },
81
+ {
82
+ question: 'Como o número de pás da hélice altera o comportamento do voo?',
83
+ answer: 'Hélices bipás aumentam a autonomia e a velocidade final. As tripás equilibram aderência e resposta para freestyle, e as quadripás entregam controle imediato em curvas.',
84
+ },
85
+ ];
86
+
87
+ const howToSteps = [
88
+ {
89
+ name: 'Inserir o peso do drone ou selecionar um perfil',
90
+ text: 'Informe o peso total pronto para voo incluindo bateria e câmera em gramas.',
91
+ },
92
+ {
93
+ name: 'Configurar motores e hélices',
94
+ text: 'Selecione a quantidade de motores, pás e o empuxo estático fornecido pelo fabricante.',
95
+ },
96
+ {
97
+ name: 'Ajustar o acelerador em tempo real',
98
+ text: 'Arraste o acelerador para verificar a força gerada, as forças G e a posição na curva de empuxo.',
99
+ },
100
+ ];
101
+
102
+ const seoSections: SEOSection[] = [
103
+ {
104
+ type: 'title',
105
+ text: 'Aerodinâmica da Relação Empuxo Peso em Drones FPV',
106
+ level: 2,
107
+ },
108
+ {
109
+ type: 'paragraph',
110
+ html: 'A relação empuxo peso (TWR) é o principal indicador de aceleração e agilidade em multirotores. No voo acrobático FPV, dispor de folga de potência assegura manobras limpas e recuperações estáveis.',
111
+ },
112
+ {
113
+ type: 'title',
114
+ text: 'Classificação de Drones FPV e Métricas de Desempenho',
115
+ level: 2,
116
+ },
117
+ {
118
+ type: 'table',
119
+ headers: ['Plataforma', 'Peso AUW Típico', 'TWR Alvo', 'Acelerador em Sustentação', 'Tempo 0 a 100', 'Inclinação Câmera'],
120
+ rows: [
121
+ ['1S TinyWhoop (65mm)', '32g', '4.5 para 1', '35 por cento', '1.20 s', '15 deg a 25 deg'],
122
+ ['4S Freestyle 3.5"', '250g', '12.0 para 1', '24 por cento', '0.28 s', '35 deg a 45 deg'],
123
+ ['6S Freestyle 5" Pro', '680g', '11.5 para 1', '25 por cento', '0.30 s', '35 deg a 50 deg'],
124
+ ['6S Mountain LR 7"', '1150g', '8.3 para 1', '30 por cento', '0.45 s', '20 deg a 30 deg'],
125
+ ['8S Cinelifter X8', '4200g', '6.1 para 1', '38 por cento', '0.70 s', '15 deg a 25 deg'],
126
+ ],
127
+ },
128
+ {
129
+ type: 'title',
130
+ text: 'Curva de Resposta Não Linear e Dinâmica dos Motores',
131
+ level: 2,
132
+ },
133
+ {
134
+ type: 'paragraph',
135
+ html: 'Os motores elétricos entregam potência com comportamento exponencial. Os últimos 20 por cento do curso de aceleração concentram mais de 40 por cento do empuxo total.',
136
+ },
137
+ {
138
+ type: 'list',
139
+ items: [
140
+ 'Faixa de sustentação (20 a 35 por cento): Máxima precisão para voo rente ao chão.',
141
+ 'Faixa de cruzeiro (35 a 65 por cento): Voo estável com consumo moderado de bateria.',
142
+ 'Faixa de aceleração máxima (70 a 100 por cento): Máximo empuxo vertical com forças G elevadas.',
143
+ ],
144
+ },
145
+ {
146
+ type: 'title',
147
+ text: 'Escolha de Hélices e Parametrização Betaflight',
148
+ level: 2,
149
+ },
150
+ {
151
+ type: 'paragraph',
152
+ html: 'Para drones com TWR superior a 10 para 1, recomenda-se configurar a atenuação Throttle PID Attenuation (TPA) no Betaflight para evitar vibrações indesejadas em linha reta.',
153
+ },
154
+ {
155
+ type: 'tip',
156
+ title: 'Dica de Ajuste Betaflight TPA',
157
+ html: 'Ative o TPA a partir de 1250 ou 1350 com ganho de 0.65 para eliminar oscilações de alta velocidade.',
158
+ },
159
+ ];
160
+
161
+ const schemas: FpvDroneThrustToWeightRatioLocaleContent['schemas'] = [
162
+ {
163
+ '@context': 'https://schema.org',
164
+ '@type': 'FAQPage',
165
+ mainEntity: faqItems.map((item) => ({
166
+ '@type': 'Question',
167
+ name: item.question,
168
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
169
+ })),
170
+ } as WithContext<FAQPage>,
171
+ {
172
+ '@context': 'https://schema.org',
173
+ '@type': 'HowTo',
174
+ name: title,
175
+ description,
176
+ step: howToSteps.map((s, index) => ({
177
+ '@type': 'HowToStep',
178
+ position: index + 1,
179
+ name: s.name,
180
+ text: s.text,
181
+ })),
182
+ } as WithContext<HowTo>,
183
+ {
184
+ '@context': 'https://schema.org',
185
+ '@type': 'SoftwareApplication',
186
+ name: title,
187
+ description,
188
+ applicationCategory: 'UtilityApplication',
189
+ operatingSystem: 'All',
190
+ offers: {
191
+ '@type': 'Offer',
192
+ price: '0',
193
+ priceCurrency: 'EUR',
194
+ },
195
+ } as WithContext<SoftwareApplication>,
196
+ ];
197
+
198
+ export const content: FpvDroneThrustToWeightRatioLocaleContent = {
199
+ slug,
200
+ title,
201
+ description,
202
+ ui,
203
+ seo: seoSections,
204
+ faq: faqItems,
205
+ howTo: howToSteps,
206
+ bibliography: BIBLIOGRAPHY_ITEMS,
207
+ schemas,
208
+ };
@@ -0,0 +1,208 @@
1
+ import type { FpvDroneThrustToWeightRatioLocaleContent } from '../entry';
2
+ import type { WithContext, SoftwareApplication, FAQPage, HowTo } from 'schema-dts';
3
+ import type { SEOSection } from '../../../types';
4
+ import { BIBLIOGRAPHY_ITEMS } from '../bibliography';
5
+
6
+ const slug = 'kalkulyator-tyagovooruzhennosti-fpv-drona';
7
+ const title = 'Калькулятор Тяговооруженности и Полетной Телеметрии FPV Дрона';
8
+ const description = 'Расчет максимальной статической тяги, нелинейной кривой газа, вертикальных перегрузок G, точки висения и разгона 0-100 для FPV квадрокоптеров.';
9
+
10
+ const ui = {
11
+ title: 'Калькулятор Тяговооруженности FPV Дрона',
12
+ subtitle: 'Анализ кривых тяги, отклика стика газа в реальном времени, перегрузок и классов маневренности',
13
+ presetsHeader: 'Быстрые Предустановки',
14
+ customPreset: 'Пользовательский',
15
+ whoop1sPreset: '1S TinyWhoop (65мм)',
16
+ freestyle35Preset: '4S Freestyle 3.5 Дюйма',
17
+ freestyle5Preset: '6S Freestyle 5 Дюймов Pro',
18
+ longrange7Preset: '6S Mountain LR 7 Дюймов',
19
+ cinelifter8Preset: '8S Тяжелый Cinelifter X8',
20
+ specsHeader: 'Характеристики Дрона и Силовой Установки',
21
+ auwGramsLabel: 'Полный Взлетный Вес с АКБ (г)',
22
+ motorCountLabel: 'Конфигурация Моторов',
23
+ thrustPerMotorLabel: 'Максимальная Тяга на Мотор (г)',
24
+ propellerSizeLabel: 'Диаметр Пропеллера (дюймы)',
25
+ propellerPitchLabel: 'Шаг Пропеллера (дюймы)',
26
+ bladeCountLabel: 'Количество Лопастей',
27
+ blade2Option: '2 Лопасти (Двухлопастные - Макс. Эффективность)',
28
+ blade3Option: '3 Лопасти (Трехлопастные - Стандарт Фристайла)',
29
+ blade4Option: '4 Лопасти (Четырехлопастные - Макс. Зацеп)',
30
+ throttleStickHeader: 'Симулятор Стика Газа в Реальном Времени',
31
+ throttleStickLabel: 'Положение Стика Газа (%)',
32
+ snapIdleLabel: 'Холостой Ход (0%)',
33
+ snapHoverLabel: 'Точка Висения',
34
+ snapCruiseLabel: 'Круиз (50%)',
35
+ snapPunchLabel: 'Полный Газ (100%)',
36
+ telemetryHeader: 'Телеметрия Полета FPV и Диагностика',
37
+ twrRatioLabel: 'Тяговооруженность (TWR)',
38
+ hoverThrottleLabel: 'Положение Газа в Висении',
39
+ currentThrustLabel: 'Текущая Развиваемая Тяга',
40
+ instantGForceLabel: 'Мгновенная Вертикальная Перегрузка G',
41
+ zeroToHundredLabel: 'Время Разгона 0-100 км/ч',
42
+ recommendedCamAngleLabel: 'Рекомендуемый Угол Камеры FPV',
43
+ windResistanceLabel: 'Преодолеваемая Скорость Ветра',
44
+ totalMaxThrustLabel: 'Суммарная Максимальная Тяга',
45
+ maxPitchAngleLabel: 'Максимальный Угол Наклона',
46
+ tuningHeader: 'Рекомендации по Настройке Betaflight и PID',
47
+ tpaRecommendationLabel: 'Аттенюация PID Газа (TPA)',
48
+ dynamicIdleLabel: 'Рекомендуемый Dynamic Idle',
49
+ propwashRiskLabel: 'Контроль Турбулентности Propwash',
50
+ tierUnderpoweredTitle: 'Недостаточная Тяга или Риск Сноса Ветром',
51
+ tierUnderpoweredDesc: 'TWR ниже 2 к 1 не дает достаточного запаса для остановки быстрого падения. Подходит только для спокойных помещений.',
52
+ tierCinematicTitle: 'Плавный Кинематографичный Полет',
53
+ tierCinematicDesc: 'TWR от 2 к 1 до 4 к 1 обеспечивает мягкое управление газом и стабильную видеосъемку.',
54
+ tierFreestyleTitle: 'Спортивный и Маневренный Фристайл',
55
+ tierFreestyleDesc: 'TWR от 4 к 1 до 8 к 1 дает четкий отклик на стик, чистое выполнение split-S и отличную акробатику.',
56
+ tierAcroProTitle: 'Экстремальный Акро и Бандо Фристайл',
57
+ tierAcroProDesc: 'TWR от 8 к 1 до 13 к 1 обеспечивает взрывное вертикальное ускорение и мгновенное гашение propwash.',
58
+ tierRacingExtremeTitle: 'Профессиональные Дрон Рейсинг Гонки',
59
+ tierRacingExtremeDesc: 'TWR выше 13 к 1 дает невероятную мощность для профессиональных гоночных FPV трасс.',
60
+ hudThrustCurveTitle: 'Нелинейная Кривая Отклика Тяги',
61
+ hudHoverMarker: 'Точка Висения',
62
+ hudCurrentStickMarker: 'Текущий Стик',
63
+ hudGForceLabel: 'Перегрузки G',
64
+ hudTiltAngleLabel: 'Угол Камеры',
65
+ hudVectorPowerLabel: 'Телеметрия Тяги в Реальном Времени',
66
+ };
67
+
68
+ const faqItems = [
69
+ {
70
+ question: 'Какая тяговооруженность считается идеальной для фристайл FPV дрона?',
71
+ answer: 'Для фристайла оптимальным считается показатель TWR от 8 к 1 до 12 к 1, что дает взрывную динамику для выхода из пикирования.',
72
+ },
73
+ {
74
+ question: 'Как нелинейная кривая газа влияет на висение дрона?',
75
+ answer: 'Бесколлекторные моторы развивают тягу пропорционально квадрату оборотов. Точка висения на мощных сборках обычно находится на уровне 20-35 процентов хода стика.',
76
+ },
77
+ {
78
+ question: 'Почему угол наклона FPV камеры зависит от тяговооруженности?',
79
+ answer: 'Дроны с высоким TWR летают на больших скоростях с сильным наклоном вперед. Чтобы горизонт оставался в центре шлема, пилоты наклоняют камеру на 35-50 градусов.',
80
+ },
81
+ {
82
+ question: 'Как количество лопастей пропеллера меняет поведение дрона?',
83
+ answer: 'Двухлопастные винты дают максимальную автономность и скорость. Трехлопастные являются стандартом фристайла, а четырехлопастные обеспечивают максимальный зацеп в поворотах.',
84
+ },
85
+ ];
86
+
87
+ const howToSteps = [
88
+ {
89
+ name: 'Введите вес дрона или выберите пресет',
90
+ text: 'Укажите полный полетный вес дрона в граммах с учетом аккумулятора и экшн-камеры.',
91
+ },
92
+ {
93
+ name: 'Настройте моторы и пропеллеры',
94
+ text: 'Выберите количество моторов, число лопастей и максимальную статическую тягу по тестам производителя.',
95
+ },
96
+ {
97
+ name: 'Оцените динамику на виртуальном стике газа',
98
+ text: 'Перемещайте стик газа, наблюдая за тягой, перегрузками G и положением на графике отклика.',
99
+ },
100
+ ];
101
+
102
+ const seoSections: SEOSection[] = [
103
+ {
104
+ type: 'title',
105
+ text: 'Аэродинамика Тяговооруженности в Полетах FPV Дронов',
106
+ level: 2,
107
+ },
108
+ {
109
+ type: 'paragraph',
110
+ html: 'Тяговооруженность (TWR) является ключевым параметром динамики и управляемости мультироторов. В FPV фристайле достаточный запас мощности позволяет пилотам безопасно выходить из свободного падения и маневрировать среди препятствий.',
111
+ },
112
+ {
113
+ type: 'title',
114
+ text: 'Классификация FPV Дронов и Целевые Показатели',
115
+ level: 2,
116
+ },
117
+ {
118
+ type: 'table',
119
+ headers: ['Платформа', 'Типичный Вес AUW', 'Целевой TWR', 'Газ Висения', 'Разгон 0-100 км/ч', 'Угол Камеры'],
120
+ rows: [
121
+ ['1S TinyWhoop (65мм)', '32г', '4.5 к 1', '35 процентов', '1.20 с', '15-25 градусов'],
122
+ ['4S Freestyle 3.5"', '250г', '12.0 к 1', '24 процента', '0.28 с', '35-45 градусов'],
123
+ ['6S Freestyle 5" Pro', '680г', '11.5 к 1', '25 процентов', '0.30 с', '35-50 градусов'],
124
+ ['6S Mountain LR 7"', '1150г', '8.3 к 1', '30 процентов', '0.45 с', '20-30 градусов'],
125
+ ['8S Cinelifter X8', '4200г', '6.1 к 1', '38 процентов', '0.70 с', '15-25 градусов'],
126
+ ],
127
+ },
128
+ {
129
+ type: 'title',
130
+ text: 'Нелинейный Отклик Газа и Характеристика Моторов',
131
+ level: 2,
132
+ },
133
+ {
134
+ type: 'paragraph',
135
+ html: 'Электродвигатели развивают тягу по экспоненциальному закону. Последние 20 процентов хода стика обеспечивают более 40 процентов суммарной тяги.',
136
+ },
137
+ {
138
+ type: 'list',
139
+ items: [
140
+ 'Зона висения (20-35 процентов): Высокая точность для удержания высоты.',
141
+ 'Круизная зона (35-65 процентов): Стабильный горизонтальный полет с умеренным расходом батареи.',
142
+ 'Зона полного газа (70-100 процентов): Максимальное вертикальное ускорение с высокими перегрузками.',
143
+ ],
144
+ },
145
+ {
146
+ type: 'title',
147
+ text: 'Выбор Пропеллеров и Настройка Прошивки Betaflight',
148
+ level: 2,
149
+ },
150
+ {
151
+ type: 'paragraph',
152
+ html: 'Для сборок с TWR выше 10 к 1 рекомендуется включить Throttle PID Attenuation (TPA) в Betaflight, чтобы предотвратить высокочастотные колебания на полном газе.',
153
+ },
154
+ {
155
+ type: 'tip',
156
+ title: 'Совет по Настройке Betaflight TPA',
157
+ html: 'Установите порог TPA на 1250 или 1350 со значением 0.65 для устранения вибраций на максимальной скорости.',
158
+ },
159
+ ];
160
+
161
+ const schemas: FpvDroneThrustToWeightRatioLocaleContent['schemas'] = [
162
+ {
163
+ '@context': 'https://schema.org',
164
+ '@type': 'FAQPage',
165
+ mainEntity: faqItems.map((item) => ({
166
+ '@type': 'Question',
167
+ name: item.question,
168
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
169
+ })),
170
+ } as WithContext<FAQPage>,
171
+ {
172
+ '@context': 'https://schema.org',
173
+ '@type': 'HowTo',
174
+ name: title,
175
+ description,
176
+ step: howToSteps.map((s, index) => ({
177
+ '@type': 'HowToStep',
178
+ position: index + 1,
179
+ name: s.name,
180
+ text: s.text,
181
+ })),
182
+ } as WithContext<HowTo>,
183
+ {
184
+ '@context': 'https://schema.org',
185
+ '@type': 'SoftwareApplication',
186
+ name: title,
187
+ description,
188
+ applicationCategory: 'UtilityApplication',
189
+ operatingSystem: 'All',
190
+ offers: {
191
+ '@type': 'Offer',
192
+ price: '0',
193
+ priceCurrency: 'USD',
194
+ },
195
+ } as WithContext<SoftwareApplication>,
196
+ ];
197
+
198
+ export const content: FpvDroneThrustToWeightRatioLocaleContent = {
199
+ slug,
200
+ title,
201
+ description,
202
+ ui,
203
+ seo: seoSections,
204
+ faq: faqItems,
205
+ howTo: howToSteps,
206
+ bibliography: BIBLIOGRAPHY_ITEMS,
207
+ schemas,
208
+ };
@@ -0,0 +1,208 @@
1
+ import type { FpvDroneThrustToWeightRatioLocaleContent } from '../entry';
2
+ import type { WithContext, SoftwareApplication, FAQPage, HowTo } from 'schema-dts';
3
+ import type { SEOSection } from '../../../types';
4
+ import { BIBLIOGRAPHY_ITEMS } from '../bibliography';
5
+
6
+ const slug = 'fpv-dronare-dragkraft-vikt-forhallande-kalkylator';
7
+ const title = 'FPV Drönare Dragkraft Vikt Förhållande och Flygtelemetri Kalkylator';
8
+ const description = 'Beräkna maximal statisk dragkraft, icke-linjär gaskurva, vertikala G-krafter, hovringspunkt och acceleration 0 till 100 för FPV drönare.';
9
+
10
+ const ui = {
11
+ title: 'FPV Drönare Dragkraft Vikt Förhållande Kalkylator',
12
+ subtitle: 'Analysera dragkraftskurvor, gasrespons i realtid, vertikala G krafter och manövrerbarhet',
13
+ presetsHeader: 'Snabbprofiler',
14
+ customPreset: 'Anpassad',
15
+ whoop1sPreset: '1S TinyWhoop (65mm)',
16
+ freestyle35Preset: '4S Freestyle 3.5 Tum',
17
+ freestyle5Preset: '6S Freestyle 5 Tum Pro',
18
+ longrange7Preset: '6S Mountain LR 7 Tum',
19
+ cinelifter8Preset: '8S Tung Cinelifter X8',
20
+ specsHeader: 'Drönar och Drivlinjespecifikationer',
21
+ auwGramsLabel: 'Total startvikt med batteri (g)',
22
+ motorCountLabel: 'Motorkonfiguration',
23
+ thrustPerMotorLabel: 'Max statisk dragkraft per motor (g)',
24
+ propellerSizeLabel: 'Propellerdiameter (tum)',
25
+ propellerPitchLabel: 'Propellerstigning (tum)',
26
+ bladeCountLabel: 'Antal Blad',
27
+ blade2Option: '2 Blad (Tvåblad - Maximal Effektivitet)',
28
+ blade3Option: '3 Blad (Treblad - Freestyle Standard)',
29
+ blade4Option: '4 Blad (Fyrblad - Maximalt Grepp)',
30
+ throttleStickHeader: 'Live Gasspakssimulator',
31
+ throttleStickLabel: 'Gasreglageposition (%)',
32
+ snapIdleLabel: 'Tomgång (0%)',
33
+ snapHoverLabel: 'Hovringspunkt',
34
+ snapCruiseLabel: 'Marschfart (50%)',
35
+ snapPunchLabel: 'Fullgas (100%)',
36
+ telemetryHeader: 'FPV Flygtelemetri och Prestandadiagnos',
37
+ twrRatioLabel: 'Dragkraft till Vikt Förhållande (TWR)',
38
+ hoverThrottleLabel: 'Gaspådrag vid Hovring',
39
+ currentThrustLabel: 'Aktuell Utvecklad Dragkraft',
40
+ instantGForceLabel: 'Momentan Vertikal G-Kraft',
41
+ zeroToHundredLabel: 'Tid 0 till 100 km/h i Punch',
42
+ recommendedCamAngleLabel: 'Rekommenderad FPV Kameravinkel',
43
+ windResistanceLabel: 'Vindmotståndsförmåga',
44
+ totalMaxThrustLabel: 'Total Maximal Statisk Dragkraft',
45
+ maxPitchAngleLabel: 'Maximal Lutningsvinkel',
46
+ tuningHeader: 'Betaflight PID och Firmware Rekommendationer',
47
+ tpaRecommendationLabel: 'Gas PID Dämpning (TPA)',
48
+ dynamicIdleLabel: 'Rekommenderad Dynamic Idle',
49
+ propwashRiskLabel: 'Kontrollauktoritet vid Turbulens',
50
+ tierUnderpoweredTitle: 'Undermotoriserad eller Risk för Vinddrift',
51
+ tierUnderpoweredDesc: 'TWR under 2 till 1 ger otillräcklig kraft för att häva snabba dykningar. Endast lämplig för lugn inomhusflygning.',
52
+ tierCinematicTitle: 'Mjuk Kinematisk Flygning',
53
+ tierCinematicDesc: 'TWR mellan 2 till 1 och 4 till 1 ger följsam gaskontroll och vibrationsfria videoinspelningar.',
54
+ tierFreestyleTitle: 'Sportig och Snabb Freestyle',
55
+ tierFreestyleDesc: 'TWR mellan 4 till 1 och 8 till 1 ger snabb respons och rena akrobatiska manövrer.',
56
+ tierAcroProTitle: 'Högpresterande Akrobatik och Bando Freestyle',
57
+ tierAcroProDesc: 'TWR mellan 8 till 1 och 13 till 1 ger explosiv vertikal acceleration och omedelbar dämpning av propwash.',
58
+ tierRacingExtremeTitle: 'Extrem Drönarracing',
59
+ tierRacingExtremeDesc: 'TWR över 13 till 1 levererar den råa kraft som krävs på professionella FPV racingbanor.',
60
+ hudThrustCurveTitle: 'Icke-linjär Dragkraftskurva',
61
+ hudHoverMarker: 'Hovringspunkt',
62
+ hudCurrentStickMarker: 'Aktuell Gas',
63
+ hudGForceLabel: 'G-Krafter',
64
+ hudTiltAngleLabel: 'Kameravinkel',
65
+ hudVectorPowerLabel: 'Drivlinjetelemetri i Realtid',
66
+ };
67
+
68
+ const faqItems = [
69
+ {
70
+ question: 'Vilket förhållande mellan dragkraft och vikt är bäst för FPV freestyle?',
71
+ answer: 'För freestyle rekommenderas ett TWR mellan 8 till 1 och 12 till 1 för att ge den acceleration som krävs för att häva dykningar och göra snabba svängar.',
72
+ },
73
+ {
74
+ question: 'Hur påverkar den icke-linjära gaskurvan hovring?',
75
+ answer: 'Borstlösa motorer genererar dragkraft proportionellt mot kvadraten på varvtalet. Hovringspunkten ligger vanligtvis mellan 20 och 35 procent på kraftfulla drönare.',
76
+ },
77
+ {
78
+ question: 'Varför beror FPV kameravinkeln på dragkraftsförhållandet?',
79
+ answer: 'Drönare med högre TWR flyger snabbare med en brantare framåtlutning. För att hålla horisonten centrerad i glasögonen vinklar piloter kameran 35 till 50 grader uppåt.',
80
+ },
81
+ {
82
+ question: 'Hur förändrar antalet propellerblad flygkänslan?',
83
+ answer: 'Tvåbladiga propellrar ger bäst flygtid och toppfart. Trebladiga är standard för freestyle, medan fyrbladiga ger maximalt grepp och bromsverkan i skarpa svängar.',
84
+ },
85
+ ];
86
+
87
+ const howToSteps = [
88
+ {
89
+ name: 'Ange drönarens vikt eller välj förinställning',
90
+ text: 'Fyll i total startvikt i gram inklusive batteri och HD kamera.',
91
+ },
92
+ {
93
+ name: 'Konfigurera motorer och propellrar',
94
+ text: 'Välj antal motorer, blad och tillverkarens maximala bänkdragkraft vid fullgas.',
95
+ },
96
+ {
97
+ name: 'Justera gasreglaget och läs av telemetri',
98
+ text: 'Dra i gasreglaget för att se utvecklad dragkraft, G-krafter och position på effektkurvan.',
99
+ },
100
+ ];
101
+
102
+ const seoSections: SEOSection[] = [
103
+ {
104
+ type: 'title',
105
+ text: 'Aerodynamik kring Dragkraft till Vikt Förhållande för FPV Drönare',
106
+ level: 2,
107
+ },
108
+ {
109
+ type: 'paragraph',
110
+ html: 'Förhållandet mellan dragkraft och vikt (TWR) avgör acceleration och manöverförmåga hos multirotorer. Inom FPV freestyle ger tillräcklig effektreserv möjlighet att omedelbart avbryta dykningar och navigera precisionstighta passager.',
111
+ },
112
+ {
113
+ type: 'title',
114
+ text: 'Klassificering av FPV Drönare och Prestandadata',
115
+ level: 2,
116
+ },
117
+ {
118
+ type: 'table',
119
+ headers: ['Plattform', 'Typisk AUW Vikt', 'Mål TWR', 'Gas vid Hovring', '0 till 100 Acceleration', 'Kameravinkel'],
120
+ rows: [
121
+ ['1S TinyWhoop (65mm)', '32g', '4.5 till 1', '35 procent', '1.20 s', '15 till 25 grader'],
122
+ ['4S Freestyle 3.5"', '250g', '12.0 till 1', '24 procent', '0.28 s', '35 till 45 grader'],
123
+ ['6S Freestyle 5" Pro', '680g', '11.5 till 1', '25 procent', '0.30 s', '35 till 50 grader'],
124
+ ['6S Mountain LR 7"', '1150g', '8.3 till 1', '30 procent', '0.45 s', '20 till 30 grader'],
125
+ ['8S Cinelifter X8', '4200g', '6.1 till 1', '38 procent', '0.70 s', '15 till 25 grader'],
126
+ ],
127
+ },
128
+ {
129
+ type: 'title',
130
+ text: 'Icke-linjär Gasrespons och Motorkarakteristik',
131
+ level: 2,
132
+ },
133
+ {
134
+ type: 'paragraph',
135
+ html: 'Elmotorer utvecklar dragkraft exponentiellt. De sista 20 procenten av gasspaksrörelsen genererar mer än 40 procent av den totala tillgängliga kraften.',
136
+ },
137
+ {
138
+ type: 'list',
139
+ items: [
140
+ 'Hovringsområde (20 till 35 procent): Fin upplösning för precisionskontroll nära marken.',
141
+ 'Marschfartsområde (35 till 65 procent): Stabil framåtflygning med rimlig strömförbrukning.',
142
+ 'Fullgasområde (70 till 100 procent): Maximal vertikal acceleration med höga G-krafter.',
143
+ ],
144
+ },
145
+ {
146
+ type: 'title',
147
+ text: 'Propellerval och Betaflight Inställningar',
148
+ level: 2,
149
+ },
150
+ {
151
+ type: 'paragraph',
152
+ html: 'För drönare med TWR över 10 till 1 rekommenderas att aktivera Throttle PID Attenuation (TPA) i Betaflight för att eliminera vibrationer vid fullgas.',
153
+ },
154
+ {
155
+ type: 'tip',
156
+ title: 'Tips för Betaflight TPA Inställning',
157
+ html: 'Ställ in TPA brytpunkt på 1250 eller 1350 med en dämpning på 0.65 för att säkerställa perfekt stabilitet på snabba raksträckor.',
158
+ },
159
+ ];
160
+
161
+ const schemas: FpvDroneThrustToWeightRatioLocaleContent['schemas'] = [
162
+ {
163
+ '@context': 'https://schema.org',
164
+ '@type': 'FAQPage',
165
+ mainEntity: faqItems.map((item) => ({
166
+ '@type': 'Question',
167
+ name: item.question,
168
+ acceptedAnswer: { '@type': 'Answer', text: item.answer },
169
+ })),
170
+ } as WithContext<FAQPage>,
171
+ {
172
+ '@context': 'https://schema.org',
173
+ '@type': 'HowTo',
174
+ name: title,
175
+ description,
176
+ step: howToSteps.map((s, index) => ({
177
+ '@type': 'HowToStep',
178
+ position: index + 1,
179
+ name: s.name,
180
+ text: s.text,
181
+ })),
182
+ } as WithContext<HowTo>,
183
+ {
184
+ '@context': 'https://schema.org',
185
+ '@type': 'SoftwareApplication',
186
+ name: title,
187
+ description,
188
+ applicationCategory: 'UtilityApplication',
189
+ operatingSystem: 'All',
190
+ offers: {
191
+ '@type': 'Offer',
192
+ price: '0',
193
+ priceCurrency: 'SEK',
194
+ },
195
+ } as WithContext<SoftwareApplication>,
196
+ ];
197
+
198
+ export const content: FpvDroneThrustToWeightRatioLocaleContent = {
199
+ slug,
200
+ title,
201
+ description,
202
+ ui,
203
+ seo: seoSections,
204
+ faq: faqItems,
205
+ howTo: howToSteps,
206
+ bibliography: BIBLIOGRAPHY_ITEMS,
207
+ schemas,
208
+ };