15 Haziran 2007 , 10:06

A- Gerekli Malzemeler:

1 - 1 adet 16F877A mikrodenetleyici
2 - 1 adet kırmızı LED
3 - 1 adet 220 ohm direnç
4 - 1 adet 4k7 direnç
5 - 2 adet 22pF kapasitör
6 - 1 adet 20Mhz kristal
7 - 1 adet LM7805 regülatör
8 - 1 adet servo motor
9 - 2 adet düğme
10- 2 adet 10k direnç

B- Açıklamalar:

Bu uygulamada PIC 16F877A mikrodenetleyicisini kullanarak bir servo motoru kontrol edeceğiz. Kontrol ederken iki düğme kullanacağız. Düğmelerin birine basıldığında servo bir yöne, diğerine basıldığında servo başka bir yöne ve düğmelere basılmadığında bir yöne dönecektir.


Kullanacağımız servo motorun 3 adet iğnesi bulunmaktadır. İlk iğne (sarı kablo) veri iğnesidir. İkinci iğne (kırmızı kablo) gerilim (5V) ve üçüncü iğne (siyah kablo) topraktır. Servo motor veri iğnesinden gelen 20ms lik veriyi alır ve bu verideki 1 (yani +5V) miktarına göre yönünü ayarlar. Mesela:

Kodu ile B kapısının yedinci iğnesine bağlı bir servo motoru 2,4ms 1 ve 17,6ms 0 vererek saat yönünde döndürebiliyoruz. Motoru ortalamak için ise aşağıdaki kodu kullanıyoruz:

Görüldüğü gibi 1,5ms 1 ve 18,5ms 0 verilmesi motoru ortalıyor. Benzer şekilde 0,6ms 1 ve 19,4ms 0 vererek motoru saat yönünün tersinde bir konuma getirebiliriz. Burada dikkat edilmesi gereken şey gönderilen sinyaldeki 1 (yani +5V) süresinin 0,6ms ile 2,4ms arasında değişmesidir. Daha büyük veya daha küçük (servo motorun özelliklerine göre bu 0,6ms ve 2,4ms değerleri oynama gösterecektir) değerler istenmeyen sonuçlar doğuracaktır.
Unutulmaması gereken bir detay servo motorun düz DC motorun aksine belirli bir konuma (bizim yukarıdaki verilerle belirttiğimiz) gelindiğinde durmasıdır. Yani açılı döndürme gibi işlemler yapılabilir.
Düğmeler bağlanırken de pull-down dirençlerin bağlanmasına özen gösterilmelidir (aksi takdirde A kapısından veri okunurken istenmeyen sonuçlar elde edilecektir).

C- Devre Şeması (ISIS):

devre_sema.JPG

pic_2dsn.txt (uzantısını .DSN olarak değiştiriniz)

D- Kod (CCS C):

pic_2.hex : pic_2.txt (uzantısını .hex olarak değiştiriniz)

pic_2.c :

pic_2.h :

E- Devrenin Resmi:

devre_resim.JPG

F- Vidyo:

Vidyo 1

Vidyo 2

PIC
Comment 09 Ekim 2007

Dostum eline sağlık gerçekten çok faydalı bir döküman..Teşekkürler.

Comment 18 Aralık 2007

merhaba bu 2.h ile 2.c ayrı atrı yazmızsınız pic.2.h yazılmış olan nedir ? acil

Comment 18 Aralık 2007

“pic_2.h” include dosyasıdır. Gerekli PIC tanımlamaları bu dosyada yapılıyor. PIC C’de yeni bir proje oluştururken otomatik olarak oluşturuluyor. Kendi ayarlarınızla da kod çalışır, düzgün olarak yapılırsa tabii ki.

Comment 18 Aralık 2007

peki bir şey rica edeceğim ben assembbly dilini biliyorum ama c dilinde hiç proje hazırlamadım. hangi derleme programını yüklemem lazım ? birde bu hazırladığınız PIC ile servo motor kontrolü devresinin hazır olarak hex. dosyası birde c de hazır yazılmış halini gönderebilirmisiniz yardımcı olursanız çok sevinirim

Comment 19 Aralık 2007

Merhaba,

C’de yazılmış hali zaten yukarıda verilmiş. Derleyici olarak PIC C kullandım. PIC C üstüne yazılmış çeşitli yazılar var. Aşağıdaki sayfada bir takım bilgiler bulunuyor, kendim okumadım ama faydalı olabilir:

