WELCOME TO MY BLOG

Kamis, 25 Oktober 2012

PENCITRAAN GRAFIK KOMPUTER DI NASA (National America Aeronautics and Space Administration)



Konsep artis Rover di Mars, contoh dari sebuah kendaraan darat tak berawak. Salah satu area aplikasi yang lebih baru adalah kendaraan otonom, yang meliputi submersibles , tanah berbasis kendaraan (robot dengan roda kecil, mobil atau truk), kendaraan udara, dan kendaraan udara tak berawak ( UAV ). Tingkat otonomi berkisar dari kendaraan sepenuhnya otonom (berawak) untuk kendaraan di mana visi sistem berbasis komputer mendukung driver atau pilot dalam berbagai situasi.
Sepenuhnya otonom kendaraan biasanya menggunakan visi komputer untuk navigasi, yaitu untuk mengetahui di mana itu, atau untuk memproduksi peta lingkungan ( SLAM ) dan untuk mendeteksi rintangan. Hal ini juga dapat digunakan untuk mendeteksi peristiwa tugas tertentu yang spesifik, misalnya, sebuah UAV mencari kebakaran hutan. Contoh sistem pendukung sistem peringatan kendala dalam mobil, dan sistem untuk pendaratan pesawat otonom. Beberapa produsen mobil telah menunjukkan sistem untuk mengemudi otonom mobil , tapi teknologi ini masih belum mencapai tingkat di mana dapat diletakkan di pasar. Ada banyak contoh dari kendaraan otonom militer mulai dari rudal canggih, untuk UAV untuk misi pengintaian atau rudal bimbingan.
Eksplorasi ruang angkasa sudah sedang dibuat dengan otonom kendaraan yang menggunakan visi komputer, misalnya, NASA Mars Exploration Rover dan ESA ExoMars Rover. Area aplikasi lainnya termasuk:
Ø  Dukungan efek visual ciptaan untuk bioskop dan siaran, misalnya, kamera pelacakan (matchmoving).
Ø  Surveillance.
Pada awal perkembangan sistem waktu-nyata pada tahun 1950-an sampai dengan akhir 1970-an, konsumen utama dari sistem waktu-nyata adalah industri militer di Amerika Serikat. Sekarang, sistem waktu-nyata semakin banyak digunakan dalam otomasi industri dan instrumentasi. Salah satu contoh umum sistem waktu-nyata adalah sistem komputer yang digunakan oleh NASA pada pesawat ruang angkasanya. Sistem komputer pesawat ruang angkasa berjalan tanpa campur tangan manusia, dan jika sistem ini gagal memenuhi tenggat waktu eksekusi yang ditetapkan, maka pesawat ruang angkasa ini bisa jadi akan mengalami bencana yang fatal. Untuk memperkecil kemungkinan kegagalan sistem komputernya, NASA biasanya menggunakan beberapa komputer sekaligus untuk mengerjakan perhitungan yang sama.
Klasifikasi Sistem Waktu-Nyata :
Berdasarkan batasan waktu yang dimilikinya, sistem waktu-nyata dapat dibagi menjadi tiga kelas, yaitu :
1. Hard Real-Time
Adalah sistem yang harus memenuhi tenggat waktu pada setiap kesempatan. Contoh sistem dari kelas ini adalah sebuah sistem yang melakukan shutdown dari sebuah roket. Sebuah delay yang tak terduga selama setengah detik mungkin dapat menyebabkan roket meledak. Penentuan apakah sebuah sistem termasuk dalam kategori hard real-time tidak berdasarkan waktu respon rata-rata yang dimilikinya, melainkan berdasarkan waktu respon terburuk.

2. Soft Real-Time
Adalah sistem yang jika suatu saat gagal dalam memenuhi tenggat waktu, tidak akan menyebabkan kegagalan sistem. Semua sistem komputer dapat dikategorikan dalam kelas ini karena semua sistem harus memenuhi definisi di atas, dalam dimensi yang berbeda-beda. Contoh sistem dari kelas ini adalah sebuah video player yang seharusnya selalu menampilkan setiap frame sesuai dengan rate yang diinginkan. Delay selama setengah detik tidak akan menyebabkan kegagalan yang fatal, tetapi akan mengganggu kenyamanan user.

