Kas 17

Tesla, Türkiye’de Gömülü Yazılım Geliştirme Üssü Kurar mı?

tesla-türkiye

Daha önce bir hayalimi anlattığım yazımda gömülü yazılımlar Türkiye’yi kurtarır mı? diyerek bir hayalimden bahsetmiştim. Türkiye bölgesinde gömülü yazılım alanında lider bir ülke olur mu diye sormuştum. O yazımdaki bir bölümde şunları yazmıştım:

Avrupalı otomotiv üreticileri ardı ardına “geleceğin akıllı otomobillerini üretmek için Türkiye’de tasarım üstleri kurmak zorundayız. Çünkü önümüzdeki yıllarda otomotiv alanında gelişmelerin büyük çoğunluğu gömülü yazılımlar sayesinde olacaktır ve bu yazılımların en iyileri Türkiye’de geliştiriliyor” şeklinde açıklamalarda bulunuyorlar.

Geçtiğimiz hafta Amerikalı elektrikli otomobil üreticisi Tesla’nın Türkiye ofisinin açıldığı haberi medyada yer aldı. Tabii ki açılan şirket Tesla ürünlerinin ülkemizdeki satışını gerçekleştirecek olan “satış ofisi” idi. Yani yine o bildik “Türkiye iyi bir pazar!” hikayesi.

Şimdi daha önce kurduğum hayale bir tane daha soru ekliyorum. Tesla Türkiye’de gömülü yazılım geliştirme üssü açar mı?

Şöyle bir düşünelim: Tesla mühendisleri şu anda hangi konular üzerine çalışıyorlar. İşin sadece elektronik ve gömülü yazılım kısımlarını düşünüyorum. Aklıma gelenler şunlar:

  • Güç elektroniği ve verimli enerji transferi sistemleri
  • Konfor ve eğlence sistemleri
  • Motor sürücüleri
  • Otonom sürüşle ilgili algoritmalar
  • Emniyet – kritik sistem geliştirme

Tesla’nın aradığı gömülü yazılım (firmware) mühendisliği pozisyonlarına bir bakalım isterseniz. Örneğin şu ilanda Tesla “Robotic Firmware” mühendisi arıyor. Artık otopilot ile kendi kendine giden araçlarla birlikte robotik ve otomotiv iç içe girmeye başladı.

Tesla’nın Linkedin’deki ilanı: https://www.linkedin.com/jobs2/view/79692117

Bu da diğeri: https://www.linkedin.com/jobs2/view/87381586

Otomotivde elektronik ve yazılımın ağırlığı zaten artmaya başlamıştı. Yeni nesil elektrikli araçlarla birlikte bu oran %80’lerin üzerine çıkmaya başlayacak gibi görünüyor. Yani artık otomobiller şasi, aktarma organları ve mekanik aksamları dışında büyük oranda elektronik ve yazılım mühendisliği ürünleri haline gelmeye başladılar. Yani bu işlerde bizler de varız diyeceksek üzerine çalışmamız gereken konular yukarıdaki ilanlardan az çok anlaşılıyor.

Tesla’nın yanında Google gibi birçok büyük firmanın otomotive ilgi göstermeye başladığını görüyoruz. Hatta Apple firmasının bile otomobil üretme projesi olduğu konuşuluyor.

Başta sorduğum soruya gelecek olursak, Tesla’nın şu aşamada burada bir yazılım üssü açmasına pek ihtimal yok gibi. Ama giderek büyük firmaların Türkiye’ye ilgi duymaya başladıklarını görüyoruz. Bunların bir kısmı ar-ge merkezi adı altında “ucuz mühendislik temin merkezi” olarak çalışıyor olsalar da ülkemiz açısından sevindirici gelişmeler. Tabi dileğimiz kendi teknolojilerimizi kendi markalarımız adı altında üretebilmek. Yüzde yüz yerli gibi anlamsız takıntılara kapılmadan tabii ki…

 

Kas 07

1 ve 0’lardan Arduino’ya: Buraya nasıl gelindi?

mother-board-581597_640

Bir şeyler programlamaya Arduino ile başlamış olabilirsiniz. İşlerin nereden gelip gittiğine kısaca bakmakta fayda var. Bilgisayar denilince aklımıza kullandığımız klavyesi ve faresi olan sıradan PC’ler gelse de dünyada birçok yerde işlemciler çalışıyor. İşte bu işlemciler elektronik devrelerin içerisinde beyin olarak çalışıyorlar. Hani araba tamircilerinin dediği gibi “abi arabanın beyni bozulmuş!”