http://www.turkforum.net/showthread.php?s=54cd58e6c2ad4073126b076636ceedb5&t=165350

HEX dosyasını ekledim, yazının sonunda görebilirsin. .HEX’i PIC 16F877′ye yükleyince eğer devreyi benim gibi kurduysan sorunsuz çalışması gerekir.

Kolay gelsin. İyi kodlamalar.

Comment 10 Ocak 2008

merhaba arkadaşlar.bu şemanın pic basic dilinde yazılmış program komutlarını ekleyebilirmisiniz.elinizde varsa hemen eklersemiz çok sevinirim.

Comment 29 Şubat 2008

döküman için teşekkür ederim .. şuan bu konuda bir ödev hazırlıyorum . acaba bu devrenin proteus simulasyonunu da ekleyebilirmisiniz ..

Comment 01 Mart 2008

ya arkadaşlar cidden acil lazım üstteki devrenin proteus simülasyonu

Comment 03 Mart 2008

iyi günler ben PIC ile servo motor kontrolü baskı devresini bılmak istiyorum yardımcı olurmusunuz.

Comment 05 Mart 2008

YA BU ISISDE NİYE ÇALIŞMIYO BENİMKİ BİRDE SERVO MOTOR BENDE 5 BACAKLI NEDEN 3 BACAKLI BULAMIYORRUM ŞİMDİDEN TŞK EDERİM

Comment 08 Mart 2008

çağatay öztürk’e: yukarıdaki devrenin proteus simulasyonunu yapmaya çalışıyorum . birkaç sorum olacaktı. servo nun açı değerleri hangi aralıkta olacak bide pic in çalışma frekansı kaç mhz olacak
ilgilenirseniz sevinirim..
şimdiden teşekkürler.

Comment 10 Mart 2008

arkadaşım ne zaman kritik bi devre lazım olsa senin sitende buluyorum. paylaştığın için çok teşekkür ederim.

Comment 10 Mart 2008

hocam çok güzel faydalı birsite yapmışsınız
ama birde şu isteklere cevap verseniz çok güzel olacak ya

Comment 16 Mart 2008

bu devre +90 -90 ve orta konumlara getiriyo servoyu ara dereceler içinde olsa tam süper olacakmış buton değilde pot veya çıt çıt anahtar ile

Comment 22 Mart 2008

Kusura bakmayın uzun süredir giremiyordum siteye. PIC 20Mhz’de çalışıyor. Proteus şemasını ben sanırım kaybettim :D, yeniden çizip göndereceğim… Servo’nun açı değerleri benim servomda +120 ile -120 arasında idi.

Comment 22 Mart 2008

şimdiden teşekkür ettim..

biz bu devreyi proje olarak yapıyoruz.. malzemeleri alacağız ama servonun özellikleri açı değerleri birde pic in özellikleri ni yazabilirmisiniz yukarıda yazmışsınız ama tam değerler olmayınca doğru çalışmaya bilir diyorlar..
cidden çok teşekkür ederim…

Comment 25 Mart 2008

COK SAOL ALLAH RAZI OLSUN SENDEN COGU YERDE ARADIM BULAMADIM DETAYLI BÖLE ANLATIMINI

TEŞEKKÜRLER :)

Comment 25 Mart 2008

BENDE PLAKETE ÇİZİLMİŞ HALİ VAR ARKADAŞLAR BUYRUN

http://img213.imageshack.us/img213/3866/servomotorkontrolderveehq4.jpg

Comment 27 Mart 2008

Paylaşımın için teşekkür ederim İbrahim. Güzel çalışma olmuş.

Comment 30 Mart 2008

ISIS şemasını ekledim.

Comment 31 Mart 2008

teşekkür

Trackback 12 Mayıs 2008

PIC ile Servo Motor Kontrolü…

Bu uygulamada PIC 16F877A mikrodenetleyicisini kullanarak bir servo motoru kontrol edeceğiz. Kontrol ederken iki düğme kullanacağız. Düğmelerin birine basıldığında servo bir yöne, diğerine basıldığında servo başka bir yöne ve düğme…

Comment 27 Temmuz 2008

hiçbir şey anlamadım

Yorumlarınız bazı xhtml kodlarını içerebilir. İsim ve e-posta adresini(yayınlanmayacak) girmek zorunludur, web sitenizi yazmak size kalmış.