Calculadora de horas de frío
De ocho lecturas horarias, cinco quedaron por debajo de 7,2 °C: el huerto sumó 5 horas de frío. Pegue sus temperaturas horarias, elija el umbral y compruebe si la temporada cubre lo que necesitan sus manzanos, melocotoneros o cerezos. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Umbral
- 7,2
- Cantidad de temperaturas
- 8 C
- Horas de frío
- 5
- Horas iguales o superiores
- 3
- Fracción por debajo
- 0,625
La acumulación de frío invernal decide si los frutales de clima templado—manzano, melocotonero, cerezo, ciruelo, almendro y muchos más—rompen la latencia con normalidad en primavera. Productores y técnicos de extensión siguen planteándose una primera pregunta sencilla: ¿cuántas horas de la temporada quedaron por debajo del umbral de frío? Esta calculadora de horas de frío acepta una serie ordenada de lecturas horarias de temperatura, las compara con un umbral (clásicamente 7.2 °C o 45 °F) y devuelve el recuento de horas estrictamente inferiores a esa base. Puede adjuntar un requisito del cultivo en horas para comprobar si la serie cubre la latencia y cuán grande es el déficit o el excedente. Sin llamadas de red, sin semillas aleatorias y sin relojes de calendario: solo las temperaturas que usted suministra.
Qué miden las horas de frío y por qué el modelo simple sigue importando
Las horas de frío son un indicador práctico de la exposición al frío necesaria para completar la endodormancia en muchas especies frutales y de fruto seco de hoja caduca. Viveros y catálogos de cultivares suelen publicar un requisito de frío como un número de horas, referenciado con frecuencia a una base cercana a 7.2 grados Celsius (unos 45 grados Fahrenheit).
El modelo simple usado aquí sigue esa tradición: cada observación horaria que cae estrictamente por debajo del umbral elegido aporta una hora de frío; las observaciones en o por encima del umbral aportan cero. Esa regla es deliberadamente transparente.
Esquemas más elaborados como el modelo Utah ponderan bandas de temperatura y pueden anular frío tras rachas cálidas, y el modelo Dynamic rastrea porciones intermedias de frío—ambos son herramientas de investigación valiosas—, pero los productores suelen necesitar un recuento de primer paso que coincida con el lenguaje de una ficha de catálogo «necesita 800 horas de frío». Al contar solo las horas bajo el umbral obtiene un número que puede explicar en una frase a una cuadrilla de campo o a un estudiante.
La calculadora no inventa horas faltantes ni interpola entre estaciones; trata su serie como ya horaria y completa para el periodo que le interesa. Si introduce medias diarias, subcontará o sobrecontará respecto a la exposición horaria real, así que prefiera series de registrador o de reanálisis a resolución de una hora cuando la decisión importe. La unidad es una etiqueta compartida por temperaturas y umbral: elija Celsius o Fahrenheit y mantenga todos los números en esa escala.
El extremo no convierte entre escalas, lo que evita una doble conversión silenciosa cuando ya trabaja con datos de estación en Fahrenheit.
Contrato de entrada, campos de respuesta y comportamiento de validación
El umbral opcional por defecto es 7.2 cuando unit es C y 45 cuando unit es F; anúlelo si su ficha de cultivar usa otra base. La unit opcional es el conjunto cerrado C o F y por defecto es C. El requirement opcional es un número no negativo de horas que se dice que necesita el cultivo; si lo omite, los campos relacionados con el requisito se omiten en la respuesta en lugar de devolverse como null.
Ejemplo: ocho lecturas horarias en Celsius 8.0, 6.5, 5.0, 4.2, 7.2, 9.0, 3.5, 6.0 con el umbral por defecto 7.2 producen cinco horas de frío porque 7.2 no está estrictamente por debajo de la base. Combine la respuesta con sus propios gráficos si necesita un trazado temporal; este extremo solo devuelve recuentos agregados.
Qué puede hacer con ella
Seguimiento del frío invernal en el huerto
Incorpore cada semana temperaturas horarias de registrador o estación meteorológica, cuente las horas bajo 7.2 °C y compárelas con el requisito de frío del cultivar antes de fijar pulverizaciones y podas de primavera.
Laboratorios docentes de horticultura
Entregue al alumnado series horarias sintéticas cortas y deje que comprueben a mano que solo las lecturas estrictamente bajo el umbral suman horas de frío, incluido el caso límite de igualdad.
Preguntas frecuentes
¿Cómo se cuentan las horas de frío?
Cada temperatura horaria estrictamente inferior al umbral suma una hora de frío. Las lecturas en o por encima del umbral suman cero. Los valores por defecto son 7.2 °C o 45 °F según la unidad.
¿Usa la calculadora el modelo Utah o el Dynamic de frío?
No. Esta capacidad implementa el recuento simple de horas bajo umbral usado en muchos requisitos de catálogo. Las unidades ponderadas Utah y las porciones Dynamic quedan fuera de alcance aquí.
¿Qué ocurre si la temperatura es exactamente igual al umbral?
La igualdad no cuenta. Solo contribuye t < threshold. Por ejemplo, 7.2 con umbral 7.2 suma cero horas de frío.
¿Puedo comprobar el requisito de frío de un cultivo?
Sí. Envíe requirement como horas no negativas necesarias. Omita requirement para saltarse esos campos.
¿Puedo usar temperaturas medias diarias en lugar de lecturas por hora?
Es mejor no hacerlo. Cada lectura cuenta como una hora, así que las medias diarias subestiman o exageran el frío real. Use datos horarios de un registrador o de una estación meteorológica cuando la decisión importe.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/bio/chilling-hours \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"temperatures":[8,6.5,5,4.2,7.2,9,3.5,6]}'const res = await fetch("https://api.kit.forhosting.com/bio/chilling-hours", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"temperatures": [
8,
6.5,
5,
4.2,
7.2,
9,
3.5,
6
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/bio/chilling-hours",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"temperatures": [
8,
6.5,
5,
4.2,
7.2,
9,
3.5,
6
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/bio/chilling-hours", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"temperatures":[8,6.5,5,4.2,7.2,9,3.5,6]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"temperatures":[8,6.5,5,4.2,7.2,9,3.5,6]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/bio/chilling-hours", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"temperatures": [
8,
6.5,
5,
4.2,
7.2,
9,
3.5,
6
]
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "bio.chilling_hours",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Contrato de entrada, campos de respuesta y comportamiento de validación
Envíe por POST un cuerpo JSON con temperatures como un array no vacío de números finitos (o una cadena separada por comas o espacios que el manejador interpreta del mismo modo). En caso de éxito el cuerpo repite temperatures_count, threshold y unit; informa chilling_hours y hours_above_or_equal; da fraction_below como horas de frío divididas por la longitud de la serie; e incluye una cadena de fórmula breve más un mensaje humano que resume el recuento. Cuando requirement está presente también recibe requirement_met, shortfall y surplus para que los paneles coloreen un aprobado o un fallo sin recalcular. Series vacías, lecturas no finitas, más de veinte mil horas, requirement negativo o una unit desconocida fallan con invalid_input nombrando el problema; la validación fallida no se factura.
Dónde una API de horas de frío aporta valor en producción
Los laboratorios de aula de horticultura y fenología usan series sintéticas cortas para que el alumnado vea cómo una sola hora cálida sale del recuento cuando coincide con el umbral. Sustituya el modelo simple más adelante por puntuaciones Utah o Dynamic solo cuando su equipo de agronomía estandarice esas unidades; hasta entonces un recuento claro bajo umbral sigue siendo la primera respuesta más buscable y auditable para planificar la latencia invernal. El software de gestión de huertos puede enviar cada semana invernal de datos de estación a este extremo y almacenar chilling_hours junto a la humedad del suelo y el riesgo de helada sin embeber la lógica de frío en cada cliente. Los programas de mejora que comparan emplazamientos pueden procesar por lotes muchas series con umbral y requisito fijos y filtrar por requirement_met para la colocación de cultivares. Como la implementación es parse pura de nivel A, cada llamada exitosa cuesta el precio base publicado $0.002 sin tokens de modelo ni red saliente.
Casos de integración
Cribado de idoneidad de sitio y cultivar
Procese por lotes inviernos históricos de emplazamientos candidatos con umbral y requisito fijos; conserve los sitios donde requirement_met sea verdadero en suficientes temporadas.
Preguntas técnicas
¿Cuánto cuesta la calculadora de horas de frío?
La herramienta del navegador es gratuita. Las peticiones API usan saldo prepago KIT a $0.002 por llamada exitosa; la entrada inválida no se factura.