Proje için ARM sorunsalı

Başlatan ernuynk, 20 Şubat 2015, 13:48:32

ernuynk

Alıntı yapılan: eyupsepik - 22 Şubat 2015, 00:07:34
Sen kinecti direk karta bağlamayı mı düşünüyorsun

Hayır kinect ile Laptop C# arayüzü ile bağlı olacak. Robot kolda "Kablosuz" bir şeklide bu sistemle haberleşecek. Bu haberleşme içinde bir sistem kurmam gerek. (Arduino, Raspberry Pi, BeagleBone, STM32F v.b.)
Bu kartlardan bazıları bende var. Acaba hangisi ile daha hızlı, verimli ve kullanışlı olur merak ediyorum.

Teşekkürler.

ernuynk

Alıntı yapılan: digiman - 22 Şubat 2015, 01:57:41
Beaglebone Black gayet guzel bir secim lakin eger kiti tam kapasite kullanacaksan (ADC , INT vs. kastediyorum) yani hizli islem yapacaksan icerisinde PRU adinda iki adet risc islemci mevcut onuda programlaman gerekiyor onun icinde ARM assembly bilmen gerekiyor, C ile programlanmiyor.Yok eger dusuk hizda haberlesecem diyorsan ADC vs ile o zamanda o kiti kullanmanin bir cazibesi kalmiyor.

BeagleBone'u tercih etmemin sebebi hem küçük bir pc olması, port sayısı, ARM işlemci v.b. özellikler. Sizinde dediğiniz gibi STM32F4 de alsam BeagleBone da alsam ARM programlayacağım. (Hız ve verimlilik için)
O zaman BeagleBone alıp öğrenmek şuan için biraz daha verimli olur gibi sanki. BeagleBone hız konusunda STM kartlarına yakın bir performans verir mi? Bilmediğimden soruyorum kusura bakmayın :)

Teşekkürler.

MC_Skywalker

şunu açığa kavuşturlaım  iki farklıçekrideği karşılaştırıyorsun

STM discovery lerde Cortex M çekirdeği bulurnur BeagleBone gibi ürünlerde ise Corex A çekirdeği. temelde ALU ve register bakımından aynıolsalarda farklı işler için üretilmişlerdir.

Cortex M Microcontroller 
Cortex A Application prossecor
detaylar için  http://arm.com/products/processors/index.php

ernuynk

Alıntı yapılan: MC_Skywalker - 22 Şubat 2015, 10:17:07
şunu açığa kavuşturlaım  iki farklıçekrideği karşılaştırıyorsun

STM discovery lerde Cortex M çekirdeği bulurnur BeagleBone gibi ürünlerde ise Corex A çekirdeği. temelde ALU ve register bakımından aynıolsalarda farklı işler için üretilmişlerdir.

Cortex M Microcontroller 
Cortex A Application prossecor
detaylar için  http://arm.com/products/processors/index.php

Teşekkür ederim.

Peki bir şey sormak istiyorum, Cortex A serisi M serisine göre daha gelişmiş diye biliyorum. Eğer doğruysa, A serisi M serisine göre daha hızlı mıdır? Yoksa iki seriyi karşılaştıramaz mıyız?

MC_Skywalker

İki seriyi karşılaştıramazsın.  farklı amaçlar için üretilmişlerdir.

Yuunus

Beaglebone black android uzerinde calisiyor sen ikisine de ayni gozle bakiyorsun kendin soyledin birisi neredeyse bir pc, yapiyi kavraman icin datasheetlere bakman daha faydali olur bence.

ernuynk

#21
Alıntı yapılan: digiman - 22 Şubat 2015, 13:56:12
Beaglebone black android uzerinde calisiyor sen ikisine de ayni gozle bakiyorsun kendin soyledin birisi neredeyse bir pc, yapiyi kavraman icin datasheetlere bakman daha faydali olur bence.

Üzerinde gömülü olarak Linux geliyor. İsteğe göre Android, Ubuntu v.b. sistemler yüklenebiliyor. Durum böyle olunca, programlama kısmında Python, C++ (Bazı programlar ile) tarzı alternatifler çıkıyor. Yukarıda bir arkadaş ARM tabanlı olduğu için aynı mantıkla da programlanabilir demiş. Dolayısıyla bir çok seçenek çıkıyor.

