6 bacaklı örümcek robot --I2C iletişim protokolü

Başlatan mustafa_60, 20 Ağustos 2012, 16:04:32

mustafa_60

arkadaşlar herkeze iyi bayramlar,
ben 6 bacaklı örümcek robot projesi üzerinde çalışıyorum. 12 servo motor kontrol etmem gerekiyor. bunun için en kararlı yöntem hangisidir?
   Bu iş için ilk önce direk pıci programlayarak yapmayı düşündüm. pıcı for döngüleriyle servoları tek tek kontrol edebiiyordum fakat aynı anda 6-7 motor çalıştırmaya geldiginde pıc sapıtıyordu çok ugraşmama ragmen yapamadım,olmadı... daha sonra bugune kadar hiç kullanmadıgım biir yöntem aklıma geldi I2C. Bu yöntem 10-15 motoru birden sürmeme olanak saglıyor. ((bu arada servo motorla 150 mA flan akım çekiyor tanesi, servolar çalıştıgında yaklaşık 2-2.5 A flan gördügümü hatırlıyorum güç kaynagı ile.))
  ben bu işin içinden nasıl sıyrılabilirim. I2C'nin nasıl kullanıldıgını bilmiyorum, internetten araştırdım baya bilgim var fakat nasıl kullanılacagını bilmiyorum. Benim düşüncem bu adreste bulunan (Lynxmotion - SSC-32 Servo Controller) kartın bi benzerini yapıp bu arkadşalarında kullandıgı gibi bi ana kontrol ünitesi ve her 5 servo için 1 adet 74hcXXX serisinden bi entegre kullanıp servoları sürmek.
arkadaşlar; benim sizden istediklerim, bu I2C seri iletişim protokolü nedir,ne degildir,nasıl kullanılır,benim sistemim için yeterlimidir(degilse neden),programlarken nelere dikkat etmek gerekir,parazitten etkilenirmi...  bu arada programlama dili olarak CCS C-MİKRO C-PİC BASİC PRO- kullanıyorum...yani arkadaşlar yardımınıza ihtiyacım var...yardımlarınızı esirgemezseniz çok sevinirim... saygılarımla mustafa DESTEGÜL...

dombilik

TLC5940 bir incele istersen.Bununla 16 adede kadar servo sürebiliyorlar.
Benim bir uygulamam olmadı.Çin den sipariş ettim bir kaç tane.Gelmesini bekliyorum.
Bildiklerini kime miras bıraktın?kimseyemi? O zaman bildiklerinin ne önemi kalır. ******** /////////// ******** PROTON-ASM PROTEUS 7.4 SP3 EAGLE 5.40

mustafa_60

bununla servoyu nasıl sürecegiz pwm ilemi yoksa I2C gibi bir protokol ilemi...mesela bende 16f877 var bundan tlc5940 a bilgi göndercem hangi çıkışının aktif olacagını ve servoyu 1 ms sürmesini nasıl saglayacagız.

dombilik

Sanırım I2C ile çalışıyor ama dediğim gibi benimde bir çalışmam olmadı henüz bu chiple..
Artık internetten uygulama örneklerini araştırman lazım.
Bildiklerini kime miras bıraktın?kimseyemi? O zaman bildiklerinin ne önemi kalır. ******** /////////// ******** PROTON-ASM PROTEUS 7.4 SP3 EAGLE 5.40

FEHMİ_ASM

#4
     IIC ile proteus ta denemeleriniz oldu mu? Oldu ise tam olarak nerede veri kesiliyor bunu test ettiniz mi? Lütfen denediğiniz kodları buraya yazınız.

     Scl, Sda ve adres hatlarına bağlanan dirençlerin özelliklerini Isıs için "dijital" seçmek gerçekten önemli. Bunu özellikle denemiştim.

     Bu protokol ile veri iletimi aslında oldukça rahat.  Sadece birkaç register ayarlanması gerekli. Sonrasında yine bu registerlerden bayrak okumasına endexli okuma ve yazma gerçekleyebilirsin. İstersen sıralı okuma ve yazma ile, kodlar ve I2C komutları için harcadığın süreyi önemli ölçüde azaltabilirsin. Hatta, iyi bir yazılım (ve donanım) ile, I2C nin tüm hata bildirim bayraklarını kullanmak zorunda kalmayabilirsin. Mesela yazılımda bir çakışma olma-ması gerektiğini öngörüyorsan, WCOL bitini kullanmazsın.