Hard Disk Motoru Sürmek

Başlatan matador, 18 Ocak 2011, 16:56:59

matador

Buna benzer birçok konu açılmış fakat hiç birinden istediğim gibi bir bilgi alamadım.

Seagate 7200rpm'lik 3 uçlu bir hard disk motoru var elimde. Youtube'da atmel ile yapılmış çok kararlı çalışan bir devre gördüm ama dosyalar veya dosyaların bulunduğu bir link paylaşılmamış.

16f84 ile pic basic'de program yazdım. Başlangıç olarak tek amacım kararlı olarak 360 derece döndürmek. Ama yapamadım.

Yazdığım program şöyle:
SAYAC VAR byte


SAYAC=100


BASLA:
    PORTB=%00111000
    PAUSE SAYAC
    PORTB=%00110001
    PAUSE SAYAC
    PORTB=%00101010
    PAUSE SAYAC
    PORTB=%00100011
    PAUSE SAYAC
    PORTB=%00011100
    PAUSE SAYAC
    PORTB=%00010101
    PAUSE SAYAC
    PORTB=%00001110
    PAUSE SAYAC
    PORTB=%00000111
    PAUSE SAYAC
    GOTO BASLA
END

Şema'da şöyle:

iyildirim

Gördüğüm kadarı ile darbe sıralamasında (elektriksel çevrimde) hata var.  Linkteki dökümanlar BLDC motorun nasıl sürüleceği hakkında bilgi verecektir. Ayrıca sadece mosfet leri doğru sırada sürmek de yeterli değil. Doğru zamanda da sürülmeli. Motor ataletinden dolayı bir anda hızlanamayacağı için bir ivmelenme kontrolü de olmalı. Bunun için hall sensör kullanılıyor veya sensörsüz algoritmalar geliştiriliyor.


http://ww1.microchip.com/downloads/en/AppNotes/01175A.pdf
http://ww1.microchip.com/downloads/en/AppNotes/01160A.pdf Bunun 16 bit için olduğuna bakmayın. Elektriksel çevrimi anlatması açısından ilk bir kaç sayfası oldukça anlaşılır.

Ayrıca microchip'in anasayfasından -> app.note -> BLDC  seçerseniz başka örneklere de ulaşabilirsiniz.

muhittin_kaplan

fırçasız asenkron motor olarak biliyorum. doğrumudur ?

Mucit23

Hocam ben bi soru sorayım.
Normal 380 volt trifaze gelirimi frekansını değiştirmeden voltajını motorun çalışmavoltajına düşürülüp motoraverilse motor dönermi acaba.

matador

Alıntı yapılan: mucit23 - 18 Ocak 2011, 22:09:58
Hocam ben bi soru sorayım.
Normal 380 volt trifaze gelirimi frekansını değiştirmeden voltajını motorun çalışmavoltajına düşürülüp motoraverilse motor dönermi acaba.

Hocam imkanım olsa denerdim.


Motoru bir tur çevirdim ama bir yerde bir karışıklık var motor döndükten sonra bir noktada takılıp kalıyo devam etmiyor. Kararlı çalıştıramadım şunu.

iyildirim

Alıntı yapılan: muhittin_kaplan - 18 Ocak 2011, 22:06:10
fırçasız asenkron motor olarak biliyorum. doğrumudur ?
Konunun uzmanı değilim. Yanlışım varsa affola.
Bildiğim kadarı ile Fırçasız asenkron motor (ACIM) ile fırçasız DC motor (BLDC) sürülme teknikleri benzese de iç yapıları nedeni ile aynı değiller..

Sürülme teknikleri benzediği için aralarında 120 derece faz farkı olan üç ayrı gerilimle sürüldüklerinde fırçasız DC motorların da (BLDC) çalışır diye düşünüyorum. Ben de test etmediğimden eminim diyemem. Sadece daha sessiz çalırşırmı diye üst moslara sinus gerilim uyguladığımda çalıştı. Bu da trifaze  akımı yarım dalga doğrultmakla eşdeğer gibi.

@matador
Yukarıda verdiğim linklerden, özellikle an1160 'ın 2 sayfası BLDC motorun elektriksel çevrimini anlamak için faydalı. Alt ve üst mos larınızı doğru şekilde sürerseniz motorun dönmesi gerekli.

