IoT Geliştirmede Gömülü Linux' un 3 Faydası

IoT Geliştirmede Gömülü Linux’ un 3 Faydası

                   Geliştirmede Gömülü Linux’un Faydaları

Gömülü geliştirme, masaüstü uygulama geliştirmeden çok farklı. Gömülü sunucular ve sensör arayüzleri, geleneksel bilgisayarların yaptığı kablolu kablolu ethernet, Wi-Fi ve Bluetooth’a aynı kolay erişimi sunmayabilir. Ancak aynı Linux kaynak kodunu birden fazla uygulamada kullanma yeteneği, Linux’u, Linux ve IoT’nin geliştirilmesi ve entegrasyonu için tercih edilen işletim sistemi yapar.

                                    3 Bölümde Gömülü Linux ve IoT

Nasıl çalıştığını göstermek amacıyla Linux gömülü ve Iot entegre edilmiştir, bir tarım örneğe Bakalım. Bu örnekte, IoT kontrolü ve edinimi için kullanılan üç bilgisayar sistemleri var. Bu sistem, tarım amaçlı su, nem ve sıcaklığı izlemek için tasarlanmıştır.

1. Masaüstü Bilgisayarı

Bölüm 1 Linux çalıştıran bir masaüstü bilgisayardır.

İki işlevi vardır:

1.) Çiftlik alanı sensör girişi için kayıt aralığını kontrol etmek için

2.) Sulama sistemlerinin kontrol ve performansını izleyen raporlara veri kaydetmek ve formatlamak, sulama sistemlerinin sadece önceden belirlenmiş düşük nem ve sıcak sıcaklık aralığı nedeniyle gerektiğinde çalışmasını sağlamak. Bu bilgisayarda Intel / AMD 64 bit işlemci, 16 GB RAM ve çeşitli USB 3.0 bağlantı noktaları bulunur ve günümüz standartlarına göre tipik bir masaüstü sistemi olarak kabul edilir.

2. Gömülü Sunucu : Bölüm 2, Linux’u bir microSD karttan önyükleyen ve 2 GB eMMC belleğe, 4 USB 2.0 bağlantı noktasına, bir HDMI bağlantı noktasına, Wi-Fi ve Bluetooth 5.2 LE ve 1 GB Ethernet bağlantı noktasına sahip bir ARM 64 bit dört çekirdekli sistemdir. Wi-Fi aracılığıyla bir kablosuz yönlendiriciye bağlanır ve 20 mil uzaklıktaki ve kablolu bir İnternet bağlantısına bağlı olan masaüstüyle iletişim kurar.

Bu gömülü Linux birimi, işletim sistemi ve uygulamaları için microSD kart veya Wi-Fi üzerinden güncelleme alır. Bu bilgisayar, saha sensörlerini okumayı yöneten, sensörün donanım yazılımını güncelleyen ve alan koşullarını ve sensör verilerini yönetmek, kontrol etmek ve raporlamak için ofis sunucusuyla iletişim kuran küçük bir gömülü Linux sunucusudur.

3. Sensör Arayüzü ve Kontrol Cihazı : Bölüm 3, fabrikada programlanan ve sıcaklık ve nem sensörlerine sahip, posta pulu büyüklüğünde bir Linux sistemidir. 1 GB eMMC belleğe sahiptir ve bir microSD karttan önyüklenir. Bu cihaz, bir USB portu, Wi-Fi ve Bluetooth bulunan tek çekirdekli bir ARM işlemcisidir.

Diğer işletim sistemlerinden farklı olarak, Linux tamamen ölçeklendirilebilir; bu da ASUS Tinkerboard veya Raspberry Pi gibi IBM sx390 ana bilgisayarlarında ve küçük kredi kartı boyutunda bilgisayarlarda çalışabileceği anlamına gelir. Linux, çok çeşitli işlemci mimarilerini ve yapılandırmalarını destekler. Örnekte gösterildiği gibi, bu gömülü ağ, sensör kontrolü ve veri toplama için tek çekirdekli işlemciye ek olarak Intel ve ARM’den çok çekirdekli işlemcilerden oluşuyor.

IoT Geliştirmede Gömülü Linux’un Yararları : Gördüğünüz gibi, bu yapılandırma çeşitli iletişim protokolleri ve topolojileri kullanır. Gömülü geliştirme, masaüstü uygulama geliştirmeden çok farklı. Kablolu Ethernet, Wi-Fi ve Bluetooth dizüstü ve masaüstü bilgisayarlarda yerleşiktir, ancak yerleşik geliştirme için hazır değildir. Dolayısıyla, Linux kullanmanın bir yararı, ortak ağ topolojileri ve protokollerinin mevcudiyeti olacaktır. Gömülü donanımı dikkatlice seçerek, ağ üzerinde aynı bileşenleri kullanabilirsiniz ve işlemci mimarisi için endişelenmeyin. Ardından, ihtiyacınız olan ağ ve iletişim protokolleri için sürücüleri kullanan ve tüm bilgisayarlarda tutarlı sürümler sağlayan bir Linux sürümü oluşturmaya odaklanabilirsiniz.

