Gömülü Mühendislik
Gömülü sistem mühendisi, herhangi bir cihaza “akıllı” olma niteliği kazandıran elektronik ve yazılımsal donanımlar üzerine çalışan kişidir. Günümüzde neredeyse Elektronik ve yazılım alanının ortak noktası olan gömülü sistemlerinin programlanması için değişik özellikteki elektronik kartlar ve bilgisayar sistemlerinin desteğine ihtiyaç vardır. Gerek donanımsal bileşenlerin gerekse yazılımsal programlama dillerinin gelişmesi ile birlikte neredeyse tüm mühendislik dallarında gömülü sistemler kullanılmaya başlamıştır.
İlk modern, gerçek zamanlı gömülü bilgi işlem sistemi, 1960’larda Apollo Programı için Massachusetts Teknoloji Enstitüsü’nden Dr.Charles Stark Draper tarafından geliştirilen Apollo Rehberlik Bilgisayarı olarak bilinmektedir. Apollo Kılavuz Bilgisayarı, verileri otomatik olarak toplamak görev açısından kritik hesaplamalar sağlamak üzere tasarlanmıştır
Gömülü sistemler, bağımsız bir sistem olarak ya da büyük bir sistemin parçası olarak belirli bir görevi icra eden ve kendine özel yazılıma sahip mikroişlemci tabanlı bilgisayar donanım sistemleridir. Büyük işlem kapasitesine sahip bilgisayarların işletim sistemleri üzerinde nasıl hata ayıklama işlemi yapılması bekleniyorsa gömülü sistemlerde de aynı durum söz konusudur. Bilgisayar ortamında çalıştırılacak kodun hata denetimi ve güncellemesi yapılabilecek iken gömülü sistemler üzerinde bu şekilde bir hata ayıklama işlemi söz konusu değildir. Çeşitli programlama dilleri sayesinde, mikrodenetleyiciler üzerinde, temel hata ayıklamanın doğrudan çip üzerinde yapılması için gerekli nitelikler vardır, ilaveten, işlemciler genellikle bir hata ayıklama portu vasıtasıyla kontrol işlemi gerçekleştirilecek ve bu sayede program icra edilmesini kontrol eden CPU hata ayıklayıcılarına sahip olabilmektedirler.
1971’de Intel, piyasada bulunan ilk mikroişlemci birimi olan Intel 4004’ü piyasaya sürmüştür. Fakat bu işlemci destek yongaları ve harici bellek gerektiren erken bir mikroişlemci olarak karşımıza çıkmaktadır, 1978’de Ulusal Mühendislik İmalatçıları Derneği, programlanabilir mikro denetleyiciler için bir standart yayınlamış ve gömülü sistem tasarımını geliştirmiştir.
Daha sonra 1980’lerin başında, bellek, giriş ve çıkış sistemi bileşenleri işlemciyle aynı yongaya entegre edilerek bir mikro denetleyici oluşturulmuştur. Mikrodenetleyici tabanlı gömülü sistemler, kredi kartı okuyucularından cep telefonlarına, trafik kontrol sistemlerinden birçok elektronik küçük ara birime kadar tüketicilerin günlük yaşamlarının her yönüne müdahil olacak şekilde gelişmeye devam etmiştir.
Mikro işlemci tarihindeki bu gelişmeler gömülü sistemler üzerine olumlu yansımıştır. İşlemci teknolojisinin ilerlemesi sayesinde gömülü sistemler üretici firmalar için son derece önemi olan maliyet, karmaşıklık boyutunda oldukça olumlu ilerleme kaydetmiştir. Çünkü gömülü sistemler belli bir amaç için tasarlanıp çok fazla sayıda üretilmektedirler. Bu sebeple gömülü sistemler mühendislik alanında işlemcilerin olduğu her yerde kullanılmaktadır. Bu da gömülü sistemlerin robotik kodlama, yapay zekâ, yazılım mühendisliği
gibi birçok alanda tercih edilmesine olanak tanımaktadır.
Gömülü sistemler yazılımsal tasarım açısından ele alındığında kişisel bilgisayarlardan farklı olarak;
Gömülü sistemler daha fazla donanım kaynaklarına ihtiyaç duyarlar.
Kodun hızlı çalışması ve hafızada kapladığı yer önemlidir. Minimum alan ve zaman, maksimum fayda olması gerekir.
Makine kodu, assembly dili , yüksek seviyeli diller (c, c++, java,), uygulama düzeyi diller (python, C#) sırasıyla kullanılabilir.
Bir diğer taraftan Yapay Zekâ, robotik sistemler, Sanal Gerçeklik ve Artırılmış Gerçeklik, makine öğrenimi, derin öğrenme ve Nesnelerin İnterneti’nin (IoT) gibi alanların sürekli gelişimi ile gömülü sistemler endüstrisinin hızla büyümeye devam ettiği gözlenmektedir.