YAPAY ZEKA MÜHENDİSLİĞİ | |||||
Lisans | TYYÇ: 6. Düzey | QF-EHEA: 1. Düzey | EQF-LLL: 6. Düzey |
Ders Kodu | Ders Adı | Yarıyıl | Teorik | Pratik | Kredi | AKTS |
CMP3010 | Gömülü Sistem Programlama | Bahar | 2 | 2 | 3 | 6 |
Öğretim Dili: | English |
Dersin Türü: | Must Course |
Dersin Seviyesi: | LİSANS |
Dersin Veriliş Şekli: | Yüz yüze |
Dersin Koordinatörü: | Dr. Öğr. Üyesi TARKAN AYDIN |
Opsiyonel Program Bileşenleri: | Yok |
Dersin Amacı: | Gömülü Sitemler dersi, kod yazmanın yanısıra devre ile uğraşmayı da gerektiren uygulamalı bir derstir. Mikroişlemciler, sayısal devre tasarımı, işletim sistemleri, yazılım geliştirme ve endüstriyel otomasyon gibi alanların kesişim noktasındadır. Bu derste öğrenciler gerçek zamanlı kısıtları karşılama, iş kesme ve gecikme üretimi, seri haberleşmenin kullanımı gibi konularda bilgi edinme şansı bulurlar. Öğrenciler, gömülü sistemler için yazılım geliştirme ortamlarını ve donanım emülatörlerini kullanarak, bunun yanında gerçek devreler üzerinde çalışıp devre parçalarını fiziksel olarak birleştirerek teorik bilginin yanında uygulamaya yönelik beceriler de geliştirirler. |
Bu dersi başarıyla tamamlayabilen öğrenciler; Bu dersi alan bir öğrenci aşağıdakileri yapabiliyor olacak I. Elektrikli ve elektronik aletler için gömülü uygulamalar geliştirebilecek, II. Otomasyon sistemleri için gömülü çözümler geliştirebilecek, III. İstenilen gömülü bir sistem için C programlama dilini kullanarak etkin gömülü kod yazabilecek, IV. Gerçek zamanlı girdi/çıktı gerektiren gömülü sistemleri tasarlayıp geliştirebilecek, V. AtMega platfomarını programlayarak gömülü sistemler geliştirebilecek, VI. Gömülü bir uygulamanın gerekliliklerini belirleyebilecek ve onu istenilen platformda tasarlayıp geliştirebilecek. |
Derse Giriş: Gömülü Sistemler. Gömülü yazılım geliştirme ortamının tanıtımı (Keil C derleyicisi ve donanım simülatörü). Gömülü Mikroişlemciler. Donanım Temelleri & Bilgisayar Mimarisi Tekrarı. (Gömülü sistemler terminolojisi, kapılar, saatler, zamanlama diyagramları, hafıza, mikroişlemci saati, vs.). C Programlama. AtMega mikroişlemcinin girdi/çıktı pinlerini okuyup yazmak üzerine çalışma. Gerçek zaman şartlarını sağlamak, donanımsal gecikmeler ve kesilmeler. Kesilmeler ve Zamanlayıcılar. Gömülü işletim sistemi yazımı. Çok durumlu sistem geliştirme. RS232 seri iletişim. RS232, SPI, I2C, CAN ve kablosuz haberleşme. |
Hafta | Konu | Ön Hazırlık |
1) | Derse Giriş: Gömülü Sistemler. Gömülü yazılım geliştirme ortamlarının tanıtımı (Derleyici ve donanım simülatörü). | |
2) | Gömülü Mikroişlemci mimarileri. ATMega328 mikroişlemcileri için örnek uygulamalar. | |
3) | Donanım Temelleri & Bilgisayar Mimarisi Tekrarı. (Gömülü sistemler terminolojisi, kapılar, saatler, zamanlama diyagramları, hafıza, mikroişlemci saati, vs.) | |
4) | Digital girdi ve çıktı | |
5) | Analog giriş/çıkış işlemleri | |
6) | Gerçek zaman şartlarını sağlamak, donanımsal gecikmeler ve kesilmeler. | |
7) | Zamanlayıcılar ve Kesilme servis fonksiyonları | |
8) | Aktüatör kontrolü | |
9) | RS232, SPI, I2C, CAN ve kablosuz haberleşme I | |
10) | RS232, SPI, I2C, CAN ve kablosuz haberleşme II | |
11) | Sensörler ve aktüatörler I | |
12) | Sensörler ve aktüatörler II | |
13) | Gerçek Zamanlı İşletim sistmleri | |
14) | Proje Sunumları. |
Ders Notları / Kitaplar: | Embedded C, Michael J. Pont, Addison Wesley 2005. |
Diğer Kaynaklar: |
Yarıyıl İçi Çalışmaları | Aktivite Sayısı | Katkı Payı |
Devam | 14 | % 0 |
Laboratuar | 12 | % 15 |
Küçük Sınavlar | 7 | % 15 |
Projeler | 1 | % 15 |
Ara Sınavlar | 1 | % 20 |
Final | 1 | % 35 |
Toplam | % 100 | |
YARIYIL İÇİ ÇALIŞMALARININ BAŞARI NOTU KATKISI | % 50 | |
YARIYIL SONU ÇALIŞMALARININ BAŞARI NOTUNA KATKISI | % 50 | |
Toplam | % 100 |
Aktiviteler | Aktivite Sayısı | Süre (Saat) | İş Yükü |
Ders Saati | 14 | 2 | 28 |
Laboratuvar | 13 | 2 | 26 |
Sınıf Dışı Ders Çalışması | 15 | 8 | 120 |
Proje | 1 | 34 | 34 |
Ara Sınavlar | 1 | 2 | 2 |
Final | 1 | 2 | 2 |
Toplam İş Yükü | 212 |
Etkisi Yok | 1 En Düşük | 2 Düşük | 3 Orta | 4 Yüksek | 5 En Yüksek |
Dersin Program Kazanımlarına Etkisi | Katkı Payı | |
1) | Matematik, fen bilimleri ve yapay zeka mühendisliği konularında yeterli altyapıya sahiptir. | 5 |
2) | Matematik, fen bilimleri ve yapay zeka mühendisliği alanlardaki kuramsal ve uygulamalı bilgileri mühendislik çözümleri için beraber kullanır. | 5 |
3) | Mühendislik problemlerini saptar, tanımlar, formüle eder ve çözer, bu amaçla uygun analitik yöntemler ve modelleme tekniklerini seçer ve uygular. | 5 |
4) | Bir sistemi, sistem bileşenini ya da süreci analiz eder ve istenen gereksinimleri karşılamak üzere gerçekçi kısıtlar altında tasarlar; bu doğrultuda modern tasarım yöntemlerini uygular. | 5 |
5) | Mühendislik uygulamaları için gerekli olan modern teknik ve araçları seçer ve kullanır. | 5 |
6) | Deney tasarlar, deney yapar, veri toplar sonuçları analiz eder ve yorumlar. | 5 |
7) | Bireysel olarak ve çok disiplinli takımlarda etkin olarak çalışır. | |
8) | Bilgiye erişir ve bu amaçla kaynak araştırması yapar, veri tabanları ve diğer bilgi kaynaklarını kullanır. | |
9) | Yaşam boyu öğrenmenin gerekliliği bilincindedir; bilim ve teknolojideki gelişmeleri izler ve kendini sürekli yeniler. | |
10) | Alanının gerektirdiği en az Avrupa Bilgisayar Kullanma Lisansı İleri Düzeyinde bilgisayar yazılımı ile birlikte bilişim ve iletişim teknolojilerini kullanır. | |
11) | Sözlü ve yazılı etkin iletişim kurar; bir yabancı dili en az Avrupa Dil Portföyü B1 Genel Düzeyinde kullanır. | |
12) | Mühendislik çözümlerinin ve uygulamalarının evrensel ve toplumsal boyutlardaki etkilerinin bilincinde olur; girişimcilik ve yenilikçilik konularının farkında olur ve çağın sorunları hakkında bilgiye sahiptir. | |
13) | Mesleki ve etik sorumluluk bilincine sahiptir. | |
14) | Proje yönetimi, işyeri uygulamaları, çalışanların sağlığı, çevre ve iş güvenliği konularında bilinç; mühendislik uygulamalarının hukuksal sonuçları hakkında farkındalığa sahiptir. |