Posture Pal dengan Walabot – Pemantauan Jarak Waktu Nyata untuk Mencegah Nyeri Leher & Punggung
Jaga leher dan punggung Anda tetap sehat dengan memantau postur duduk Anda secara real-time. Sistem Posture Pal memadukan sensor jarak Walabot dengan Raspberry Pi dan aplikasi Android kustom untuk memberikan umpan balik instan dan mencegah nyeridari lesu.
Komponen Hardware
Walabot
Raspberry Pi 3 Model B
Mengapa Saya Membangun Posture Pal
Sebagian besar profesional menghabiskan 7–8 jam sehari di meja. Masalah umum adalah kepala yang condong ke depan dan tulang punggung yang membulat, yang memberatkan excess pada tulang leher rahang. Postur kepala condong 15° dapat menggandakan beban efektif pada leher, meningkatkannya dari 10–12 lb menjadi 27 lb (4,5–5,5 kg) [1]. Studi menunjukkan bahwa fleksi leher 20° menggandakan kemungkinan nyeridari leher terkait pekerjaan.
Saya menciptakan Posture Pal untuk memberikan pengingat yang lembut dan berbasis data yang membantu pengguna mempertahankan postur yang tepat tanpa peralatan yang merepotkan. Rilis saat ini menampilkan aplikasi Android open-source yang memberitahu pengguna ketika mereka terlalu dekat ke layar.
Langkah 1: Mulai Server pada Pi
1. Instal Walabot SDK pada Raspberry Pi Anda. 2. Gunakan Flask untuk mengekspos data jarak Walabot melalui web API sederhana. 3. Kloning kode server dari GitHub dan jalankan.
Unduh APK yang telah dibuat atau kloning sumber dari GitHub: Walabot‑PosturePal. Aplikasi menggunakan GraphView untuk plotting langsung dan HTTP long polling untuk mengambil jarak setiap detik.
// Fetch distance via JsonObjectRequest String url = "https://192.168.0.100:3000/status"; // replace with your Pi IP final JsonObjectRequest jsonObjectRequest = new JsonObjectRequest( Request.Method.GET, url, null, new Response.Listener<JSONObject>() { @Override public void onResponse(JSONObject response) { Double distance = 0.; try { distance = response.getDouble("status"); // Update graph dataset = updateData(dataset, distance); // Update text display currDistance.setText("Distance: " + String.format("%.2f", distance)); } catch (JSONException e) { e.printStackTrace(); } // Poll every second new Timer().scheduleAtFixedRate(new TimerTask() { @Override public void run() { queue.add(jsonObjectRequest); } }, 0, 1000); } } );
Langkah 3: Kalibrasi
Gunakan aplikasi untuk menetapkan postur dasar dan sesuaikan ambang sensitivitas. Ini memastikan peringatan hanya memicu ketika Anda menyimpang dari jangkauan nyaman Anda.