Pic seçimi için yardım lütfen

Başlatan gambit1244, 13 Kasım 2011, 18:27:18

gambit1244

Merhaba arkadaslar bi projem için pic seçmem gerekiyor
projedeki ana alterler şunlar
10 tane pwm çıkış ile 9 adet step + 1 adet pwm kontrollü dc motor var
i2c ile çalışan accelerometer + gyro + magnetometer var
bu bilgileri alıp sürekli kablosuz modem ile gondericek
ve modemde gelen bilgilere gorede motorların pwm cıkışları degişicek
proje bukadar sizce mips gücü ne olmalı işlemcinin
24ep serisinde 60mips e kadar çıkabiliyoruz bu fazlamı gelir
bu işi 12 - 16 mips işlemcilerle halledebilirmiyiz ne dersiniz
teşekkürler
[email]tufan_ozbek@hotmail.com[/email] Yesterday is history. Tomorrow is a mystery. Today is a gift aslında bütün mesele bu.

iyildirim

Hesap kitap işi yok ise MIPS gücünden ziyade işlemci üzerindeki donanımlar önemli.

Bildiğim kadarı ile 33F serilerinde max 22 donımsal PWM çıkışı olabiliyor. Ancak Burada da PWM'lerin aynı andaki min max frekansları ve frekans/duty çözünürlüğü kısıtlanıyor.  Yani bir kanalı 50 hz ile sürerken diğer kanalı 60kHz ile süremiyorsunuz.  Veya çok düşük duty çözünürlüğü sözkonusu oluyor.

Sorudaki anahtar nokta PWM kanalı sayısı.  IC2 veya kablosuz modem bağlantısı dert değil.
Eğer step motorlar microstep vs. sürülecekse motor başına en az iki kanal pwm de motorlar için gerekir. Bu durumda toplam 10+ 18 +1 = 29 kanal PWM ihtiyacınız olur.

Eğer bazı PWM kanallarını soft olarak üretmek sözkonusu olursa 33fj128-256 MC710 işinizi görebilir.  8 MC PWM kanalı + 8OC PWM kanalı var. Geri kalanları da soft olarak  toplam 9 adet 16 bit timerdan  boş olarak kalacak olan ( 1 timer OC için kullanılacak ) 8 timer ile halledebilirsiniz. 2 ayrı donanımsal I2C modülü de var.


Eğer dediğiniz gibi sadece I2C, UART veya  SPI dan alınan veriye göre PWM kanalları ayarlanacak ise MIPS olarak gücü yeterli.

33fj64gs610 da da toplam 9 PWM generatörü ve 4 kanal OC PWM var. Yani SMPS PWM kanalları ile 9 farklı frekansda 18 farklı duty de PWM üretebilirsiniz. Üstelik SMPS PWM kanallarında 1.5hz frekansa kadar da  düşebilir. Ayrıca 4 kanal da OC PWM kanalı var.

Her iki işlemcide de DMA  var. Ve seri bilgi alma gönderme sırasında işlemci yükünü düşürebilirler. Her iki işlemcide 40 mips. gs610'u programlamak için PK3 veya ICD3 gerekir. mc710 pk2 ile de programlanabilir.

Dediğim gibi asıl açıklanması gereken stepleri nasıl süreceğiniz. Eğer kapalı çevrimde akım kontrollü, microstep falan sürülecekse benim önerim iki adet gs610 kullanmanız yönünde olur. Yok Sadece step darbeleri oluşşun yeter derseniz tek bir gs610 veya mc710 yeter. 

33E serilerini datasheetlerde yazanın dışında tanımıyorum.  E serisi MU810,  F serisi 710 un devamı gibi duruyor. E serisi olsun derseniz MU810'a bakablirsiniz.

gambit1244

hocam altın degerindeki bilgiler için cok teşekkür ederim
9 adet mini rc servo sürecegim sanırım 1 kanal yeticek her bir motor için
bir adette brushless fırçasız dc motor süreceğim onun içinde hazır satılan hobby rc esp lerden almayı düşünüyorum direk pwm i girip süreceğim

