Slayt 1

advertisement
Kenan KILIÇASLAN
Yöneten: Yrd.Doç.Dr. Hilmi KUŞÇU
LabVIEW
 LabVIEW ile programlama mantığı, program kodu
yazılan programlama mantığına benzemekle birlikte,
kontrol adı verilen nesneler arasında veri yolu
bağlantısı ile program akışı sağlanır.
 Kontroller içindeki veri elektrik kablosuna benzer
çizgi üzerinden bağlı olduğu kontrole geçer.
LabVIEW
 Labview’de içinde veri bulunan üç çeşit nesne bulunur.
 Control : Kullanıcının program çalışırken veri girdiği
nesnelerdir. Çeşitli şekilleri bulunur.
 Indicator : Kullanıcı program çalışırken veri giremez,
hesaplama sonucu bulunur. Çeşitli şekilleri vardır.
 Constant : Sabit değerdir. Program çalışırken
değiştirilemez.
LabVIEW
 Control ve indicator birbirine benzerdir.
 Control isimli nesnelerde bulunan veri veri yolları
üzerinden indicator isimli nesneye veya matematiksel
sembollere doğru akar.
LabVIEW Veri Yolları
 Elektrikte iki farklı fazın birbirine bağlanması hata
meydana getirir, benzer şekilde farklı controllara bağlı
veri yolu bir birine bağlanmamalıdır.
 Bir kontrole ve indikatöre sadece bir veri yolu
bağlanabilir.
 Elektrikte bir kablonun ortasına başka bir kablo
bağlasak bu kabloda aynı voltta elektrik olur, aynı
şekilde bir veri yolu kablosunun herhangi bir yerine
başka bir veri yolu kablosu bağlasak, bu kabloda da
aynı veri bulunur.
Labview
 LabVIEW’de iki pencere vardır.
 Görsel nesnelerin bulunduğu Front Panel,
 program akışının bulunduğu Block Diagram penceresi.
 Programlama block diagram penceresinden yapılır.
LabVIEW ile Diğer Programların
Karşılaştırması
 Normal programlama mantığında, bir başlangıç vardır
ve bir de sonu vardır yani bir yerde program akışı
durur.
 LabVIEW’de ise program akışı, en uzaktaki indicatöre
gittiğinde yine başa döner yani tüm akış bir sonsuz
döngü içindedir.
 Döngü sonsuz olduğu için, control içindeki verinin
işlem görmesi için bir olay tanımına ihtiyaç yoktur. Bir
controle veri girildiğinde, o veri doğrudan kablo
üzerinden akar ve kablonun bağlı olduğu yere gider.
LabVIEW ile Diğer Programların
Karşılaştırması
 Çok bilinen programlamada, programlar tek görevlidir.
Yani bu programlar örneğin aynı anda iki sayıyı
toplayamaz.
 Bu toplama işlemini sıralı olarak yaparlar.
 LabVIEW ise çok görevlidir yani aynı anda iki toplama
işlemini yapar.
 Bütün işlemler paralel yürür. Her an veri yolu
kablolarında veri vardır.
 LabVIEW’de paralel çalışan birden fazla döngü
bulunabilir.
İleri Kinematik
 Şekildeki düzlemsel iki bağlantı mekanizmasını
inceleyelim. Uç A noktasından B noktasına doğru sabit
hızla ilerlesin.
İleri Kinematik
 Birinci problem, eklem açıları çiftinin verilmesi ile uç
noktanın koordinatını bulmak. Yani açıdan
faydalanarak koordinat bulma işlemi ileri kinematik
olarak anılır.
Ters Kinematik
 İkinci problem, uç nokta koordinatı verilir eklem
açıları istenir. Bu problem ters kinematik olarak anılır.
Problemin aynı konumu veren birden fazla çözümü
olabilir. Hem (q1,q2) hem de (-q1,-q2) aynı
koordinatını verir.
Çalışmaya Konu Olan Robot Kol
Uygulamada Bilinenler
Uç nokta koordinatı bilinmektedir.
Robot kolunun boyutları bilinmektedir.
Deneysel Uygulama İçin Yapılan
Adımlar
 Denavit-Hartenberg Metodu ile tüm eklemlerin
