Gömülü Sistemler Çalışma Grubu Yol Haritası

Hazırlayanlar: Muhammed Hüsnü Kayahan, Mehmet Aydın Erbey

ACM Gazi AR-GE Birimi

1. Genel Tanıtım

  • Gömülü Sistemler nedir?

    • Gömülü sistemler, belirli bir görevi yerine getirmek için donanım ve yazılımın bir arada çalıştığı özel bilgisayar sistemleridir. Genellikle sensörlerden veri alıp bu veriye göre tepki veren küçük cihazlarda bulunurlar.
  • Hangi temel probleme çözüm üretir?

    • Gömülü sistemler, belirli görevlerin hızlı, güvenilir ve otomatik şekilde yapılması ihtiyacına çözüm üretir. Karmaşık sistemlerde insan müdahalesini azaltarak hataları önler ve işlemleri gerçek zamanlı hale getirir.
  • Günümüzdeki önemi ve kullanım alanları nelerdir?

    • Gömülü sistemler günümüzde teknolojinin kalbinde yer alır çünkü birçok cihazın akıllı, hızlı ve güvenilir şekilde çalışmasını sağlar. Ulaşım, sağlık, savunma, haberleşme ve ev elektroniği gibi alanlarda yaygın olarak kullanılır. Örneğin otomobillerde hava yastığı, fren kontrolü ve motor yönetimi; hastanelerde kalp pilleri ve tıbbi izleme cihazları; evlerde akıllı televizyonlar, çamaşır makineleri ve klimalar hep gömülü sistemlerle çalışır. Bu sistemler, günlük yaşamı kolaylaştırmanın yanı sıra endüstride üretim süreçlerini otomatikleştirerek verimliliği artırır ve güvenliği sağlar.
  • Bu alt dalın sektördeki konumu nasıldır?

    • Gömülü sistemler sektörde oldukça güçlü ve sürekli büyüyen bir konuma sahiptir çünkü hemen her endüstride kullanılır. Otomotivden savunmaya, tıptan telekomünikasyona kadar birçok alanda gömülü sistem mühendislerine ihtiyaç duyulur. Akıllı cihazların ve nesnelerin interneti (IoT) teknolojisinin yaygınlaşmasıyla bu alandaki iş olanakları da hızla artmaktadır. Şirketler, daha küçük, daha hızlı ve enerji verimli sistemler geliştirebilmek için gömülü yazılım ve donanım konusunda uzman kişilere öncelik verir. Bu nedenle gömülü sistemler hem günümüzün hem de geleceğin en önemli mühendislik alanlarından biridir.

2. Alt Dallar ve Uzmanlık Alanları

Bu alanın altında yer alan alanlar nelerdir?

Alt AlanKısa AçıklamaUygulama Örneği
Mikrodenetleyici SistemleriDonanım üzerinde doğrudan çalışan, belirli bir işlevi yerine getiren küçük işlemci tabanlı sistemlerdir.Arduino ile sensör verisi okuyup LED kontrol etmek.
Gerçek Zamanlı Sistemler (RTOS)Zamanın kritik olduğu, işlemlerin belirli süre içinde tamamlanması gereken sistemlerdir.Araba hava yastığı veya fren kontrol sistemi.
IoT (Nesnelerin İnterneti)Gömülü sistemlerin internet üzerinden birbirine bağlanarak veri paylaşması ve uzaktan kontrol edilmesidir.Akıllı ev sistemlerinde sıcaklık sensörünün mobil uygulamaya veri göndermesi.
Gömülü Yapay ZekaKüçük cihazlarda veri işleyip karar verebilen yapay zekâ modellerinin çalıştırılmasıdır.Güvenlik kameralarının gerçek zamanlı yüz tanıma yapması.
Otomotiv Gömülü SistemleriAraçlarda güvenlik, performans ve konforu artırmak için geliştirilen özel sistemlerdir.ABS, otomatik park veya otonom sürüş sistemleri.

3. Temel Konular ve Kavramlar

Öğrenilmesi gereken temel konular ve açıklamaları:

Temel KonuNeden Önemli?Öğrenme Sırası
C ProgramlamaGömülü kartlar genelde C ile programlanır, temel dil bilgisidir1
Temel Elektronik BilgisiSensör, direnç, voltaj vb. anlamadan devre kurulamaz2
Mikrodenetleyici KullanımıArduino / STM32 gibi kartlarla gerçek uygulama geliştirmeyi sağlar3
Sensör ve Motor BağlamaGerçek dünyadan veri alıp hareket kontrolü yapmayı öğretir4
Temel Haberleşme (UART/I2C)Kartın başka cihazlarla konuşmasını sağlar5
Basit RTOS MantığıBirden fazla işi aynı anda düzenli çalıştırmayı öğretir6