3. Firm Real-Time
Adalah sistem yang memiliki karakteristik pewaktuan seperti sistem hard real-time tapi mampu menjalankan aplikasi waktu-nyata level user seperti aplikasi grafis atau TCP/IP yang biasanya tidak dapat dijalankan oleh sistem hard real-time.
Komponen Sistem Waktu-Nyata :
Komponen dari sistem komputer waktu-nyata, yaitu :
Ø  Perangkat keras
Ø  Sistem operasi waktu-nyata
Ø  Bahasa pemrograman waktu-nyata
Ø  Sistem komunikasi

Perangkat keras komputer sebenarnya tidak ada spesifikasi khusus untuk sebuah perangkat keras komputer dengan kapabilitas waktu-nyata. Secara umum, semua komputer modern termasuk PC x86 dapat digunakan untuk sistem waktu-nyata. Untuk keperluan tertentu, digunakan komputer dengan arsitektur dan prosesor khusus, seperti transputer.
Sistem operasi waktu-nyata merupakan perangkat lunak sistem yang berseluler mengatur resource yang disediakan oleh perangkat keras dan menyediakan fasilitas pemrograman untuk digunakan oleh aplikasi. Sistem operasi waktu nyata memiliki karakteristik yang berbeda dengan sistem operasi biasa, sehingga tidak semua sistem operasi bisa disebut sebagai sebuah sistem operasi waktu-nyata.

Bahasa pemrograman waktu-nyata memiliki peranan yang penting dalam pembangunan sistem waktu-nyata. Bahasa pemrograman waktu-nyata yang baik sebaiknya memiliki beberapa karakteristik sebagai berikut:
Ø  Efisien dalam penggunaan CPU
Ø  Mampu menangani pemrograman I/O yang intensif
Ø  Memiliki sintaks sederhana, untuk mengurangi kompleksitas program sehingga kemungkinan kesalahan dapat diperkecil
Ø  Didukung oleh sistem operasi
Ø  Memiliki tool pendukung seperti debugger dan profiler

Implementasi sistem waktu-nyata pada tahun 1950-an kebanyakan menggunakan bahasa pemrograman assembler agar sistem menjadi lebih efisien dalam penggunaan CPU. Tetapi, setelah sistem berkembang semakin besar, penggunaan bahasa assembler membuat program menjadi semakin kompleks dan rentan terhadap kesalahan pemrograman.

Beberapa bahasa pemrograman kemudian muncul dan menggantikan peranan bahasa assembler. Sebagian diantaranya dirancang khusus untuk aplikasi waktu-nyata, dan sisanya adalah bahasa pemrograman multifungsi (general-purpose). Bahasa pemrograman waktu-nyata yang paling populer adalah Ada. Bahasa Ada memiliki konstruksi yang memudahkan programmer untuk menspesifikasikan tugas-tugas waktu-nyata.

Sistem operasi Unix ditulis dengan bahasa C, dan memiliki dukungan yang intensif terhadap penggunaan bahasa C. Kompilator dan debugger bahasa C pasti tersedia di semua varian Unix. Meskipun bahasa C bukan merupakan bahasa yang khusus digunakan untuk sistem waktu-nyata, tetapi bahasa C adalah bahasa yang cukup memadai karena memenuhi kriteria-kriteria di atas. Real-Time Linux hanya mendukung bahasa C, terutama karena pemrograman untuk Real-Time Linux dilakukan di level kernel.

Sistem Komunikasi melalui jaringan dibutuhkan jika lebih dari satu komputer menjadi controller. Komunikasi jaringan (misalnya melalui Ethernet) memiliki kasus waktu terburuk yang tidak dapat dipastikan, sehingga jika sebuah sistem hard real-time menggunakan mekanisme komunikasi jaringan maka sistem ini tidak lagi dapat diverifikasi karena verifikasi sebuah sistem hard real-time memerlukan data kasus terburuk dari eksekusi tugas.

SUMBER : WIKIPEDIA

0 komentar: