3.9 Devre Kapalılık Denklemlerinin İteratif Yöntemle Çözülmesi
Önceki kısımlarda devre kapalılık denklemleri kullanılarak konum değişkenleri arasında analitik ilişkiler değişik yöntemlerle bulunmaya çalışılmıştır. Genel olarak her bir devre kapalılık denkleminde iki yeni bilinmeyen konum değişkeni bulunuyor ise, bu iki bilinmeyen için analitik bir çözüm elde edilebilecektir. Bu durumlarda denklemleri bilinmeyen konum parametrelerine göre önceki kısımlarda gösterildiği gibi, doğrudan çözmek daha uygundur. Eğer devre kapalılık denklemlerinin her birinde ikiden fazla bilinmeyen konum değişkeni var ise, bu konum değişkenlerini bağımsız konum değişkenine göre belirlemek genel olarak mümkün değildir (bazı özel durumlarda mümkün olabilir). Bu durumlar geometrik yöntem uygulandığında deneme-yanılma gerektirmiştir. Ancak eğer mekanizma serbestlik derecesine uyuyor ise, elde edilen vektör devre denkleminin iki katı kadar bilinmeyen konum değişkeni ve serbestlik derecesi kadar bağımsız konum değişkeni bulunacaktır. Analitik çözüm elde edilemediği durumlarda veya her türlü mekanizmanın analizini yapmak için genel bir algoritma oluşturmak istediğimizde, devre kapalılık denklemlerinin sayısal yöntemlerle iteratif (yinelemeli) çözümü düşünülmelidir.
Devre kapalılık denklemlerine baktığımızda, her birinden iki lineer olmayan cebirsel denklem elde edeceğimize göre, bu denklemler:
Fj(x) = 0 | j = 1, 2, 3, …, n | (1) |
x = [x1 x2 x3 … xn]T |
şeklinde yazılabilir. Bu gösterimde Fk(x) devre kapalılık denkleminden elde edilen karmaşık sayılar veya reel sayılarla ifade edilebilen devre sayısının iki katı kadar lineer olmayan denklem takımıdır. Vektör x ise bilinmeyen konum değişkenleri: θ1j veya sij den oluşur. Fj(x) ve türevleri, çözümü olduğu bölgede tanımlı ise, Fj(x) = 0 denklemlerinin bilinmeyen değerlere göre çözümü Newton-Raphson metodu olarak bilinen iterasyon metodu ile yapılabilir. Bu metod denklemleri küçük aralıklarda lineer olarak kabul eder ve bu lineer denklem takımı için çözüm bularak lineer olmayan denklem takımının çözüme doğru yaklaşıp yaklaşmadığını kontrol eder (Fj(x) = ε ise, her basamakta lineer denklem çözümünün ε değerini daha küçültüp küçültmediği) ε’un yeteri kadar küçük değerini veren x bilinmeyen değerleri çözümdür. Bu tür lineer olmayan denklem takımlarını çözmek için başka nümerik yöntemler de mevcuttur. Burada gerek basit olması ve gerekse mekanizmaların çözümünde oldukça iyi sonuç vermesi nedeni ile Newton-Raphson metodu açıklanacaktır. Okuyucu herhangi bir nümerik metod kitabından diğer yöntemleri öğrenebilir.
F(x) = 0 gibi tek değişkenli bir denklemi ele alalım. Denklem skaler değişken x’e göre lineer değildir. Bu denklemde x = x* değerinin denklemin çözümü (kökü) olduğunu (yani F(x*) = 0) ve x(k) nın ise, x* değerine yakın bir değer olduğunu kabul edelim. F(x) denkleminin x = x(k) noktası civarında Taylor serisi açılımını yaparsak
F(x) = F(x(k)) + Fx(x(k))(x − x(k)) + (yüksek mertebe terimler) | (2) |
olur. Fx(x), F(x) denkleminin x’e göre birinci türevidir: Fx(x) = dF(x)/dx. Eğer x(k) = x* olsa idi, F(x(k)) = 0 olacak ve x(k) aradığımız çözüm olacak idi. Hatalardan dolayı bu olmayacaktır.
x = x(k+1) in x* çözüm değerine x(k) dan daha yakın bir tahmin olduğunu varsayalım. F(x(k+1)) ≈ 0 olduğu varsayılır ve F(x(k+1)) için Taylor serisi kullanılarak x(k) ya göre açılımı yazıldığında:
F(x(k+1)) ≈ F(x(k)) + Fx(x(k))(x(k+1) − x(k)) = 0 | (3) |
olacaktır. x(k+1) − x(k) aralığı yeterince küçük ise veya denklem lineer ise, yüksek mertebe terimlerin ihmal edilmesi büyük bir yanlışa neden olmayacaktır (tabi eğer sonsuz sayıda terim kullanıp seriyi sıfıra eşitleyip çözüm yapsak x*’ı hemen bulabilirdik. Ne yazık ki bu mümkün değil, ve sadece ilk terimle yetineceğiz). Eğer Fx(x(k)) sıfıra eşit değil ise, (3) denkleminden x(k+1) çözülebilir:
x(k+1) = x(k) − F(x(k))/Fx(x(k)) | (4) |
(4) denklemi Newton-Raphson metodu ile elde edilen tekrarlama denklemidir. Yüksek mertebe terimler ihmal edilmiş olduğundan, x(k+1) denklemi sıfıra eşitleyen çözüm değildir. Ancak x(k) ya göre x*’a daha yakın bir noktaya gelinebilecektir. Yeni değer ile denklemin sıfıra daha yaklaştığı görülür ise, (4) denklemini tekrar tekrar kullanmamız mümkün olacak ve m defa uygulandıktan sonra |F(x(m))| < ε olacaktır. Burada ε, kendisinden küçük olan değerleri sıfır kabul edebileceğimiz küçük bir değerdir. Tabi ki ε probleme göre değişecek ve bazı problemlerde m sayısı ne kadar büyük olursa olsun |F(x(m))| < ε şartı sağlanamayacaktır (yakınsama olmayacaktır). Birçok uygulama için örneğin ε = 10-6 gibi küçük bir değer kabul edilebilir. Bu durumda F(x) = 0 denklemini sağlayan x değerini bulmak için bir algoritma ortaya çıkacaktır:
- F(x) = 0 denklemini sağlayacak x* değeri için x(0) değerini tahmin edelim.
- F(x(k+1)) değerini k = 0, 1, 2, …, m, basamak kadar (4) numaralı denklem kullanarak etap etap belirleyelim ve her etapta |F(x(k+1))| < εe olup olmadığını veya |x(k+1) − x(k)| < εs olup olmadığını kontrol edelim. Bu iki eşitsizlikten birisi sağlanıyor ise duralım. x(k+1) aradığımız çözümdür. (εe denklem hata toleransı, ve εs ise çözüm hata toleransıdır). Eğer Fx(x(k+1)) = 0 ve F(x(k+1)) ≠ 0 ise, 1. basamağa gidip yeni bir x(0) tahmini yapılması gereklidir. Aksi takdirde işlem devam eder.
- k+1 yerine k yerleştirip 2 basamak tekrarlanır. Eğer işlem m defa tekrarlandığı halde |F(x(k+1))| < εe veya |x(k+1) − x(k)| < εs sağlanamamış ise, çözüm bulunamamıştır. Durulması gerekir. İşleme yeni bir x(0) değeri ile yeniden başlanabilir veya farklı bir yöntem denenebilir.
Newton-Raphson algoritması çoğu uygulama probleminde gittikçe çözüme yaklaşan bir dizi sonuç verecektir. Genel olarak |F(x)| < εe şartına sınırlı sayıda basamakta erişilecektir. Ancak eğer x(0) değeri x*’a yeteri kadar yakın değilse, εe ve εs değerleri eldeki probleme göre çok küçük seçildi ise, veya çözülmesi istenilen problemde F(x) fonksiyonu ve türevleri düzgün ve yumuşak bir davranış göstermiyorlarsa, çözüm bulunamayabilir. Bazı durumlarda ise, bulunan çözüm aranılan x* çözümü olmayabilir (lineer olmayan denklemlerde F(x) = 0 denklemini sağlayan birden fazla kök olabilir).
Geometrik olarak Newton-Raphson yöntemi aşağıda Şekil (a) da gösterilmektedir. Her noktada F(x) eğrisi, eğimi Fx olan bir doğru olduğu kabul edilmekte ve o doğrunun kökü (sıfır olan x değeri) bulunmaktadır. Normal durumlarda kök çok az sayıda basamakta hızla bulunabilir. Ancak Şekil (b),(c), ve (d) de görüldüğü gibi, yöntem bazı durumlarda istenilen çözüme yönelmeyebilir, veya hiçbir çözüm bulunamayabilir.
Şu ana kadar Newton-Raphson metodu bir değişkenli bir denklem için açıklanmıştır. Aynı yöntem kolaylıkla n bilinmeyenli n lineer olmayan denklem takımının çözümü için kullanılabilir. Bu durumda Newton-Raphson algoritmasını genelleştirmemiz gerekecektir. n bilinmeyenli n lineer olmayan denklem takımı:
F1(x) = F1(x1, x2, x3, …., xn) = 0 F2(x) = F2(x1, x2, x3, …, xn) = 0 F3(x) = F3(x1, x2, x3, …, xn) = 0 …… Fn(x) = Fn(x1, x2, x3, …, xn) = 0 |
(5) |
veya:
F(x) = 0
olarak yazılabilir. Çözüm x* = [x*1 x*2 x*3 … x*n]T dir. Denklemleri kök olduğunu tahmin ettiğimiz değer olan x(k) = [x(k)1 x(k)2 x(k)3 … x(k)n]T noktasında Taylor serisine göre açalım ve seride sadece birinci mertebe terimleri tutalım (diğer terimleri tek denklem için yaptığımız gibi, sıfıra çok yakın değerler olduğunu kabul edip ihmal edeceğiz). Bu durumda:
F(x) ≈ F(x(k)) + Fx(x(k))(x − x(k)) | (6) |
olacaktır. Bu denklemde Fx(x(k)), x(k) noktasında hesaplanan Jacobian matrisidir#. Eğer x = x(k+1) çözüme daha yakın bir değer olması isteniyor ise, x(k) dan daha iyi bir değer:
F(x(k+1)) ≈ F(x(k)) + Fx(x(k))(x(k+1) − x(k)) = 0
# Jacobian matrisi: Fx = \displaystyle \left[ {\begin{array}{cccc} \text{F}_{1\text{x}_1}&\text{F}_{1\text{x}_2}&\cdots&\text{F}_{1\text{x}_\text{n}} \\ \text{F}_{2\text{x}_1}&\text{F}_{2\text{x}_2}&\cdots&\text{F}_{2\text{x}_\text{n}} \\ \vdots&\vdots&\ddots&\vdots \\ \text{F}_{\text{nx}_1}&\text{F}_{\text{nx}_2}&\cdots&\text{F}_{\text{nx}_\text{n}} \end{array}} \right]
burada Fkxm, Fk nın xm e göre kısmi türevidir.
Fx(x(k))Δx(k)= −F(x(k)) | (7) |
yazılır. Burada Δx(k)= x(k+1) − x(k) veya x(k+1)= x(k) + Δx(k) dır.
Denklem takımı için Newton-Raphson algoritması:
- Başlangıçta F(x) = 0 için x(0) değerlerinin çözüm olduğunu varsayalım.
- k = 0, 1, 2, …, m iterasyonlarında, Δx(k), x(k+1) ve F(x(k+1)) değerlerini hesaplayın. Eğer |F(x(k+1))| < εe ve |x(k+1) − x(k)| < εs ise durun. x(k+1) aranılan sonuçtur (εe denklem hata toleransı ve εs ise çözüm tolerans vektörleridir). Eğer |Fx(x(k+1))| = 0 ve F(x(k+1)) ≠ 0 ise, kökler için yeni bir tahmin yapıp birinci basamağa dönülür. Aksi takdirde 3. basamakla devam edilir.
- k + 1 değerlerini k olarak ele alıp 2. basamağa dönülür. Eğer bu işlem m defa yapıldığı halde |F(x(k+1))| < εe veya |x(k+1) − x(k)| < εs sağlanamadı ise, çözüm bulunamamıştır. Algoritmanın durdurulması gerekir. İşleme yeni bir x(0) tahmin vektörü ile yeniden başlanabilir veya farklı bir yöntem denenebilir.
Örnek:
Newton-Raphson algoritmasını göstermek için aşağıdaki şekilde görülen mekanizmayı ele alalım. Bu mekanizmanın bilinmeyen konum değişkenlerini belirlemek için deneme yanılma yapmadan verecek kapalı denklemler elde etmemiz mümkün değildir. Karmaşık sayılar ile devre kapalılık denklemleri:
a2eiθ12 = b1 − ic1 + a5eiθ15 + s4eiθ14
a5eiθ15 + a4eiθ14 = −b1 + ia1 + s6
şeklindedir. Bu denklemler:
b1 − ic1 − a2eiθ12 + a5eiθ15 + s4eiθ14 = 0
b1 − ia1 − s6 + a5eiθ15 + a4eiθ14 = 0
olarak yazılabilir.
veya reel sayılarla:
b1 − a2cosθ12 + a5cosθ15 + s4cosθ14 = 0
−c1 − a2sinθ12 + a5sinθ15 + s4sinθ14 = 0
b1 − s6 + a5cosθ15 + a4cosθ14 = 0
−a1 + a5sinθ15 + a4sinθ14 = 0
denklemleri elde edilir (karmaşık sayılar kullanarak denklemlerin karmaşık eşlenikleri kullanarak da dört denklem elde edilebilir. Bu örnekte reel sayılar kullanılacaktır). Elde edilen denklem takımı:
F1(θ14, θ15, s4) = 0
F2(θ14, θ15, s4) = 0
F3(θ14, θ15, s6) = 0
F4(θ14, θ15) = 0
şeklindedir. Verilen θ12 değerine göre bilinmeyen konum değişkenleri: θ14, θ15, s4 ve s6 değerlerini bulmak istiyoruz. Bu konum değişkenlerinin değeri olarak başlangıçta yapabileceğimiz ilk tahminler: θ140, θ150, s40, s60 olsun. Bu değerleri devre kapalılık denklemlerine yerleştirir isek denklemler sıfıra eşit olmayacak, her biri εi gibi bir farklı değerlere eşit olacaktır. Bu değerin küçük olması bizim çözüme ne kadar yakın olduğumuzun göstergesidir. θ141 , θ151, s41, s61 değerleri ise aranılan çözüm için daha iyi bir tahmin ise, ve δs4 = s41 − s40, δs6 = s61 − s60, δθ14= θ141 − θ140, δθ15 = θ151 − θ150 değerleri bu iki tahmin arasında fark olduğu kabul edilir ise bu fark Newton-Raphson algoritmasına göre denklem (7) kullanılarak:
\displaystyle \left[ {\begin{array}{cccc} {\text{i}{{\text{s}}_{4}}{{\text{e}}^{{\text{i}{{\text{θ}}_{{14}}}^{\text{k}}}}}} & {\text{i}{{\text{a}}_{5}}{{\text{e}}^{{\text{i}{{\text{θ}}_{{15}}}^{\text{k}}}}}} & {{{\text{e}}^{{\text{i}{{\text{θ}}_{{14}}}^{\text{k}}}}}} & 0 \\ {\text{i}{{\text{a}}_{4}}{{\text{e}}^{{\text{i}{{\text{θ}}_{{14}}}^{\text{k}}}}}} & {\text{i}{{\text{a}}_{5}}{{\text{e}}^{{\text{i}{{\text{θ}}_{{15}}}^{\text{k}}}}}} & 0 & {-1} \\ {-\text{i}{{\text{s}}_{4}}{{\text{e}}^{{-\text{i}{{\text{θ}}_{{14}}}^{\text{k}}}}}} & {-\text{i}{{\text{a}}_{5}}{{\text{e}}^{{-\text{i}{{\text{θ}}_{{15}}}^{\text{k}}}}}} & {{{\text{e}}^{{-\text{i}{{\text{θ}}_{{14}}}^{\text{k}}}}}} & 0 \\ {-\text{i}{{\text{a}}_{4}}{{\text{e}}^{{-\text{i}{{\text{θ}}_{{14}}}^{\text{k}}}}}} & {-\text{i}{{\text{a}}_{5}}{{\text{e}}^{{-\text{i}{{\text{θ}}_{{15}}}^{\text{k}}}}}} & 0 & {-1} \end{array}} \right]\left[ {\begin{array}{c} {\text{δ} {{\text{θ}}_{{14}}}} \\ {\text{δ} {{\text{θ}}_{{15}}}} \\ {\text{δ} {{\text{s}}_{4}}} \\ {\text{δ} {{\text{s}}_{6}}} \end{array}} \right]=-\left[ {\begin{array}{c} {{{\text{b}}_{1}}-\text{i}{{\text{c}}_{1}}-{{\text{a}}_{2}}{{\text{e}}^{{\text{i}{{\text{θ}}_{{12}}}^{\text{k}}}}}+{{\text{a}}_{5}}{{\text{e}}^{{\text{i}{{\text{θ}}_{{15}}}^{\text{k}}}}}+{{\text{s}}_{4}}{{\text{e}}^{{\text{i}{{\text{θ}}_{{14}}}^{\text{k}}}}}} \\ {{{\text{b}}_{1}}-\text{i}{{\text{a}}_{1}}-{{\text{s}}_{6}}^{\text{k}}+{{\text{a}}_{5}}{{\text{e}}^{{\text{i}{{\text{θ}}_{{15}}}^{\text{k}}}}}+{{\text{a}}_{4}}{{\text{e}}^{{\text{i}{{\text{θ}}_{{14}}}^{\text{k}}}}}} \\ {{{\text{b}}_{1}}+\text{i}{{\text{c}}_{1}}-{{\text{a}}_{2}}{{\text{e}}^{{-\text{i}{{\text{θ}}_{{12}}}^{\text{k}}}}}+{{\text{a}}_{5}}{{\text{e}}^{{-\text{i}{{\text{θ}}_{{15}}}^{\text{k}}}}}+{{\text{s}}_{4}}{{\text{e}}^{{-\text{i}{{\text{θ}}_{{14}}}^{\text{k}}}}}} \\ {{{\text{b}}_{1}}+\text{i}{{\text{a}}_{1}}-{{\text{s}}_{6}}^{\text{k}}+{{\text{a}}_{5}}{{\text{e}}^{{-\text{i}{{\text{θ}}_{{15}}}^{\text{k}}}}}+{{\text{a}}_{4}}{{\text{e}}^{{-\text{i}{{\text{θ}}_{{14}}}^{\text{k}}}}}} \end{array}} \right]
denklem takımından (karmaşık sayılar ile) veya:
\displaystyle \left[ {\begin{array}{cccc} {-{{\text{s}}_{4}}\sin {{\text{θ}}_{{14}}}^{k}}&{-{{\text{a}}_{5}}\sin {{\text{θ}}_{{15}}}^{\text{k}}}&{\cos {{\text{θ}}_{{14}}}^{\text{k}}}&0 \\ {{{\text{s}}_{4}}\cos {{\text{θ}}_{{14}}}^{\text{k}}}&{{{\text{a}}_{5}}\cos {{\text{θ}}_{{15}}}^{\text{k}}}&{\sin {{\text{θ}}_{{14}}}^{\text{k}}0}&0 \\ {-{{\text{a}}_{4}}\sin {{\text{θ}}_{{14}}}^{\text{k}}}&{{{\text{a}}_{5}}\sin {{\text{θ}}_{{15}}}^{\text{k}}}&0&1 \\ {{{\text{a}}_{4}}\cos {{\text{θ}}_{{14}}}^{\text{k}}}&{{{\text{a}}_{5}}\cos {{\text{θ}}_{{15}}}^{\text{k}}}&0&0 \end{array}} \right] \left[ {\begin{array}{c} {\text{δ} {{\text{θ}}_{{14}}}} \\ {\text{δ} {{\text{θ}}_{{15}}}} \\ {\text{δ} {{\text{s}}_{4}}} \\ {\text{δ} {{\text{s}}_{6}}} \end{array}} \right]=-\left[ {\begin{array}{c} {{{\text{b}}_{1}}-{{\text{a}}_{2}}\cos {{\text{θ}}_{{12}}}^{\text{k}}+{{\text{a}}_{5}}\cos {{\text{θ}}_{{14}}}^{\text{k}}+{{\text{s}}_{4}}\cos {{\text{θ}}_{{14}}}^{\text{k}}} \\ {-{{\text{c}}_{1}}-{{\text{a}}_{2}}\sin {{\text{θ}}_{{12}}}^{\text{k}}+{{\text{a}}_{5}}\sin {{\text{θ}}_{{14}}}^{\text{k}}+{{\text{s}}_{4}}\sin {{\text{θ}}_{{14}}}^{\text{k}}} \\ {{{\text{b}}_{1}}-{{\text{s}}_{6}}^{\text{k}}+{{\text{a}}_{5}}\cos {{\text{θ}}_{{15}}}^{\text{k}}+{{\text{a}}_{4}}\cos {{\text{θ}}_{{14}}}^{\text{k}}} \\ {-{{\text{a}}_{1}}+{{\text{a}}_{5}}\sin {{\text{θ}}_{{15}}}^{\text{k}}+{{\text{a}}_{4}}\sin {{\text{θ}}_{{14}}}^{\text{k}}} \end{array}} \right]
denklem takımından (reel sayılar ile) elde edilebilir. Dikkat edilir ise, denklem takımı bilinmeyen farklara göre lineer olup:
Aδ = E
şeklinde yazılabilir. A “katsayı matrisi” (Jacobian) reel veya karmaşık şekilde olabilir. εi elemanlarından oluşan E = [ε1 ε2 ε3 … εn]T kolon vektörü ise, konum değişkenlerinin ilk tahmin değerleri ile devre kapalılık denklemlerini hesapladığımızda ortaya çıkan denklem hatasıdır (yani her bir denklem sıfır olmayıp farklı bir εi değeri alacaktır ve bu da devrenin kapalı olmadığını gösteren hata değerleridir). Bu denklem takımından daha iyi olacağını beklediğimiz tahmin ile o an yaptığımız tahmin arasında fark ise:
δ = A-1E
olarak çözebiliriz. Bu fark değerleri, kullanmakta olduğumuz örnekte δθ14, δθ15, δs4 ve δs5 olsun. Bu durumda konum değişkenleri için bir sonraki etapta yapacağımız daha iyi tahmin:
s4(k+1) = s4k + δs4
s5(k+1) = s5k + δs5
θ14(k+1) = δ14k + δθ14
θ15(k+1) = θ15k + δθ15
olacaktır. Yukarıda açıklanmış olan işlem, istenildiği kadar tekrarlanabilir. Durma kriteri olarak |F(x(k+1))| < εe veya |x(k+1) − x(k)| < εs kullanılabilir. Mekanizmalarda devre denklemlerinin çözümü sırasında genellikle çok küçük hata değerleri kullanılsa bile yaklaşık 10 etapta çözüm bulunabilmektedir. Bunun mümkün olmadığı durumlar mekanizmanın kilitlendiği veya kilitlenmeye yakın olduğu konumlar veya ilk yapmış olduğumuz tahminin gerçek konum değişkenlerine göre çok uzak olduğu durumlardır. Bir mekanizmanın ölçekli çizimi üzerinde gözle bile yapabileceğimiz ilk tahminler genel olarak uygun bir ilk tahmin olabilir.
Eğer mekanizma tüm bir çevrim için incelenecek ise, bu işlem her bir krank açısı için yapılmalı ve her bir krank açısında konum değişkenleri değerleri için tahminde bulunulmalıdır. Ancak uygulamada mekanizmanın birinci konumu için tahmin yapılması, ikinci konum, eğer mekanizma bağımsız parametresinin ufak bir değişimi sonucu oluşuyor ise (örneğin krank dönmesi iki konum arasında 10° az olduğunda), bir önceki konumda elde edilen konum değerlerini bir sonraki konum değişkenleri için tahmin edilen değerler olarak kullanılmasının mümkün olduğu görülmüştür. Bu farkların büyük olduğu durumlarda çözüm yakınsamayabilir veya mekanizmanın farklı bir montaj şekline (ilk konumdan bu şekle mekanizma sökülüp takılmadan getirilemez) yakınsama olabilir. Benzer bir şekilde Jacobian matrisinin sıfır veya sıfıra yakın olduğu durumlarda bazı sorunlar ortaya çıkabilir. Genellikle lineer olmayan denklemlerin çözümü sırasında karşılaşılan problemler aynen mekanizmaların çözümü içinde geçerlidir.
Bu yöntem çok genel olup düzlemsel veya uzaysal, kayar, döner veya kamalı silindir mafsallı her türlü mekanizma için kolayca uygulanabilir. Uzaysal mekanizmalar için elde edilecek olan denklem sayısı tabi ki daha fazla olacaktır. Aynı yöntem günümüzde kullanılmakta olan çeşitli mekanizma analiz programlarında da kullanılmaktadır.
Örnek:
Yukarıda gösterilen mekanizmada uzuv boyutları: |C0A0|y = a1 = 340 mm; |A0E|y = b1 = 520 mm; |C0A0|x = d1 = 623 mm; |A0A| = a2 = 250 mm; |AB| = a3 = 1225 mm; |CB| = a4 = 350 mm; |C0C| = a5 = 600 mm; |BD| = b4 = 600 mm ve |DE| = a6 = 1100 mm. θ12 = 60° iken s16 konum değişkeni değerini bulmak istiyoruz.
Mekanizmanın θ12 = 60° konumunda, bilinmeyen konum değişkenleri için θ13 = 200°, θ15 = 180°; θ14 = 80° ve s16 = 400 mm değerlerini tahmin edelim. Tabi ki bu değerler devre kapalılık denklemlerini tam olarak sağlayamayacaktır. Bunun için Excel paket programının “Solver” (Çözücü) aracından yararlanacağız. Bu araç Newton-Raphson yöntemini kullanmaktadır.
Problemin çözümüne girmeden önce, Excelin “Options” (Seçenekler) menüsünden “Add-Ins” (Eklentiler) kısmı seçilir. Açılan pencerede Excel’e dahil edebileceğiniz çeşitli işlemler görüntülenecektir. Bunların içinden “Solver Add-In” (Çözücü Eklentisi) aktif değilse aktif hale getirilerek Excel’de kullanımı sağlanabilir. Excel’de “Data” (Veri) menüsü altında “Solver” (Çözücü) aracı görülür. Şimdi A1-A10 hücrelerine uzuv boyutları için kullandığımız adları ve B kolonunda karşı gelen hücrelere ise uzuv boyutların değerlerini yazalım. A12 hücresine bağımsız değişken adını ve B12 hücresine çözüm yapacağımız değerini (radyan cinsinden =60*pi()/180) yazalım. A13-A16 hücrelerine bağımlı değişken adlarını ve karşı gelen B hücrelerine bu giriş kolu açısı için bu değişkenler için tahminimizi (açılar radyan cinsinden) yazalım. B19-B22 hücrelerine değerleri sıfır olması gereken devre kapalılık denklemlerini yazalım. Bu hücrelerdeki denklemler:
Denklem 1:
a2cosθ12 + a3cosθ13 + d1 − a5cosθ15 − a4cosθ14 = f1 = 0
Excel’de yazılımı ise (B19 Hücresi):
=$B$2*COS(B12)+$B$3*COS(B13)+$B$9-$B$5*COS(B15)-$B$4*COS(B14)
Denklem 2:
a2sinθ12 + a3sinθ13 + a1 − a5sinθ15 − a4sinθ14 = f2 = 0
Excel’de yazılımı ise (B20 Hücresi):
=$B$2*SIN(B12)+$B$3*SIN(B13)+$B$1-$B$5*SIN(B15)-$B$4*SIN(B14)
Denklem 3:
a2cosθ12 + a3cosθ13 + b4cosθ14 + a6 − s16 = f3 = 0
Excel’de yazılımı ise (B21 Hücresi):
=$B$2*COS(B12)+$B$3*COS(B13)+$B$4*COS(B14)+$B$6-B16
Denklem 4:
a2sinθ12 + a3sinθ13 + b4sinθ14 − b1 = f4 = 0
Excel’de yazılımı ise (B22 Hücresi):
=$B$2*SIN(B12)+$B$3*SIN(B13)+$B$4*SIN(B14)-$B$7
Eğer seçmiş olduğumuz bağımlı parametre değerleri doğru olsa idi, B19-B22 hücre değerleri sıfır olurdu. Tahminlerde hatalar olacağından bu değerler sıfır olmayacaktır. Solver aracını kullanmak için bu fonksiyonların karelerini alalım:
f = f12 + f22 + f32 + f42
eğer f sıfır olur ise, diğer fonksiyon değerleri de sıfır olacaktır (Solver aracı bu şekilde çok değişkenli bir fonksiyonun minimum, maksimum değerini elde etmek veya belirli bir değer almasını sağlamak için kullanılabilir). Bu fonksiyonların kareleri toplamı B18 hücresine “=B19^2+B20^2+B21^2+B22^2” şeklinde yazılmıştır. B18 hücresinde iken “Data” (Veri) menüsünden önceden yüklemiş olduğumuz “Solver” (Çözücü) aracını seçelim. “Set Target Cell” (Hedef hücre belirle) olarak B18 hücresini ve “By changing cells” (değerleri değiştirilecek hücreler) olarak da B13-B16 hücrelerini işaretleyelim (bu hücrelerde sırası ile θ13 = 200°, θ14 = 80°, θ15 = 180° (radyan olarak) ve s16 = 400 değerleri bulunmaktadır). İkinci satırında “Equals to” ya (eşittir) karşılık “Value of” u (değeri) işaretleyip karşısında 0 değerin olmasını sağlayalım. “Options” (Seçenekler) tuşuna bastıktan sonra istediğimiz hata oranı, hassasiyet tolerans değerleri ile maksimum zaman ve iterasyon sayılarını değiştirebiliriz. Bu sayfayı “OK” tuşuna basıp kapattıktan sonra “Solve” (Çöz) komutuna bastığımızda B13-B16 değerlerini değiştirerek B18 hücresini sıfır yapmaya çalışacaktır. B18 hücresini sıfır yapan değerler tabi ki B19-B22 hücrelerini de sıfır yapacaktır. Aşağıda başlangıçta yazılmış olan ilk B kolonu ve “Solver” (Çözücü) aracı uygulandıktan sonra elde edilen sonuç B kolonu birlikte gösterilmektedir (Excel’de ilk B ve sonuç B kolonları aynı anda görünmez). Görüldüğü gibi denklemlerin karesinin toplamı başlangıçta 1.28×106 iken sonuçta 7.92×10-5 olmuştur. Devre kapalılık denklemini sağlayan bağımlı değişkenlerin değerleri: θ13 = 191.34°, θ14 =65.13°, θ15 = 180.18° ve s16 = 276.28 mm dir.