Desain Sistem Tertanam: Langkah, Prinsip, dan Aplikasi Dunia Nyata
Sistem tertanam mengintegrasikan perangkat keras dan perangkat lunak khusus untuk melakukan fungsi tertentu. Biasanya berpusat pada mikrokontroler atau mikroprosesor, yang dipilih berdasarkan arsitektur, daya, dan keterbatasan area. Mikroprosesor, berdasarkan model von Neumann, memiliki memori program dan data terpisah dan umum ditemukan di komputer pribadi. Mikrokontroler, dibangun pada arsitektur Harvard, menggabungkan prosesor, memori, dan I/O dalam satu paket, menawarkan konsumsi daya rendah dan bentuk kecil yang cocok untuk alat seperti pemutar MP3 dan mesin cuci.
Apa Itu Desain Sistem Tertanam?
Definisi: Desain sistem tertanam adalah disiplin menciptakan solusi perangkat keras-perangkat lunak yang terintegrasi erat yang memenuhi sekumpulan persyaratan fungsional dan non-fungsional yang ditentukan. Inti dari desain ini adalah mikrokontroler, yang mengatur aliran data, logika kontrol, dan interaksi periferal.
Desain Tertanam
Tipe Sistem Tertanam
Sistem Tertanam Mandiri
Sistem Tertanam Real-Time
Perangkat Jaringan
Perangkat Seluler
Elemen Inti
Prosesor (Mikroprosesor atau Mikrokontroler)
Digital Signal Processor (DSP)
Memori (RAM/ROM/Flash)
Antarmuka I/O dan Periferal
Gambaran Umum Proses Desain
Alur desain sistem tertanam terdiri dari tahap-tahap kunci berikut:
Desain tertanam – proses – langkah
Abstraksi
Identifikasi dan abstrak domain masalah, mendefinisikan tujuan sistem tingkat tinggi dan keterbatasan.
Arsitektur Perangkat Keras–Perangkat Lunak
Tentukan pembagian tanggung jawab antara perangkat keras dan perangkat lunak, memastikan arsitektur yang seimbang dan efisien.
Peningkatan Fungsional
Tentukan fitur tambahan yang memperluas fungsionalitas inti dan integrasikan ke dalam arsitektur sejak awal.
Keluarga Desain Referensi
Aprovechan familias de diseño comprobadas y arquitecturas previas para reducir el riesgo y acelerar el desarrollo.
Desain Modular
Dekomposisi sistem menjadi modul yang dapat digunakan kembali, memfasilitasi pemeliharaan dan upgrade di masa depan.
Mapping
Menyesuaikan modul perangkat lunak dengan sumber daya perangkat keras, memetakan aliran data dan kontrol untuk kinerja optimal.
Desain Antarmuka Pengguna
Desain antarmuka yang memenuhi kebutuhan pengguna, keterbatasan lingkungan, dan anggaran daya—krusial untuk perangkat seluler dan wearable.
Penyempurnaan
Secara berulang menyempurnakan komponen, memastikan kejelasan bagi tim perangkat lunak dan selaras dengan bahasa deskripsi arsitektur.
Hierarki Kontrol
Partisi Struktur
Struktur Data & Hierarki
Prosedur Perangkat Lunak
Metrik & Parameter Desain
Sistem tertanam yang efektif memenuhi metrik berikut:
Metrik Desain
Harapan
Dissipasi Daya
Tetapkan se rendah mungkin
Kinerja
Throughput tinggi dan latensi rendah
Deadline Proses
Penuhi semua keterbatasan waktu
Biaya Manufaktur
Minimalkan tanpa mengorbankan kualitas
Biaya Rekayasa
Kontrol biaya desain, pengujian, dan debug
Ukuran
Definisikan dalam memori, jejak fisik, dan envelop daya
Waktu Prototipe
Iterasi cepat untuk validasi
Keamanan
Implementasikan kunci pengaman dan mekanisme fail-safe
Pemeliharaan
Desain untuk kemudahan pembaruan dan isolasi kesalahan
Waktu ke Pasar
Kurangi siklus pengiriman dari konsep hingga peluncuran
Aktivitas Pengembangan Perangkat Lunak Sistem Tertanam
Pengembangan perangkat lunak dalam sistem tertanam mengikuti pendekatan terstruktur:
Spesifikasi
Definisikan persyaratan fungsional dan non-fungsional yang jelas yang memandu desain perangkat keras dan perangkat lunak.
Arsitektur
Model interaksi berlapis antara perangkat keras, firmware, dan perangkat lunak aplikasi.
Komponen
Desain dan pilih inti prosesor, memori, bus, dan antarmuka periferal.
Integrasi Sistem
Integrasikan semua komponen dan validasi perilaku sistem terhadap spesifikasi.
Tantangan Desain Umum
Adaptabilitas lingkungan
Batas konsumsi daya
Jejak fisik
Kompleksitas kemasan dan integrasi
Jalur pembaruan perangkat keras/perangkat lunak
Kerentanan keamanan
Pengujian verifikasi, validasi, dan kemampuan pemeliharaan
Contoh Desain Sistem Tertanam
Mesin Penjual Otomatis Cokelat (ACVM)
Kamera Digital
Kartu Pintar
Telepon Seluler
Komputer Seluler
Studi Kasus: Mesin Penjual Otomatis Cokelat (ACVM)
ACVM memberikan cokelat kepada pengguna berdasarkan pemasukan koin dan seleksi melalui antarmuka grafis.
Langkah Desain
Pengambilan Persyaratan
Penyusunan Spesifikasi
Fungsi Perangkat Keras dan Perangkat Lunak
Persyaratan
Mesin menerima pemasukan koin, memungkinkan seleksi cokelat, dan mengeluarkan item yang dipilih atau mengembalikan pembayaran berlebih.
Masukan
Koin (melalui port khusus)
Seleksi pengguna (keypad/layar sentuh)
Interupsi yang dihasilkan pada deteksi koin
Keluaran
Pengeluaran cokelat
Mekanisme pengembalian
Pesan LCD (tanggal, waktu, selamat datang)
Fungsi Sistem
Pengguna memilih cokelat yang diinginkan melalui LCD yang dapat disentuh.
Pada pembayaran yang cukup, sistem mengeluarkan cokelat; jika tidak, mengembalikan jumlah berlebih.
Modem nirkabel USB opsional mencatat transaksi untuk pemantauan jarak jauh.
Metrik Desain
Dissipasi Daya: Optimalkan ukuran layar dan aktuator mekanis untuk efisiensi energi.
Deadline Proses: Mesin harus menyelesaikan pemrosesan transaksi dalam 10 detik setelah pemasukan koin.
Spesifikasi
Koin diarahkan melalui Port 1, 2, 5; setiap port memicu interupsi yang menambah counter pembayaran.
Otomatis – cokelat – mesin penjual
LCD menampilkan harga, waktu, dan pesan selamat datang; port pengiriman menyalurkan cokelat kepada pengguna.
Arsitektur Perangkat Keras
Mikrokontroler: 8051
64 KB RAM, 8 MB ROM, 64 KB Flash
Keypad dan pengurut koin mekanis
Saluran cokelat dan koin
Modem nirkabel USB untuk konektivitas
Sumber daya
Arsitektur Perangkat Lunak
Modul perangkat lunak termasuk pembaruan harga, penanganan pesan LCD, dan logika transaksi, semuanya dapat diperbarui di RAM/ROM.
Diagram blok arsitektur perangkat keras
Update firmware biasanya melibatkan penyesuaian harga, perubahan pesan, atau peningkatan fitur, memastikan ACVM tetap aktual tanpa modifikasi perangkat keras.
Secara singkat, desain sistem tertanam memadukan perangkat keras dan perangkat lunak untuk memberikan fungsionalitas khusus dalam keterbatasan yang ketat. Penguasaan proses desain, metrik, dan contoh dunia nyata seperti ACVM membekali insinyur untuk menciptakan produk yang andal, efisien, dan berpusat pada pengguna.