Ardından, test etmeyi düşünün. Sürücüleri ve uygulamaları iki veya üç işlemci mimarisinde nasıl test ediliyor? Linux kullanmanın bir diğer avantajı ortak geliştirme ve hata ayıklama araçlarıdır. Bu örnekte, geliştirme platformları, derleyiciler, editörler, hata ayıklayıcılar ve kod analizörleri sağlayan şirket, Linux destekli bir mimaride aynı araçları kullanabilir. Masaüstünde kullanılan her şey, yerleşik sunucu ve sensör arayüzü ve denetleyicisi için de kullanılabilir.

Açık kaynak kodlu yazılımın kullanılması, en kötü senaryo olarak, geliştirme platformunun hazırlanması için araçların eklenmesi bir veya iki saat sürmesi gerektiği anlamına gelir. Aynısı hata ayıklayıcılar ve kod performansı analizörleri için de geçerlidir, bu nedenle geliştirme yazılımının maliyeti, bu araçları indirmek ve muhtemelen bu araçları oluşturmak için harcanan zamandır. Buna karşılık, bu araçları üçüncü taraf kaynaklardan satın almak, on binlerce dolara mal olabilir.

Linux ile konsolide geliştirme sunucularından da faydalanabilirsiniz. Geliştiriciler, tüm geliştirme ve hata ayıklama işlemlerini laboratuardaki tek bir sunucuda veya masaüstü sistemde birleştirebilir. Bu, kodun her bir işlemci mimarisi için çapraz hedeflenmiş ve uygulamaları tek bir makineden yerel hedeflerine dağıtarak hata ayıklama yapılabileceği anlamına gelir.

Çoklu Mimariler İçin Geliştirme ve Hata Ayıklama : Birden fazla platform için gömülü Linux uygulamaları geliştirmek için Linux destekli çapraz derleyiciler kullanmak büyük bir maliyet tasarrufu faktörüdür. Linux olmadan bu işlem son derece zaman alıcı ve zordur.

Öncelikle, makinede C / C ++ kaynak kodunuzu geliştirmeniz, derlemeniz ve ardından hata ayıklamanız gerekiyordu. Ardından, kaynak kodunu başka bir platforma taşımak ve aynı işlemi tekrar başlatmak zorundaydınız. Linux standardizasyonunun, aynı kaynak kodun sayısız platformda oluşturulmasına nasıl izin verdiği gibi, aynı süreç çapraz hedefleme uygulamaları için de kullanılabilir. Aynı araçlar, derleyiciler ve hata ayıklayıcılar platformlar arası uygulama geliştirme ve Linux için kullanılır. Kullanılmayan, Yocto özel uygulama taşıma için de tasarlanmasına rağmen, herhangi bir desteklenen işlemci mimarisi için özel Linux sistemleri oluşturmak için özel olarak tasarlanan Buildroot ve Yocto gibi araçlardır.

Yani, süreç oldukça basittir. Eclipse, çekirdekleri, sürücüleri ve uygulamaları düzenlemek ve oluşturmak için bir araçtır. Hata ayıklamak için, programlar hedeflenen her platformdaki paylaşılan bir dizine dağıtılır ve GNU hata ayıklayıcısı (GDB) program yürütmeden önce hedef makineye eklenecek şekilde ayarlanır. Ardından, program yürütüldüğünde, tek bir C veya C ++ kaynak kodunda hata ayıklama işlemi, kod geliştiricinin yerel olarak hata ayıklanan bir program için yapacağı gibi, koddaki kesme noktalarını ayarlayarak yapılabilir.

Aynı Anda Birden Çok Mimaride Hata Ayıklama : Burada tanımlandığı gibi bir IoT geliştirme ortamında, GDB uygulamasının birden fazla örneğini çalıştırmak mümkündür, bu da aynı sistemin hem geliştirme hem de hata ayıklama amacıyla aynı sistemin kullanılmasına izin vermektedir. Bu nedenle, GDB’yi bir klavyeden ve monitörden çalıştırırken haberleşme uygulamaları ve protokolleri değiştirilebilir, derlenebilir, hata ayıklanabilir ve ayarlanabilir. Bu aynı zamanda Linux, Linux çekirdeği ve çekirdek ve kullanıcı alanı aygıt sürücüleri için de geçerlidir. Bu özellikler, gerçek dünyadaki bir geliştirme ortamında ciddi zaman ve maliyet tasarrufu demektir. Linux’taki platformlar arası geliştirme sayesinde, birleştirilmiş masaüstü, yerleşik sunucu ve Linux tabanlı IoT sensör istemcileri için uygulamaları hızlı bir şekilde değiştirme, hata ayıklama ve ayarlama yeteneğine sahibiz.

Bundan önce, gömülü donanım maliyetleri ucuzdu, ancak yazılım geliştirme ve dağıtım maliyetleri bugün olduğundan çok daha fazlaydı. Açık kaynaklı yaklaşım, yazılım geliştirmenin daha uygun maliyetli olmasını sağlayarak, yetenekli geliştiricilere ceza vermeden ve kapalı kaynaklı işletim sistemlerinde bulunmayan işlemleri ve teknikleri kullanarak yazılım geliştirme maliyetlerini düşürdü.

  • Site İçi Yorumlar
  • Aşağıdaki Boş Yeri Doldurun *Captcha loading...