Lewati ke konten
🛠️ToolsShed

Sit/Stand Reminder Calculator

Hitung interval kerja duduk dan berdiri optimal dan hasilkan jadwal sepanjang hari untuk kesehatan ergonomis.

Preset Cepat

Rasio: 75% Duduk / 25% Berdiri

🪑 Duduk🧍 Berdiri

Tentang alat ini

Jadwal kerja duduk-berdiri adalah strategi ergonomis yang terbukti untuk memerangi risiko kesehatan dari pekerjaan yang menetap dalam waktu lama. Duduk dalam waktu yang lama dikaitkan dengan penyakit kardiovaskular, diabetes tipe 2, kegemukan, dan nyeri muskuloskeletal—semuanya dapat dikurangi dengan bergantian antara duduk dan berdiri secara teratur sepanjang hari kerja Anda. Penelitian modern menunjukkan bahwa hanya dengan mengganggu waktu duduk dengan interval berdiri secara signifikan meningkatkan sirkulasi darah, mengurangi kelelahan otot, dan meningkatkan pengeluaran kalori harian, menjadikannya salah satu intervensi kesejahteraan tempat kerja yang paling sederhana namun paling efektif yang tersedia.

Kalkulator ini membantu Anda merancang jadwal duduk-berdiri yang dipersonalisasi sesuai dengan jam kerja dan preferensi fisik Anda. Cukup masukkan durasi duduk dan berdiri yang Anda inginkan (atau pilih rasio preset seperti 45/15 atau 30/30), atur waktu mulai dan akhir kerja Anda, dan alat akan menghasilkan jadwal lengkap per jam yang menunjukkan dengan tepat kapan harus mengganti posisi. Anda juga akan melihat rincian visual dari rasio duduk-berdiri Anda dan bagaimana hal itu terakumulasi selama seluruh hari kerja Anda, membuat lebih mudah untuk menerapkan jadwal di meja Anda atau pada pengonversi meja berdiri.

Alat ini mendukung berbagai rasio interval, mulai dari rutinitas agresif 25/5 untuk mereka yang memiliki ruang terbatas untuk berdiri, hingga jadwal yang lebih seimbang 45/15 atau 50/10 untuk pengaturan kantor tradisional. Ingat bahwa rasio spesifik kurang penting daripada konsistensi—setiap istirahat gerakan reguler bermanfaat. Baik Anda menggunakan meja berdiri yang dapat disesuaikan tingginya, pembilang berdiri, atau sekadar mengambil istirahat berjalan singkat, kalkulator ini membantu Anda mengembangkan kebiasaan pergantian postur yang berkelanjutan yang meningkatkan hasil kesehatan jangka panjang.

Pertanyaan yang Sering Diajukan

Implementasi Kode

from datetime import datetime, timedelta

def sit_stand_schedule(
    work_hours: float,
    sit_minutes: int,
    stand_minutes: int,
    start_time: str = "09:00",
) -> list[dict]:
    """Generate a sit/stand schedule for the work day."""
    total_minutes = int(work_hours * 60)
    interval = sit_minutes + stand_minutes
    blocks = []

    current = datetime.strptime(start_time, "%H:%M")
    elapsed = 0

    while elapsed < total_minutes:
        # Sitting block
        sit_end = elapsed + sit_minutes
        if sit_end > total_minutes:
            sit_minutes_actual = total_minutes - elapsed
        else:
            sit_minutes_actual = sit_minutes

        blocks.append({
            "start": current.strftime("%H:%M"),
            "end": (current + timedelta(minutes=sit_minutes_actual)).strftime("%H:%M"),
            "action": "SIT",
            "minutes": sit_minutes_actual,
        })
        current += timedelta(minutes=sit_minutes_actual)
        elapsed += sit_minutes_actual

        if elapsed >= total_minutes:
            break

        # Standing block
        stand_end = elapsed + stand_minutes
        if stand_end > total_minutes:
            stand_minutes_actual = total_minutes - elapsed
        else:
            stand_minutes_actual = stand_minutes

        blocks.append({
            "start": current.strftime("%H:%M"),
            "end": (current + timedelta(minutes=stand_minutes_actual)).strftime("%H:%M"),
            "action": "STAND",
            "minutes": stand_minutes_actual,
        })
        current += timedelta(minutes=stand_minutes_actual)
        elapsed += stand_minutes_actual

    total_stand = sum(b["minutes"] for b in blocks if b["action"] == "STAND")
    extra_calories = total_stand * (50 / 60)  # ~50 kcal/hour standing vs sitting

    return blocks, round(extra_calories)

schedule, extra_cal = sit_stand_schedule(8, 45, 15)
for block in schedule:
    print(f"{block['start']}-{block['end']}: {block['action']} ({block['minutes']} min)")
print(f"\nExtra calories burned vs all-sitting: ~{extra_cal} kcal")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.