Bugün elektronikte de bir cihaz tasarlarken devrelerin içerisinde işlemciler daha doğrusu mikrodenetleyiciler yer alıyor. Mikrodenetleyici de içerisinde işlemci, bellek, giriş çıkış devreleri vs.. içeren tek çiplik bir bilgisayar aslında. Bu mikrodenetleyiciler içerisindeki yazılımlarla belirli işleri yerine getiriyorlar. Demek ki bunlarda bir de yazılım giriyor işin içine. Bunlara “gömülü yazılımlar” deniliyor. İngilizcesi Firmware ya da embedded software olarak geçiyor.
Continue reading

Nis 04

Gömülü Yazılımlarda Assembly ve C Dilleri, Sürücüler, Kütüphaneler

source-code-583537_1280Gömülü sistemler programlamada çoğu zaman bazı kavramlar çok karışıyor. Onlara kısaca açıklık getirmeye çalışacağım. Aslında bu konuların birçoğunun tartışması web, mobil ve masaüstü yazılım dünyalarında yıllar önce geride kalmış olsa da gömülü sistemlerde hala tartışılan ve bir anlamda “yeni keşfedilen” durumlar.
Continue reading

Şub 06

Donanımcılar yazılımcı, yazılımcılar donanımcı olurken…

Elektronik ve yazılım dünyasında ilginç bir dönüşüm yaşanıyor. Yazılım yada donanımcı olarak bilinen birçok firmanın artık dönüşüme uğradığını görüyoruz. Örneğin yıllardır yazılım firması olarak bildiğimiz Microsoft’un kendi markasıyla klavye, mouse, oyun konsolu ürettiğini görüyoruz. Son olarak da Hololens adlı bir arttırılmış gerçeklik (augmented reality) ürününü tanıttılar.

Donanımcıların yazılıma geçişini de birçok yarı iletken / mikroçip firmasında görmekteyiz. Geçmişte çeşitli yarı iletken ürünleri üreten firmaların bugün yazılım geliştirme araçları, yazılım kütüphaneleri geliştirip bunları müşterilerine sunuyor. Örneğin ST Microelectronics gibi bir firma kendi mikrodenetleyicilerinin programlanması için çeşitli yazılım kütüphaneleri yayınlıyor. Donanımcı bir geçmişten geldikleri için bu konuda bazı sıkıntılar da yaşanıyor. İlk başta şirket dışı gruplara yazdıkları kütüphanelerde birçok sıkıntı yaşanmıştı. Şimdi sanırım kendi içerisindeki ekiplere bu işleri yaptırıyorlar.

Continue reading

Ara 23

C Programlama Dilinde En Sık Yapılan 10 Hata

source-code-583537_1280

C programlama dilinin tarihi 70’li yıllara dayansa da günümüzde hala yaygın olarak kullanılan dillerden birisi. Özellikle gömülü sistemlerde en çok kullanılan dil olma özelliğini koruyor. Oldukça esnek yapısıyla assembly’de yazılmış programlara yakın performanslı programlar yazılmasını sağlıyor. Ancak bu esneklik bütün sorumluluğu programcıya bıraktığından birçok hatanın yapılmasına da yol açabiliyor. Zaman zaman birçok güvenlik açığının sebebi de olabilen C programlama diline yapılan hatalardan en yaygın olan 10 tanesini burada paylaşacağım.

  1. Noktalı virgülü kullanılmaması gereken yerde kullanmak
    C’de zaman zaman karıştırılan durumlardan birisi de noktalı virgülün (;) kullanımıyla ilgili. Hemen hemen bütün ifadelerin sonuna konulduğu halde if, for, while gibi ifadelerin sonlarında noktalı virgül olmaması gerektiği bazen unutulabiliyor. O zaman da aşağıdaki koddaki gibi durumlar ortaya çıkabiliyor.

    for( x = 1; x<10; x++ );
    {
    printf( "%d\n", x )
    }

    Yukarıdaki örnekte for ifadesi ile 1’den 9’a kadar olan sayıların yazdırılması amaçlanıyor. Ancak for ifadesi sonundaki noktalı virgün yüzünden for ifadesinin sonrasında “boş” bir ifade varmış gibi işlem yapılıyor ve prinf() fonksiyonu 1 kere çağırılıp devam ediliyor.

  2. Süslü parantez kullanılmayan if ifadeleri
    if ( degisken == 12) 
    fonk1();
    fonk2();

    Continue reading