Bagaimana Cara Mengontrol Beberapa Katup Bola Pintar WiFi Secara Bersamaan? (Bagian 2)
Membagikan
Solusi Kontrol Perangkat Terprogram
Meskipun platform cloud menyediakan kemampuan manajemen perangkat dasar, pendekatan terprogram kami menawarkan kontrol yang lebih fleksibel dan langsung atas katup bola pintar Anda. Metode ini sangat berguna untuk skenario otomatisasi, integrasi khusus, dan melewati latensi cloud.
Lingkungan Pengembangan
Demonstrasi ini menggunakan Visual Studio Code karena dukungan Python dan kemampuan debugging-nya yang sangat baik. Namun, program ini tidak bergantung pada platform dan dapat diinstal dengan:
PyCharm (direkomendasikan untuk pengembangan berbasis Python)
Jupyter Notebooks (untuk konfigurasi eksperimental)
IDE apa pun yang kompatibel dengan Python 3.9+
Catatan: Sebelum menggunakan program, Anda perlu mengunduh basis data Tuya terlebih dahulu pada perangkat yang Anda gunakan.
# Instal Pustaka TinyTuya
python -m pip install tinytuya
Langkah-langkah Implementasi
1. Pengaturan Konfigurasi
Temukan dan isi parameter berikut di bagian konfigurasi yang ditentukan (seperti yang ditunjukkan dalam tutorial video):
Wilayah API: Zona geografis layanan cloud Anda (misalnya, "CN", "EU", "US")
Kunci API: Pengidentifikasi aplikasi unik (64-bit) heksadesimal)
Rahasia API: Token otentikasi (string terenkripsi 256-bit)
ID Perangkat: Daftar perangkat target yang dipisahkan koma (Minimal 1 diperlukan)
Catatan: Instruksi perolehan parameter terperinci tersedia di Bagian 1 dari seri blog teknis kami. Selalu simpan kredensial dalam variabel lingkungan untuk penggunaan produksi.
2. Protokol Eksekusi
Mulai urutan kontrol menggunakan salah satu cara berikut:
Tombol ▶️ "Jalankan dan Debug" (pintasan F5)
Perintah terminal: "python3 ballvalve_controller.py --auto"
Sistem akan secara otomatis:
Membangun koneksi TLS 1.3 yang aman
Memvalidasi izin kredensial
Menginisialisasi saluran komunikasi perangkat
3. Logika Kontrol Berbasis Status
Mesin kontrol dinamis kami mengimplementasikan:
python
Kode semu logika inti
def toggle_device(device):
current_state = poll_status(device)
new_state = not current_state
send_command(device, new_state)
verify_state_change(device, new_state)
Fitur utama:
Polling status waktu nyata
Verifikasi status dua arah
Otomatis Mekanisme percobaan ulang
Penanganan kesalahan yang baik
Skenario Operasional
Program ini memungkinkan:
✅ Sistem irigasi terjadwal
✅ Protokol penghentian darurat
✅ Sinkronisasi multi-perangkat
✅ Integrasi dengan sistem SCADA
Pertimbangan Keamanan
Selalu uji di lingkungan staging terlebih dahulu
Pertahankan versi firmware v2.3.8+
Terapkan pola pemutus sirkuit untuk operasi massal
Pantau kuota panggilan API (maks 60 RPM/akun default)
Untuk contoh kode lengkap here.