Bilgim olmadığı için sordum. Yoksa RaspberryPi kullandığım için BeagleBone'u da az çok biliyorum. Sadece örn:"stm32f4 discovery" deki hızı bu kartla sağlayabilir miyim, bunu merak etmiştim :)

Teşekkürler.

Yuunus

#22
Amacım size yardımcı olmak bilmediğim birşey varsa öğrenmekten her zaman mutluluk duyarım, daha oncede dedimki I/O ları hızlı kullanacaksan yani o dışa açılan pinlerden hızlı veri alışverişi yapacaksan BBB içinde 2 adet risc işlemci mevcut onu kullanmak zorundasın onun içinde Assembly bilmek zorundasın C veya başka bir dille programlanmıyor, o bahsettiğiniz dillerle linux uzerinde calisacak olan programlarinizi yaziyorsunuz bunun için ister C ister python kullanabilirsiniz. Yok eğer PRU yu bahsettiğiniz diller ile programlayabiliyorsanız banada bir ornek gonderin bende ogrenmek isterim. Hız konusu ise: yukarıda bahsettigim PRU yu kullanırsanız STM32F4 discovery den hızlıdır. PRU-ICS 200Mhz de calisiyor.
BBB uzerindeki 1ghz hızındaki işlemci sizin linux çekirdeğini çalıştırır, yani bu sizin I/O hızınız değildir. Bu demek değilki 1ghz işlemci var neye yarıyor diyebilirsin, şuna yarıyor linux uzerinde calışan programın PRU-ICS ile pinlerden okuduğun veriyi ram uzerinden linux ortamına aktarırken işe yarıyor orada zaman kaybetmiyorsun. Yani kısaca adamlar aslında çok güzel iş yapmışlar örneğin ADC den veri okumak için senin işlemcin yorulmuyor adam bu iş için başka bir işlemci kullanmış(PRU-ICS).
Yok eğer dersenki benim için linux çekirdeğinde çalışan program hızlı olsun yeterli diyorsan ve 10ms de bir ADC vs  den ornek alsam yeter diyorsan o zaman zaten yukarıda bahsettiğim hiçbirşeyi dikkate alma o zaman zaten o bahsettiğin dillerin hepside yeterli Asm ye gerek yok. Kolay gelsin.

ernuynk

Alıntı yapılan: digiman - 22 Şubat 2015, 19:31:12
Amacım size yardımcı olmak bilmediğim birşey varsa öğrenmekten her zaman mutluluk duyarım, daha oncede dedimki I/O ları hızlı kullanacaksan yani o dışa açılan pinlerden hızlı veri alışverişi yapacaksan BBB içinde 2 adet risc işlemci mevcut onu kullanmak zorundasın onun içinde Assembly bilmek zorundasın C veya başka bir dille programlanmıyor, o bahsettiğiniz dillerle linux uzerinde calisacak olan programlarinizi yaziyorsunuz bunun için ister C ister python kullanabilirsiniz. Yok eğer PRU yu bahsettiğiniz diller ile programlayabiliyorsanız banada bir ornek gonderin bende ogrenmek isterim. Hız konusu ise: yukarıda bahsettigim PRU yu kullanırsanız STM32F4 discovery den hızlıdır. PRU-ICS 200Mhz de calisiyor.
BBB uzerindeki 1ghz hızındaki işlemci sizin linux çekirdeğini çalıştırır, yani bu sizin I/O hızınız değildir. Bu demek değilki 1ghz işlemci var neye yarıyor diyebilirsin, şuna yarıyor linux uzerinde calışan programın PRU-ICS ile pinlerden okuduğun veriyi ram uzerinden linux ortamına aktarırken işe yarıyor orada zaman kaybetmiyorsun. Yani kısaca adamlar aslında çok güzel iş yapmışlar örneğin ADC den veri okumak için senin işlemcin yorulmuyor adam bu iş için başka bir işlemci kullanmış(PRU-ICS).
Yok eğer dersenki benim için linux çekirdeğinde çalışan program hızlı olsun yeterli diyorsan ve 10ms de bir ADC vs  den ornek alsam yeter diyorsan o zaman zaten yukarıda bahsettiğim hiçbirşeyi dikkate alma o zaman zaten o bahsettiğin dillerin hepside yeterli Asm ye gerek yok. Kolay gelsin.