4. Ücretsiz Kaynaklar

Videolar, online kurslar, makaleler ve uygulamalı eğitimler ile gömülü sistemleri başlangıç seviyesinden ileri seviyeye öğrenebilirsiniz. Aşağıdaki kaynaklar STM32 ve modern gömülü sistem tasarımı üzerine odaklanmaktadır.

Kaynak AdıTürLinkNot / Öneri
STM32 Education (BTK)Video / Dokümanhttps://www.btkakademi.gov.tr/portal/course/stm32-ile-gomul-yazilm-gelistirme-35649BTK üzerinden STM32 eğitimleri ve uygulamalı örnekler.
Miro Samek - Modern Embedded SystemsVideo / Makalehttps://www.youtube.com/playlist?list=PLb-MsRpo_wlLW0EWRpAqnbbDsf4kxSI1xModern gömülü sistem tasarımı ve uygulamaları.
Coşkun Taşdemir - Gömülü Sistemler SerisiVideo / Eğitimhttps://www.youtube.com/watch?v=LYGJ0sUCB5s&list=PLmkV2uU8kdpJ3J7Fd_i846_OrAcILV0GCGömülü sistemler temelleri ve STM32 projeleri.
ElectroBrains - STM32 ile Gömülü Sistemlere GirişVideo / Eğitimhttps://www.youtube.com/watch?v=0ErzhvmUwXg&list=PLtXAZpyAEX3_oMZNTz3CVuMqwRD2phxlKSTM32 ile uygulamalı gömülü sistem dersleri.
Sinyal ve Sistemler (Mühendislik)Online Kurshttps://www.udemy.com/course/sinyal-ve-sistemler-muhendislik/Sinyal işleme ve sistem analizini öğrenmek için uygundur.
Sayısal Sistemler (Dijital) (Logic, Mantık Devreleri)Online Kurshttps://www.udemy.com/course/saysal-sistemler-dijital-logic-mantk-devreleri/Dijital devre ve mantık bilgisi kazandırır; temel oluşturur.

5. Popüler Teknolojiler, Programlama Dilleri ve Kütüphaneler

Bu alanda sıklıkla kullanılan teknolojiler:

Araç / Dil / KütüphaneKullanım AmacıÖğrenme Kaynağı
CMikrodenetleyicileri programlamak için temel dilSTM32 Education (BTK), Fehmi UYAR, Coşkun Taşdemir
C++Daha karmaşık gömülü projelerde nesne yönelimli programlamaUdemy kursları, Fehmi UYAR
Arduino IDEArduino kartlarını programlamak ve test etmekArduino Resmi Eğitimleri, Robo90
STM32CubeIDESTM32 mikrodenetleyicileri geliştirmekSTM32 Education (BTK), ElectroBrains
FreeRTOSGerçek zamanlı işletim sistemi mantığını öğrenmek ve uygulamakGömülü Sistemler Eğitimi (Zenopix.com)

6. Örnek Projeler

Bu konuyu öğrenirken geliştirilebilecek örnek projeler:

Zorluk SeviyesiProjeProje AçıklamasıKullanılacak Teknolojiler
BaşlangıçLED Yakıp SöndürmeBasit bir LED’i yakıp söndürerek mikrodenetleyici ve Arduino IDE kullanımını öğrenmeArduino, C, Arduino IDE
BaşlangıçButon Kontrollü LEDButon ile LED’in açılıp kapanmasını sağlama; giriş/çıkış kontrolünü öğrenmeArduino, C, Arduino IDE
OrtaSıcaklık Sensörü ile Fan KontrolüSensör verisine göre fanın hızını kontrol etme; veri okuma ve PWM uygulamasıArduino/STM32, C, Sensörler, PWM
OrtaLCD ile Sayısal GöstergeSensör verilerini LCD ekranda görüntüleme; kullanıcı arayüzü deneyimiArduino/STM32, C, LCD ekran, Sensörler
İleriServo Motor ile Robot KolServo motorları kontrol ederek basit bir robot kol tasarlamaSTM32/Arduino, C/C++, Servolar, Sensörler
İleriIoT Sıcaklık ve Nem TakibiSensör verilerini Wi-Fi üzerinden buluta gönderme ve web uygulamasında göstermeESP32/STM32, C/C++/MicroPython, Sensörler, Wi-Fi, IoT Platformu