An itibariyle endüstriyel nesnelerin interneti (IIoT) için piyasaya sürülmüş envai çeşit gömülü bilgisayar çözümü bulunuyor. Çok çeşitli IIoT Edge Gateway’ler (uç ağ geçitleri), tek kart bilgisayarlar ve geliştirme kartları, IIoT uygulamanızda kullanmanız için geniş bir yelpazede sunuluyor. Raspberry Pi gibi tek kart bilgisayarlar $40 gibi fiyatlara dahi alınabiliyor. Dolayısıyla bu tür geliştirme kartları arasından seçim yaparken en düşük fiyat vereni tercih etmek mantıklı gibi görünüyor.
Peki, IIoT uygulamalarının endüstriyelliği düşünüldüğünde,bu uygulamalara bir bilgisayar çözümü seçerken neleri göz önünde bulundurmak gerekiyor? Ucuz geliştirme kartları IIoT uygulamalarının karmaşık taleplerini karşılayabilir, kritik endüstriyel faaliyetlerinizde güvenilir performans sağlayabilir mi? IIoT prototiplerinizi tüm programlama ihtiyaçlarınızı karşılayabilecek, özelleştirilmiş bir endüstriyel çözüm haline getirmenin en iyi yolu nedir? Bu yazıda IIoT uygulamanızda tek kart bilgisayar veya geliştirme kartı kullanmak mı, endüstriyel tip bir IIoT gateway çözümü tercih etmek mi daha iyi, buna cevap arıyoruz. Her iki opsiyonun avantaj ve dezavantajlarını ele alıyoruz. Bu incelemeyi yaparken ise aşağıdaki noktalara değiniyoruz:
- Geliştirme kartları ile endüstriyel tip çözümler arasındaki farklar
- Donanımsal açıdan bakış
- Kuruluma hazır platform
- Çoklu IO desteği
- Endüstriyel güvenlik standartlarının uygunluk
- IP (ingress protection) koruma sınıfı
- Ürün garantisi
- Yazılımsal açıdan bakış
- Yazılım hizmeti ve destek
- Platform optimizasyonu
- Araç ve kütüphaneler
- Uzun vadede destek
- Siber güvenlik
- Açık platform avantajı
Geliştirme Kartları ve Endüstriyel Tip Çözümler
Qualcomm DragonBoard 410c, Raspberry Pi, Arduino, Intel Galileo, BeagleBone Black, ve Spark Core gibi geliştirme kartları, otomasyon fikirlerinizi test etmek için maliyet etkin bir yol sunar. Ancak bu fikirleri gerçek dünyaya taşıdığınızda, IIoT uygulamaları gibi endüstriyel senaryolar söz konusu olduğunda bu ortamlara uygun endüstriyel tip bir gateway çözümü tercih etmek daha doğrudur. Bunun en önemli nedeni bu donanımların test edilmiş ve onaylanmış olması, yüksek performans, istikrarlı çalışma ve güvenli bir sistem sağlamasıdır. Bu özellikler, otomasyon ihtiyaçlarınızın büyük bölümüne halihazırda cevap verecektir.
Donanımsal Açıdan
Programlama platformlarını değerlendirirken kullanıcıların ilk baktığı şey fiyattır. Üstelik IIoT uygulamalarında haberleşme ağının dağınık mimarisi ve ağ üzerine kurulacak cihaz sayısının fazlalığı, kurulum masraflarının da yükselmesi anlamına gelecektir. Geliştirme kartları, özellikle uygulamanızın kavram kanıtlama (PoC) aşamasında, bir prototip oluştururken önemli avantaj sağlayabilir. Ancak bu fikirleri endüstriyel bir ortamda uygulamaya koyduğunuzda işler değişebilir. Çoğu geliştirme kartı kurcalanmak için tasarlanmıştır, genellikle karmaşık endüstriyel tip uygulamalarda yetersiz kalırlar. Bunun nedenlerini 5 başlık altında özetleyebiliriz:
1. Kuruluma Hazır Platform
Geliştirme kartları genellikle temel bileşenlerden oluşan, kasasız, uygulamanızın özel ihtiyacına göre birleştirilmesi gereken parçalardır. Piyasadaki çoğu geliştirme kartı güç arayüzü, işletim sistemi, hafızası veya harici kasası olmayan bir bilgisayar kartı olarak sunulur. Bu kartları projenizde kurmaya hazır olduğunuzda ihtiyaç duyulan tüm arayüzleri teker teker bir araya getirmeniz gerekir. Bu, zaman alıcı, emek gerektiren bir süreçtir. Endüstriyel programlama platformları ise genellikle kuruluma hazır şekilde gelir, aşağıdaki özelliklerden bazılarına veya hepsine sahiptirler:
- Çeşitli montaj seçenekleri sunan, uç endüstriyel koşullara dayanıklı tasarım
- Özel işletim sistemi, araçlar, kütüphaneler ve yazılımsal uygulamalar
- Yerleşik uzaktan bağlantı özellikleri ile gelen çoklu I/O ve haberleşme arayüzüleri
- Modbus gibi endüstriyel protokolleri destekleme, saha cihazlarından veri toplamaya yönelik optimizasyon
- Kolay denetim ve sorun giderme kabiliyeti
- Ek özelleştirme, diğer sistemlere entegrasyon ve uygulamalar için API
Uygulama ihtiyaçlarınız ve projenizin ne kadar karmaşık olduğuna da bağlı olarak, bu tarz bir programlama platformunu kutusundan çıkarıp anında uygulamanızda devreye almanız mümkün olabilir. Bu da, piyasaya sürüm sürenizi kısaltacaktır.
2. Çoklu IO Desteği
Ucuz geliştirme kartları genellikle yalnızca bir Ethernet ve birkaç USB girişi ile sunulur. Saha enstrümanları ile uzaktan veri toplamada kullanılan kablosuz arayüzleri bağlamak için gerekli seri portlar genellikle bu kartlarda bulunmaz. Ek olarak istenen her arayüzün bizzat yapılması, entegre, test ve optimize edilmesi gerekir. Endüstriyel bilgisayar çözümleri ise büyük ölçekli endüstriyel kurulumlarda maksimum esneklik sağlayabilmek için genellikle Ethernet, seri, GSM gibi çok sayıda haberleşme arayüzüyle sunulur.
3. Endüstriyel Güvenlik Standartlarına Uygunluk
UL ve CE sertifikaları, endüstriyel ortamlarda kurulmuş donanımlarda mutlaka bulunması gereken standartlardır. Bu sertifikasyon standartları yalnızca kullanıcılar değil, aynı zamanda donanım üreticileri için de geçerlidir. Geliştirme kartları genellikle bu standartlarla uyumlu olmaz. Dolayısıyla, bu kartların zorlu endüstriyel ortamlarda çalışabileceğinin garantisi yoktur. Endüstriyel bilgisayar çözümleri ise çeşitli sertifikasyon gereksinimlerini karşıladıklarını kanıtlayabilmek için zorlu testlerden geçer. Endüstriyel uygulamanızın ihtiyaçlarına bağlı olarak, ilgili alanda güvenle kullanıma yönelik optimize edilmiş ve sertifikalandırılmış bir endüstriyel bilgisayar çözümü seçebilirsiniz.
4. IP Koruma Sınıfı
Endüstriyel donanımlar, yüksek düzeyde, düzenli olarak toz ve suya maruz kalma riski taşırlar. Endüstriyel toz ve suya karşı koruması olmayan herhangi bir donanımın arızalanması muhtemeldir. Çoğu geliştirme kartı bir kasaya sahip olmadığından, dolayısıyla koruyucu kaplaması bulunmadığından, elektriksel devreleri nem ve aşındırıcı öğelere karşı korunamaz. Bu da bu kartların kullanım ömrünü kısaltır. Öte yandan endüstriyel bilgisayarların IP koruma gereksinimlerine uygun olması gerekir. Su ve toza karşı yüksek düzeyde koruma garanti eden bir IP sertifikası, bu bilgisayarları açık deniz, petrol, doğal gaz gibi uygulamalarda kullanabilmek için şarttır. IP standartlarına uyumluluk, bu tür endüstriyel PC platformlarının zorlu endüstriyel ortamlara dayanıklı olacağını ve uzun ömürlü olacağını güvenceye alır.
5. Ürün Garantisi
Geliştirme kartlarının garanti süresi genellikle 1 yıldır. Endüstriyel tip bir ürün ise en az 5 yıl garanti vermelidir. Endüstriyel donanımların yenilenmesinin yüksek maliyeti nedeniyle, bu alandaki kullanıcılar donanımlarının 10-15 yıl veya daha uzun süre sorunsuz çalışmasını bekler. Bu standart endüstriyel bilgisayar çözümleri için de geçerlidir. Geliştirme kartlarının, endüstriyel tip ürünler için konulan ürün ömrü şartlarına uyabilmesi mümkün değildir.
Özetle, geliştirme kartları ilk bakışta düşük maliyetleri ve popülerlikleri nedeniyle çekici gelebilir. Ancak, özellik ve işlev yetersizlikleri düşünüldüğünde bu tür geliştirme kartlarını IIoT uygulamalarında kullanmanın gerçek maliyetinin, test edilmiş ve onaylanmış bir endüstriyel bilgisayar çözümüne kıyasla çok daha yüksek olabileceği açıktır.
Yazılımsal Açıdan
Bir IIoT sisteminde yazılım bileşenleri, bilgisayarlar da dahil olmak üzere endüstriyel donanımların kabiliyetlerini genişletmek için kullanılır. Bunun yapıldığı uygulamalara veri toplama, cihaz denetim ve kontrolü ile veri dönüşümü örnek verilebilir. Yazılım uygulamalarının yanı sıra bu uygulamaların yer aldığı işletim sistemlerini ve yazılımı özelleştirme veya yeni bir yazılım geliştirmede kullanılan paketleri de göz önünde bulundurmak gerekir. Aşağıdaki unsurlar yazılım geliştirme maliyetlerinizi düşürürken piyasaya sürüm sürenizi de kısaltır.
1. Yazılım Hizmeti ve Desteği
Yazılımların danışma ve destek hizmetleri, geliştiricilerin sistemdeki belirli yazılım bileşenleri hakkında yeterli bilgiye sahip olmadığı veya günlük olarak ortaya çıkan sorunları çözemediği zaman dayandığı yaşam hatlarıdır. Örneğin, bir geliştirici işletim sistemiyle alakalı bir sorunla karşılaştığında ve buna çabuk çözüm sağlayamadığında, tekerleği baştan icat etmek yerine ürün destek ekibine ulaşarak, benzer sorunları çözmede onların mevcut deneyim ve uzmanlığından yararlanabilir. Böylece yazılımcı, platformla alakalı sorunları çözmeye zaman harcayacağına geliştirmekte olduğu uygulamalara odaklanabilir. Bir geliştirme kartı kullanırken bu tarz sorunlarla karşılaştığınızda ise yapabileceğiniz şey, sorularınızı yazılımcı platformlarında paylaşmak ve başka bir kullanıcının da aynı sorunla karşılaştığını, çözüm bulduğunu ve paylaşımınıza yanıt vereceğini ummaktır.
Bunun yanı sıra bir gömülü bilgisayar platformu geliştirmek bu tarz sistemlerin nasıl çalıştığına dair derinlemesine bilgi gerektirir. Örneğin, modern bir Arm tabanlı platform, kök dosya sistemi için bir NAND/NOR flash bellek ile gelir. Deneyimsiz bir yazılımcının, gerekli onay olmadan sıkça veri okuyup yazan bir uygulama tasarladığına çokça rastlanır. Oysaki bu durum, hard drive performansının kısıtlanmasına neden olur. Buna ek olarak bu durum hard diskte bozuk (bad) sektörlerle ve niyahetinde başlatma hatasıyla (boot failure) sonuçlanabilir. Eğer platform için bir yazılım desteği ve danışma firmasıyla anlaşırsanız, onlar uygulamanızı daha iyi tasarlamanıza yardımcı olabilir, geçici veriyi RAM dosya sisteminde nereye kaydedebileceğiniz veya en iyi uygulamalar konusunda size önerilerde bulunabilirler.
Çoğu endüstriyel PC platformu, aralarından seçebileceğiniz farklı seviyelerde yazılım hizmet ve destek paketleriyle sunulur. Biz, IIoT uygulamalarınız için donanım ve AR-GE desteğinin yanı sıra sorun çözmede destek alabileceğiniz yazılım hizmeti ve teknik destek de veren bir firmayla çalışmanızı öneriyoruz. Destek ekibi karşılaştığınız problemlerden ders çıkarıp, değerli deneyimler elde ederken, siz de onların uzmanlığından yararlanabilirsiniz. Böylece ilgili her iki taraf da kazanmış olur.
2. Platform Optimizasyonu
Donanım üreticileri çoğu zaman, donanım platformlarıyla paket halinde USB veya PCIe arayüzü gibi uç bileşenler entegre etmeye uğraşmaz. Platformlarının bir parçası olarak genellikle üçüncü parti bileşenler kullanır, bileşenlerin uyumluluğunu da sıkı bir testten geçirmeyebilirler. Donanım bileşenlerine ek olarak, üreticilerin donanım platformunun bütününü optimize edecek adımları da atması gerekir. Başlatma hızı, kernel ve cihaz sürücüsü entegrasyonu gibi öğeler bu adımlara dahildir.
Cihaz sürücülerini ve indirilecek araçları parça parça sunmak çok kullanışlı değildir, kullanıcılar özellikle çoklu cihaz sürücüleri söz konusu olduğunda, cihaz sürücülerinin işlevselliği konusunda sıkıntılarla bizzat başa çıkmak zorunda kalabilirler. Hatta bazı uç durumlarda bu sürücülerin işletim sistemini bozması bile mümkündür. Önerimiz, test edilmiş ve onaylanmış, tam yazılım seçeneği sunan bir donanım platform sağlayıcısını tercih etmenizdir. Bu seçim size zaman kazandıracak, çok daha hızlı biçimde stabil uygulama ve çözümler geliştirmenize yardımcı olacaktır.
İşletim sistemi söz konusu olduğunda ise, size temel bir işletim sistemi veren bir firmadan ziyade ince ayarlı ve geliştirme ihtiyaçlarınıza yönelik optimize edilmiş bir sistem sunan firmaları seçmenizi öneririz. Bu firmalar endüstriyel uygulamanızda kullanmayacağınız gereksiz süreç ve uygulamaları kaldırmanıza yardımcı olmalıdır. Endüstriyel uygulamanıza en uygun kernel’i inşa etmede sizinle birlikte çalışmalı, sürekli olarak sistem yamaları ve güvenlik iyileştirmeleri sağlamalıdırlar.
3. Araç ve Kütüphaneler
Yazılım araçları ve kütüphaneler, bir yazılımcının en büyük dostudur. Herhangi bir donanım platformu için başarının anahtarı, geniş bir kütüphane ve araç seti sunması, bunlarla platformu özelleştirilebilir ve daha kullanıcı dostu hale getirmesidir. Bu kütüphaneler olmadan yazılımcılar platformla alakalı işlevleri oluşturmak için çok zaman harcamak zorunda kalır. Onun yerine yeni uygulamalar yazmaya zaman harcamak çok daha mantıklıdır.
Donanımların otomatik tanılama işlevleri de endüstriyel ortamlar için son derece kullanışlıdır. Örneğin, endüstriyel ortamlarda kendini tanılamayı tetikleyen bir tuş basma işlevi, sahadaki olası problemleri hızla analiz etmeye yardımcı olur. Sistem kayıt, varsayılanı geri yükleme, otomatik çevirme gibi kullanışlı işlevler ile Wi-Fi ve GSM sinyallerini okuyabilen araçlar, bir yazılımcının sorun giderme konularına ayırması gerekecek zamanı, özellikle de sistem bölme (system partition) ile alakalı konular söz konusu olduğunda, önemli ölçüde kısaltır. Bu, aynı zamanda yazılımcıların tüm AT komutlarını ve farklı komut opsiyonlarını ezberleme ihtiyacını ortadan kaldırır.
Endüstriyel otomasyon uygulayan yazılım kütüphaneleri veya OpenSSL kütüphanesi, Modbus, Ethernet/IP, CANbus ve MQTT gibi IIoT’ye özel işlev ve protokoller, IIoT alanında çalışan yazılımcılara önemli avantaj sağlar. İyi bir platform sağlayıcısı, donanım platformlarını optimize etmede kullanılacak gerekli kaynakları, yazılım araçları ve kütüphaneler geliştirerek sağlayacaktır. Yazılımcılar tek satır kod yazmak zorunda kalmadan bu ek özelliklerden yararlanabilecektir.
4. Uzun Vadede Destek
Bir endüstriyel platformun ömrü genellikle 5 yıl veya daha uzundur. Dolayısıyla endüstriyel platform tedarikçilerinin yazılım ortamlarında uzun vadeli bakım desteği için gerekli kaynağı ayırmaları gerekir. Bir bilgisayar platformunun kernel veya kütüphanesine gelen tüm güncellemeler yayınlanmadan önce derinlemesine test edilmeli, böylece bu platform üzerinde yazılım hatalarından kaçınılmalıdır. Geliştirme kartı tedarikçileri genellikle bu şartlara uymaz, çünkü kartlar aslen yazılımcıların PoC oluşturmalarına yardım edecek eğitim araçları olarak tasarlanmıştır. Raspberry Pi Foundation gibi bazı organizasyonlar geniş ve aktif yazılım geliştirici topluluklarıyla ünlü olsa da, uzun vadeli destek genellikle birinci öncelikleri değildir.
5. Siber Güvenlik
Endüstriyel sistemlerin karşı karşıya kaldığı siber saldırıların son yıllarda artışta olduğu gözlemlenmektedir. IIoT ağları üzerinde gittikçe artan sayıda cihaz çevrim içi oldukça, sistem güvenliği hem kullanıcılar, hem de işletmeciler için bir kaygı odağı haline gelmektedir. Kritik endüstriyel ağlara izinsiz erişim, işletmecilerin ilgilenmesi gereken gerçek bir tehdit halini almıştır. Gömülü uygulamalarınız, güvenlik özelliklerini sundukları uygulamalara da genişletebilecek güvenli bir platforma kurulu olmalıdır. Buna ek olarak IEC 62443-4 gibi siber güvenlik standartlarına uyumluluk, yüksek düzeyde güvenliği güvence altına almaktadır. Seçtiğiniz yazılım geliştirme platformunun, uygulamanızın gerektirdiği siber güvenlik seviyesine ve standartlarına sahip olduğundan emin olun. Güvenli başlatma gibi izinsiz erişime karşı koruma sağlayan ek işlevler, gömülü uygulamalarınızın güvenliğini güçlendirmenize yardımcı olur.
6. Açık Platform Avantajı
Açık kaynak yazılımı ve bir açık kaynaklı işletim sistemi, yazılım geliştiricilere maksimum esneklik sağlar. Bu modelde yazılımcılar yeni işlev ekleme ve mevcut sorunları çözmede eşit pay sahibidir, ki bu yazılımın sürekli geliştiği anlamına gelir. Herhangi bir güvenlik sorunu açık kaynağı kullanan herkesi etkileyeceğinden, çözümler hızlı bulunur ve herkese açık olarak sunulur. Debian Linux, bu tarz popüler işletim sistemlerine iyi bir örnektir. Birçok firma, bu platform için kütüphane ve sürücü geliştiren ekiplere sahiptir. Bu gibi kütüphane ve sürücüleri geliştirirken temel kural, açık kaynak platformu için mevcut mimari ve prensipleri izlemektir.
Moxa’nın IIoT Edge Gateway Çözümü
Endüstriyel otomasyon ve haberleşme alanında 30 yılı aşkın deneyime sahip olan donanım ve yazılım üreticisi Moxa da, IIoT uygulamalarınızda kullanabileceğiniz endüstriyel bilgisayar çözümleri sunan üreticiler arasında yer alıyor.
-40 ila 85°C arasında uç sıcaklıklarda dahi sorunsuz işletim sağlamak üzere tasarlanmış Moxa UC Serisi IIoT Edge Gateway’ler, endüstriyel tip, kablosuz haberleşmeye hazır Arm-tabanlı bilgisayar platformları olarak öne çıkıyor. Bu cihazlar yüksek performanslı bir Linux dağıtımı da sunuyor: Moxa Industrial Linux (MIL). Debian tabanlı geliştirilmiş olan Moxa Industrial Linux, 10 yıl destek garanti ediyor. Bu sayede güneş ve rüzgar enerjisi, su ve atık su, petrol ve doğal gaz, ulaştırma ve fabrika otomasyonu alanlarında kullanılan bilgisayar sistemlerinin ihtiyaç duyduğu uzun sistem ömrünü güvenceye alıyor.
Geleceğe Hazır Bir
Veri İşleme Çözümü Oluşturmak
Kaynak: Fang, Johnny T.L. (2017) “Building a Future-Proof Data-Processing Solution with Intelligent IoT Gateways”, Moxa Inc.