@jjlmoya/utils-nature 1.3.0 → 1.5.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 +2 -1
- package/src/category/i18n/de.ts +110 -0
- package/src/category/i18n/id.ts +110 -0
- package/src/category/i18n/it.ts +110 -0
- package/src/category/i18n/ja.ts +110 -0
- package/src/category/i18n/ko.ts +110 -0
- package/src/category/i18n/nl.ts +110 -0
- package/src/category/i18n/pl.ts +110 -0
- package/src/category/i18n/pt.ts +110 -0
- package/src/category/i18n/ru.ts +110 -0
- package/src/category/i18n/sv.ts +110 -0
- package/src/category/i18n/tr.ts +110 -0
- package/src/category/i18n/zh.ts +110 -0
- package/src/category/index.ts +13 -1
- package/src/tests/i18n_coverage.test.ts +36 -0
- package/src/tests/slug_language_code_format.test.ts +23 -0
- package/src/tests/slug_uniqueness.test.ts +81 -0
- package/src/tests/tool_validation.test.ts +1 -2
- package/src/tool/cricketThermometer/i18n/de.ts +181 -0
- package/src/tool/cricketThermometer/i18n/id.ts +181 -0
- package/src/tool/cricketThermometer/i18n/it.ts +181 -0
- package/src/tool/cricketThermometer/i18n/ja.ts +181 -0
- package/src/tool/cricketThermometer/i18n/ko.ts +181 -0
- package/src/tool/cricketThermometer/i18n/nl.ts +181 -0
- package/src/tool/cricketThermometer/i18n/pl.ts +181 -0
- package/src/tool/cricketThermometer/i18n/pt.ts +181 -0
- package/src/tool/cricketThermometer/i18n/ru.ts +181 -0
- package/src/tool/cricketThermometer/i18n/sv.ts +181 -0
- package/src/tool/cricketThermometer/i18n/tr.ts +181 -0
- package/src/tool/cricketThermometer/i18n/zh.ts +181 -0
- package/src/tool/cricketThermometer/index.ts +15 -7
- package/src/tool/digitalCarbon/i18n/de.ts +235 -0
- package/src/tool/digitalCarbon/i18n/id.ts +235 -0
- package/src/tool/digitalCarbon/i18n/it.ts +235 -0
- package/src/tool/digitalCarbon/i18n/ja.ts +235 -0
- package/src/tool/digitalCarbon/i18n/ko.ts +235 -0
- package/src/tool/digitalCarbon/i18n/nl.ts +235 -0
- package/src/tool/digitalCarbon/i18n/pl.ts +235 -0
- package/src/tool/digitalCarbon/i18n/pt.ts +235 -0
- package/src/tool/digitalCarbon/i18n/ru.ts +235 -0
- package/src/tool/digitalCarbon/i18n/sv.ts +235 -0
- package/src/tool/digitalCarbon/i18n/tr.ts +235 -0
- package/src/tool/digitalCarbon/i18n/zh.ts +235 -0
- package/src/tool/digitalCarbon/index.ts +15 -7
- package/src/tool/rainHarvester/i18n/de.ts +185 -0
- package/src/tool/rainHarvester/i18n/id.ts +185 -0
- package/src/tool/rainHarvester/i18n/it.ts +185 -0
- package/src/tool/rainHarvester/i18n/ja.ts +185 -0
- package/src/tool/rainHarvester/i18n/ko.ts +185 -0
- package/src/tool/rainHarvester/i18n/nl.ts +185 -0
- package/src/tool/rainHarvester/i18n/pl.ts +185 -0
- package/src/tool/rainHarvester/i18n/pt.ts +185 -0
- package/src/tool/rainHarvester/i18n/ru.ts +185 -0
- package/src/tool/rainHarvester/i18n/sv.ts +185 -0
- package/src/tool/rainHarvester/i18n/tr.ts +185 -0
- package/src/tool/rainHarvester/i18n/zh.ts +185 -0
- package/src/tool/rainHarvester/index.ts +15 -7
- package/src/tool/seedCalculator/i18n/de.ts +213 -0
- package/src/tool/seedCalculator/i18n/id.ts +213 -0
- package/src/tool/seedCalculator/i18n/it.ts +213 -0
- package/src/tool/seedCalculator/i18n/ja.ts +213 -0
- package/src/tool/seedCalculator/i18n/ko.ts +213 -0
- package/src/tool/seedCalculator/i18n/nl.ts +213 -0
- package/src/tool/seedCalculator/i18n/pl.ts +213 -0
- package/src/tool/seedCalculator/i18n/pt.ts +213 -0
- package/src/tool/seedCalculator/i18n/ru.ts +213 -0
- package/src/tool/seedCalculator/i18n/sv.ts +213 -0
- package/src/tool/seedCalculator/i18n/tr.ts +213 -0
- package/src/tool/seedCalculator/i18n/zh.ts +213 -0
- package/src/tool/seedCalculator/index.ts +15 -7
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { RainHarvesterLocaleContent } from '../index';
|
|
3
|
+
|
|
4
|
+
const slug = 'rainwater-calculator';
|
|
5
|
+
const title = '雨水收集计算器';
|
|
6
|
+
const description = '计算您可以从屋顶收集多少雨水,并确定储水箱的大小。';
|
|
7
|
+
|
|
8
|
+
const faqData = [
|
|
9
|
+
{
|
|
10
|
+
question: '我实际上能从屋顶收集多少水?',
|
|
11
|
+
answer: '一般规则是,屋顶每平方米面积在每毫米降雨下大约可以收集 1 升水。但由于蒸发和过滤的影响,需要通过“径流系数”进行调整。',
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
question: '什么是径流系数?',
|
|
15
|
+
answer: '这是一个百分比,表示根据屋顶材料的不同会损失多少水。金属或瓦片屋顶效率很高 (0.85-0.95),而碎石或泥土屋顶的效率则低得多 (0.1-0.3)。',
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
question: '如何确定储水箱的大小?',
|
|
19
|
+
answer: '您应该计算一个月内的最大预期降雨量,并将其与您的估计月用水量联系起来。如果水箱太小,遇到暴雨会溢出;如果太大,则会造成不必要的浪费。',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: '收集的雨水可以直接引用吗?',
|
|
23
|
+
answer: '不能直接饮用。雨水会携带灰尘、鸟粪和空气中的颗粒物。由于人类饮用,必须通过沉积过滤器、活性炭过滤,并使用紫外线或氯进行消毒。',
|
|
24
|
+
},
|
|
25
|
+
];
|
|
26
|
+
|
|
27
|
+
const howToData = [
|
|
28
|
+
{
|
|
29
|
+
name: '测量水平投影面积',
|
|
30
|
+
text: '测量屋顶底部的长度和宽度(不是斜面面积,而是投影到地面的面积)。',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
name: '查询当地降雨量',
|
|
34
|
+
text: '在国家气象服务机构查询您所在地区以毫米 (mm) 为单位的年平均或月平均降水量。',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
name: '应用材料效率',
|
|
38
|
+
text: '在我们的计算器中选择您的屋顶材料,以扣除因吸收或热量而损失的水量。',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
name: '计算所需容量',
|
|
42
|
+
text: '根据年产水量结果,选择一个能够至少储存总收集量 20-30% 的水箱,以应对干旱季节。',
|
|
43
|
+
},
|
|
44
|
+
];
|
|
45
|
+
|
|
46
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
47
|
+
'@context': 'https://schema.org',
|
|
48
|
+
'@type': 'FAQPage',
|
|
49
|
+
mainEntity: faqData.map((item) => ({
|
|
50
|
+
'@type': 'Question',
|
|
51
|
+
name: item.question,
|
|
52
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
53
|
+
})),
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
57
|
+
'@context': 'https://schema.org',
|
|
58
|
+
'@type': 'HowTo',
|
|
59
|
+
name: title,
|
|
60
|
+
description,
|
|
61
|
+
step: howToData.map((step, i) => ({
|
|
62
|
+
'@type': 'HowToStep',
|
|
63
|
+
position: i + 1,
|
|
64
|
+
name: step.name,
|
|
65
|
+
text: step.text,
|
|
66
|
+
})),
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
70
|
+
'@context': 'https://schema.org',
|
|
71
|
+
'@type': 'SoftwareApplication',
|
|
72
|
+
name: title,
|
|
73
|
+
description,
|
|
74
|
+
applicationCategory: 'UtilityApplication',
|
|
75
|
+
operatingSystem: 'All',
|
|
76
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
77
|
+
inLanguage: 'zh',
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
export const content: RainHarvesterLocaleContent = {
|
|
81
|
+
slug,
|
|
82
|
+
title,
|
|
83
|
+
description,
|
|
84
|
+
ui: {
|
|
85
|
+
headInputs: '屋顶设置',
|
|
86
|
+
headResults: '收集潜力',
|
|
87
|
+
labelArea: '屋顶面积',
|
|
88
|
+
labelRainfall: '年降雨量',
|
|
89
|
+
labelMaterial: '屋顶材料',
|
|
90
|
+
unitM2: 'm²',
|
|
91
|
+
unitMm: 'mm',
|
|
92
|
+
unitLiters: '升',
|
|
93
|
+
helpRainfall: '不知道?在 Google 上搜索“(您所在的城市)年平均降水量”。',
|
|
94
|
+
efficiencyTitle: '效率系数',
|
|
95
|
+
efficiencyNote: '考虑到过滤器和蒸发,已应用 10% 的损失率。',
|
|
96
|
+
resultTitle: '年收集潜力',
|
|
97
|
+
equivalenciesTitle: '实用等价值',
|
|
98
|
+
labelFlushes: '冲厕次数',
|
|
99
|
+
labelShowers: '淋浴次数 (10分钟计)',
|
|
100
|
+
labelGarden: '浇灌花园',
|
|
101
|
+
gardenArea: '(50m²)',
|
|
102
|
+
materialMetal: '金属 / 琉璃瓦',
|
|
103
|
+
materialClay: '陶瓦 / 粘土',
|
|
104
|
+
materialConcrete: '混凝土 / 沥青',
|
|
105
|
+
materialGravel: '碎石 / 绿色屋顶',
|
|
106
|
+
},
|
|
107
|
+
seo: [
|
|
108
|
+
{
|
|
109
|
+
type: 'title',
|
|
110
|
+
text: '雨水收集:自主性与可持续性',
|
|
111
|
+
level: 2,
|
|
112
|
+
},
|
|
113
|
+
{
|
|
114
|
+
type: 'paragraph',
|
|
115
|
+
html: '大多数房主并未意识到自家屋顶的潜力。一个标准屋顶每年可以捕获数千升免费水。此工具将这种潜力具象化,让您能够精确计算可以“收获”多少水,并确定最理想的储水箱尺寸。',
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
type: 'title',
|
|
119
|
+
text: '计算逻辑',
|
|
120
|
+
level: 3,
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
type: 'paragraph',
|
|
124
|
+
html: '雨水收集的基础公式简单而有效:',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
type: 'paragraph',
|
|
128
|
+
html: '<code style="display:block;padding:1rem;background:var(--bg-alt);border-radius:0.5rem;margin:1rem 0;font-family:monospace;">容量 = 面积 × 降雨量 × 径流系数 × 过滤效率</code>',
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
type: 'list',
|
|
132
|
+
items: [
|
|
133
|
+
'<strong>面积:</strong> 您的屋顶投影面积(长 × 宽)。',
|
|
134
|
+
'<strong>降雨量:</strong> 以毫米为单位的降雨量。',
|
|
135
|
+
'<strong>系数:</strong> 屋顶损失的水量(例如吸收)。',
|
|
136
|
+
'<strong>效率:</strong> 进入水箱前过滤环节的损失(约 10%)。',
|
|
137
|
+
],
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
type: 'title',
|
|
141
|
+
text: '为什么要收集雨水?',
|
|
142
|
+
level: 3,
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
type: 'list',
|
|
146
|
+
items: [
|
|
147
|
+
'<strong>节约开支:</strong> 显著降低您的水费账单。',
|
|
148
|
+
'<strong>园艺:</strong> 植物更喜欢不含氯或石灰的水。',
|
|
149
|
+
'<strong>应对能力:</strong> 在断水情况下保持应急储备。',
|
|
150
|
+
],
|
|
151
|
+
},
|
|
152
|
+
{
|
|
153
|
+
type: 'title',
|
|
154
|
+
text: '水箱选型',
|
|
155
|
+
level: 2,
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
type: 'paragraph',
|
|
159
|
+
html: '最常见的错误是仅根据预算购买水箱。如果太小,会因溢出浪费数千升水;如果太大,则会造成不必要的资金支出。一般规则是拥有能储存当地 <strong>3 个月</strong>平均降雨量的容量,以帮助您平稳度过旱季。',
|
|
160
|
+
},
|
|
161
|
+
],
|
|
162
|
+
faqTitle: '常见问题',
|
|
163
|
+
faq: faqData,
|
|
164
|
+
howTo: howToData,
|
|
165
|
+
bibliographyTitle: '科学参考文献',
|
|
166
|
+
bibliography: [
|
|
167
|
+
{
|
|
168
|
+
name: 'FAO - Rainwater Harvesting and Storage',
|
|
169
|
+
url: 'https://www.fao.org/3/a1348s/a1348s.pdf',
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
name: 'Texas A&M AgriLife Extension - Rainwater Harvesting',
|
|
173
|
+
url: 'https://rainwaterharvesting.tamu.edu/',
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
name: 'Brad Lancaster - Rainwater Harvesting for Drylands',
|
|
177
|
+
url: 'https://www.harvestingrainwater.com/',
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
name: 'European Environment Agency - Water Resources',
|
|
181
|
+
url: 'https://www.eea.europa.eu/en/topics/in-depth/water',
|
|
182
|
+
},
|
|
183
|
+
],
|
|
184
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
185
|
+
};
|
|
@@ -6,10 +6,6 @@ import type { RainHarvesterUI } from './ui';
|
|
|
6
6
|
|
|
7
7
|
export type RainHarvesterLocaleContent = ToolLocaleContent<RainHarvesterUI>;
|
|
8
8
|
|
|
9
|
-
import { content as es } from './i18n/es';
|
|
10
|
-
import { content as en } from './i18n/en';
|
|
11
|
-
import { content as fr } from './i18n/fr';
|
|
12
|
-
|
|
13
9
|
export const rainHarvester: NatureToolEntry<RainHarvesterUI> = {
|
|
14
10
|
id: 'rain-harvester',
|
|
15
11
|
icons: {
|
|
@@ -17,9 +13,21 @@ export const rainHarvester: NatureToolEntry<RainHarvesterUI> = {
|
|
|
17
13
|
fg: 'mdi:water',
|
|
18
14
|
},
|
|
19
15
|
i18n: {
|
|
20
|
-
|
|
21
|
-
en: async () => en,
|
|
22
|
-
|
|
16
|
+
de: async () => (await import('./i18n/de')).content,
|
|
17
|
+
en: async () => (await import('./i18n/en')).content,
|
|
18
|
+
es: async () => (await import('./i18n/es')).content,
|
|
19
|
+
fr: async () => (await import('./i18n/fr')).content,
|
|
20
|
+
id: async () => (await import('./i18n/id')).content,
|
|
21
|
+
it: async () => (await import('./i18n/it')).content,
|
|
22
|
+
ja: async () => (await import('./i18n/ja')).content,
|
|
23
|
+
ko: async () => (await import('./i18n/ko')).content,
|
|
24
|
+
nl: async () => (await import('./i18n/nl')).content,
|
|
25
|
+
pl: async () => (await import('./i18n/pl')).content,
|
|
26
|
+
pt: async () => (await import('./i18n/pt')).content,
|
|
27
|
+
ru: async () => (await import('./i18n/ru')).content,
|
|
28
|
+
sv: async () => (await import('./i18n/sv')).content,
|
|
29
|
+
tr: async () => (await import('./i18n/tr')).content,
|
|
30
|
+
zh: async () => (await import('./i18n/zh')).content,
|
|
23
31
|
},
|
|
24
32
|
};
|
|
25
33
|
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { SeedCalculatorUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'saatgutabstand-saehmaschinen-rechner';
|
|
6
|
+
const title = 'Saatgutabstand und Sähmaschinenrechner';
|
|
7
|
+
const description =
|
|
8
|
+
'Präzisionswerkzeug für Landwirte. Berechnen Sie den idealen Abstand zwischen den Samen basierend auf der Zielpopulation und der Reihenbreite und analysieren Sie die Belastung der Sähmaschine bei verschiedenen Arbeitsgeschwindigkeiten.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Wie wird der Samenabstand berechnet?',
|
|
13
|
+
answer:
|
|
14
|
+
'Ein Hektar (10.000 m²) wird durch die Reihenbreite geteilt, um die gesamten linearen Aussaatmeter zu erhalten. Die Zielpopulation wird dann durch diese Meter geteilt, um zu bestimmen, wie viele Samen pro linearem Meter abgelegt werden müssen.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'Was ist die Zielpopulation pro Hektar?',
|
|
18
|
+
answer:
|
|
19
|
+
'Es ist die ideale Anzahl an Pflanzen pro 10.000 Quadratmeter. Sie hängt von der Kulturart, der Bodenfruchtbarkeit und der Wasserverfügbarkeit ab. Bewässerter Mais erfordert beispielsweise typischerweise 85.000 bis 95.000 Samen pro Hektar.',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'Wie beeinflusst der Keimprozentsatz die Berechnung?',
|
|
23
|
+
answer:
|
|
24
|
+
'Nicht alle ausgesäten Samen gehen auf. Wenn eine Saatgutpartie eine Keimfähigkeit von 95 % aufweist, müssen Sie die Aussaatmenge um 5 % erhöhen, um die gewünschte Endpflanzenpopulation zu erreichen.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Warum ist die Kalibrierung der Sähmaschine so wichtig?',
|
|
28
|
+
answer:
|
|
29
|
+
'Eine zu dichte Aussaatmenge verursacht Konkurrenz zwischen den Pflanzen und führt zu kleineren Körnern. Eine zu geringe Menge verschwendet Platz und Ertragspotenzial. Präzision ist der Schlüssel zur Rentabilität.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Zielpopulation eingeben',
|
|
36
|
+
text: 'Legen Sie fest, wie viele Samen oder Pflanzen Sie pro Hektar wünschen, entsprechend der technischen Empfehlung für Ihre Sorte.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Reihenbreite einstellen',
|
|
40
|
+
text: 'Messen Sie den Abstand zwischen den Sähscheiben oder Scharen Ihrer Sähmaschine (typischerweise 50, 70 oder 75 cm).',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Keimrate anpassen',
|
|
44
|
+
text: 'Geben Sie den erwarteten Auflaufprozentsatz ein, um natürliche Verluste auf dem Feld auszugleichen.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Mechanische Einstellung erhalten',
|
|
48
|
+
text: 'Verwenden Sie den Wert für Samen pro Meter oder cm Abstand zwischen den Samen, um die Zahnräder oder den Monitor Ihrer Maschine einzustellen.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
83
|
+
inLanguage: 'de',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const content: ToolLocaleContent<SeedCalculatorUI> = {
|
|
87
|
+
slug,
|
|
88
|
+
title,
|
|
89
|
+
description,
|
|
90
|
+
faqTitle: 'Häufig gestellte Fragen',
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliographyTitle: 'Wissenschaftliche Referenzen',
|
|
93
|
+
bibliography: [
|
|
94
|
+
{
|
|
95
|
+
name: 'KWS Spanien',
|
|
96
|
+
url: 'https://www.kws.com/es/es/',
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: 'Spanisches Landwirtschaftsministerium (MAPA)',
|
|
100
|
+
url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
name: 'Yara Spanien',
|
|
104
|
+
url: 'https://www.yara.es/nutricion-vegetal/maiz/',
|
|
105
|
+
},
|
|
106
|
+
],
|
|
107
|
+
howTo: howToData,
|
|
108
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
|
+
seo: [
|
|
110
|
+
{
|
|
111
|
+
type: 'title',
|
|
112
|
+
text: 'Technischer Leitfaden zur Präzisionsaussaat',
|
|
113
|
+
level: 2,
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
type: 'paragraph',
|
|
117
|
+
html: 'Um das Getriebe einer Sähmaschine einzustellen, muss man genau wissen, wie viele Samen pro linearem Meter Furche fallen müssen. Maschinenhandbücher geben meist Näherungstabellen an, aber Faktoren wie der <strong>Schlupf des Antriebsrads</strong> oder die Samengröße können die Realität verändern. Dieses Tool liefert Ihnen den perfekten theoretischen Wert: den <strong>Zielabstand zwischen den Samen</strong>.',
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
type: 'tip',
|
|
121
|
+
title: 'Die mathematische Formel',
|
|
122
|
+
html: '<p>Für Agronomen und Neugierige ist hier die Basis der Berechnung:</p><pre>Abstand (cm) = 10.000.000 / (Population × Reihenbreite)</pre><ul><li><strong>10.000.000:</strong> Umrechnungsfaktor von Ha in cm².</li><li><strong>Population:</strong> Samen pro Hektar.</li><li><strong>Reihenbreite:</strong> Abstand zwischen den Reihen in cm.</li></ul>',
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
type: 'title',
|
|
126
|
+
text: 'Warum diesen Rechner verwenden?',
|
|
127
|
+
level: 2,
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
type: 'paragraph',
|
|
131
|
+
html: 'Wenn Sie auf dem Feld messen und Ihre Samen enger beieinander oder weiter auseinander liegen als der Zielabstand, ist Ihre Maschine <strong>schlecht kalibriert</strong>. Dieses Tool analysiert auch die Dosierfrequenz (Hz) der Sähscheibe bei verschiedenen Arbeitsgeschwindigkeiten und warnt Sie vor dem Risiko von Vereinzelungsverlusten.',
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
type: 'title',
|
|
135
|
+
text: 'Schlüssel zur Qualitätsaussaat',
|
|
136
|
+
level: 2,
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
type: 'list',
|
|
140
|
+
items: [
|
|
141
|
+
'<strong>Vereinzelung:</strong> Vermeiden Sie Doppelbelegungen und Fehlstellen. Eine 99%ige Vereinzelung hält die Konkurrenz zwischen den Pflanzen im Gleichgewicht.',
|
|
142
|
+
'<strong>Gleichmäßiger Abstand:</strong> Der Variationskoeffizient sollte weniger als 0,3 betragen. Abweichungen von mehr als 5 cm verringern das Ertragspotenzial.',
|
|
143
|
+
'<strong>Tiefe:</strong> Entscheidend für einen gleichmäßigen Auflauf. Passen Sie den Druck der Andruckrollen an die Bodenfeuchtigkeit an.',
|
|
144
|
+
],
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'title',
|
|
148
|
+
text: 'Methoden zur Überprüfung auf dem Feld',
|
|
149
|
+
level: 2,
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'paragraph',
|
|
153
|
+
html: '<strong>1/1000 Hektar Methode:</strong> Messen Sie eine bestimmte Strecke entlang einer Furche ab, die 1/1000 eines Hektars entspricht. Zählen Sie die Samen und multiplizieren Sie mit 1.000. Bei 70 cm Reihenabstand beträgt die Strecke 14,28 m; bei 52,5 cm sind es 19,05 m.',
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
type: 'paragraph',
|
|
157
|
+
html: '<strong>Antriebsrad-Methode:</strong> Heben Sie die Maschine an, markieren Sie das Antriebsrad und drehen Sie es so oft, wie es 1/100 Hektar entspricht. Sammeln Sie die Samen in einem Eimer und wiegen oder zählen Sie diese, um die Kalibrierung zu überprüfen.',
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
type: 'title',
|
|
161
|
+
text: 'Referenztabelle nach Kulturart',
|
|
162
|
+
level: 2,
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
type: 'list',
|
|
166
|
+
items: [
|
|
167
|
+
'<strong>Mais:</strong> 60.000 bis 95.000 Samen/Ha. Hohe Reaktion auf Dichte bei modernen Hybriden.',
|
|
168
|
+
'<strong>Sojabohnen:</strong> 250.000 bis 450.000 Samen/Ha. Große Kompensationsfähigkeit bei niedrigen Dichten.',
|
|
169
|
+
'<strong>Sonnenblume:</strong> 40.000 bis 55.000 Samen/Ha. Sehr empfindlich gegenüber Dichte; Übermaß verringert Korbdurchmesser.',
|
|
170
|
+
'<strong>Raps:</strong> 300.000 bis 600.000 Samen/Ha. Sehr kleiner Samen; erfordert exzellenten Bodenkontakt.',
|
|
171
|
+
],
|
|
172
|
+
},
|
|
173
|
+
],
|
|
174
|
+
ui: {
|
|
175
|
+
headCrop: 'Wählen Sie Ihre Kultur',
|
|
176
|
+
headParams: 'Parameter',
|
|
177
|
+
headAnalysis: 'Echtzeit-Analyse',
|
|
178
|
+
labelPopulation: 'Population',
|
|
179
|
+
unitSeedsHa: 'Samen/Ha',
|
|
180
|
+
labelRowWidth: 'Reihenbreite',
|
|
181
|
+
unitCm: 'Zentimeter',
|
|
182
|
+
labelWorkSpeed: 'Arbeitsgeschwindigkeit',
|
|
183
|
+
unitKmh: 'km/h',
|
|
184
|
+
labelCalibration: 'Scheibenkalibrierung',
|
|
185
|
+
labelSpacingDesc: 'Exakter Abstand zwischen den Samen in der Reihe.',
|
|
186
|
+
labelMachineStress: 'Maschinenbelastung',
|
|
187
|
+
labelSeedsM: 'Samen / Meter',
|
|
188
|
+
labelPlantsM2: 'Pflanzen / m²',
|
|
189
|
+
labelSpeedMs: 'Meter / Sek',
|
|
190
|
+
labelHaBag: 'Ha / Sack (80k)',
|
|
191
|
+
statusStandby: 'STANDBY',
|
|
192
|
+
statusVolumetric: 'VOLUMENFLUSS',
|
|
193
|
+
statusOptimal: 'OPTIMALE DOSIERUNG',
|
|
194
|
+
statusHighSpeed: 'HOHE GESCHWINDIGKEIT',
|
|
195
|
+
statusPlateLimiter: 'SCHEIBENLIMIT',
|
|
196
|
+
cropCorn: 'Körnermais',
|
|
197
|
+
cropSilage: 'Silomais',
|
|
198
|
+
cropSunflower: 'Sonnenblume',
|
|
199
|
+
cropSorghum: 'Sorghum',
|
|
200
|
+
cropSoy: 'Sojabohne',
|
|
201
|
+
cropBeet: 'Zuckerrübe',
|
|
202
|
+
cropRapeseed: 'Raps',
|
|
203
|
+
noteCorn: 'Hohe Präzision erforderlich',
|
|
204
|
+
noteSilage: 'Mittelhohe Dichte',
|
|
205
|
+
noteSunflower: 'Geschwindigkeitsempfindlich',
|
|
206
|
+
noteSorghum: 'Kontinuierlicher Fluss oder Scheibe',
|
|
207
|
+
noteSoy: 'Hohe Population',
|
|
208
|
+
noteBeet: 'Kritische flache Aussaat',
|
|
209
|
+
noteRapeseed: 'Sehr kleiner Samen',
|
|
210
|
+
faqTitle: 'Häufig gestellte Fragen',
|
|
211
|
+
bibliographyTitle: 'Wissenschaftliche Referenzen',
|
|
212
|
+
},
|
|
213
|
+
};
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
import type { WithContext, FAQPage, HowToThing, SoftwareApplication } from 'schema-dts';
|
|
2
|
+
import type { ToolLocaleContent } from '../../../types';
|
|
3
|
+
import type { SeedCalculatorUI } from '../ui';
|
|
4
|
+
|
|
5
|
+
const slug = 'kalkulator-benih';
|
|
6
|
+
const title = 'Kalkulator Jarak Tanam dan Kalibrasi Penanam';
|
|
7
|
+
const description =
|
|
8
|
+
'Alat presisi untuk petani. Hitung jarak ideal antar benih berdasarkan target populasi dan lebar baris, serta analisis tekanan penanam pada kecepatan kerja yang berbeda.';
|
|
9
|
+
|
|
10
|
+
const faqData = [
|
|
11
|
+
{
|
|
12
|
+
question: 'Bagaimana cara menghitung jarak antar benih?',
|
|
13
|
+
answer:
|
|
14
|
+
'Satu hektar (10.000 m²) dibagi dengan lebar baris untuk mendapatkan total meter lari penaburan. Target populasi kemudian dibagi dengan meter tersebut untuk menentukan berapa banyak benih yang ditempatkan per meter lari.',
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
question: 'Berapa target populasi per hektar?',
|
|
18
|
+
answer:
|
|
19
|
+
'Ini adalah jumlah tanaman ideal per 10.000 meter persegi. Tergantung pada jenis tanaman, kesuburan tanah, dan ketersediaan air. Misalnya, jagung irigasi biasanya membutuhkan 85.000 hingga 95.000 benih per hektar.',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
question: 'Bagaimana persentase perkecambahan mempengaruhi perhitungan?',
|
|
23
|
+
answer:
|
|
24
|
+
'Tidak semua benih yang ditabur akan tumbuh. Jika satu lot benih memiliki daya kecambah 95%, Anda harus meningkatkan tingkat penaburan sebesar 5% untuk mencapai populasi tanaman akhir yang diinginkan.',
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
question: 'Mengapa kalibrasi penanam sangat penting?',
|
|
28
|
+
answer:
|
|
29
|
+
'Tingkat penaburan yang terlalu rapat menyebabkan persaingan antar tanaman dan butiran yang lebih kecil. Tingkat yang terlalu renggang membuang ruang dan potensi hasil. Presisi adalah kunci profitabilitas.',
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const howToData = [
|
|
34
|
+
{
|
|
35
|
+
name: 'Masukkan target populasi',
|
|
36
|
+
text: 'Tentukan berapa banyak benih atau tanaman yang Anda inginkan per hektar sesuai dengan rekomendasi teknis untuk varietas Anda.',
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
name: 'Atur lebar baris',
|
|
40
|
+
text: 'Ukur jarak antara piringan atau sepatu penanam Anda (biasanya 50, 70 atau 75 cm).',
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
name: 'Sesuaikan tingkat perkecambahan',
|
|
44
|
+
text: 'Masukkan persentase kemunculan yang diharapkan untuk mengompensasi kehilangan alami di lapangan.',
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'Dapatkan penyesuaian mekanis',
|
|
48
|
+
text: 'Gunakan nilai benih per meter atau cm antar benih untuk menyesuaikan sproket atau monitor pada mesin Anda.',
|
|
49
|
+
},
|
|
50
|
+
];
|
|
51
|
+
|
|
52
|
+
const faqSchema: WithContext<FAQPage> = {
|
|
53
|
+
'@context': 'https://schema.org',
|
|
54
|
+
'@type': 'FAQPage',
|
|
55
|
+
mainEntity: faqData.map((item) => ({
|
|
56
|
+
'@type': 'Question',
|
|
57
|
+
name: item.question,
|
|
58
|
+
acceptedAnswer: { '@type': 'Answer', text: item.answer },
|
|
59
|
+
})),
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
const howToSchema: WithContext<HowToThing> = {
|
|
63
|
+
'@context': 'https://schema.org',
|
|
64
|
+
'@type': 'HowTo',
|
|
65
|
+
name: title,
|
|
66
|
+
description,
|
|
67
|
+
step: howToData.map((step, i) => ({
|
|
68
|
+
'@type': 'HowToStep',
|
|
69
|
+
position: i + 1,
|
|
70
|
+
name: step.name,
|
|
71
|
+
text: step.text,
|
|
72
|
+
})),
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
const appSchema: WithContext<SoftwareApplication> = {
|
|
76
|
+
'@context': 'https://schema.org',
|
|
77
|
+
'@type': 'SoftwareApplication',
|
|
78
|
+
name: title,
|
|
79
|
+
description,
|
|
80
|
+
applicationCategory: 'UtilityApplication',
|
|
81
|
+
operatingSystem: 'All',
|
|
82
|
+
offers: { '@type': 'Offer', price: '0', priceCurrency: 'EUR' },
|
|
83
|
+
inLanguage: 'id',
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
export const content: ToolLocaleContent<SeedCalculatorUI> = {
|
|
87
|
+
slug,
|
|
88
|
+
title,
|
|
89
|
+
description,
|
|
90
|
+
faqTitle: 'Pertanyaan yang Sering Diajukan',
|
|
91
|
+
faq: faqData,
|
|
92
|
+
bibliographyTitle: 'Referensi Ilmiah',
|
|
93
|
+
bibliography: [
|
|
94
|
+
{
|
|
95
|
+
name: 'KWS Spanyol',
|
|
96
|
+
url: 'https://www.kws.com/es/es/',
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
name: 'Kementerian Pertanian Spanyol (MAPA)',
|
|
100
|
+
url: 'https://www.mapa.gob.es/es/agricultura/temas/producciones-agricolas/cultivos-herbaceos/',
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
name: 'Yara Spanyol',
|
|
104
|
+
url: 'https://www.yara.es/nutricion-vegetal/maiz/',
|
|
105
|
+
},
|
|
106
|
+
],
|
|
107
|
+
howTo: howToData,
|
|
108
|
+
schemas: [faqSchema, howToSchema, appSchema],
|
|
109
|
+
seo: [
|
|
110
|
+
{
|
|
111
|
+
type: 'title',
|
|
112
|
+
text: 'Panduan Teknis Penaburan Presisi',
|
|
113
|
+
level: 2,
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
type: 'paragraph',
|
|
117
|
+
html: 'Menyesuaikan transmisi penanam memerlukan pengetahuan tepat tentang berapa banyak benih yang harus jatuh per meter lari alur. Manual mesin biasanya memberikan tabel perkiraan, tetapi faktor-faktor seperti <strong>selip roda penggerak</strong> atau ukuran benih dapat mengubah kenyataan. Alat ini memberi Anda nilai teoritis yang sempurna: <strong>jarak target antar benih</strong>.',
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
type: 'tip',
|
|
121
|
+
title: 'Rumus Matematika',
|
|
122
|
+
html: '<p>Untuk pakar agronomi dan orang yang penasaran, berikut dasar perhitungannya:</p><pre>Jarak (cm) = 10.000.000 / (Populasi × Lebar Baris)</pre><ul><li><strong>10.000.000:</strong> Faktor konversi dari Ha ke cm².</li><li><strong>Populasi:</strong> Benih per hektar.</li><li><strong>Lebar Baris:</strong> Jarak antar baris dalam cm.</li></ul>',
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
type: 'title',
|
|
126
|
+
text: 'Mengapa Menggunakan Kalkulator Ini?',
|
|
127
|
+
level: 2,
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
type: 'paragraph',
|
|
131
|
+
html: 'Jika Anda mengukur di lapangan dan benih Anda lebih rapat atau lebih renggang daripada jarak target, mesin Anda <strong>kurang terkalibrasi</strong>. Alat ini juga menganalisis frekuensi dosis (Hz) piringan benih pada kecepatan kerja yang berbeda, memperingatkan Anda tentang risiko kegagalan penempatan benih tunggal.',
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
type: 'title',
|
|
135
|
+
text: 'Kunci Penaburan Berkualitas',
|
|
136
|
+
level: 2,
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
type: 'list',
|
|
140
|
+
items: [
|
|
141
|
+
'<strong>Singulasi:</strong> Hindari benih ganda atau terlewat. Singulasi 99% menjaga persaingan antar tanaman tetap seimbang.',
|
|
142
|
+
'<strong>Jarak Seragam:</strong> Koefisien variasi harus kurang dari 0,3. Deviasi lebih dari 5 cm mengurangi potensi hasil.',
|
|
143
|
+
'<strong>Kedalaman:</strong> Penting untuk kemunculan yang seragam. Sesuaikan beban roda penekan sesuai dengan kelembapan tanah.',
|
|
144
|
+
],
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
type: 'title',
|
|
148
|
+
text: 'Metode Verifikasi Lapangan',
|
|
149
|
+
level: 2,
|
|
150
|
+
},
|
|
151
|
+
{
|
|
152
|
+
type: 'paragraph',
|
|
153
|
+
html: '<strong>Metode 1/1000 Hektar:</strong> Ukur jarak tertentu di sepanjang alur yang mewakili 1/1000 hektar. Hitung benih dan kalikan dengan 1.000. Untuk baris 70 cm, jaraknya adalah 14,28 m; untuk baris 52,5 cm, jaraknya adalah 19,05 m.',
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
type: 'paragraph',
|
|
157
|
+
html: '<strong>Metode Roda Penggerak:</strong> Angkat mesin, tandai roda penggerak dan putar setara dengan 1/100 hektar. Kumpulkan benih dalam ember dan timbang atau hitung untuk memverifikasi kalibrasi.',
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
type: 'title',
|
|
161
|
+
text: 'Tabel Referensi Berdasarkan Tanaman',
|
|
162
|
+
level: 2,
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
type: 'list',
|
|
166
|
+
items: [
|
|
167
|
+
'<strong>Jagung:</strong> 60.000 hingga 95.000 benih/Ha. Respon tinggi terhadap kepadatan pada hibrida modern.',
|
|
168
|
+
'<strong>Kedelai:</strong> 250.000 hingga 450.000 benih/Ha. Kapasitas kompensasi besar pada kepadatan rendah.',
|
|
169
|
+
'<strong>Bunga Matahari:</strong> 40.000 hingga 55.000 benih/Ha. Sangat sensitif terhadap kepadatan; kelebihan mengurangi diameter tongkol.',
|
|
170
|
+
'<strong>Rapeseed:</strong> 300.000 hingga 600.000 benih/Ha. Benih sangat kecil; membutuhkan kontak tanah yang sangat baik.',
|
|
171
|
+
],
|
|
172
|
+
},
|
|
173
|
+
],
|
|
174
|
+
ui: {
|
|
175
|
+
headCrop: 'Pilih Tanaman Anda',
|
|
176
|
+
headParams: 'Parameter',
|
|
177
|
+
headAnalysis: 'Analisis Real Time',
|
|
178
|
+
labelPopulation: 'Populasi',
|
|
179
|
+
unitSeedsHa: 'Benih/Ha',
|
|
180
|
+
labelRowWidth: 'Lebar Baris',
|
|
181
|
+
unitCm: 'Sentimeter',
|
|
182
|
+
labelWorkSpeed: 'Kecepatan Kerja',
|
|
183
|
+
unitKmh: 'km/jam',
|
|
184
|
+
labelCalibration: 'Kalibrasi Piringan',
|
|
185
|
+
labelSpacingDesc: 'Jarak tepat antar tiap benih di baris.',
|
|
186
|
+
labelMachineStress: 'Beban Mesin',
|
|
187
|
+
labelSeedsM: 'Benih / Meter',
|
|
188
|
+
labelPlantsM2: 'Tanaman / m²',
|
|
189
|
+
labelSpeedMs: 'Meter / Detik',
|
|
190
|
+
labelHaBag: 'Ha / Kantong (80rb)',
|
|
191
|
+
statusStandby: 'SIAGA',
|
|
192
|
+
statusVolumetric: 'ALIRAN VOLUMETRIK',
|
|
193
|
+
statusOptimal: 'DOSIS OPTIMAL',
|
|
194
|
+
statusHighSpeed: 'KECEPATAN TINGGI',
|
|
195
|
+
statusPlateLimiter: 'BATAS PIRINGAN',
|
|
196
|
+
cropCorn: 'Jagung Biji',
|
|
197
|
+
cropSilage: 'Jagung Silase',
|
|
198
|
+
cropSunflower: 'Bunga Matahari',
|
|
199
|
+
cropSorghum: 'Sorgum',
|
|
200
|
+
cropSoy: 'Kedelai',
|
|
201
|
+
cropBeet: 'Bit Gula',
|
|
202
|
+
cropRapeseed: 'Rapeseed',
|
|
203
|
+
noteCorn: 'Dibutuhkan presisi tinggi',
|
|
204
|
+
noteSilage: 'Kepadatan tinggi sedang',
|
|
205
|
+
noteSunflower: 'Sensitif terhadap kecepatan',
|
|
206
|
+
noteSorghum: 'Aliran kontinu atau piringan',
|
|
207
|
+
noteSoy: 'Populasi tinggi',
|
|
208
|
+
noteBeet: 'Penaburan dangkal kritis',
|
|
209
|
+
noteRapeseed: 'Benih sangat kecil',
|
|
210
|
+
faqTitle: 'Pertanyaan yang Sering Diajukan',
|
|
211
|
+
bibliographyTitle: 'Referensi Ilmiah',
|
|
212
|
+
},
|
|
213
|
+
};
|