Önerim;
Uzun bir pause ile başlayıp öncelikle motorun rotorunun  uygun pozisyona gelmesini sağlayın. Sonra döngü içerisinde pause değerini yavaş yavaş azaltın. Bu şekilde (rotor pozisyonları ile ilgili geri besleme olmadan) deneyerek motoru gerçekten 7200RPM de döndürebilirsiniz. Ancak tork vs beklememelisiniz. Mosfetleri sürerken en ufak bir zamanlama hatası veya motora yük bindirilmesi durumunda motor dönmeyi bırakıp titremeye başlayacaktır.

Özellikle an1160 da BLDC motoru sensörsüz sürmek için için datasheet'in sonlarına doğru bir de refereans devre şeması bulunmakta. İncelerseniz back-emf nasıl ölçülür, elde edilir konusunda iyi bir örnek olabilir. Örnek yazılımda da özellikle ADC ölçümü ve nasıl kullanıldığına bakarsanız faydalı olacaktır.


serdararikan

bu tür motorlara "SPINDLE MOTOR" deniyor.malesef çok kolay kontrol edilmiyor.belki döndürmeyi başarabilirsiniz ama istediğiniz hızda ve istediğiniz pozisyonda olup olmadığından emin olmanız için gelişmiş bir entegre kullanmayı denemelisiniz.

matador

@iyildirim
  Hocam verdiğin ikinci linkteki anlatım sayesinde motoru çalıştırdım. Bende güç kaynağı olmadığı için pille aküyle filan idare ediyorum bu yüzden motor takılmalar yapıyor biraz geç de olsa fark ettim aküyü içiyor sanki çok akım harcıyor belki akü tam şarjda olmadığındandır.  Motoru çalıştırdım.  Benim istediğim, 7200 olmasa da bu hıza yaklaşmak. Bunu da yapabileceğimi düşünüyorum sonuçta 12v vermeden 50-60rpm e ulaştım.

Programın son hali şöyle:
SAYAC VAR byte


SAYAC=50

BASLA:
    PORTB=%00010001
    PAUSE SAYAC
    PORTB=%00100001
    PAUSE SAYAC
    PORTB=%00100010
    PAUSE SAYAC
    PORTB=%00001010
    PAUSE SAYAC
    PORTB=%00001100
    PAUSE SAYAC
    PORTB=%00010100
    PAUSE SAYAC
    IF SAYAC=10 THEN
       GOTO BASLA
    ENDIF
    SAYAC=SAYAC-1
    GOTO BASLA   
END

Yukarıda verdiğim devreyi de   A ile B nin yerini değiştirdim.  Değişmese de olur ama benim saat yönünde döndürmem gerektiği için yaptım.  Elektronikle uğraşan çoğu kişinin bildiği bir şeydir.  3 fazlı motorlarda herhangi iki ucun yeri değiştiğinde motor ters yönde döner. 

Hepinize teşekkür ediyorum.   Şimdi ilk işim 0-30V ayarlı sağlam bir kaynak yapmak olacak.

sezgin05

@MATADOR:Üst transistörleri PNP (BC327 gibi) tipi tarnsistör seçersen sürme sıkıntısı çekmezsin.Bu durumda sürmek istediğin PNP transistöre "0" vereceksin tabii.

matador

Yakınlarda doğru düzgün elektronik malzeme satan bir yer olmadığı için elimdekileri kullandım. İkililerden birini PNP diğerini NPN olarak yapacağım asıl devrede.

iyildirim

Modeller için üretilen BLDC motorlarda motoruna göre 20-30A hatta 50A çeken motorlar bile var. Ancak 7200 RPM HDD  motoru,  hızlanmayı kontrol ederek max 1-2A ile  arasında akımla limit hızına ulaşabiliyor.  Eğer elinizdeki motor nispeten yeni bir HDD den sökülmüş ise 1A akım yeterli olacaktır. Ayrıca HDD motorlarına 12V üzerinde gerilim vermek ısınma vs. sorunlarını çok arttırıyor.
7200 RPM için sürücü devrenizde transistor yerine N-kanal hızlı mosfetler kullanabilirsiniz. mosfetler de uygun bir sürücü ile sürülmeli. TLPXXX, TC442X, IR21XX serilerinden biri olabilir.


matador

Motorda yaşadığım kilitlenme transistörlerden dolayı olabilir mi yani?

6v'luk 4A aküyü tam şarjda bağladım belirli bir hızın üstünde kilitlenme oluyor.  Bunu nasıl önlerim.   

mosfet'i pic ile sürmek yanlış mı olur?

iyildirim


Deneysel olarak direkt PIC ile sürülebilir. Ancak hız, tork vs. beklenmemeli. Bir yerden sonra motor dönmeyip titremeye başlar.

Fırçasız motorlarda KV denilen, volt başına kaç devire çıkabileceği ile ilgili bir parametre tanımlanır. Genellikle HDD motorları da 600KV civarındadır. 6V ile sürülürse  600KV motor yaklaşık olarak 3600 devire çıkabilir.
Ayrıca transistor ve mosfet farketmez,  direkt PIC ile sürüldüğünde üst mosları (base veya gate) max 5V ile sürebilirsin.
Buda üst taraf da transistor kullanman durumunda emetörlerde max 4.4 V olacağı anlamına gelir.  Alt transistörlerde kalan voltajı da düşününce motora 4voltdan daha az bir gerilim kalır. 6-3.8 = 2.2V transistörler üzerinde kalır. Ve sadece ısınmaya yarar.

Mos kullanman durumunda da yeterli gate-source voltajı sağlanamayacağından, ve PIC'in verebildiği akım MOS'un gate kapasitesini yeteri kadar hızlı dolduramayacağından yeterli hızda anahtarlama yapılamaz. Yani hem yüksek voltajla hemde yüksek akımla sürmek için MOSFET sürücüler kullanmak gerekir.

Fırçasız motorlar yüksek akım çektiklerinden, transistor kullanılması durumunda kolektör ve emetör arasında kalan voltaj farkından transistörler üzerinde güç harcaması fazla olur. Düşük iç dirençli (Rds-on) ve hızlı mosların uygun mosfet sürücülerle birlikte kullanılması fırçasız motor sürmek için daha uygundurlar. (her türlü motor için desek daha doğru olur.)


matador

Aynen söylediğin gibi oluyor belirli bir hızın üstüne çıkınca motor titremeye başlıyor bir süre sonra da kısık tiz bir ses çımaya başlıyor.  Usta çok yardımcı oldun çok teşekkür ederim.

Benim bu motorları kullanmakta ki amacım, bir video da gördüm böyle dört tane motorla helikopter tarzı bir uygulama yapmışlar ben biraz daha farklı düşündüm. Avatar filminde ki helikoptere benzeyen bir şey yapmak istiyorum yüksek hıza bu yüzden ihtiyacım var.

iyildirim

Mekanik bağlantı zorlukları, gereksiz ağırlıkları, gereken güç ve düşük KV değeri nedeni ile HDD motorları,  uçan bir makina, nesne yapmak için uygun elemanlar değiller.

Pervane vs. gibi parçalarıyla beraber kit halinde satılan çeşitli boy,  KV değeri ve fiyatlarda motorlar mevcut. Bunları hazır ESC leriyle birlikte tercih etmen daha iyi olacaktır.
Yerli-yabancı çeşitli sitelerde bulabilirsin.

Eğer illede kendim yapacağım dersen tork, hız kontrolu, vs. gibi şeylerle de ilgilenmen gerekli. Tavsiyem tamamını iyice anlayıncaya kadar tekrar tekrar dökümanı okuman.

Video da gördüğün dört motorluların  (quadrokopter) havada stabil kalabilmesi için çeşitli sensörlerden alınan bilgiler kinematik modeller kullanılarak işlenip motorların kontrolü sağlanıyor. Konu ile ilgili isen yabancı kaynaklı çeşitli sitelerde çalışma prensipleri, hardware ve software uygulamaları anlatılan açık kaynak kodlu uygulama örnekleri var.
codes.google.com, sourceforce, diydrones gibi sitelere bakabilirsin. Araştıralı bayağı bir süre geçti, bildiğim kadarı ile açık kaynak kodlu, Türkçe, paylaşılan bir çalışma yok. (Şimdilik..)

Avatar'daki helilerden yapmak istiyorsan ters rotasyonlu palleri, kaç eksende hareket kabiliyeti olduğunu ve kontrolu için neler gerekebileceğini de bir düşün derim.
Hoşçakal...