Yorum için çok teşekkür ederim hocam. "BBB uzerindeki 1ghz hızındaki işlemci sizin linux çekirdeğini çalıştırır, yani bu sizin I/O hızınız değildir." kısmı, kafamdaki soruyu tam olarak cevapladı (:

ernuynk

Tekrar merhaba arkadaşlar,

Projemi STM32f4 Discovery ile yapmaya karar verdim. Fakat modül (click) sıkıntım var. Projemde Bluetooth ve Wifi üzerinden kontrol olacak. Acaba Türkiye'de bu modülleri bulabileceğim bir yer var mı? Bir de Bluetooth modülü yerine klasik HC 06 modülünü kullansam olur mu?

Teşekkürler.

mufitsozen

Alıntı yapılan: digiman - 22 Şubat 2015, 19:31:12
......
Yok eğer PRU yu bahsettiğiniz diller ile programlayabiliyorsanız banada bir ornek gonderin bende ogrenmek isterim. Hız konusu ise: yukarıda bahsettigim PRU yu kullanırsanız STM32F4 discovery den hızlıdır. PRU-ICS 200Mhz de calisiyor.
......


http://analogdigitallab.org/articles/beaglebone-black-introduction-pru-icss
Aptalca bir soru yoktur ve hiç kimse soru sormayı bırakana kadar aptal olmaz.

eyupsepik

Alıntı yapılan: ernuynk - 16 Mart 2015, 08:22:15
Tekrar merhaba arkadaşlar,

Projemi STM32f4 Discovery ile yapmaya karar verdim. Fakat modül (click) sıkıntım var. Projemde Bluetooth ve Wifi üzerinden kontrol olacak. Acaba Türkiye'de bu modülleri bulabileceğim bir yer var mı? Bir de Bluetooth modülü yerine klasik HC 06 modülünü kullansam olur mu?

Teşekkürler.


https://www.picproje.org/index.php/topic,55971.0.html  Burada esp8266 ile wifi örneği var ayrıca  http://firatdeveci.com/ burada da espnin ayarlanması ile ilgili bilgiler var. Modülü de direnc.net ten alabilirsin.   http://www.direnc.net/ESP8266-01-SERIAL-WIFI-MODUL,PR-23306.html modülü

ernuynk

Alıntı yapılan: eyupsepik - 16 Mart 2015, 12:31:46

https://www.picproje.org/index.php/topic,55971.0.html  Burada esp8266 ile wifi örneği var ayrıca  http://firatdeveci.com/ burada da espnin ayarlanması ile ilgili bilgiler var. Modülü de direnc.net ten alabilirsin.   http://www.direnc.net/ESP8266-01-SERIAL-WIFI-MODUL,PR-23306.html modülü

Çok teşekkürler. Peki STM32F4'a kamera bağlamam gerekse, nasıl halledebilirim? Örn: Usb ile bağlanan Webcam'ler için.

Yuunus

mufit bey gonderdiğiniz link PRU nun nasil yapilandirildiğini anlatiyor. 7. madde de asm derleyiciyi yapılandırıyor soylediklerimin aksi bir durum yok yani.

mufitsozen

Alıntı yapılan: digiman - 16 Mart 2015, 18:48:33
mufit bey gonderdiğiniz link PRU nun nasil yapilandirildiğini anlatiyor. 7. madde de asm derleyiciyi yapılandırıyor soylediklerimin aksi bir durum yok yani.

Dogrusu asagidaki linkte zannimca: 'Using the C language to program the am335x PRU'

http://www.embeddedrelated.com/showarticle/603.php
Aptalca bir soru yoktur ve hiç kimse soru sormayı bırakana kadar aptal olmaz.