Elektronik / Embedded / Mobil Cihazlar
Ardino Vs Embedded (Microchip-Atmel) Vs Geliştirici Kartları (Raspberry Pi - Texas)
Ardino Vs Embedded (Microchip-Atmel) Vs Geliştirici Kartları (Raspberry Pi - Texas)
-
Hacılar merhaba, ürünlerin kullanım yöntemleri hakkında bilgim var. Tam olarak karşılaştırmak için sormuyorum. Arduino daha çok diy proje yazmak Embedded sistemlerde satışa hazır sistemleri hazırlamak için kullanılıyor.
Fakat projeyi sonlandırma değil de geliştirme aşamasında microchip daha pahalı olabiliyor; pickit olacak ki yazılımı mikroişlemciye atasın (pickit 100-200 lira (kopyası)), yandığında tekrar bir mikrodenetleyici almalısın(özelliğe göre fiyatlar değişiyor ama 15-25 lira) devreyi breadboardda kurarsın, bu kısım arduinoda da gerek.
Arduino sanki daha ucuz gibi.
İstediğim arduinoda diy projeler yapıp bunu embedded sisteme geçireceğim. Akıllı Ev ev otomasyonu gibi.
1. sorum: Bu tarz projelerde arduino mikrodenetleyici göre daha mı iyi çalışır yoksa arasında bir fark olmaz mı? Aynı zamanda mikrodenetleyici (baskısını yapınca) daha az yer kaplıyor gibi.
2.sorum: Arduino Uno dip alsam atmega 328 haricinde herhangi bir mikrodenetleyici kullanabilir miyim? Arduino ile mikrodenetleyici programlamam mümkün mü? Tavsiyeniz nedir: Uno mu almalıyım uno dip mi?
3.sorum: Raspberry pi ın kullanıldığı projelerde asıl amaç nedir? Embedded olmadığı için, halihazırda çalışan sistemi ekran klavye mouse bağlayıp hızlıca geliştirme yapabilmek için mi?
-
1. Arduino prototiplemek içindir hocam. Sebepler seri üretimde maliyetin çok fazla olması, arge sürecinde geliştirmenin daha az zaman alması, ancak endüstriyel kullanımda arduino tercih edilebilir değil, sıcaklık, manyetik alan, nem, toz gibi dayanımları makul değildir.
3. Raspberry pi daha kompleks işler için, örneğin görüntü ve ses işleme, büyük hesaplama yapma, veya bağlı arduinolar üzerinden gelen verileri internete gönderme/kaydetme/loglama veya uzaktan kontrol sağlama amacıyla kullanılır. Ev otomasyonu yapacaksan, kendine ait bir panelde kontroller yapacaksındır. Ağa bağlı şekilde kurduğun raspbi ile tüm sensörleri görebilir, kontrol edebilir, komut verebilirsin.
Sonuç olarak: Raspi>arduino>sensör şeklinde genellikle kullanılır.
-
SUPERBICO bunu yazdı
1. Arduino prototiplemek içindir hocam. Sebepler seri üretimde maliyetin çok fazla olması, arge sürecinde geliştirmenin daha az zaman alması, ancak endüstriyel kullanımda arduino tercih edilebilir değil, sıcaklık, manyetik alan, nem, toz gibi dayanımları makul değildir.
3. Raspberry pi daha kompleks işler için, örneğin görüntü ve ses işleme, büyük hesaplama yapma, veya bağlı arduinolar üzerinden gelen verileri internete gönderme/kaydetme/loglama veya uzaktan kontrol sağlama amacıyla kullanılır. Ev otomasyonu yapacaksan, kendine ait bir panelde kontroller yapacaksındır. Ağa bağlı şekilde kurduğun raspbi ile tüm sensörleri görebilir, kontrol edebilir, komut verebilirsin.
Sonuç olarak: Raspi>arduino>sensör şeklinde genellikle kullanılır.
teşekkür ederim hocam cevapların için.
-
1. Arduino = mikrodenetleyici + platform. Kısa zamanda prototipleme için kullanılıyor. Farkettiğin gibi projeye göre gereksinimler değişir. Örneğin analog giriş-çıkışa ihtiyaç olmayan bir projede Arduino'nun analog girişlerini hiç kullanmazsın. Benzer şekilde seri bağlantıya ihtiyacın olmadığı zaman arduino boş yere senin sistem kaynaklarını tüketir. Projenin gereksinimine göre mikrodenetleyici seçimi önem kazanır. Örneğin daha ucuz bir mikrodenetleyici kullanabilecekken, neden daha pahalısını seçesin veya pil tüketimi önemli olduğu noktada neden işini görendekinden fazla güç tüketen bir şeye gebe kalasın.
Birinci madde için "arduino to breadboard" diye araştırabilirsin. Önce de vurguladığım gibi Arduino bir karttan fazlası. Bir platform.
2. Evet, bacakları uyumluysa ve kütüphaneleri de göç ettirebileceksen kullanabilirsin. Mesela önceki arduino unolarda atmega168 vardı.
3. İşlem gücü. Benim projemde bir web sunucu, bir veritabanı ve yazdığım birkaç linux servisi çalışıyordu. 10 W güç tüketen, taşınabilir, ucuz bir canavar. Linux üzerinde çalışmak da geliştirme zamanımı oldukça kısaltmıştı. Hatta Windows'ta .net yazdığım yazılımı rpi üzerinde mono ile çalıştırıverdim. RPI, headless çalışmaya oldukça uygun. Tutup da rpi'yi mikrodenetleyici gibi kullanacaksan, yanlış sularda yüzüyorsun demektir.
-
YeniHarman bunu yazdı
1. Arduino = mikrodenetleyici + platform. Kısa zamanda prototipleme için kullanılıyor. Farkettiğin gibi projeye göre gereksinimler değişir. Örneğin analog giriş-çıkışa ihtiyaç olmayan bir projede Arduino'nun analog girişlerini hiç kullanmazsın. Benzer şekilde seri bağlantıya ihtiyacın olmadığı zaman arduino boş yere senin sistem kaynaklarını tüketir. Projenin gereksinimine göre mikrodenetleyici seçimi önem kazanır. Örneğin daha ucuz bir mikrodenetleyici kullanabilecekken, neden daha pahalısını seçesin veya pil tüketimi önemli olduğu noktada neden işini görendekinden fazla güç tüketen bir şeye gebe kalasın.
Birinci madde için "arduino to breadboard" diye araştırabilirsin. Önce de vurguladığım gibi Arduino bir karttan fazlası. Bir platform.
2. Evet, bacakları uyumluysa ve kütüphaneleri de göç ettirebileceksen kullanabilirsin. Mesela önceki arduino unolarda atmega168 vardı.
3. İşlem gücü. Benim projemde bir web sunucu, bir veritabanı ve yazdığım birkaç linux servisi çalışıyordu. 10 W güç tüketen, taşınabilir, ucuz bir canavar. Linux üzerinde çalışmak da geliştirme zamanımı oldukça kısaltmıştı. Hatta Windows'ta .net yazdığım yazılımı rpi üzerinde mono ile çalıştırıverdim. RPI, headless çalışmaya oldukça uygun. Tutup da rpi'yi mikrodenetleyici gibi kullanacaksan, yanlış sularda yüzüyorsun demektir.
+ eklemek gerekirse(YeniHarman hariç yazılanları okumadım)
Raspi bir cihaz fakat üzerinde hali hazırda ARM'a göre yapılmış bir Linux koşuyor. Fakat Arduino tarafında böyle değil bu sebeple Realtime işlemlerde Arduino daha iyi. rtOS diye geçiyor sanırım realtime os. Kullanacağın projenin kritikliğine göre buna da karar vermen gerekiyor. Araya bir de OS sebebiyle latency eklemenin anlamı yok. -
Aslında RPI üzerinde de gerçek zamanlı işletim sistemleri çalışabilir. Bir engel yok, tabi harcamak istediğiniz birden fazla hayatınız varsa.
Aslında broadcom'un video core iv'si (raspberry pi'deki socun ana işlemcisi) gerçek zamanlı bir işletim sistemi çalıştırıyor. İlginç olansa rpi üzerindeki arm çekirdeğinin (çekirdeklerinin) aslında yardımcı işlemci olması.
ARM çekirdekleri de yanlış anlamadıysam (uzun zaman önce araştırmıştım) normal x86 işlemcilerden ayrılıyor. Örneğin bir bios'a ihtiyaç duymuyor, çekirdek FAT dosya sisteminden yapılandırma bilgilerini okuyup, çevre birimlerini yapılandırıyor (X86 için bios en basitinden bellek kontrolcüsünü yapılandırıyor, o ana kadar işlemci ana belleği kullanamıyor. ARM çekirdeğinin fat dosya sisteminden okuduğu yazılıma yine de bios diyebiliriz. Sonuçta bios da bir rom üzerine yazılmış kodlardan ibaret). Buradan anlaşılacak şu: ARM çekirdekleri çevre birimleri çalışmadan da işlevsel. Intel'in de sıkıntılı bir ek işlemcisi var bildiğiniz gibi.
Neyse lafı uzatmadan:
RPI için RTOS portu: https://github.com/jameswalmsley/RaspberryPi-FreeRTOS
Bare metal rpi programlama: http://www.valvers.com/open-software/raspberry-pi/step01-bare-metal-programming-in-cpt1/
Yukarıda yazdıklarımızı toplayacak olursak, işin mühendisliği burada başlıyor. Yapılacak işe en uygun araçları seçmek "mühendisin" işi. Geri kalanı -kimse kusura bakmasın- işin amelelik kısmı.
-
Bilgi ve tecrübeler için herkese teşekkür ederim.