dma kullanmaya gerek kalmaz umarım hiç tecrübem yok o konularda umarım basit ve ucuz yoldan halledebilirim bu projeyi
sadece i2c lerde 3 4 tane sensör kullanacagım (accelerometer - gyro - magnetometer vb.) bunlar acaba sıkıntı olurmu onu merak ediyorum
[email]tufan_ozbek@hotmail.com[/email] Yesterday is history. Tomorrow is a mystery. Today is a gift aslında bütün mesele bu.

EMG81

#3
Alıntı yapılan: gambit1244 - 13 Kasım 2011, 18:27:18
Merhaba arkadaslar bi projem için pic seçmem gerekiyor
projedeki ana alterler şunlar
10 tane pwm çıkış ile 9 adet step + 1 adet pwm kontrollü dc motor var
i2c ile çalışan accelerometer + gyro + magnetometer var
bu bilgileri alıp sürekli kablosuz modem ile gondericek
ve modemde gelen bilgilere gorede motorların pwm cıkışları degişicek
proje bukadar sizce mips gücü ne olmalı işlemcinin
24ep serisinde 60mips e kadar çıkabiliyoruz bu fazlamı gelir
bu işi 12 - 16 mips işlemcilerle halledebilirmiyiz ne dersiniz
teşekkürler


Neden Pic? C biliyormusun ? Biliyorsan Bunalmışın kitindeki işlemci(stm32f407vg) yi kullan.
Hem yeni bir işlemci öğrenmiş olursun.

Bunalmış Rtos kodlarında bir hayli ilerlemiş. İşini görmezse hazır kullanırsın. Rtos ile İstemediğin kadar Pwm elde edersin.
Diğer donanımları konuşmaya gerek bile yok.

CLR

Alıntı yapılan: gambit1244 - 13 Kasım 2011, 18:27:18
Merhaba arkadaslar bi projem için pic seçmem gerekiyor
projedeki ana alterler şunlar
10 tane pwm çıkış ile 9 adet step + 1 adet pwm kontrollü dc motor var
i2c ile çalışan accelerometer + gyro + magnetometer var
bu bilgileri alıp sürekli kablosuz modem ile gondericek
ve modemde gelen bilgilere gorede motorların pwm cıkışları degişicek
proje bukadar sizce mips gücü ne olmalı işlemcinin
24ep serisinde 60mips e kadar çıkabiliyoruz bu fazlamı gelir
bu işi 12 - 16 mips işlemcilerle halledebilirmiyiz ne dersiniz
teşekkürler

Bu bahsettiklerin için işlemci hızına gerek yok, pic16-18 seri ile bile yapabilirsin. Pwm için hazır chiplerden kullan, içine kanal başına duty cycle'ı yazarsın çalışır ve  çıkışını motor sürmek için kuvvetlendirirsin. I2C/Usart/SPI zaten içeriyorlar. Pic18f2550 bile bana göre bu iş için rahatlıkla yeter.   
Knowledge and Experience are Power

SERRO EFE

servoları 1 timer ile software olarak kolayca sürebileceğini düşünüyorum. sensörleri donanım okuyacak (i2c,spi) şu şartlarda dc motor kontrolü için 1 adet donanımsal pwm ihtiyacın olacak gibi,kablosuz modem kısmınıda seri port ile halledersin heralde.. atmega16 çıkarır bu işi

gambit1244

bende 10 pwm kanalı bulunan pic18f67k22 yi düşünmüştüm
aman atmega işine hiç giremem daha pic i yeni kavradık serro hocam :D
[email]tufan_ozbek@hotmail.com[/email] Yesterday is history. Tomorrow is a mystery. Today is a gift aslında bütün mesele bu.

iyildirim

Alıntı yapılan: gambit1244 - 13 Kasım 2011, 20:12:50
9 adet mini rc servo sürecegim sanırım 1 kanal yeticek her bir motor için
bir adette brushless fırçasız dc motor süreceğim onun içinde hazır satılan hobby rc esp lerden almayı düşünüyorum direk pwm i girip süreceğim

Sanırım step motor yok işin içinde. İlk mesajı ben yanlış yorumladım anlaşılan.
Toplam 10 Adet 50Hz lik PWM üretmek için MC 710-706 veya GS610-606 gibi işlemciler kullanılabilir. Özellikle GS serisi 50Hz'e düşebilmek açısından daha iyi. MC7XX  serisinde ancak OC çıkışları ile 50Hz elde edilebiliyor. GS606 da 12, 610 larda da 18 adet 50 Hz lik PWM donanımsal olarak üretilebilr. 

Bunlar dışında soft olarak da 10 adet PWM 'i iki timer kullanıp tamamen kesme ile üretmek de mümkün.

MIPS konusuna gelince, sanki bir UAV veya ona benzer birşeyle uğraşacaksınız gibi görünüyor. Sensörlerden bilgi okumanın dışında okunan bilgiyi değerlendirmek de söz konusu ise, digital filtreler, koordinat, rotasyon hesapları  yapılacaksa 33F lerden daha düşük işlemciler kullanmanızı tavsiye etmem. Aynı frekansda çalışsalar bile 33F lerde 3-4ms süren koordinat-rotasyon hesabı 8 bitliklerde 20ms de bile bitmez .

Bahsettiğim her iki işlemci yi de kullandım. Kararınız bu yönde olursa  Init, PWM vs. konularında yardımcı olurum.


skara1214

 Pwm için hazır chiplerden kullan demiş bir hocamız acaba hangi entegreleri önerebilirmisiniz?
@iyildirim hocam kapalı döngü akım kontrolünden bahsetmişsiniz bunu nasıl yapabilirim mikrostep için bana bir kaynak önerebilirmisiniz?Ayrıca PID kontrol konusundada bir kaynak önerebilirseniz çok memnun olurum.(ingilizce türkçe farketmez)
Herkes ölür ama herkes gerçekten yaşamaz

CLR

Alıntı yapılan: skara1214 - 13 Kasım 2011, 21:28:46
Pwm için hazır chiplerden kullan demiş bir hocamız acaba hangi entegreleri önerebilirmisiniz?
@iyildirim hocam kapalı döngü akım kontrolünden bahsetmişsiniz bunu nasıl yapabilirim mikrostep için bana bir kaynak önerebilirmisiniz?Ayrıca PID kontrol konusundada bir kaynak önerebilirseniz çok memnun olurum.(ingilizce türkçe farketmez)

TLC5940, 16 kanal 12bit pwm driver,
Knowledge and Experience are Power

skara1214

hocam bu entegreyle ilgili bir sorum var acaba tüm kanalların pwm frekansını ve duty cycle nı ayrı ayrı değiştirebiliyormuyuz?
Herkes ölür ama herkes gerçekten yaşamaz

iyildirim

Alıntı yapılan: skara1214 - 13 Kasım 2011, 21:28:46
@iyildirim hocam kapalı döngü akım kontrolünden bahsetmişsiniz bunu nasıl yapabilirim mikrostep için bana bir kaynak önerebilirmisiniz?Ayrıca PID kontrol konusundada bir kaynak önerebilirseniz çok memnun olurum.(ingilizce türkçe farketmez)

Ben de konunun uzmanı değilim.
Step motor ve PID için kaynak olarak Microchip de AN1307 uygulama notuna bakabilirsiniz. Genel amaçlı konfigüre edilebilen, mikrostep adımla bipolar-unipolar sürmeye uygun step motor kontrol devresi ve yazılımını  anlatıyor. Akım kontrolü ve PID konularına da giriyor.

pisayisi

9 adet pwm 9 adet step motoru süremez ki step motorlarda en az 2 ayrı faz 4 adet kablo var adım sürme işini o pwm blokları ile yapmak zor ancak gerekli dalga şekillerini üretirseniz hız kontrolunu pwm ile yaparsınız adım kontrolu için farklı bir logic sequential devre mantığını işlemciye monte etmek lazım. 1 pwm 1 dc motor bunda ise hiç sorun olmaz onlarca motoru kontrol edebilirsiniz.
Murat

selcuk_mola


RaMu

Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html