dönüşüm matrisi çıkarıldı.
Dönüşüm Matrisleri Bulundu
Dönüşüm Matrisleri Çarpıldı.
1. Denklem bulunan, eklem açıları cinsindendir.
2. Denklemde ise uç nokta koordinatı bellidir.
Birinci denklem ile ikinci denklem eşittir.
Dönüşüm Matrisleri Çarpıldı.
Bir matrisin tersi ile matrisin
çarpımı birim matrise eşittir.
 Biz bu eşitlikten yararlandık.
Bize ters tüm dönüşüm matrislerini
tersi gerekli oldu
 Ters matrisi Matlab yazılımının inv fonksiyonunu
kullandık
 TersMatris = inv (Matris)
Ters Matrisler
Birinci matris eşitliği
 Konum Vektörlerini eşitledik. 3 denklemimiz oldu.
Birinci tarafa
A
Diyelim
Birinci tarafa
B
Diyelim
Birinci matris eşitliği
 Konum Vektörlerini eşitledik. 3 denklemimiz oldu.
İkinci Matris eşitliği
İkinci matris eşitliği
 Konum Vektörlerini eşitledik. 3 denklemimiz oldu.
Üçüncü Matris eşitliği
Üçüncü matris eşitliği
 Konum Vektörlerini eşitledik. 3 denklemimiz oldu.
Dördüncü Matris eşitliği
Dördüncü matris eşitliği
 Konum Vektörlerini eşitledik. 3 denklemimiz oldu.
Matlab ile örnek uygulama
 (11,17,9) cm koordinatlarını veren açıları bulalım.
Burada L=9.5 cm, h=7 cm’dir.
 Çözümde Matlab’ın fsolve fonksiyonu kullanılmıştır.
fsolve fonksiyonu sonucu iterasyonla bulur.
 İterasyon için başlangıç matrisi x0=[0 0 0] ‘dır.
 [x,fval,exitflag]=fsolve(@(x)[cos(x(1))*A+sin(x(1))*
B-cos(x(2))* cos(x(3))+sin(x(2))* sin(x(3))cos(x(2))-1; -sin(x(1))*A+cos(x(1))*B-sin(x(2))*
cos(x(3))- cos(x(2))*sin(x(3))-sin(x(2));cos(x(1))*sin(x(2))*A-sin(x(1))*cos(x(2))*A
+cos(x(1))* cos(x(2))*Bsin(x(1))*sin(x(2))*B+sin(x(2))-sin(x(3))],x0);
Çalışmanın LabVIEW’de
uygulaması, Yörünge Hesabı
Fonksiyon Adı
T01.vi
Sembolü
Açıklama
Yükseklik-h, Kol Uzunluğu-L ve açı değerlerinden dönüşüm
matrisini oluşturur. Detaylı bilgi bölüm 4.1.1’dedir.
ilerikinematik.
Dönüşüm matrislerinden, başlangıçtan uca doğru dönüşüm
matrislerini ve PX,PY ve PZ vektörlerini oluşturur. Detaylı bilgi
vi
bölüm 4.1.2’dedir.
3D Curve.vi
PX, PY ve PZ vektörlerinden 3 boyutlu grafik oluşturur.
terskinematik
X, Y, Z koordinatlarından, t2, t3, t4 açılarını ve
bölüm 4.2.1’de belirtilen diğer değerleri hesaplar.
.vi
terskinematik2.
bilgi bölüm 4.2.2’dedir.
vi
terskinematik3.
vi
Bilinen açılara göre diğer açıları hesaplar. Ayrıntılı
terskinematik.vi’ile hesaplanan açıları, kolun sınırları
içine alır. Ayrıntılı bilgi bölüm 4.2.3’dedir.
 Sorulanız…
 Teşekkürler…
Download