You are on page 1of 83

Autodesk Inventor iLogic Uygulamaları

Önsöz
Geçmişten günümüze birçok teknolojik gelişme yaşanmış ve bu teknoloji hayatımızın birçok
alanında yerini almıştır. Eskiden tasarımlarımızı başkalarıyla paylaşmak ve gerçeğe dönüştürmek için kâğıt
ve kalem başta olmak üzere birçok mekanik tasarım aracına ihtiyaç duyuyorken, bugün bu işlemlerin
neredeyse hepsini bilgisayar programlarını kullanarak yapabilmekteyiz. Öyle ki artık tasarımların ilk
aşamalarını oluşturan karalama işlemlerinde bile kâğıt ve kalem kullanmak yerine tablet bilgisayarlarda
çalışan taslak çizim yazılımları kullanılmaya başlanmıştır.

Teknolojinin gelişmesi ile birlikte insanların birbirlerine ve satın almak istedikleri ürünlere ulaşmaları
kolaylaşmıştır, buna bağlı olarak üretim yapan firmalar sadece kendi çevrelerindeki benzer firmalarla değil
aynı zamanda dünyanın önde gelen firmalarıyla da rekabet etmeye başlamışlardır. Bu rekabetin sonucu
olarak daha kaliteli, daha sağlam, tasarımı daha üstün ve maliyeti daha düşük ürünleri daha hızlı piyasaya
sürebilen firmalar ayakta kalmakta, diğer firmalar ise rekabet ortamına daha fazla dayanamamaktadırlar.

Tüm bu rekabet ortamında üretimin belkemiğini oluşturan mühendislerin ve tasarımcıların yükü ise
daha fazla artmakta ve tasarım ekiplerinin başarısı özgün üretim yapan firmaların kaderini tayin
etmektedir. Bir çizim ile başlayan tasarım sürecini en hızlı ve kesin biçimde gerçeğe dönüştüren ekipler
başarıyı yakalayabilmektedirler.

Tasarım araçları içerisinde ise üç boyutlu parametrik tasarım yazılımları zirvedeki yerlerini
korumaktadırlar, birçok hesaplamayı yapan, prototip maliyetlerini büyük ölçüde düşüren, ürünlerde
oluşabilecek hataları daha oluşmadan öngörmemizi ve düzeltmemizi sağlayan ve tasarım sürecinden üretim
sürecine kadar bilgiyi oluşturduğumuz ve işlediğimiz bu yazılımlar bize birçok alanda kolaylıklar
sağlamaktadırlar.

Sanayii devrimi ile birlikte kendini yineleyen birçok işlemde makineleşme ve otomasyona gidildiği
gibi aynı durum tasarım süreci için de geçerlidir. En küçük tasarımdan en büyük tasarıma kadar birbirine
benzeyen ve standart haline getirebileceğimiz bütün tasarım verileri tasarım yazılımları içerisinde yer alan
programlama araçları kullanılarak otomatik hale getirilmekte ve çok karmaşık tasarımların farklı
versiyonları bile bir form penceresi yardımı ile saniyeler içerisinde oluşturulabilmektedir.

Programlama araçlarını kullanabilen mühendis ve tasarımcılar oluşturdukları modelleri otomatik


hale getirerek benzer tasarımların farklı versiyonları için harcadıkları zamanı en aza indirip zamanı en
verimli şekilde kullanabilmekte ve dikkat gerektiren yorucu işlemlerin büyük bir kısmını bilgisayara
yaptırarak hata riskini büyük ölçüde azaltabilmektedirler.

Bu dokümanın amacı, tasarım otomasyonu konusunda kendisini geliştirmek isteyen mühendislere,


tasarımcılara veya tasarım ile ilgilenen kişilere örnekler vasıtasıyla tasarım otomasyonunu anlatmak ve
uygulayabilir düzeye getirmektir.

Kitabın hazırlanmasında referans olarak Autodesk firmasının üretmiş olduğu Autodesk Inventor
2016 3D parametrik modelleme yazılımı (demo sürümü) ve bu yazılımın içerisinde standart olarak gelen
iLogic programlama modülü anlatılmıştır.

1 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Teşekkür
Kitabın hazırlanması aşamasında ve hayatımın tüm anlarında varlıkları ile beni destekleyen
sevgili aileme teşekkürü borç bilirim.

Kitabın yazılması sırasında profesyonel görüşlerini esirgemeyerek kitaba katkıda bulunan


değerli meslektaşım Sayın Çetin YILDIRIM’a, Kitabın hazırlanmasında ve kullanıcılara ulaştırılmasında
gösterdikleri ilgi ve destek için Sayın Emin CENAL’e ve Sayın Olcay KÜK’e değerli yardımlarından
dolayı teşekkür ederim.

2 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

İÇİNDEKİLER
iLogic Uygulamaları - Tanımlar .......................................................................................................................................... 5
Parametrik Tasarım Nedir? ............................................................................................................................... 5
iLogic Nedir?...................................................................................................................................................... 5
iLogic Uygulamaları – Bölüm 1 .......................................................................................................................................... 6
iLogic Projesinin Temelleri ............................................................................................................................................ 6
Menü Anlatım Şekli - Şerit Menüdeki Komutların Yazılarak Gösterilmesi .................................................... 8
iLogic Uygulamaları – Bölüm 2 .......................................................................................................................................... 9
Parametrik Parça Tasarımı ............................................................................................................................................ 9
Uygulama 1: Autodesk Inventor ile Parametrik Parça Tasarlanması ve Basit iLogic Kurallarının
Tanımlanması ................................................................................................................................................ 9
iLogic Kullanıcı Ara Yüzü .............................................................................................................................................. 14
iLogic Browser ......................................................................................................................................................... 15
iLogic Kuralı Oluşturma ....................................................................................................................................... 15
iLogic Kuralı Düzenleme Penceresi ................................................................................................................. 16
iLogic Kod Yapısı: If…Then…End If ............................................................................................................... 17

iLogic Kod Yapısı: Mesaj Kutusu Oluşturma – Messagebox.Show .............................................................. 18

iLogic Editörü – Model Bilgilerine Ulaşma .................................................................................................. 20

iLogic Editörü – Matematiksel ve Mantıksal Operatörler ........................................................................... 21

Autodesk Inventor iLogic – Form Penceresi Ekleme ................................................................................... 23

Autodesk Inventor iLogic – Form Düzenleme Penceresi............................................................................. 24


Parametrik Montaj Tasarımı ....................................................................................................................................... 27
Parametrik Montaj Tasarımının Temelleri .............................................................................................................. 27
Paramertrik Montaj Tasarımı Metodları ............................................................................................................. 27
Sadece Montajın Programlanması Yöntemi.................................................................................................... 27
Montajın ve Parçaların Programlanması Yöntemi .......................................................................................... 28
Bağımsız Alt Montaj Gruplarının Programlanması Yöntemi ........................................................................... 29
Uygulama 2: Sadece Montajın Programlanması Yöntemi .......................................................................... 29

Uygulama 3: Montajın ve Parçaların Programlanması – Yöntem 1 ............................................................ 42

iLogic Kod Yapısı: iLogicVB.RunRule(“kural”) - iLogicVB.RunRule(“parça”,”kural”) .................................. 48

iLogic Kod Yapısı: “Select Case” Yapısı ........................................................................................................ 52

Uygulama 4: Bağımsız Alt Montaj Gruplarının Programlanması Yöntemi .................................................. 54


Program Akış Sıralamasının Yapılması ........................................................................................................ 58

3 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Kod Yapısı: “While…End While” ........................................................................................................ 59

Uygulama 5: “While…End While” Döngüsünün Kullanımı .......................................................................... 59

iLogic Kod Yapısı: “For … Next” döngüsü .................................................................................................... 70

iLogic Kod Yapısı: “Sub Main()… End Sub, Exit Sub, Return, Exit, End” ....................................................... 71

Uygulama 6: Sub Deyiminin Kullanılması .................................................................................................... 72

iLogic Kod Yapısı: “Function…End Function”............................................................................................... 74

iLogic Kod Yapısı: “Try … Catch … End Try” ................................................................................................. 75

iLogic Kod Yapısı: “Class ThisRule … End Class” .......................................................................................... 75

iLogic Kod Yapısı: “Private” değişken tanımlama ........................................................................................ 76


iLogic Kod Parçacıkları (Code Snippets) .......................................................................................................... 76
Kullanıcı Tanımlı Kod Parçacıkları .................................................................................................................... 77
Visual Basic.NET – iLogic İlişkisi ....................................................................................................................... 78
Visual Basic.NET ile Autodesk Inventor Üzerinde Çalışan Program Yazılması ................................................ 79
Genel Özet........................................................................................................................................................... 80

4 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Bilgisayar aracılığı ile oluşturduğunuz sayısal modelin rengini, yoğunluğunu, ölçülerini, kimlik
bilgilerini, malzeme bilgisini ve diğer birçok değeri tanımlayan değiştirilebilir bilgilere parametre, bu
parametreleri bir tablo veya program ara yüzü ile değiştirip hızlıca yeni sürümler üretmeye elverişli
tasarımlara ise parametrik tasarım denir.

Aşağıda basit bir parça modeli yer almaktadır. Autodesk Inventor içerisinde bu modeli tanımlayan
birçok parametre yer alır. Bu parametrelerden bazıları; renk, malzeme bilgisi, boyutsal ölçüler,
konum bilgisi, parçanın kimlik bilgileri… Vb. olarak sıralanabilir.

iLogic, Autodesk Inventor ile kural temelli tasarımlar yapmamızı sağlayan bir programlama aracıdır.
iLogic aracını kullanarak tasarımlarınızı otomatik hale getirebilir, belirli sınırlandırmalar ekleyebilir,
arka planda çalışan ve tasarımınızı kontrol eden kurallar oluşturabilir ve Inventor modelinizin
tüm parametrik unsurlarını kontrol edebilirsiniz. iLogic bir tür programlama aracı olduğu için bu aracı
kullanarak Autodesk Inventor içerisindeki hemen hemen her özelliği otomatik hale getirebilirsiniz.

iLogic programlama dilinin yapısı VB.NET programlama diline çok benzemektedir, eğer Visual Basic
programlama dilini biliyorsanız oluşturmak istediğiniz iLogic modelini Visual Basic kullanarak da
programlayabilirsiniz.

Bu belge içerisinde yer alan konular kullanıcının hiç programlama bilgisi olmadığı varsayılarak detaylı
olarak anlatılmıştır.

iLogic eğitiminin bundan sonraki kısmında önce teorik bilgi verilecek ve ardından bir veya daha fazla
örnek ile konular pekiştirilecektir, bu dokümandan en fazla faydayı sağlayabilmeniz için tüm
örnekleri uygulamalı olarak yapmanız önerilir.

5 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Projesinin Temelleri


Geniş kapsamlı ve kontrol edilebilir bir iLogic projesi oluşturabilmek için modelleme esnasında ve
sonrasında dikkat edilmesi gereken bazı konular vardır. Aşağıda bu konular özet halinde verilmiştir,
kitabımızın ilerleyen bölümlerinde gerekli detaylandırmalar yapılacaktır.

Bir projeye başlanmadan önce aşağıdaki adımlar dikkatle uygulanmalıdır.

1-) Proje Kapsamının Tanımlanması

Bir iLogic projesine başlamadan önce oluşturulmak istenen modelin sınırlarının tespit edilmesi
gerekmektedir, proje kapsamındaki modelden beklenen tüm özellikler ve değişik sürümlerin sayısı
projenin en başında belirlenmelidir.

Bitmiş bir projeye sonradan eklemeye çalışılan yeni bir özellik ilk başta planlanıp eklenmesine kıyasla
çok daha fazla zaman alacaktır.

2-) iLogic ile Programlama Gerekliliğinin Sorgulanması

Tasarım dosyalarınızın farklı sürümleri şekil olarak birbirlerine benziyor fakat ölçüleri ve diğer
parametrik değerleri birbirlerinden farklı ise(ölçü, renk, malzeme, parça sayısı vs.) ve model dosyanız
bu parametreleri kontrol ederek yeni tasarımlar elde etmenize olanak sağlıyor ise bu projede iLogic
kullanmak verimi çok artıracaktır.

Eğer her seferinde farklı bir makine inşa ediliyorsa ve makineler arasında benzerlik gösteren parça
veya montaj grupları bulunmuyorsa bu tür projelerde iLogic kullanmak gereksiz zaman israfına
neden olur.

3-) Parça ve Montajlardan İstenen Özelliklerin Belirlenmesi

Projede kullanılacak parçaların boyutları, malzemeleri ve değişik formlarının neler olacağı


belirlenmelidir, örneğin bir mobilya tasarlanacak ise – bu bir konsol olabilir - bu mobilyanın
değişmesi istenen özellikleri nelerdir, değişen parçaları var mıdır, mobilyanın uzunluğuna veya bir
başka parametresine bağlı olarak otomatik değişmesi istenen özellikleri var mıdır vs. belirlenmelidir.

4-) Parçaların Parametrik Olarak Modellenmesi (Parametrelerin İsimlendirilmesi)

Autodesk Inventor, tasarımlarınızı modellediğiniz esnada parçaya verdiğiniz bütün ölçüleri ve diğer
parametreleri saklar, isimlendirir ve bir tablo halinde parçanın veri tabanına kaydeder. Siz farkında

6 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

olmadan parametrik bir tasarım yapmış olursunuz. Fakat parametre sayısı arttıkça tablodaki hangi
parametrenin model üzerindeki hangi değeri kontrol ettiğini takip etmek zorlaşır.

Program tarafından otomatik olarak isimlendirilen bu parametrelerin isimlerini değiştirerek daha


anlaşılır bir isim verilmesi gerekmektedir.

Yukarıdaki resimlerden de görülebileceği gibi üzerinde değişiklik yapılması planlanan parametrelerin


isimlerini daha anlaşılır isimler ile değiştirmek bu parametrelerin kullanımını kolaylaştırır.

Örneğin;

“d2 = d1 + 50” işlemine göre “Boy = En + 50” işlemi kullanıcıya daha çok bilgi vermektedir.

5-) Montaj Dosyasının Oluşturulması (Eğer Montaj Oluşturulacak İse)

iLogic Editörü ile yazılan kodlar ile sadece bir parça dosyası kontrol edilebileceği gibi içerisinde
binlerce parça ve alt montaj bulunan bir montaj dosyası da kontrol edilebilir. Montaj dosyalarını
oluştururken hangi parçalar arasında boyutsal ilişki kurulacağına dair notlar tutmak daha sonraki
işlemlerde size kolaylık sağlayacaktır.

6-) İstisnai Durumların Belirlenmesi

Sayısal modelin oluşturulabilmesi için tüm parametrelerinin doğru değerleri almaları gereklidir, bu
nedenle parametrelerin alacakları değerleri kontrol altında tutmak ve hataların oluşmasını
engellemek için model içerisinde oluşabilecek tüm özel durumlar tespit edilir ve yazılan kuralların

7 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

içerisine hataları önleyebilecek satırlar eklenir. Örneğin; “En = Boy – 50” gibi bir denklemde “Boy”
isimli parametreye 50 mm veya daha küçük bir değer vermek “En” isimli parametrenin hatalı değer
almasına neden olur ve sayısal model oluşturulamaz, bu hatanın oluşmasını engellemek için “Boy”
isimli parametrenin 50 mm den büyük değer almasını sağlayacak kod satırlarının yazılması gereklidir.

7-) iLogic ile Programlamanın Yapılması

Bu aşamada iLogic Editörü kullanılarak ön hazırlıkları biten modelin kodları yazılır. iLogic ile
programlama işlemi daha önce hiç program yazmamış birisinin bile kolaylıkla başarabileceği bir
işlemdir, bu eğitim rehberinde iLogic te program yazmanın ne kadar basit bir işlem olduğunu
örnekler üzerinde göreceksiniz.

8-) Kullanıcı Form Penceresinin Oluşturulması

iLogic ile modelin programlaması işlemi bittikten sonra veya devam ederken bir yandan da
kullanıcıların programdaki parametreleri kolayca değiştirip takip edebilecekleri bir kullanıcı ara yüzü
tasarlanır(Kullanıcı Form Penceresi). İyi tasarlanmış bir kullanıcı ara yüzü birçok işlemin daha hızlı
yapılabilmesini sağlar.

9-) Programı Çalıştırma ve Hataların Ayıklanması

Bu aşamada iLogic kodlarının düzgün yazılıp yazılmadığı veya hatalı işlem yapılıp yapılmadığı kontrol
edilecektir. Hataların ayıklanması sırasında kolaylık sağlayan yöntemler ilgili konu başlığı altında
anlatılacaktır.

Menü Anlatım Şekli - Şerit Menüdeki Komutların Yazılarak Gösterilmesi

Belgemizin birçok bölümünde yerden tasarruf sağlamak amacıyla Autodesk Inventor yazılımının Şerit
Menüsünde (Ribbon) bulunan komutlar yazılı olarak ifade edilecektir,

Autodesk Inventor şerit menüsü üç farklı bölümden oluşmaktadır, bu bölümler aşağıdaki resim
üzerinde de gösterildiği gibi Sekme, Panel ve Buton (veya Komut) olmak üzere üç temel parçanın
birleşmesi ile oluşur.

Belge içerisinde bir komutun şerit menüdeki konumu “A > B > C” formatında
gösterilecektir.

Örneğin Komutunun şerit menüdeki konumu


şeklinde, komutunun konumu ise şeklinde
tarif edilecektir.
8 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Parametrik Parça Tasarımı


Uygulama 1: Autodesk Inventor ile Parametrik Parça Tasarlanması ve Basit iLogic
Kurallarının Tanımlanması

Bu uygulamada Autodesk Inventor ile bir parça dosyasını parametrik olarak düzenleyip parametre
isimlerini değiştireceğiz.

Autodesk Inventor Yazılımını Çalıştırın.

Autodesk Inventor başlangıç sekmesini kullanarak yeni bir parça dosyası oluşturun.

Şerit menü üzerindeki ”Start 2D Sketch” butonuna tıklayın ve XY çalışma düzlemini seçin.

9 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Şerit menü üzerindeki “Sketch” sekmesi altında yer alan “Create” panelindeki “Rectangle”
butonuna tıklayın ve merkezden başlayarak bir dörtgen oluşturun, ölçüleri bir sonraki adımda
tanımlayacağız.

“Sketch > Constrain > Dimension” butonuna tıklayın ve oluşturduğunuz dikdörtgeni aşağıdaki gibi
ölçülendirin.

Autodesk Inventor ’un varsayılan ayarlarında teknik resim


ortamında sadece ölçülerin değerleri görüntülenir.

Görünüm ayarlarını değiştirmek için;

“Tools > Options > Document Settings” butonuna tıklayın, Açılan


diyalog penceresinin “Units” sekmesinde yer alan “Display as
expression” seçeneğini seçin ve diyalog penceresini onay vererek
kapatın.

Sonuç 3 numaralı resimdeki gibi olacaktır.

10 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Çizim ortamından çıkmak için şerit menü üzerindeki “Finish Sketch” butonuna tıklayın.

3D model oluşturmak için “3D Model > Create >


Extrude” butonuna tıklayın, kalınlık olarak “10 mm”
değerini girin ve onay vererek işlemi tamamlayın.

Bu adımda parametrelerin isimlerini ve değerlerini


tablo kullanarak değiştireceğiz, bu işlem için şerit menü
üzerindeki “Manage > Parameters > Parameters”
butonuna tıklatın.

“Parameters” butonuna tıkladığınızda aşağıdaki diyalog penceresi açılacaktır, bu diyalog


penceresini inceleyelim.

Parameter Name: Parametrelerin


isimlerinin gösterildiği sütundur.
Programlama esnasında hataya
neden olmaması için değişkenler
yeniden isimlendirilirken Türkçe
karakter, boşluk veya noktalama
işareti kullanmamalıdır. Parametre
isimlerinin sade ve anlaşılır olması
programlama açısından önemlidir.
Parametre ismini değiştirmek için
ismin bulunduğu tablo hücresine
tıklamak yeterlidir.

Equation: Parametrelerin değerlerinin gösterildiği sütundur, bu sütuna matematiksel ifadeler


girilebilir veya diğer parametre isimleri kullanılarak referans değerler oluşturulabilir.

(d2 = 15 + 8 veya d2 = d3 – 5 vb.)

Key: Önemli parametrelerin işaretlenebileceği sütundur, buradaki işaret kutularını kullanarak daha
sonradan kullanılması düşünülen parametreler işaretlenebilir ve süzgeçleri kullanarak sadece
işaretlenmiş parametrelerin görüntülenmesi sağlanabilir.

Parametre isimlerini ve değerlerini istediğiniz zaman parametreler tablosunu kullanarak


değiştirebilirsiniz fakat işlem kolaylığı bakımından parametrelerin isimlerini ölçü verirken belirlemek
veya ölçülendirme işlemi tamamlandıktan sonra model üzerinden değiştirmek büyük kolaylık
sağlayacaktır.
11 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Parametreleri model üzerin değiştirmek için birçok yöntem


bulunmaktadır, bu uygulamamızda en pratik yöntemlerden birisini
kullanacağız. İşlemlere başlamadan önce “Parameters” diyalog
penceresini kapatın.

Model ağacına giderek oluşturduğunuz kabartma unsurunun


ağacını genişletin ve oluşturduğunuz eskize sağ tıklayarak açılan
menü içerisinden “Visibility” seçeneğini işaretleyin.

Model ortamına geri dönün ve ismini değiştirmek istediğiniz


ölçülerden birisine çift tıklayın.

Değiştirmek
istediğiniz ölçüye çift
tıkladığınız zaman açılan
diyalog penceresi
varsayılan olarak soldaki
resimde göründüğü gibidir. Açılan penceredeki girdi
kutusunda sadece değiştirilmek istenen ölçünün değeri
görüntülenmektedir. Kutuda yer alan değerin bağlı
bulunduğu parametrenin ismini değiştirmek için girdi
kutusunun içerisine “ yukseklik = 14 mm ” yazıp onay
kutusuna tıklayın.

Yukarıda anlatılan işlemleri yaparak istediğiniz ölçünün ismini değiştirebilirsiniz fakat program
ayarlarına giderek bu işlemleri biraz daha kolaylaştırmak mümkündür. Şerit menüdeki “Tools >
Options > Document Settings” butonuna tıklayın, Açılan diyalog penceresinin “Units” sekmesinde
yer alan “Default Parameter Input Display” ayarını “Display as expression” olacak şekilde değiştirin
ve ayarları uygulayarak ayar penceresini kapatın.

Ayar değişikliğini yaptıktan sonra üzerinde değişiklik yapmak


istediğiniz ölçüye çift tıklarsanız; bu sefer açılan diyalog penceresinin
girdi kutusunda bir eşitlik yer alır, bu eşitlikteki parametre ismini
değiştirip onay kutusuna tıklayarak parametrenizi yeniden
isimlendirebilirsiniz. (“genişlik=12 mm” olacak şekilde değiştirin)

Aynı ismi iki farklı parametreye atayamazsınız.

12 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Eskiz üzerindeki ölçülendirme işlemleri bittikten sonra


parçanın kalınlığını kontrol eden parametreyi yeniden
isimlendirelim.

Bir unsurun hangi parametrelerden oluştuğunu görüntülemek için;


model ağacına giderek parametrelerini görüntülemek istediğiniz
unsurun üzerine sağ tıklayıp “Show Dimensions” komutunu
çalıştırmalısınız.

“Show Dimension” komutunun çalıştırılması ile birlikte model


üzerinde “d4” ve “d5” parametreleri görünür hale gelir, “d4” isimli
parametreye çift tıklayarak bu parametrenin ismini “kalinlik” olacak
şekilde değiştirin, programlama aşamasında “d5”
isimli parametreyi kullanmayacağımız için “d5”
parametresinin ismini değiştirmemize gerek yoktur.

Sadece kullanmayı planladığınız


parametrelerin isimlerini değiştirmek zamandan
tasarruf yapmanızı sağlar.

Basit parça modelimizin parametrelerini yeniden


isimlendirerek parametrik tasarım ile ilgili kısmı
tamamlamış olduk.

Yeniden adlandırdığımız parametrelerin model üzerindeki ve parametreler diyalog penceresindeki


görünümü aşağıdaki gibidir.

13 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Bu aşamada parametrik parça modelimizin hangi özelliklere sahip olması gerektiğini


belirleyeceğiz. İsteklerimizi bir liste haline getirelim;

a) Eğer parçanın genişliği 300 mm’den fazla olursa parçanın kalınlığına verebileceğimiz en
küçük değer 20 mm olsun.

b) Genişlik değeri 300 mm’nin üzerine çıkarıldığı zaman kalınlık değeri eğer 20 mm den
küçük ise 20 mm değerine otomatik gelsin ve kullanıcıya bu işlemin yapıldığını belirten
bir mesaj kutusu gösterilsin.

c) Kalınlık, yükseklik ve genişlik parametrelerinden hiçbirisi 3 mm’den küçük değerler


alamasın, eğer kullanıcı daha küçük bir değer girerse program bu değeri otomatik olarak
3 mm’ye getirsin ve kullanıcıya bu durumu bildiren bir uyarı mesajı gösterilsin.

d) Kullanıcı kalınlık, yükseklik ve genişlik parametrelerini bir form aracılığı ile kontrol
edebilsin.

Şimdilik bu kadar özellik yeterli, ileriki bölümlerde daha kapsamlı örnekler yapacağız.

Yukarıdaki tüm adımları tamamladıktan sonra iLogic ile programlama işlemine başlayabilirsiniz.
Çözüm işlemine geçmeden önce çözümde kullanacağımız bazı teknik bilgileri paylaşmak istiyorum.
(Bu uygulamada oluşturduğunuz parametrik parça modelini bilgisayarınıza kaydedin, sonraki
uygulamalarda da bu dosyaları kullanacağız.) (Çözüm için tıklayın (sayfa 13))

iLogic Kullanıcı Ara Yüzü


Kural temelli tasarımlar yapılmasına imkân veren iLogic modülü Autodesk Inventor LT haricindeki
Autodesk Inventor ürünlerinde standart olarak gelen bir özelliktir.

iLogic kullanıcı ara yüzüne ulaşmak için Autodesk Inventor içerisinde parça, montaj veya teknik resim
dosyalarından en az birisinin açık olması gerekmektedir.

iLogic ile ilgili araçlar şerit menü üzerindeki “Manage” sekmesinde bulunan “iLogic” panelinde yer
alır.

Panel üzerinde bulunan “Add Rule” butonuna tıklanarak tasarımlara


iLogic kuralları eklenir.

“Add Form” butonuna tıklanarak tasarımdaki parametreleri kontrol


edebileceğiniz diyalog pencereleri oluşturulabilir.

“Event Triggers” butonuna tıklanarak iLogic kurallarının belirli


işlemler sonrasında otomatik olarak çalışmaları sağlanabilir.

“iLogic Browser” butonu ise tasarımdaki kuralların ve form


pencerelerinin yönetilebileceği bir pencerenin açılmasını sağlar.

14 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Browser
iLogic Browser penceresini açmak için şerit menü üzerindeki “Manage > iLogic > iLogic Browser”
butonuna tıklayın.

iLogic Browser üzerinde dört adet sekme bulunmaktadır.

Bu sekmeyi kullanarak model dosyanıza kurallar


ekleyebilir, kuralları silebilir, çalıştırabilir, aktif veya pasif
hale getirebilirsiniz. Kural dosyaları sadece kuralın
eklendiği model dosyası aktifken bu sekmede
görüntülenir

Bu sekmeyi kullanarak model dosyanıza Form pencereleri ekleyebilirsiniz. Eklediğiniz Form


penceresi sadece Form’u eklediğiniz model dosyası aktif iken görüntülenir.

Bu sekmeyi kullanarak oluşturduğunuz Form’lar aynı proje dosyasına(.ipj) bağlı tüm


modellerin içinde görüntülenir.

NOT: Buradaki Form’un kontrol ettiği parametre ile aynı isimde bir parametre aktif dosyada
bulunmuyorsa Form penceresinin o parametre ile ilgili kısmı pasif olarak görüntülenir.

Bilgisayarınızdaki herhangi bir klasörde bulunan “*.iLogicVB, *.vb, *.txt”


formatlarında kaydedilmiş kural dosyalarını modelinize ekleyebileceğiniz bölümdür, buradaki kurallar
parçadan bağımsızdır, aynı proje içerisindeki uyumlu tüm modeller üzerinde çalışabilirler.

Model dosyasına kural eklemek için iLogic Browser üzerindeki


Rules sekmesi altında yer alan boşluğa sağ tıklayın ve açılan
menüden “Add Rule” seçeneğini seçin.

Bir diğer kural ekleme yöntemi ise şerit menü


üzerindeki “Manage > iLogic > Add Rule” butonuna
tıklamaktır.

“Add Rule” komutunu çalıştırdığınızda kural ismini girebileceğiniz


bir diyalog penceresi açılır.

Oluşturduğumuz kuralların farklı dildeki işletim


sistemlerinde de düzgün çalışmasını sağlamak için kural ismi
belirlerken boşluk bırakmamaya ve Türkçe karakterleri (ğüşiöç)
kullanmamaya özen göstermelisiniz.

15 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic kuralının ismini belirledikten sonra diyalog penceresindeki “OK” butonuna tıkladığınızda iLogic
kurallarını oluşturabileceğiniz editör açılır.

Kural editörü genel olarak 3 bölümden oluşmaktadır, bu bölümler aşağıdaki resimde gösterilmiştir.

1 Numaralı Bölme: Bu bölmede tasarımınıza eklemek istediğiniz özelliklerin iLogic programlama


kodları yer alır, farklı kategoriler altında toplanmış yüzlerce kod parçacığı içerisinden kullanmak
istediklerinize çift tıklayarak yazdığınız programa ekleyebilirsiniz.

2 Numaralı Bölme: Bu bölme 4 ana başlıktan oluşur, bu bölümde model dosyalarının unsurlarına ve
parametrelerine doğrudan ulaşabilir ve iLogic kod editörünüzün ayarlarını yapabilirsiniz, burada yer
alan her bölüm uygulamalar içerisinde incelenecektir.

3 Numaralı Bölme: Bu bölme kodların yazıldığı bölümdür. Bu bölüme yazdığınız kurallar iLogic e özel
bir renklendirme ile renklendirilir ve kod takibi oldukça kolaylaşır.

Uygulama 1 – Madde 10 da belirttiğimiz parçadan istenen özellikleri


iLogic editörünü kullanarak tanımlayalım.

ÇÖZÜM: a maddesinde “Eğer parçanın genişliği 300 mm’den fazla olursa parçanın kalınlığına
verebileceğimiz en küçük değer 20 mm olsun.” ifadesi yer alıyordu. Bu ifade içerisinde iki koşul söz
konusudur. Programlama dilinde koşullu ifadeleri belirtmek için “if… then…end if” yapısını kullanırız.

16 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Kod Yapısı: If…Then…End If

iLogic içerisindeki “If…Then…End If” yapısının


Kullanıcı Girişi
kullanımı aşağıdaki gibidir.

If Koşul Then
işlem
End If Koşul Sağlanıyor İşlem

Koşul olarak tanımladığımız alana yazdığımız


Sağlanmıyor
ifade yanlış ise hiçbir işlem yapılmadan devam
edilir, eğer ifade doğru ise işlem olarak
tanımladığımız alandaki işlemler yapılır ve
ondan sonra devam edilir.
Sonuç

Çözüm (devam) : a maddesinde belirtilen ifadeyi diyagram şeklinde gösterelim

Genişlik=g
Kalınlık=k

g > 300 mm Sağlanıyor


İşlem
k<20 mm

Sağlanmıyor
Sağlanıyor k=20 mm

Sağlanmıyor
Sonuç

Sonuç

Yukarıda verilen diyagramda birinci koşul ifadesinin içerisinde yer alan işlemin içinde başka bir koşul
ifadesi bulunmaktadır, iLogic ile programlama yaparken iç içe geçmiş birçok koşul deyimi
kullanabilirsiniz.

Yukarıdaki ifadede iki adet koşul bulunmaktadır, birinci koşul olan genişlik değerinin 300 mm den
büyük olması koşulu doğru ise bu sefer program kullanıcının girdiği kalınlık değerini kontrol edecek
ve bu değerin 20 mm den küçük olmamasını sağlayacaktır. Kalınlık değeri 20 mm den küçük ise
program bu değeri 20 mm olarak değiştirecektir.

Yukarıda gösterilen a maddesinin çözüm diyagramının kod karşılığı ise aşağıdaki gibidir.

If genislik > 300 mm Then Yandaki kod penceresinde kırmızı ile gösterilen yazılar
If kalinlik < 20 mm Then işlem deyimlerini, mavi ile gösterilenler parametre
kalinlik = 20 mm
End If isimlerini, siyah ve kalın olarak gösterilenler ise sayılar
End If ve matematiksel işlemleri temsil etmektedir.

17 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Çözüm (Uygulama 1 Madde 10-b) : b maddesinde “Genişlik değeri 300 mm’nin üzerine çıkarıldığı
zaman kalınlık değeri eğer 20 mm den küçük ise 20 mm değerine otomatik gelsin ve kullanıcıya bu
işlemin yapıldığını belirten bir mesaj kutusu gösterilsin.” İfadesi yer almaktaydı. a maddesine
verdiğimiz çözüm b maddesi içerisinde istenen çoğu özelliği sağlamaktadır fakat kullanıcıya bilgi
veren mesaj kutusunu oluşturamamaktadır, b maddesinde istenen özellikleri karşılamak için a
maddesi için yazdığımız kodu düzenleyerek uyarı mesajının görüntülenmesini sağlayalım.

iLogic Kod Yapısı: Mesaj Kutusu Oluşturma – Messagebox.Show

Bir programın gerekli durumlarda kullanıcıyı uyarması veya


bilgilendirmesi için mesaj kutularını kullanırız.

iLogic içerisinde birçok farklı mesaj kutusu oluşturma seçeneği yer


alır, bu seçeneklerin içerisinden en sadesi ise sadece bir bilgiyi
göstermeye yarayan “Messagebox.Show” seçeneğidir,

“Messagebox.Show” kodunun iLogic üzerindeki tam yazılışı


aşağıdaki gibidir.

MessageBox.Show("Mesaj", "Başlık")

Yukarıdaki kodun karşılığı olan mesaj


kutusu yandaki resimdeki gibidir.

Çözüm (Uygulama 1 Madde 10-b) (Devam): b maddesinde istenen mesaj kutusunun içeriği “Kalınlık
değeri 20 mm olarak atandı” olsun, mesaj kutusunun başlığı ise “Ölçü Düzeltmesi” olsun, bu mesaj
kutusu sadece genişlik parametresinin 300 mm’nin üzerinde olduğu durumlarda ve kalınlık
parametresi 20 mm den küçük iken görüntülenecektir.

Mesaj kutusu görüntülenmeden önce kalınlık parametresi 20 mm olarak atanacaktır.

b maddesinin çözümü için a maddesi üzerinde yapılması gereken değişiklik aşağıdaki gibidir.

If genislik > 300 mm Then


If kalinlik < 20 mm Then
kalinlik = 20 mm
MessageBox.Show("Kalınlık değeri 20 mm olarak atandı", "Ölçü Düzeltmesi")
End If
End If

Yukarıdaki kodları doğrudan iLogic editörünün 3 numaralı bölmesine kopyalayabilirsiniz.

18 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic kodlarının çalışıp çalışmadığını


test etmek için “OK” butonuna
tıklayarak iLogic Editörünü kapatın ve
şerit menüdeki “Manage >
Parameters > Parameters” butonuna
tıklayarak parametreler penceresini
açın.

Parametreler penceresine “Driving


Rule” isimli yeni bir sütun eklendiğini
görmektesiniz, iLogic içerisine
yazdığımız kural doğru
koşullarda “kalinlik” isimli
parametreyi değiştirdiği için kural dosyamızın
ismi “kalinlik” isimli parametrenin bulunduğu satırda yer
almaktadır.

“genislik” isimli parametrenin değerini 310 mm olarak


değiştirin ve onay vermek için klavyeden enter butonuna
basın, karşınıza sağdaki mesaj kutusu çıkar ve “kalinlik”
parametresi de 20 mm olarak atanır.

“Tamam” Butonuna tıklayarak mesaj kutusunu kapatın ve en son yazdığımız kuralı düzenlemek
için “iLogic Browser” üzerinde yer alan “Rule0” isimli kurala çift tıklayarak iLogic editörünü açın.

Çözüm (Uygulama 1 Madde 10-c): c maddesinde “Kalınlık, yükseklik ve genişlik parametrelerinden


hiçbirisi 3 mm’den küçük değerler alamasın, eğer kullanıcı daha küçük bir değer girerse program bu
değeri otomatik olarak 3 mm’ye getirsin ve kullanıcıya bu durumu bildiren bir uyarı mesajı
gösterilsin.” İfadesi yer almaktadır, burada her bir parametre için bir koşul tanımlanacaktır.

iLogic editörü içerisindeki 3 numaralı bölmede koşul


ifadelerini tanımlayabileceğimiz şablon dosyaları bulunur.

Fare imlecini boş bir satıra alın ve koşul ifadeleri


içerisinden “If…Then…End If” seçeneğine tıklayın.

Tıklama işleminden sonra fare imlecinin bulunduğu konuma aşağıdaki kod satırları yazılır.

“My_Expression” yazan kısmı değiştirerek koşul ifadesi


If My_Expression Then yazılacaktır, koşul ifadesinde kullanacağımız parametre isimlerini
End If iLogic editörü üzerindeki 2 numaralı bölmede yer alan “Model”
isimli başlığın altından seçebiliriz.

Kod ekleme işlemine geçmeden önce 2 numaralı alan içerisindeki “Model” başlığı altında yer alan
araçları inceleyelim. (Devamı açıklamalardan sonradır.)

19 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Editörü – Model Bilgilerine Ulaşma

iLogic editörünü kullanarak model parametrelerine, unsur ağacı ve parça bilgilerine ulaşabilirsiniz.

iLogic editörünün model bilgilerine ulaşmak için kullanacağınız bölümü iki kısımdan oluşmaktadır.

Soldaki kısımda parça, montaj veya teknik resim içerisinde yer alan ürün ağacı yer alır, bu ürün ağacı
üzerinden seçtiğiniz unsur, teknik resim veya özelliğin parametreleri editörün sağ tarafındaki kısımda
gösterilir.

Sağdaki kısımda “Parameters” ve “Names” olmak üzere iki sekme yer alır. “Parameters” sekmesinde
seçtiğiniz unsurun içerdiği parametreler ve bu parametrelerin değerleri bulunur, “Names”
sekmesinde ise seçtiğiniz unsurların isimleri listelenir.

• Model içerisindeki tüm model parametrelerini listelemek için “Model” başlığı altındaki sol
kısımda yer alan “Model Parameters” özelliğine tıklayın.

Not: Modelimizde kullanıcı tanımlı parametre oluşturduğumuzda yukarıdaki listede “User


Parameters” özelliği de görüntülenecektir.

• Seçtiğiniz unsurun parametrelerinden birisini iLogic kuralınıza eklemek için sağ taraftaki
kısımda yer alan “Parameters” sekmesi altındaki listeden istediğiniz parametrenin ismine çift
tıklayın.

• Bir unsurun ismini kurala eklemek için sağ taraftaki “Names” sekmesi altındaki listeden
eklemek istediğiniz isme çift tıklayın. Unsur ismi burada listelenmemişse sol taraftaki
kısımdan isminin listelenmesini istediğiniz elemanı seçin, seçtiğiniz isim listeye eklenir

20 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Editörü – Matematiksel ve Mantıksal Operatörler

= A=B B değişkeninin değerini A değişkenine atar. / A ve B değerlerini karşılaştırır. Sayısal & Boolean

+ A+B A ve B değerlerini toplar. (7+5=12) Sayısal

- A-B A değerinden B değerini çıkartır. (15-5=10) Sayısal

* A*B A değeri ile B değerinin çarpımını alır. (4*5=20) Sayısal

/ A/B A değerini B değerine böler. (20/5=4) Sayısal

^ A^B A üssü B (AB) (örneğin 28=256). Sayısal

Mod A=B Mod x A değeri B değerinin x değerine bölümünden kalana eşittir. Sayısal

< A<B A değeri B değerinden küçüktür. Sayısal

> A>B A değeri B değerinden büyüktür. Sayısal

<= A <= B A değeri B değerine eşittir veya B değerinden küçüktür. Sayısal

>= A >= B A değeri B değerine eşittir veya B değerinden büyüktür. Sayısal

And A And B A ve B ifadelerinden her ikisi doğru ise sonuç doğrudur. Boolean

Or A Or B A veya B ifadelerinden birisi doğru is sonuç doğrudur. Boolean

AndAlso A AndAlso B Her iki ifade de doğru ise sonuç doğrudur (Detaylı Bilgi >>). Boolean

OrElse A OrElse B Her iki ifade de yanlış ise sonuç yanlıştır (Detaylı Bilgi>>). Boolean

Not A Not B A ifadesi B ifadesinin tersidir (B doğru ise A yanlış) (Detaylı Bilgi>>). Boolean

Is C=A Is B A ve B nesneleri aynı nesneyi referans gösteriyorsa C değeri doğrudur. Boolean & Nesne

IsNot A IsNot B A ve B nesneleri farklı nesneyi referans gösteriyorsa C değeri doğrudur. Boolean & Nesne

(Uygulama 1 – 10-c Devam)

Parçanın genişlik, yükseklik ve kalınlık parametrelerinin 3 mm den küçük değer almamasını istiyoruz

“yukseklik” parametresinin ismini kod ekranına aktarmak için önce iLogic Editörü – Model Bilgilerine
Ulaşma bölümünde açıklandığı gibi “Extrusion1” isimli unsurun “yukseklik” isimli parametresine çift
tıklayarak kod ekranındaki koşul şablonunun “My_Expression” yazan kısmına kopyalayın.

Koşul ifadesi “yukseklik < 3 mm” olsun, eğer “yukseklik” 3 mm


If My_Expression Then den küçük ise “yukseklik = 3 mm” işlemi yapılsın, her işlemden
End If sonra da “Yükseklik değeri en az 3 mm olabilir” yazan bir mesaj
kutusu görüntülensin. İstenen tüm bu özellikleri karşılayan kural
aşağıdaki gibidir.

If yukseklik < 3 mm Then


yukseklik = 3 mm
MessageBox.Show("Yükseklik değeri en az 3 mm olabilir", "Uyarı")
End If

“yukseklik” parametresi için yazdığımız kuralın üzerinde küçük değişiklikler yaparak “genislik”
ve “kalinlik” parametrelerini de sınırlandırabilen kuralları yazabiliriz, yukarıdaki kuralın diğer
parametreler için değiştirilmiş sürümleri aşağıda yer almaktadır.

21 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

“genislik” parametresini sınırlandıran kural

If genislik < 3 mm Then


genislik = 3 mm
MessageBox.Show("Genişlik değeri en az 3 mm olabilir", "Uyarı")
End If

“kalinlik” parametresini sınırlandıran kural

If kalinlik < 3 mm Then


kalinlik = 3 mm
MessageBox.Show("Kalınlık değeri en az 3 mm olabilir", "Uyarı")
End If

Yukarıdaki işlemler ile birlikte Uygulama 1 – 10-c bendinde istenen özellikleri tanımlamış olduk.

Belgenin bu kısmına kadar iLogic editörüne yazdığımız kodların hepsi aşağıda yer almaktadır,
yazdığınız kodları aşağıdaki liste ile karşılaştırabilirsiniz.

If genislik > 300 mm Then


If kalinlik < 20 mm Then
kalinlik = 20 mm
MessageBox.Show("Kalınlık değeri 20 mm olarak atandı", "Ölçü Düzeltmesi")
End If
End If

If yukseklik < 3 mm Then


yukseklik = 3 mm
MessageBox.Show("Yükseklik değeri en az 3 mm olabilir", "Uyarı")
End If

If genislik < 3 mm Then


genislik = 3 mm
MessageBox.Show("Genişlik değeri en az 3 mm olabilir", "Uyarı")
End If

If kalinlik < 3 mm Then


kalinlik = 3 mm
MessageBox.Show("Kalınlık değeri en az 3 mm olabilir", "Uyarı")
End If

iLogic Uygulamamızın kod editörü ile ilgili bölümünü tamamladık, bu aşamadan sonra iLogic
editörünü “OK” butonuna tıklayarak kapatabilirsiniz.

Sıra geldi iLogic ile hazırladığımız dokümanımızın karşılamasını istediğimiz son özelliğine, Uygulama 1
madde 10 d bendinde “Kullanıcı kalınlık, yükseklik ve genişlik parametrelerini bir form aracılığı ile
kontrol edebilsin.” İbaresi yer almaktadır.

22 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Uygulamamıza form penceresi eklemeden önce Autodesk Inventor içerisindeki form penceresi
ekleme komutlarını inceleyelim.

Autodesk Inventor iLogic – Form Penceresi Ekleme

Autodesk Inventor ile oluşturulan sayısal modele parametreleri kontrol etmeyi kolaylaştıran form
pencereleri eklenebilmektedir,

Form pencereleri üzerinde kullanımı kolaylaştıracak birçok nesne kullanılabilir.

Model dosyasına form penceresi eklemek için şerit menü üzerinden


butonuna tıklanabilir veya iLogic Browser diyalog penceresinden komutu
çalıştırılır.

Bir sayısal model içerisinde birden fazla form


kullanılabilir.

komutu kullanılarak aynı proje içerisindeki tüm sayısal


modellerin içerisinde görüntülenebilen projeye özgü
form pencereleri oluşturulabilir.

23 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Autodesk Inventor iLogic – Form Düzenleme Penceresi

Autodesk Inventor içerisindeki form oluşturma ve düzenleme diyalog penceresi aşağıdaki gibidir.

Form Editörünü açmak için şerit menü üzerinden butonuna


tıklanabilir veya iLogic Browser diyalog penceresinden komutu çalıştırılır.

Form editörü yukarıdaki şekilde de belirtildiği gibi altı temel bölümden oluşmaktadır, bu bölümlerin
açıklaması aşağıdaki gibidir.

Parametre filtresi. Bu araç kullanılarak parametre listesinde sadece anahtar


parametreler, yeniden isimlendirilmiş parametreler veya bütün parametreler listelenecek şekilde
filtreleme yapılabilir.

Parametrelerin, kuralların ve iProperties özelliklerinin listelendiği bölümdür, filtreleme


butonu bu bölümdeki parametreler başlığı altında yer alan listedeki parametreleri filtreler. Bu bölüm
altında yer alan herhangi bir başlık altındaki nesneleri 4 numaralı alana sürükleyip bırakarak form
penceresine ekleyebilirsiniz.

Form penceresinde kullanacağımız temel araçların bulunduğu araç kutusu bölümüdür.


Buradaki araçları kullanarak form penceresine grup, sekme grubu, satır, resim, resim klasörü, boş
alan, etiket ve ayraç ekleyebilirsiniz.

Buradaki araçları kullanmak için kullanılacak araç seçilerek 4 numaralı alana sürüklenip bırakılır.

24 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Form penceresine eklenmek istenilen nesneler sürükle bırak yöntemi ile buradaki alanın
içerisine taşınır. Bu bölümde form penceresi içerisinde yer alan tüm nesneler nesne ağacı formunda
gösterilir, formun nesne ağacı üzerinde yapılan düzenlemeler eş zamanlı olarak ön izleme
penceresinde görüntülenir.

Bu bölüm içerisindeki seçilen bir nesnenin özniteliklerini değiştirmek için 5 numaralı bölmedeki
tablolar kullanılır.

Bu bölümde 4 numaralı alandaki seçilen nesnenin özellikleri listelenir, burada listelenen


değerler değiştirilerek 4 numaralı alandaki seçilen nesnenin form penceresi üzerindeki görünümü ve
diğer özellikleri düzenlenir.

Diğer bölümlerin içerisindeki seçilen nesnelerin açıklamalarını içeren bölümdür.

(Uygulama 1 Madde 10 – d Devam) : Form Penceresinin Oluşturulması

Form Penceresini oluşturmak için “iLogic Browser” penceresinde yer alan “Forms” sekmesine
tıklayın.

Sekme altındaki boşluğa fare imlecini getirip sağ tıklayın ve açılan menüden “Add Form”
komutunu çalıştırarak form editörüne ulaşın.

form editörü üzerindeki 1 numaralı bölmede yer alan parametre filtreleri aracına giderek tüm
parametrelerin listelenmesini sağlayın. Tüm parametrelerin listelenmesi için “All” seçeneğini seçin.

Form editörünün 2 numaralı bölmesinde yer alan parametre listesindeki “genislik”, “yukseklik”
ve “kalinlik” parametrelerini 4 numaralı bölmeye sürükleyip bırakın. Form penceresi ön izlemesinde
eklediğiniz parametreler listelenecektir.

form editörünün 2 numaralı bölmesindeki “Rules” sekmesine tıklayın, burada sayısal modele
eklediğimiz kuralların listesi yer alacaktır. “Rule0” isimli kuralı 4 numaralı bölmeye sürükleyip
bırakın. Form penceresine eklediğimiz kural ön izlemede bir buton şeklinde görüntülenecektir. (Eğer
kuralı yeniden adlandırdıysanız sizin belirlediğiniz ad ile burada görüntülenecektir.)

Form penceresi ön izlemesi yukarıdaki adımları tamamladıktan


sonra yandaki resimdeki gibi görüntülenecektir.

Oluşturduğumuz form penceresinin görünümünde eklediğimiz


parametrelerin ve kuralların isimleri varsayılan olarak aynı kalır
fakat bu örnekte kullandığımız parametrelerin aksine sayısal
modelimizde daha karmaşık parametre isimleri kulanmış olsaydık
form penceresinin anlaşılabilirliği de o derecede azalmış olacaktı.

Form penceresinin okunaklı ve anlaşılır olmasını sağlamak için


pencere üzerinde görüntülenen isimleri değiştirebiliriz.
25 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Form penceresi üzerinde görüntülenen parametre isimlerini, kural


ismini ve form penceresinin ismini değiştirelim, ayrıca form
penceresinde yer alan standart “Done” butonunu da kaldıralım.

Form penceresinin ismini değiştirmek için 4 numaralı


bölmedeki form penceresinin ismine tıklayın, böylece form
penceresinin değiştirilebilir özellikleri 5 numaralı bölmede
görüntülenecektir.

5 numaralı bölmeye giderek satırında bulunan


form penceresi ismini “Pencere Adı” olarak değiştirin

Form penceresinde yer alan “Done” isimli butonu kaldırmak


için form penceresi özelliklerinden
satırındaki açılır menüyü genişleterek seçenekler
içerisinden “None” seçeneğini seçin, böylece form penceresi
üzerinde bizim eklediğimiz kurallar haricinde buton bulunmaz.

Form penceresinde yer alan parametre isimlerinin yazılışlarını


ve görünümlerini değiştirmek için 4 numaralı bölmeden
parametre ismini seçin ve 5 numaralı bölmede listelenen
parametre özelliklerinden satırına giderek
parametrenin görünen ismini değiştirin.

parametre isimlerinde özel karakterler kullanamamanıza


rağmen form penceresindeki parametrenin görünen ismine
istediğiniz karakterleri kullanarak isim verebilirsiniz.

Parametrelerin form penceresinde görüntülenen isimlerini yandaki


şekilde belirtildiği gibi değiştirin. (Genişlik, Kalınlık, Yükseklik)

Form penceresine eklenen kural dosyaları form penceresinin


üzerinde buton olarak gösterilirler ve bu kural dosyasını form
penceresi üzerindeki butona tıklayarak çalıştırabilirsiniz.

Buton üzerinde varsayılan olarak kural dosyasının ismi yazar, bu


ismi değiştirmek için 4 numaralı bölmeden forma eklediğimiz
iLogic kuralını seçip 5 numaralı bölmeden
satırındaki görünen kural ismini değiştirmeliyiz, yandaki resimde
de belirttiğimiz gibi kural ismini “Kural 1” olarak değiştirin.

Yukarıda anlatılan değişiklikleri yaptıktan sonra “OK”


butonuna tıklayarak iLogic editörünü kapatın.

Parça dosyasını kontrol eden form penceresinin son hali yandaki


resimdeki gibi görünecektir.
26 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Uygulama 1 – Özet

Bu uygulamada;

Autodesk Inventor’un parametrik model yapısını inceledik.

Parametreler tablosunu kullanarak parametreleri yeniden isimlendirdik.

Autodek Inventor içerisindeki iLogic modülünü ve genel kod yapısını inceledik.

Autodek Inventor’un form penceresi oluşturma arayüzünü inceledik.

Hazırladığımız parametrik sayısal modeli kontrol edebileceğimiz basit bir form penceresi
oluşturduk.

Parametrik Montaj Tasarımı


Parametrik Montaj Tasarımının Temelleri
Parametrik montaj tasarımlarındaki genel amaç; değişken montaj boyutlarında montajı oluşturan
parçaların birbirleri ile uyum içerisinde çalışmalarını sağlamaktır.

Montajı veya montaj içerisindeki parçaları iLogic ile programlayarak sayısal modellerin birbirlerinin
ölçülerini referans almalarını sağlayabilirsiniz.

Montajları parametrik olarak tasarlayıp kurallara bağlamak için birden fazla yöntem bulunmaktadır,
bu yöntemlerin her birinin farklı avantaj ve dezavantajları bulunmaktadır, tasarımınızın özelliklerine
göre bu yöndemlerden birisini seçebilir veya birden fazla yöntemi birleştirip kullanabilirsiniz.

Bu yöntemde montajda kullanılan parçaların içinde ayrıca iLogic kuralı tanımlanmaz, parçaların
birbirleri ile olan ölçüsel ilişkileri doğrudan ana montaj dosyasında yazılan iLogic kuralları ile kontrol
edilir.

Montaj dosyasında yer alan alt parçalar basit geometrik şekillere sahip iseler bu yöntem
kullanılabilir. Ayrıca; fazla parçası bulunmayan montaj dosyalarında ve iLogic kurallarının hızlı
çalışmasının önemli olduğu durumlarda bu yöntem kullanılabilir.

Hızlı işlem süreleri

27 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Tek merkezden kontrol

Hata kontrolünün kolaylığı

Parça içerisinde hatalı parametre nedeni ile hata oluşması ihtimali yüksek

Karmaşık parçaların kontrol edilmesi zor

Bu yöntem kendi içerisinde ikiye ayrılır,

Montajda bulunan alt parçalar içerisinde sadece parçanın hata vermesine engel olan
iLogic kuralları eklenir, parçaya eklenen bu kurallar parametrelerin hatalı değerler almalarını
engelleyerek model dosyasının bozulmasını önlerler, parça ölçülerini değiştiren asıl kurallar ise
montaj dosyasına eklenir.

Örneğin; Alt parçanın içerisine sadece uzunluk ölçülerinin sıfır ve sıfırdan küçük değerler almasını
engelleyen iLogic kuralları eklenirken montaj dosyasına ise bir parçanın diğeri ile olan ölçüsel
ilişkilerini belirleyen iLogic kuralları eklenir.

Montajda bulunan parçaların her birine detaylı kontrolü sağlayan iLogic kuralları eklenir
ve alt parçalar daha az parametre ile kontrol edilebilecek şekilde düzenlenir, montaj dosyası içerisine
ise parçaların seçtiğimiz parametrelerini düzenleyen ve diğer işlemleri yapan iLogic kuralları eklenir.

Örneğin; Parça dosyasının içerisinde; parça dosyasının farklı sürümleri arasında geçiş yapılmasını
sağlayan bir iLogic kuralı tanımlanır ve bu kural kullanıcı tanımlı bir parametre ile ilişkilendirilir. Bu
parçanın kullanıldığı montaj dosyalarında ise parçanın farklı sürümlerini seçmek için oluşturulan
kullanıcı tanımlı parametreleri kontrol eden iLogic kuralları yazılır.

Montaj dosyası içerisinde uzun hesaplamalar içeren iLogic kuralları bulunuyorsa ve bu


hesaplamaların sonuçları alt parçalara ölçü değerleri olarak gönderiliyorsa hesaplama sonucunda
oluşabilecek hatalı parametrelerin parça dosyalarını bozmasını engellemek için bu yöntemler
kullanılır. Ayrıca parça dosyalarının birden fazla sürümü var ise bu sürümlerin montaj dosyası
tarafından otomatik seçilmesi isteniyorsa bu yöntemler kullanılabilir.

Parçaların hatalı parametreler nedeni ile çökmesinin önlenir.

Parça düzeyinde parametre sadeleştirmesi yapılarak parçaların kontrolü kolaylaşır.

Kuralların bir kısmı parça dosyasının içerisine yazıldığı için sonraki kullanımlarda kolaylık sağlar.

Çok parça içeren montajlarda kontrol kolaylığı sağlar.

28 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Kurallar parça ve montaj arasında paylaştırıldığı için tasarım üzerinde sonradan değişiklik
yapılması zorlaşır.

Alt parçalardaki kurallar da çalışacağı için işlem süreleri daha uzundur.

Bu yöntemde, ana montaj dosyası işlevsel alt montajlara bölünerek her bir alt montajın kendi
parçalarını kontrol edebilmesi sağlanır, ana montaj dosyası ise bir alt montaj dosyalarının birbirleri ile
olan ilişkilerini düzenler. Bu yöntemde parametre değişim emri en üst montajdan bir alt montaja
verilir ve alt montaj da eğer var ise kendi içerisindeki alt montajlara parametre değişim emirlerini
gönderir, bu işlem en altta yer alan parçalara kadar iletilir.

Bu yöntem birbiri içerisine geçmiş birçok alt montaj içeren çok geniş montaj dosyalarında kullanılır.
Her seferinde ilgilenilmesi gereken montaj grubu bir diğerinden bağımsız olduğu için büyük
projelerde hata tespitini kolaylaştırır ve sadece hatalı kısma odaklanarak zamandan tasarruf
yapılmasını sağlar.

Hata tespiti kolaydır.

Büyük montajların kolay yönetilmesini sağlar.

Her alt montajın ayrı ayrı programlanması gerekir.

İşlemler silsile yolunu takip ettiği için işlem süreleri diğer yöntemlere göre daha uzundur.

Uygulama 2: Sadece Montajın Programlanması Yöntemi

Bu uygulamada sadece üç basit parçadan oluşan bir montaj dosyasını


iLogic ile programlayacağız.

Montaj dosyası genel olarak camdan yapılmış bir kutu, bu kutunun


içerisine yerleştirilmiş metal bir küre ve farklı bir renk camdan yapılmış
bir kapaktan oluşmaktadır.

Montaj içerisinde yer alan kutu, küre ve kapak parçalarının hiçbirisinin


içerisinde iLogic kuralı bulunmamaktadır.

1.) Montaj dosyası içerisinden kutunun en, boy, yükseklik ve et kalınlığı


değerlerinin değiştirilebilmesi istenmektedir.

29 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

2.) Montajda kullanılan kapak parçasının kutuyu tam olarak kapatabilmesi istenmektedir.

3.) Kutu içerisinde yer alan kürenin kutu ve kapak ile çakışmadan mümkün olan en büyük hacmi
doldurması istenmektedir.

4.) Montaj içerisindeki parametreler bir form penceresi yardımı ile kontrol edilecektir.

Bu adımda parçaları oluşturan parametreler incelenecek ve not alınacaktır.

(Uygulamalarda kullanabileceğiniz hazır dokümanlara \Bolum2\yontem_1”


klasöründen ulaşabilirsiniz.)

Küre şeklindeki parçanın sadece “cap” isminde bir parametresi


bulunmaktadır.

Kutu şeklindeki parçanın “en”, “boy”, “yukseklik”,


“kalinlik”, “ic_yuvarlatma” ve “dis_yuvarlatma”
olmak üzere toplamda altı adet isimlendirilmiş
parametresi bulunmaktadır.

Kapak parçasının ise “dis_en”, “dis_boy”,


“ic_en”, “ic_boy”, “is_kalinlik”, “dis_kalinlik”,
“dis_yuvarlatma” ve “ic_yuvarlatma” olmak
üzere toplamda sekiz adet isimlendirilmiş
parametresi bulunmaktadır.

30 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Bu adımda parçaların birbirleriyle ilişkili ölçüleri belirlenecek ve parçaların birbirleriyle uyumlu


çalışmalarını sağlayacak denklemler yazılacaktır.

İstenenler;

a) Kapak parçasının kutuyu tam


olarak kapatması istenmektedir.

b) Kapak üzerindeki çıkıntının


kutunun içerisine girebilmesi
gerekmektedir.

c) Kapağın geniş kısmı ile kutunun


dış kısmının birbirine denk gelmesi
istenmektedir.

d) Kapağın toplam kalınlığı ile


kutunun kalınlığı eşit olmalıdır.

e) Kapak ve kutunun köşe


yuvarlatmalarının birbirleri ile
uyumlu olmaları gerekmektedir.

Çözümler;

Yukarıdaki resimde kapak ve


kutunun monte edilmiş şekli
gösterilmektedir. Yukarıdaki şekil çözümlerde referans olarak kullanılacaktır.

Aşağıdaki denklemlerde kutunun ölçüleri kırmızı renkte, kapağın ölçüleri ise siyah renkte
gösterilmiştir.

Ana montaj üzerinden kutunun en, boy, yükseklik ve kalınlık değerlerinin değiştirilebilmesi istendiği
için kapak ve kutu arasındaki uyum parametrelerini yazarken kutunun parametrelerinin sabit
olduğunu varsayacağız. Bu nedenle kapağın ölçüleri kutunun ölçülerini referans alacaktır.

Kapağın kutuyu tam olarak kapatması isteniyor, bu nedenle kapağın kutunun içerisine geçen kısmı ile
kutunun iç ölçülerinin eşit olması gerekmektedir.

Kutunun parametre değerlerini kapağın parametrelerine


ic_en = en – 2 * kalinlik
aktarmak için eşitliğin sol tarafına kapağın parametrelerini,
ic_boy = boy – 2 * kalinlik
sağ tarafına ise kutunun parametrelerini yazalım. ic_yuvarlatma = ic_yuvarlatma
31 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Kapağın dış ölçüleri ile kutunun dış ölçülerinin aynı olması


dis_en = en
istenmektedir, burada kapağın geniş kısmının en, boy ve dis_boy = boy
köşe yuvarlatmalarının kutunun dışı ile aynı olması gerekir. dis_yuvarlatma = dis_yuvarlatma

Kapağın toplam kalınlığı ile kutunun kalınlığının birbirlerine


eşit olması istenmektedir. Kapağın her iki kademesi de aynı ic_kalinlik = kalinlik / 2
kalınlıkta ise her bir kademenin kalınlığı kutunun kalınlığının dis_kalinlik = kalinlik / 2
yarısı kadar olacaktır.

Kapak modelinin toplamda sekiz adet uzunluk parametresi bulunmaktaydı, yukarıdaki işlemler ile
birlikte kapak modelinin tüm parametrelerini kutu modelinin parametreleri ile ilişkilendirmiş olduk.

İstenenler;

a) Kapalı kutunun içerisindeki küre hiçbir zaman Kutu ve Kapak ile çakışmayacaktır.

b) Küre mümkün olan en büyük boyutta olacaktır.

Çözümler;

Küre modelinin “cap” isimli sadece bir adet parametresi bulunmaktadır, küre tamamen kapalı
kutunun içerisinde bulunacağı için kutunun içerisindeki boşluğun en küçük ölçüsü kürenin çapını
belirleyecektir.

Kapalı kutunun iç hacmi “A”, “B” ve “C”


olmak üzere üç temel ölçüden oluşmaktadır.

A = en – 2 * kalinlik

B = boy – 2 * kalinlik

C = yukseklik – (kalinlik + ic_kalinlik)

“cap” parametresi “A”, “B” ve “C”


ölçülerinden en küçüğüne eşit olmalıdır.

Bu şartı sağlamak için yazılması gereken


denklem iLogic içerisinde yer almaktadır.

Yukarıda anlatılan adımlar tamamlandıktan


sonra bir sonraki adım olan montaj dosyasını
hazırlama adımına geçebiliriz.

Yukarıda anlatılan işlemlerde kullanılan


montaj dosyası bilgisayarınızın “ \Bolum2\yontem_1\montaj_1.iam" adresindedir.
32 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Bu adımda ana montaj dosyasına gerekli kullanıcı parametrelerini ekleyeceğiz ve parçaları kontrol
eden iLogic kuralını yazacağız.

(Bu adımda anlatılanları sizde bilgisayarınızda uygulamaya çalışın.)

Gerekli dosya: " \Bolum2\yontem_1\Montaj_0.iam"

Montaj dosyasını kullanarak bütün parçaları kontrol etmek istiyorsak öncelikle montaj dosyası
içerisinde kontrol etmek istediğimiz parametreleri simgeleyen kullanıcı tanımlı parametreler
olmalıdır.

Bu uygulamada montaj dosyası kullanılarak kutu montajının en, boy, yükseklik ve kalınlık
parametreleri kontrol edilmek istenmektedir ayrıca bu parametrelerin bir form penceresi aracılığı ile
değiştirilebilmesi istenmektedir. Tüm bu istekleri yerine getirebilmek için gerekli parametreleri
montaj dosyasına tanımlamalıyız.

Autodesk Inventor şerit menüsünden komutunu çalıştırın.

Parametreler diyalog penceresinin


altında yer alan “More” butonuna
tıklayarak parametreler penceresini
genişletin.

Genişleyen diyalog penceresi aşağıdaki


gibi görünecektir, diyalog penceresine yeni bir kullanıcı tanımlı parametre eklemek için üç farklı
seçeneğimiz bulunmaktadır.

Uzunluk, açı, sıcaklık, hacim gibi sayısal değer ile belirtilen birimli değerleri ve sadece
sayı içeren birimsiz değerleri alabilen kullanıcı tanımlı parametreler eklemek için kullanılır.

33 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Alfanümerik değerler alabilen kullanıcı tanımlı parametreler eklemek için kullanılır.

Doğru ve yanlış olmak üzere sadece iki değer alabilen kullanıcı tanımlı parametreler
eklemek için kullanılır.

Kontrol etmek istediğimiz en, boy, yükseklik ve kalınlık parametreleri birer sayısal uzunluk değerini
ifade etmektedirler bu nedenle “Add Numeric” seçeneğini seçmeliyiz.

Parametre ismini yazarken özel karakter, boşluk ve sayı ile başlayan isimler kullanmamalısınız.

Parametre isminin belirtildiği alana “kalinlik” yazalım.

Eklediğimiz parametrenin birimini seçmek için isim sütununun hemen yanında yer alan birim
sütunundaki hücreye tıklayalım, aşağıdaki diyalog penceresi açılacaktır.

Sayısal bir parametre eklediğimizde


varsayılan birim olarak Autodesk
Inventor dosya şablonunun
standardına uygun uzunluk birimi
seçili gelir, bu birim ISO ve DIN
standartları için “mm”, ANSI
standardı içinse “inç” birimidir.

Parametre satırındaki birim


hücresine tıkladığınızda yandaki
diyalog penceresi açılır ve istediğiniz
birimi seçmenizi sağlar.

Bu uygulamamızda varsayılan birim


olan milimetreyi kullanacağız.

“Unit Type” diyalog penceresini


kapatmak için “OK” butonuna
tıklayın.

Ölçü birimi olarak mevcut birimin


katlarını da seçebilirsiniz, bir ölçüye
milimetre birimi yerine santimetre
ve metre gibi birimlerde atayabilirsiniz, Autodesk Inventor seçtiğiniz birimi tanıyıp ona göre işlem
yapacaktır.

34 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Montaja eklediğimiz “kalinlik” parametresini daha sonradan kutunun ölçüleri ile ilişkilendireceğimiz
için ön hazırlık olarak parametrenin değerini değiştirmeliyiz.

Parametre satırındaki eşitlik değerini


belirten hücreye tıklayarak eklediğimiz
parametrenin değerini 10 mm olacak
şekilde değiştirelim.

“kalinlik” parametresini eklediğimiz adımları “en”, “boy” ve “yukseklik” parametrelerini de eklemek


için tekrar edelim. Eklediğimiz parametrelerin değerlerini 120 mm olacak şekilde değiştirelim.

Yukarıdaki işlemler tamamlandıktan sonra montaj dosyasında tanımlayacağımız iLogic kuralını


yazmaya başlayabiliriz.

Bu adımda ana montaj dosyasında iLogic kuralları tanımlayacağız.

(Bu adımda anlatılanları sizde bilgisayarınızda uygulamaya çalışın.)

Gerekli dosya: " \Bolum2\yontem_1\Montaj_1.iam"

iLogic Browser penceresini açmak için (eğer kapalıysa) Autodesk Inventor şerit
menüsünden butonuna tıklayın.

Yeni bir iLogic kuralı oluşturmak için iLogic


Browser penceresinden
komutunu çalıştırın.

Yeni oluşturulan iLogic kuralının ismini “uyum”


olarak değiştirin ve “OK” butonuna tıklayın.

35 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Montaj ortamında açılan iLogic editörü ile parça ortamında açılan iLogic Editörü arasında bazı
farklılıklar bulunmaktadır. (Sayfa 14)

Parça ortamındaki iLogic Editörünün 2 numaralı


bölmesinde “Model”, “Options”, “Search and Replace”
ve “Wizards” sekmeleri bulunurken; Montaj ortamındaki iLogic
Editöründe bu sekmelere ek olarak “File
Tree” ve “Files” sekmeleri de yer alır.

Diğer bir temel fark ise montaj


ortamındaki iLogic
Editörünün “Model” ve “File Tree”
sekmelerinde parça dosyalarının
isimleri de yer almaktadır.

“Model” sekmesi ile “File Tree”


sekmesi arasında iki temel fark
bulunmaktadır, bunlardan
birincisi “Model” sekmesinde montaj
ilişkilendirmeleri gösterilirken “File
Tree” sekmesinde sadece parçalar ve
unsurları gösterilir.

İkinci temel fark ise “Model” sekmesinin


sağ tarafındaki bölmede “Parameters”
ve “Names” isminde iki sekme yer
alırken “File Tree” sekmesinin sağında
sadece parametrelerin listelendiği bir
bölme bulunur.

iLogic Editörünün 2 numaralı bölmesinde yer alan “Files” sekmesinde ise sadece parçaların dosya
isimleri listelenir, bu sekmede parametreler ile ilgili bir kısım bulunmaz.

iLogic Editörünü kullanarak montaj içerisindeki parçaların


parametrelerine ulaşmak için “Model” sekmesi veya “File Tree”
sekmesindeki model ağacını kullanabiliriz.

Model ağacı üzerinden parametresini kullanmak istediğimiz parçanın


ağacının altındaki unsur isimlerine veya parametre gruplarına
tıklamamız yeterlidir.

Seçtiğimiz unsurların parametreleri 2 numaralı alanın sağ tarafında


yer alan kısımda listelenir.

36 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Ana montaj dosyasından kutu modelinin parametrelerini kontrol edeceğimiz için önce aşağıdaki
şekilde de gösterildiği gibi unsuruna tıklayıp kutu
modelinin parametrelerinin listelenmesini sağlayalım.

Kutu modelinin kontrol edilecek parametreleri aşağıdaki şekilde işaretlenmiştir.

Kutu modelinin “en” parametresini kurala eklemek için “File Tree” sekmesinin sağ kısmındaki
listeden “en” parametresine çift tıklayın.

iLogic Editörünün 3 Numaralı kod bölmesine aşağıdaki gibi bir kod satırı eklenecektir.

Parameter("kutu:1", "en")

Parça dosyasının parametresine montaj üzerinden erişmeye çalıştığımız için iLogic editörü otomatik
olarak yukarıdaki gibi bir kod satırı oluşturur.

Bu kod satırında parçanın model ağacında görüntülenen ismi ve değiştirilmek veya okunmak istenen
parametrenin ismi yer alır. Bu nedenle farklı parça veya montaj dosyalarının aynı isimde
parametrelere sahip olmaları iLogic ile çalışırken herhangi bir hataya neden olmaz.

Kutu modelinin “en” parametresi ile ana montajın “en” parametresini ilişkilendirmek için iLogic
Editörünün kod bölümüne eklediğimiz yukarıdaki satırın sağ tarafına eşittir (=) sembolü koyup model
parametresini eklemeliyiz.

Ana montaja eklediğimiz kullanıcı tanımlı


parametreleri kod satırına eklemek için önce
iLogic Editörünün 2 numaralı bölmesinden

parametresine çift
tıklamalıyız, böylece “en” isimli parametreyi
kod satırına eklemiş oluruz. Parameter("kutu:1", "en")=en

37 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Ana montaj dosyasının “boy”, “yukseklik” ve “kalinlik” parametrelerini de yukarıdaki adımları takip
ederek kutu modelinin parametreleri ile ilişkilendirin.

İşlemler tamamlandığında iLogic Parameter("kutu:1", "en")=en


editörünün kodlama bölümümündeki Parameter("kutu:1", "boy")=boy
Parameter("kutu:1", "yukseklik")=yukseklik
kodlar yandaki şekildeki gibi Parameter("kutu:1", "kalinlik")=kalinlik
görünecektir.

Kutu ile ilişkili diğer parçalar için de kod satırları ekleyelim.


ic_en = en – 2 * kalinlik
Uygulamamızın 2. Adımında parçalar arasındaki parametrik ic_boy = boy – 2 * kalinlik
ilişkileri denklemler halinde belirtmiştik, kapak modeli ile ic_yuvarlatma = ic_yuvarlatma
kutu modeli arasında sekiz adet eşitlik belirlemiştik,
belirlenen eşitlikler yandaki kutucuklarda yer almaktadır. dis_en = en
dis_boy = boy
(siyah yazılmış parametreler kapak modeline ait, kırmızı dis_yuvarlatma = dis_yuvarlatma
renkli parametreler ise kutu modeline aittir.)
ic_kalinlik = kalinlik / 2
Kutucuklarda gösterilen eşitlikleri yukarıdaki adımları tekrar dis_kalinlik = kalinlik / 2
ederek iLogic editöründe yazın, kodların yazılmış hali
aşağıdaki gibi olacaktır.
Parameter("kapak:1", "ic_en")=Parameter("kutu:1", "en")-2*Parameter("kutu:1", "kalinlik")
Parameter("kapak:1", "ic_boy")=Parameter("kutu:1", "boy")-2*Parameter("kutu:1", "kalinlik")
Parameter("kapak:1", "ic_yuvarlatma")=Parameter("kutu:1", "ic_yuvarlatma")

Parameter("kapak:1", "dis_en")=Parameter("kutu:1", "en")


Parameter("kapak:1", "dis_boy")=Parameter("kutu:1", "boy")
Parameter("kapak:1", "dis_yuvarlatma")=Parameter("kutu:1", "dis_yuvarlatma")

Parameter("kapak:1", "ic_kalinlik")=Parameter("kutu:1", "kalinlik")/2


Parameter("kapak:1", "dis_kalinlik")=Parameter("kutu:1", "kalinlik")/2

Küre modelinin çap ölçüsünün uygulamamızın 2.


A = en – 2 * kalinlik
Adımında belirlediğimiz “A”, “B” ve “C” değişkenlerinden
en küçüğüne eşil olması gerekiyordu. En küçük değerli
B = boy – 2 * kalinlik
değişken sabit olmadığı için küre modelindeki “cap”
parametresinin bu değişkenlerden hangisine eşit
C = yukseklik – (kalinlik + ic_kalinlik)
olacağına programın karar vermesi gerekmektedir.

iLogic ile “A”, “B” ve “C” isminde değişkenler oluşturalım ve bu değişkenlere yukarıdaki
kutucuklarda gösterildiği gibi değer atayalım.

iLogic ekranında yer alan kodların yazılışı aşağıdaki gibidir.

A=Parameter("kutu:1", "en")-2*Parameter("kutu:1", "kalinlik")


B=Parameter("kutu:1", "boy")-2*Parameter("kutu:1", "kalinlik")
C=Parameter("kutu:1", "yukseklik")-Parameter("kutu:1", "kalinlik")-Parameter("kapak:1", "ic_kalinlik")

NOT: iLogic programlama dilinde yeni bir değişken oluşturmak için tek yapmanız gereken sayı ile
başlamayan ve özel karakter içermeyen bir değişken ismi belirleyip bu değişkene değer atamaktır.
38 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Küre modelinin çap parametresinin A, B ve C değişkenlerinin en küçüğüne eşit olmasını sağlayacak


iLogic kodunu yazalım.

iLogic editörünün 1 numaralı


bölmesindeki “System” sekmesini açın ve
ağaç yapısı üzerindeki “Math” düğümünü
genişletin. Buradaki “MinOfMany” kod
parçacığı birçok değişken içerisinden en
küçüğünü sonuç olarak veren bir
matematik fonksiyonudur.

Bu kod parçacığına çift tıkladığınızda kod


düzenleme penceresine aşağidaki satır
yazılır.

Bu kod satırında yer alan d0, d1, d2, etc … değerlerinin


MinOfMany(d0, d1, d2, etc)
bulunduğu konumlara iki farklı değer arasında virgül olacak
şekilde yazdığımız değişkenlerin en küçüğü bulunur ve “MinOfMany” fonksiyonunun sonucu olarak
verilir. Bu fonksiyon bir değer ürettiği için bir eşitliğin sağ tarafına yazılmalıdır.

A, B ve C değişkenlerini fonksiyon içerisine yazalım. MinOfMany(A, B, C)

Fonksiyonun ürettiği değer ile küre modelinin “cap” parametresini ilişkilendirelim. Aşağıda yer
alan kural sayesinde küre modelinin “cap” parametresi her zaman A, B ve C değerlerinden en
küçüğüne eşit olacaktır.
Parameter("kure:1", "cap")=MinOfMany(A, B, C)

Uygulama 2 de istenen tüm isteklerin yerine getirilmesi için montaj içerisine yazılan tüm kodlar
aşağıdaki gibidir.

Parameter("kutu:1", "en")=en
Parameter("kutu:1", "boy")=boy
Parameter("kutu:1", "yukseklik")=yukseklik
Parameter("kutu:1", "kalinlik")=kalinlik

Parameter("kapak:1", "ic_en")=Parameter("kutu:1", "en")-2*Parameter("kutu:1", "kalinlik")


Parameter("kapak:1", "ic_boy")=Parameter("kutu:1", "boy")-2*Parameter("kutu:1", "kalinlik")
Parameter("kapak:1", "ic_yuvarlatma")=Parameter("kutu:1", "ic_yuvarlatma")

Parameter("kapak:1", "dis_en")=Parameter("kutu:1", "en")


Parameter("kapak:1", "dis_boy")=Parameter("kutu:1", "boy")
Parameter("kapak:1", "dis_yuvarlatma")=Parameter("kutu:1", "dis_yuvarlatma")

Parameter("kapak:1", "ic_kalinlik")=Parameter("kutu:1", "kalinlik")/2


Parameter("kapak:1", "dis_kalinlik")=Parameter("kutu:1", "kalinlik")/2

A=Parameter("kutu:1", "en")-2*Parameter("kutu:1", "kalinlik")


B=Parameter("kutu:1", "boy")-2*Parameter("kutu:1", "kalinlik")
C=Parameter("kutu:1", "yukseklik")-Parameter("kutu:1", "kalinlik")-Parameter("kapak:1", "ic_kalinlik")

Parameter("kure:1", "cap")=MinOfMany(A, B, C)

39 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Ana montaj dosyasındaki parametrelerin bir form penceresi yardımıyla kontrol edilmek
istenmektedir. ( " >\Bolum2\yontem_1\Montaj_2.iam")

Form penceresi eklemek için iLogic Browser


üzerinden
komutunu çalıştırın.

Form düzenleme penceresinin


(Sayfa 22) 1.bölmesindeki
filtreler kısmından sadece
yeniden isimlendirilmiş
parametrelerin
görüntülenmesini sağlayın.

Form düzenleme penceresinin 3. ve 2.bölmelerindeki nesneleri aşağıdaki sıralamaya göre 4.bölgeye


sürükleyip bırakın.
3.bölme 4.bölme 2.bölme 4.bölme
1 Group Form 1 5 kalinlik Group 2
2 Row Group 1 6 en Group 2
3 Picture Row 1 7 boy Group 2
4 Group Row 1 8 yukseklik Group 2

Yukarıda belirtilen sürükle-bırak işlemlerini uygularken hata yapmanız çok önemli değildir, 4.bölme
içerisindeki herhangi bir nesnenin konumunu tekrar sürükle bırak yöntemi ile değiştirebilirsiniz.
Burada önemli olan form penceresinin yapısını anlamanız.

Form editörünün 3 numaralı bölmesinde yer alan “Group”, “Tab Group”, “Row” ve “Picture Folder”
öğeleri taşıyıcı nesnelerdir, bu nesnelerden birisini form penceresine ekledikten sonra başka
nesneleri bunların içerisine sürükleyip bırakabilirsiniz.

40 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Yukarıdaki adımları uyguladığınızda oluşan form penceresinin ön


izlemesi yandaki şekildeki gibi olacaktır.

Form penceresinde görünen Group 1 ve Group 2 bölmelerinin


ismini ve kenar çizgilerini kapatmak için form editörünün
4.bölmesine gidin ve Group 1 nesnesini seçin.

Group 1 nesnesi seçiliyken form editörünün 5.bölmesine gidin


ve parametresinin
değerini “False” olacak şekilde değiştirin.

Group 2 nesnesinin kenar çizgilerini kapatmak içinse yukarıda


anlatılan işlemin aynısını Group 2 nesnesi seçiliyken tekrarlayın.

Yukarıda anlatılan işlemleri tamamladıktan sonraki form


penceresinin ön izleme görüntüsü aşağıdaki gibidir.

Form penceresinin ismini


ve diğer parametrelerin
görünen isimlerini değiştirmek
için form editörünün 4 numaralı
bölmesindeki isimleri yandaki
şekilde gösterildiği gibi
değiştirin.

Form penceresindeki resim için ayrılmış alana resim dosyası


eklemek için form editörünün 4 numaralı bölmesindeki “Picture
1” nesnesine tıklayın ve 5 numaralı bölmeye
geçerek parametresinin değer
kutucuğuna tıklayın, resim seçme diyalog penceresini
kullanarak "
Bolum2\yontem_1\form_resmi.jpg" resmini seçin.

Son olarak form penceresinde gösterilen parametre isimlerinin


konumlarını değer kutucuklarının üstünde olacak şekilde
ayarlamak için form editörünün 4 numaralı bölmesindeki
parametreleri içinde bulunduran “Group 2” nesnesini seçin ve
form editörünün 5 numaralı bölmesine giderek
parametresinin değerini “Top”
olacak şekilde değiştirin.

Yukarıda anlatılan işlemleri tamamladıktan sonra form editörünü “OK” butonuna tıklayarak kapatın.
Yeni form penceresi yandaki şekildeki gibi görünecektir.

41 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Uygulama 2 – Sonuç

Yukarıdaki adımları tamamladıktan sonra ana montaj dosyasını test etmeye başlayabilirsiniz, form
penceresi üzerindeki parametreleri değiştirdiğinizde montaj dosyasının tüm parçaları uyum
içerisinde şekil değiştireceklerdir.

Tamamlanmış dosya (" \Bolum2\yontem_1\Montaj_3.iam")

Uygulama 2 – Özet

Bu uygulamada;

Parametreler tablosunu kullanarak kullanıcı tanımlı parametre oluşturma yöntemlerini inceledik.

Montaj ortamındaki iLogic editörü ile parça ortamındaki iLogic editörünün arasındaki farklılıkları
inceledik.

Montaj dosyasında kullanılan parça modellerinin parametrelerini değiştirebilecek iLogic kuralları


oluşturduk.

iLogic editöründeki kod parçacığı kütüphanesini kullanarak iLogic kuralımıza kod ekledik.

Resimler içeren form pencereleri oluşturduk.

Uygulama 3: Montajın ve Parçaların Programlanması – Yöntem 1

Bu uygulamada montaj dosyasının içerisindeki parçalara basit kurallar ekleyerek parça


dosyalarının hatalı parametreler nedeniyle çökmesini engelleyeceğiz. Ayrıca montaj dosyasına parça
dosyalarından geri bildirim yapılmasını sağlayacağız.

Bu uygulamada kullanılan dosyalar “ \Bolum2\yontem_2\model_1” klasöründe


bulunmaktadır, uygulamanın bütün aşamalarında kullanılan parça ve montaj dosyaları ile
tamamlanmış dosyalara bu klasörden ulaşabilirsiniz.

Bu uygulamada Uygulama 2 de tamamladığımız montaj dosyasının alt parçalarına hata önleyici


kurallar yazılacaktır.

" \Bolum2\yontem_2\model_1\Montaj_3_yontem_2.iam" dosyasını açın.

Bu montaj dosyasını oluşturan parçaların hiçbirisinde hatalı parametreleri engelleyen bir kural
kullanılmamıştır. Montaj parametreleri içinden parçayı etkileyen herhangi bir parametrenin değerini
yanlış verirsek parça dosyalarından bir veya birkaçı oluşturulamayacağı için model dosyamız
bozulacaktır.

Örnek;

“Montaj_3_yontem_2.iam” dosyası bilgisayarınızda açık iken şerit menü üzerindeki


butonuna tıklayarak “iLogic Browser” penceresine ulaşın.
42 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

“iLogic Browser” penceresindeki “Forms” sekmesinin altında yer


alan “Kutu Montajı” isimli butona tıklayın.

Açılan form penceresindeki bütün parametrelerin değerlerini


değiştirerek “0” (sıfır) değerini girin.

Model güncellendiğinde tüm parçaların hata verip


oluşturulamadığını göreceksiniz.

Montaj dosyasının ürün ağacının görünümünü model görünümü olarak


değiştirdikten sonra parça dosyalarının unsur
ağaçlarına baktığınızda birçok hata
oluştuğunu göreceksiniz.

Modelleri eski durumlarına getirmek için


form penceresindeki parametrelerin
değerlerine yandaki şekilde gösterilen
değerleri girin.

Montaj dosyasında kullanılan parçaların hata vermeleri için tüm parametrelerin sıfır olması
gerekmez, bazen imkânsız geometrilere neden olan ölçüler de parçaların hata vermelerine neden
olabilir.

Bu gibi durumlarda montajda kullanılan tüm parçaların parametreleri için alt ve üst limitleri
belirleyen iLogic kodları yazabiliriz fakat bu işlem çok fazla zaman alır, parametre ve parça sayısının
çok fazla olduğu durumlarda sınırlandırılacak parametreleri belirlemek için eleme yapmalıyız.

Parçaların çökmesine neden olan hatalı parametreleri engelleyebilecek kodları ister montaj ortamına
isterseniz de parçanın kendisine ekleyebilirsiniz, aynı parça birden fazla montajda kullanılıyorsa
kodları parçaya eklemek daha verimli olacaktır.

Küçük montaj dosyalarında tüm parçalara hata önleyici kodlar ekleyebilirsiniz fakat daha büyük
montajlarda bir eleme işlemi yapmanız gerekir. Tüm parçalara kod yazılması programın çalışmasını
yavaşlatacağı için mümkün olan en az kodla işlemleri tamamlamanız gerekir.

iLogic kuralı eklenecek parça dosyalarını bulmak için aşağıdaki sorgulamalar yapılır.

Montaj dosyası hangi parçaları doğrudan kontrol ediyor?

Bir parçanın parametreleri diğer parçalar için referans değer oluyor mu?

Hangi parçanın oluşturulamaması montaj dosyasının yapısını daha çok bozar?

Yukarıdaki soruların cevaplarına göre en uygun parça veya parçaları seçebiliriz.

43 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Uygulamada kullanacağımız “Montaj_3_yontem_2.iam” dosyasını inceleyerek kod ekleyeceğimiz


parçaları seçelim.

Montaj dosyası hangi parçaları doğrudan kontrol ediyor?

Montaj dosyasındaki daha önceden


Parameter("kutu:1", "en")=en
yazılmış “uyum” kuralını incelediğimizde montaj üzerindeki Parameter("kutu:1",
Parameter("kutu:1",
"boy")=boy
"yukseklik")=yukseklik
dört adet parametrenin doğrudan “kutu” isimli parça ile Parameter("kutu:1", "kalinlik")=kalinlik

ilişkilendirildiğini görmekteyiz.

Bir parçanın parametreleri diğer parçalar için referans değer oluyor mu?

“uyum” kuralını incelemeye devam ettiğimizde “kapak” isimli parçanın bütün


parametrelerinin “kutu” isimli parçaya bağlı olduğunu görmekteyiz, “kutu” üzerinde yapılan bir
değişiklik doğrudan “kapak” parçasını da etkileyecektir.

Hangi parçanın oluşturulamaması montaj dosyasının yapısını daha çok bozar?

Bu sorunun cevabını bulmak için montaj dosyasındaki montaj ilişkilendirmelerine bakmak


gereklidir, diğer parçaların monte edildiği merkez parçalar oluşturulamadığında montaj dosyası
dağılacaktır, bu montaj dosyamızda “kutu” modeli merkez parça olarak kullanılmıştır.

Yukarıdaki cevapların hepsinde “kutu” modeli öne çıkmaktadır, bazı büyük montaj
dosyalarında tüm cevaplar aynı parçayı göstermeyebilir, böyle durumlarda puanlama yapılarak en
yüksek puan alan parça seçilir.

Kutu modelini açmak için Autodesk Inventor üzerinde açık olan


montaj dosyasındaki kutu modelinin üzerine sağ tıklayarak “Open”
komutunu çalıştırın.

Kutu modelinin içinde yeni bir kural tanımlamak için şerit


menüdeki butonuna tıklayın.

Bu kural parçanın hata vermesini önleyeceği için kural ismi


olarak “sigorta” yazabiliriz, iLogic kurallarına işlevlerine uygun
isimler vermek daha sonradan gerekli olduğunda hata tespiti yapmamızı kolaylaştırır.

Parça içerisindeki kontrol edilecek parametreleri seçmek parça dosyasını seçmek kadar önemlidir.

Parça modeli üzerindeki bazı parametreler diğerlerine bağlıdır, parametrelerin sınırlarını


belirlemeden önce hangi parametrelerin öncelikli olduğunu belirlememiz gereklidir.

Model içerisindeki bir parametrenin değeri diğer parametrenin değerini veya alt ve üst limitlerini
belirliyorsa bu parametreye birincil parametre diyebiliriz. Eğer iki veya daha fazla parametre
44 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

birbirlerinin alt ve üst sınırlarını etkiliyorlarsa ve bu parametrelerin birindeki değişim diğerinin


değerini de değiştiriyorsa bu gibi durumlarda parametrelerden birisini birincil kabul etmeliyiz.

Kutu modelinde “kalinlik” parametresi ile “en”, “boy”


ve “yukseklik” parametreleri bağımlı parametrelerdir.

Parça içerisindeki “ic_yuvarlatma” ve “dis_yuvarlatma”


parametreleri de tablo yardımı ile “kalinlik” parametresine
bağlanmışlardır bu nedenle kalınlık parametresi için
belirleyeceğimiz sınırlar bu parametreleri de etkileyecektir.

Yandaki kesit resmine göre parametrelerin alabilecekleri en


küçük ve en büyük değerleri hesaplayalım.

“en” ve “boy” parametreleri benzer kesite ve aynı kesit


parametrelerine sahiptirler bu nedenle “en” ve “boy”
parametrelerinin sınırlarının aynı olduğu kabul edilecektir.

Model geometrisi bozulmadan ve diğer parametreler sabit


iken “en” parametresinin alabileceği en küçük değer “kalinlik”
ve “ic_yuvarlatma” parametrelerine bağlıdır.

“en” parametresinin alabileceği en küçük değer;


en=2*kalinlik+2*ic_yuvarlatma

“boy” parametresinin alabileceği en küçük değer;


boy=2*kalinlik+2*ic_yuvarlatma

“yukseklik” parametresinin alabileceği en küçük değer;


yukseklik=kalinlik+ic_yuvarlatma

“en”, “boy” ve “yukseklik” parametrelerinin hepsinin alt sınırı doğrudan “kalinlik” parametresi ile
ilişkilidir, bu nedenle “kalinlik” parametresi birincil parametre olarak kabul edilecektir.

Parametrelerin alt ve üst sınırları belirlenirken daima birincil parametreler sabit kabul edilerek
işlemler yapılır. Birincil parametrelerin alabileceği en küçük değere ise kullanıcı karar verir.

“kalinlik” parametresinin alt sınırı “1 mm” olsun.

Tüm parametrelere alabilecekleri en küçük değerleri verdiğimizde kutu modelimizin yatay


kesiti silindir şeklini almakta ve montaj dosyasındaki yan yüzeyler ile ilişkilendirilmiş montaj
sınırlandırmaları hata vermektedir.

Bu hataların giderilebilmesi için parametrelere alabilecekleri en küçük değerleri verdiğimizde yan


yüzeylerin kaybolmaması gerekmektedir. Bu hatayı engellemek için “en”, “boy” ve “yukseklik”
parametrelerinin alabilecekleri en küçük değere “1 mm” daha ekleyelim.

45 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

boy>=2*kalinlik+2*ic_yuvarlatma+1 mm

Bu durumda yeni denklemler şekildeki gibi olacaktır. en>=2*kalinlik+2*ic_yuvarlatma+1 mm

yukseklik>=kalinlik+ic_yuvarlatma+1 mm

Bir parametrenin alt veya üst limitlerini belirlerken “if…then…end if” yapısını kullanabiliriz fakat tek
yöntem bu değildir, iLogic editörünün 1 numaralı bölmesinde yer alan kod parçacıkları kısmında
matematik fonksiyonları da yer almaktadır.

Matematik fonksiyonlarının içerisinde farklı değişkenler arasından en büyük veya en küçük olanı
bulmak için kullanabileceğimiz dört farklı fonksiyon bulunmaktadır. Bu fonksiyonların yazılışları ve
kullanımları aşağıda anlatılmıştır.

Bu fonksiyonları kullanarak parametrelerin alabilecekleri en küçük ve en büyük değerleri


sınırlandırabiliriz.

iLogic Kod Yapısı: “MaxOfMany(a,b,c …)”, “MinOfMany(a,b,c …)”, “Max(a, b)”, “Min(a, b)”

a, b, c gibi üç veya daha fazla değişken arasından en küçük olanı


MinOfMany(a, b, c, etc)
seçen fonksiyon türüdür.

MaxOfMany(a, b, c, etc)
a, b, c gibi üç veya daha fazla değişken arasından en büyük olanı
seçen fonksiyon türüdür.

Min(a, b)
a ve b gibi iki değişken arasından en küçük olanı seçen fonksiyon
türüdür.

a ve b gibi iki değişken arasından en büyük olanı seçen fonksiyon


Max(a, b)
türüdür.

Yukarıdaki kod yapılarında belirtilen a, b ve c gibi değişkenlerin yerine sonucu sayısal bir değer
veren denklemler veya fonksiyonlar yazabiliriz.

“boy” parametresinin alabileceği en küçük değeri sınırlandırmak için “Max(a, b)” fonksiyonunu
kullanacağız. “boy” parametresi üst montaj tarafından kontrol edilmektedir ve alt limiti de
kendisinden bağımsız bir denklemin değeri kadar olacaktır(2*kalinlik+2*ic_yuvarlatma+1 mm).

46 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

“boy” parametresinin üst montajdan aldığı mevcut değer ile alt limiti belirlemek için kullanacağımız
denklemin değerini karşılaştırıp büyük olan değeri boy parametresine aktarırsak bu parametre için
alt limiti belirlemiş oluruz.

Denklemin yazılışı aşağıdaki gibidir.


boy=Max(2*kalinlik+2*ic_yuvarlatma+1, boy)

Bu denklemde; “2*kalinlik+2*ic_yuvarlatma+1” denkleminin sonucu ile “boy” parametresinin


mevcut değeri karşılaştırılır. Eğer parçanın “boy” parametresine verdiğimiz değer denklemin
değerinden küçük ise “Max(a, b)” fonksiyonu büyük olan değeri gösterecektir,
“boy=Max(2*kalinlik+2*ic_yuvarlatma+1, boy)” denklemi ise “boy” parametresine büyük olan
değeri atayacaktır.

Sonuç olarak “boy” parametresi hiçbir zaman “2*kalinlik+2*ic_yuvarlatma+1” denkleminden


daha küçük bir değer alamaz.

“Max(a, b)” fonksiyonunu kullanarak “kalinlik”, “en” ve “yukseklik” parametrelerinin de alt


limitlerini belirleyelim.

“kalinlik” parametresini alt limiti:


kalinlik=Max(1 mm, kalinlik)

“en” parametresinin alt limiti:


en=Max(2*kalinlik+2*ic_yuvarlatma+1, en)

“yukseklik” parametresinin alt limiti:


yukseklik=Max(kalinlik+ic_yuvarlatma+1 mm, yukseklik)

Programlamada kod satırlarının yazılış sırası çok önemlidir, ilk yazılan satır önce işlemden geçeceği
için diğer parametrelerin değerlerini etkileyebilecek işlemlerin diğer işlemlerden önce yazılmaları
gerekir. Birincil parametreler ile ilgili işlemler en üste yazılmalıdır.

“kalinlik”, “en”, boy” ve “yukseklik” parametrelerinin sınırlarını belirlediğimiz denklemlerin iLogic


editörüne yazılış sıralaması aşağıda gösterilmiştir.

kalinlik=Max(1 mm, kalinlik)

boy=Max(2*kalinlik+2*ic_yuvarlatma+1, boy)

en=Max(2*kalinlik+2*ic_yuvarlatma+1, en)

yukseklik=Max(kalinlik+ic_yuvarlatma+1 mm, yukseklik)

“kalinlik” parametresi birincil parametre olduğu için ilk sıraya yazılmıştır, “kalinlik” parametresinin
değeri diğer parametrelerin alabilecekleri alt limitleri de belirlemektedir.

47 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Yukarıdaki kodları “kutu” modelinde oluşturduğumuz “sigorta” isimli iLogic kuralının içerisine
kopyaladıktan sonra “OK” butonuna tıklayarak iLogic editöründen çıkın ve parça dosyasını kaydedin.

" \Bolum2\yontem_2\model_1\Montaj_3_yontem_2.iam" dosyasını tekrar açın.

Montaj dosyasındaki kullanıcı tanımlı form penceresini açın


)

Form penceresindeki tüm parametrelerin değerini sıfır olarak değiştirin.

Montaj dosyası güncellendiğinde “kutu” haricindeki diğer parçaların


kaybolduğunu göreceksiniz.

Böyle bir hata ile karşılaşmanızın iki temel nedeni vardır;


Montaj dosyasının içinde kullanılan parçalardaki iLogic kuralları otomatik
olarak çalışmıyor.

Parçadaki iLogic kuralını çalıştırmak için montaj dosyasındaki iLogic


kuralına özel bir kod parçacığı eklenecektir. (Aşağıda anlatılmıştır.)

Montajda yazılan iLogic kodları sadece parametre değerlerini parçaya gönderiyor, parçanın
parametrelerindeki değişimi okumuyor.

Montaj dosyasındaki iLogic kuralına parçadaki parametreleri okumaya yarayan kurallar


eklenecektir.

iLogic Kod Yapısı: iLogicVB.RunRule(“kural”) - iLogicVB.RunRule(“parça”,”kural”)

Sayısal model içerisinde bulunan iLogic kurallarının çalışma sırasının önemli olduğu durumlarda
kullanılırlar.

iLogicVb.RunRule("KuralAdi")

Parça, montaj veya teknik resim dosyasına kullanılabilir.

Bulunduğu model içerisindeki bir başka kuralı çalıştırmak için kullanılır.

“KuralAdi” yazan kısma çalıştırılmak istenen kuralın adı yazılır.

iLogicVb.RunRule("ParcaAdi", "KuralAdi")

Montaj dosyalarında kullanılabilir.

Hedeflenen bir parça veya montaj içerisindeki belli bir kuralı çalıştırmak için kullanılır.

“ParcaAdi” yazan alana hedeflenen parça veya montaj dosyasının model ağacına görünen ismi
yazılır, “KuralAdi” yazan kısma ise hedeflenen parça veya model içindeki çalıştırılmak istenen
kuralın adı yazılır.

48 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Kutu içerisindeki “sigorta” isimli kuralı ana montaj içerisinden çalıştıran bir kural yazalım.

Kural dosyası bir başka parça içerisinde olduğu için “iLogicVb.RunRule("ParcaAdi", "KuralAdi")” kod
parçacığını kullanacağız.

“Montaj_3_yontem_2.iam” dosyasını açın ve “iLogic Browser” penceresine ulaşarak “Rules”


sekmesindeki “uyum” kuralına çift tıklayın.

Kural dosyası içerisindeki ilk dört satırda montaj parametrelerini kutu parametrelerine ileten kodlar
bulunmaktadır.

Montajdaki parametre değerleri parçaya iletildikten hemen sonra kutu modelinin


içerisindeki “sigorta” isimli kuralı çalıştırmak istiyoruz bu nedenle kod parçacığını bu satırların altına
ekleyeceğiz.

Kutu modelinin montaj model ağacındaki ismi “kutu:1” olarak görünmektedir, kod parçacığının
içerisindeki gerekli alanlara parçanın görünen ismini ve çalıştırmak istediğimiz kuralın adını yazalım.

Oluşan kural aşağıdaki gibi görünecektir.

iLogicVb.RunRule("kutu:1", "sigorta")

Yazdığınız kuralı, parametreleri parçaya aktaran satırların hemen altına yazdığınızdan emin
olun, “uyum” kuralının ilk beş satırı aşağıdaki gibi olmalıdır.
Parameter("kutu:1", "en")=en
Parameter("kutu:1", "boy")=boy
Parameter("kutu:1", "yukseklik")=yukseklik
Parameter("kutu:1", "kalinlik")=kalinlik

iLogicVb.RunRule("kutu:1", "sigorta")

Kutu modeli içerisindeki “sigorta” kuralı çalıştığında hatalı parametreler düzeltilecektir fakat montaj
üzerinde tanımladığımız kullanıcı parametreleri aynı kalacağı için ana montaj üzerindeki form
penceresi kullanıcıya yanlış parametre bilgilerini göstermeye devam eder. Bu hatayı engellemek için
kutu modelinin parametrelerinde yapılan değişikliğin ana montaj dosyasına bildirilmesi gereklidir.

Kutu modelindeki “sigorta” isimli iLogic kuralı çalıştıktan sonra parametrelerinde olan değişikliği
montaj dosyasına bildirmek için aşağıdaki satırları ana montajdaki “uyum” kuralına ekleyelim. Kod
sıralaması önemli olduğu için bu satırları “iLogicVb.RunRule("kutu:1", "sigorta")” satırının hemen
altına eklemeliyiz.

en=Parameter("kutu:1", "en")
boy=Parameter("kutu:1", "boy")
yukseklik=Parameter("kutu:1", "yukseklik")
kalinlik=Parameter("kutu:1", "kalinlik")

Kuralı test etmek için “OK” butonuna tıklayarak iLogic editörünü kapatın ve “Kutu Montajı” isimli
kullanıcı form penceresini açarak form üzerindeki tüm parametrelere sıfır değerini verin.
49 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Ana montajın görünümü yandaki şekildeki gibi olacaktır.

Form penceresini kullanarak sadece Kalınlık parametresini 50


mm olarak değiştirin, güncellenen modelde kapak ile kutu arasında
çakışma olacaktır.

Bu hatanın nedeni kapak modelinin kutunun içerisine giren bölümünün kalınlığını toplam kapak
kalınlığının yarısı olacak şekilde ayarladığımız içindir. (Sayfa 30)

Kapak modelinin “ic_kalinlik” isimli bu parametresini kontrol eden kuralı değiştirerek böyle bir
hatanın oluşumunu engelleyebiliriz.

Ana montaj içerisindeki “uyum” isimli iLogic kuralına çift tıklayarak iLogic editörünü açın, “ic_kalinlik
parametresini kontrol eden kural aşağıdaki gibidir.
Parameter("kapak:1", "ic_kalinlik")=Parameter("kutu:1", "kalinlik")/2

“ic_kalinlik” parametresinin kutu ile çalışma yapmaması için hiçbir zaman


kutunun iç yuvarlatmasına kadar ulaşmaması gerekmektedir.

Yandaki şekle dikkat ettiğinizde kapak ile kutu arasında çok ince bir düzlük
alan olduğunu görürsünüz, buradaki düzlük alanın genişliği;

Düzlük alanın genişliği = yukseklik KUTU -(kalinlik KUTU +ic_yuvarlatma KUTU )


denklemi ile bulunabilir.

“ic_kalinlik KAPAK ” parametresine üst limit tanımlamamız gerekmektedir.

“ic_kalinlik KAPAK ” parametresi hem “kalinlik KUTU / 2” hemde “yukseklik KUTU - (kalinlik KUTU -
ic_yuvarlatma KUTU )” denklemlerinden küçük değer alanına eşit olmalıdır.

“ic_kalinlik KAPAK ” parametresi için yazabileceğimiz denklem aşağıdaki gibidir.

limit=Parameter("kutu:1", "yukseklik")-(Parameter("kutu:1", "kalinlik")+Parameter("kutu:1", "ic_yuvarlatma"))


Parameter("kapak:1", "ic kalinlik")=Min(Parameter("kutu:1", "kalinlik")/2, limit)

Yukarıda belirttiğimiz denklemi “uyum” isimli kural içerisinde yazınız, bu kural daha önceki
“ic_kalinlik KAPAK ” parametresini kontrol eden kuralın yerine yazılabileceği gibi bu kuraldan sonra da
yazılabilir.
50 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Yukarıda belirtilen tüm adımlar tamamlandıktan sonra ana montaj dosyasının içindeki “uyum”
kuralının içeriği aşağıdaki gibi olacaktır.

Parameter("kutu:1", "en")=en
Parameter("kutu:1", "boy")=boy
Parameter("kutu:1", "yukseklik")=yukseklik
Parameter("kutu:1", "kalinlik")=kalinlik

iLogicVb.RunRule("kutu:1", "sigorta")

en=Parameter("kutu:1", "en")
boy=Parameter("kutu:1", "boy")
yukseklik=Parameter("kutu:1", "yukseklik")
kalinlik=Parameter("kutu:1", "kalinlik")

Parameter("kapak:1", "ic_en")=Parameter("kutu:1", "en")-2*Parameter("kutu:1", "kalinlik")


Parameter("kapak:1", "ic_boy")=Parameter("kutu:1", "boy")-2*Parameter("kutu:1", "kalinlik")
Parameter("kapak:1", "ic_yuvarlatma")=Parameter("kutu:1", "ic_yuvarlatma")

Parameter("kapak:1", "dis_en")=Parameter("kutu:1", "en")


Parameter("kapak:1", "dis_boy")=Parameter("kutu:1", "boy")
Parameter("kapak:1", "dis_yuvarlatma")=Parameter("kutu:1", "dis_yuvarlatma")

Parameter("kapak:1", "ic_kalinlik")=Parameter("kutu:1", "kalinlik")/2


Parameter("kapak:1", "dis_kalinlik")=Parameter("kutu:1", "kalinlik")/2

limit=Parameter("kutu:1", "yukseklik")-(Parameter("kutu:1", "kalinlik")+Parameter("kutu:1", "ic_yuvarlatma"))


Parameter("kapak:1", "ic_kalinlik")=Min(Parameter("kutu:1", "kalinlik")/2, limit)

A=Parameter("kutu:1", "en")-2*Parameter("kutu:1", "kalinlik")


B=Parameter("kutu:1", "boy")-2*Parameter("kutu:1", "kalinlik")
C=Parameter("kutu:1", "yukseklik")-Parameter("kutu:1", "kalinlik")-Parameter("kapak:1", "ic_kalinlik")

Parameter("kure:1", "cap")=MinOfMany(A, B, C)

Uygulama 3 – Özet

Bu uygulamada;

Ana montaj üzerinden farklı parçaların içindeki iLogic kurallarını çalıştırma ile ilgili yöntemler
incelendi. “iLogicVB.RunRule(“kural”) - iLogicVB.RunRule(“parça”,”kural”)”

Hata önleyici kodların ekleneceği parçaları seçme ölçütleri incelendi.

Alt parçalarda meydana gelen parametre değişimlerinin ana montaj dosyası tarafından okunması
sağlandı.

“MaxOfMany(a,b,c …)”, “MinOfMany(a,b,c …)”, “Max(a, b)”, “Min(a, b)” kod parçacıkları
incelendi.

Parça içericindeki birincil parametreleri belirleyebileceğimiz yöntemler incelendi.

Uygulama 3 te anlatılan tüm işlemlerin uygulandığı montaj dosyası: "


\Bolum2\yontem_2\model_1\Tamamlanmis_ornek\Montaj_3_yontem_2.iam" adresinde
bulunmaktadır.

Tamamlanmış örneklerdeki kod satırlarını değiştirerek veya farklı versiyonlar deneyerek pratik
yapmanız iLogic konusunda çok hızlı gelişmenizi sağlayacaktır.

51 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Kod Yapısı: “Select Case” Yapısı

Bir değişkenin değerine veya bir denklemin sonucuna göre iki veya daha fazla seçenek arasından
seçim yapılmasını sağlayan kod yapısıdır.

Select Case (parametre&denklem)


Case (değer 1)
işlem 1 Kullanıcı Girişi
Case (değer 2)
işlem 2
Case (değer 3)
işlem 3 case 1 sağlanıyor İşlem Listesi 1
Case (değer 4)
işlem n
Case Else sağlanmıyor
işlem x
End Select case 2 sağlanıyor İşlem Listesi 2

“Select Case” yapısını çoklu koşullu sağlanmıyor


önermeler oluşturmak için de
kullanabilirsiniz. case 3 sağlanıyor İşlem Listesi 3

Select Case True sağlanmıyor


Case (Koşul 1)
işlem 1 case n sağlanıyor İşlem Listesi n
Case (Koşul 2)
işlem 2
Case (Koşul 3) sağlanmıyor
işlem 3
Case (Koşul n) case else
işlem n
Case Else
işlem x
End Select
İşlem x
“Select Case” yapısında koşullardan
birisi sağlanıyorsa o koşula bağlı işlem
yapılır ve “Select Case” yapısından
çıkılır.
Sonuç

“Select Case” yapısı ile iç içe geçmiş “if…Then…ElseIf…” yapısı birbirine benzemektedir fakat “Select
Case” yapısını kontrol etmek daha kolaydır.

“Select Case” yapısını kullanarak farklı durumlar için farklı özellikler sergileyen karmaşık ve çok
fonksiyonlu iLogic parçaları ve montajları oluşturabilirsiniz.

52 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Örnek: Yandaki şekildeki gibi “Yukseklik”, “Uzunluk”


ve “Genislik” parametrelerine sahip bir parça modelimiz olsun.

Bu modelin parametrelerini kontrol eden farklı “Select Case” yapıları


oluşturalım.

Select Case Yukseklik


Case 1,2,3,4,5,7
Feature.Color("kabartma")="Default"
Genislik=Max(20,Genislik)
Uzunluk=Max(20,Uzunluk)
MessageBox.Show("Yası Form", "Tür")
Case 8 To 20
Feature.Color("kabartma")="Blue"
Genislik=Yukseklik*5
Uzunluk=Max(Yukseklik,Uzunluk)
MessageBox.Show("Mavi Form", " Tür")
Case Is > 20
Feature.Color("kabartma")="Yellow"
Genislik=1 in
Uzunluk=1 mm
MessageBox.Show("Sar Form", " Tür")
Case Else
MessageBox.Show("Yukseklik = " _
& Yukseklik & "mm", "Size")
End Select

Yukarıdaki kod yapısında “Yukseklik” parametresine bağlı bir “Select Case” yapısı oluşturulmuştur.

“Case 1,2,3,4,5,7” satırının anlamı; eğer “Yukseklik” parametresinin değeri 1, 2, 3, 4, 5, 7 mm


ölçülerinden herhangi birisini alırsa “kabartma” unsurunun rengi varsayılan rengine
dönüştürülecek (Feature.Color("Extrusion1")="Default"), “Genislik” ve “Uzunluk”
parametrelerinin alt sınırı 20 mm olarak ayarlanacak ve “Yassı Form” yazan bir mesaj kutusu
görüntülenecek.

“Case 8 To 20” satırının anlamı; eğer “Yukseklik” parametresi 8 mm ile 20 mm arasında herhangi
bir değer alırsa (8 mm ve 20 mm dahil) “kabartma” unsurunun rengi maviye dönüşecek
ve “Genişlik” parametresinin değeri “Yukseklik” parametresinin değerinin beş katı olacak, “Uzunluk”
parametresinin alt sınırı ise “Yukseklik” parametresinin değeri kadar olacak. Son olarak da
ekranda “Mavi Form” yazan bir mesaj kutusu gösterilecek.

“Case Is > 20” satırının anlamı; eğer “Yukseklik” parametresinin değeri 20 mm den büyük
olursa “kabartma” unsurunun rengi sarıya dönüşecek ve “Genislik” parametresinin değeri 1
inç, “Uzunluk” parametresinin değeri ise 1 mm olacaktır. Ekranda “Sarı Form” yazan bir mesaj
kutusu gösterilecektir.

“Case Else” satırının anlamı ise; eğer “Yukseklik” parametresi yukarıda listelenen değerlerden
hiçbirisini almaz ise ekranda “Yukseklik” parametresinin değerini gösteren bir mesaj kutusu
açılacaktır.
53 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Uygulama 4: Bağımsız Alt Montaj Gruplarının Programlanması Yöntemi

Aşağıdaki resimde Autodesk Inventor ile modellenmiş bir bilgisayar masası modeli görünmedir.

Bilgisayar masası içerisinde iki adet alt montaj dosyası daha yer almakta ve bu montaj dosyalarının
içerisinde kendi boyutlarını kontrol eden iLogic kuralları bulunmaktadır.

Bu örnekte inceleyeceğimiz bilgisayar masasının model dosyasına aşağıdaki konumdan ulaşabilirsiniz.

Dosya Konumu = " Bolum2\uygulama_4\bilgisayar_masasi.iam"

Bilgisayar masası montajının model ağacında yer alan “cekmece:1” isimli alt montaj dosyasını
inceleyelim.

Çekmece modelini açmak için bilgisayar masası montajının model


ağacındaki “cekmece:1” satırına sağ tıklayın ve “Open” komutunu
çalıştırın.

Çekmece modelinin iLogic kurallarına erişmek için bilgisayarınızda


çekmece dosyası açıkken
, kuralına çift tıklayın.

Kural dosyası içerisinde çekmece montajında kullanılan parçaları


kontrol eden kod satırları bulunmaktadır. Çekmece montajı içinde
dokuz adet kullanıcı parametresi tanımlanmıştır, bu parametrelerin
bir kısmı montajın genel ölçülerini tanımlarken bir kısmı da yandaki
şekilde görülen süs parçasının boyutlarını tanımlamaktadır.

54 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Çekmece modelini kontrol edebileceğimiz form penceresini açmak için


form penceresini açın, form penceresinin görünümü aşağıdaki
gibidir.

Yukarıdaki form penceresinin “Çekmece” başlıklı sekmesinde montaj dosyasının genel ölçülerini
kontrol eden parametreler bulunmaktadır.

Yukarıdaki form penceresinin “Süs Çıtası” başlıklı sekmesinde kapağın ön yüzüne dekoratif olması
için eklenmiş süs çıtalarının ölçülerini kontrol eden parametreler bulunmaktadır.

Bağımsız alt montaj gruplarının programlanması yönteminde her bir alt montajın içerisinde
montajın önemli parametrelerini kontrol eden bir form penceresinin eklenmesi, daha üst montaj
kademelerine geçildiğinde alt montajın kontrol edilmesini kolaylaştırır.

“Çekmece Ölçüleri” isimli form penceresini kapatın ve


bilgisayar masası montaj modelini tekrar açın.

Bilgisayar masası montajı aktif iken iLogic Browser


penceresinin Rules sekmesini açtığınızda birçok iLogic
kuralının olduğunu görürsünüz.

Burada görüntülenen kuralların isimlerinin önünde yer


alan kural ikonlarının renkleri pasif kurallarda gri
tonlarda görüntülenir. Aktif kurallar ise yandaki resimde
işaretlenen kural gibi görüntülenir.

55 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Pasif kurallar parçadaki parametre değişimleri sonrasında otomatik olarak çalışmazlar, pasif
kuralları çalıştırmak için kural üzerine sağ tıklayarak “Run Rule” komutunu çalıştırabilir veya bir
başka kuralın içerisine yazılmış iLogic kodları ile çalıştırabilirsiniz.

iLogic kurallarını tetikleyiciler vasıtasıyla otomatik olarak çalıştırabilirsiniz.

Bilgisayar masası montajında çekmecenin parametrelerini kontrol eden “cekmeceler” isimli bir iLogic
kuralı oluşturulmuştur, “cekmeceler” kuralına çift tıklayarak iLogic editöründe açın. Kuralın içeriği
aşağıdaki gibidir.
Parameter("cekmece:1", "genislik")=Parameter("bilgisayar_altlik_e:1", "e_genislik")-20
Parameter("cekmece:1", "s_yan_pay")=Parameter("yan_plaka_c:1", "c_kalinlik")+10
Parameter("cekmece:1", "uzunluk")=Parameter("yan_plaka_b:1", "b_derinlik")-90
d43=Parameter("cekmece:1", "uzunluk")-100
Parameter("cekmece:1", "yukseklik")=cekmece_1_yukseklik
iLogicVb.RunRule("cekmece:1", "uyum")

Parameter("klavye_cekmecesi:1", "genislik")=Parameter("arka_plaka_f:1", "f_genislik")-20


Parameter("klavye_cekmecesi:1", "sag_pay")=9+Parameter("yan_plaka_b:1", "b_kalinlik")
Parameter("klavye_cekmecesi:1", "derinlik")=Parameter("yan_plaka_b:1", "b_derinlik")-50
d53=Parameter("klavye_cekmecesi:1", "derinlik")-100
iLogicVb.RunRule("klavye_cekmecesi:1", "uyum")

Kural içeriğinden de anlaşılacağı gibi “cekmeceler” kuralı hem dosya çekmecesini kontrol hem de
klavyeyi üstüne koyacağımız kayar tablayı kontrol ediyor.

Bu kural içerisinde çekmece alt montajının tüm alt parçaları kontrol edilmiyor, bunun yerine
çekmece montajı üzerinde oluşturulmuş “genislik”, “s_yan_pay”, “uzunluk” ve “yukseklik”
parametreleri kontrol ediliyor ve alt montajı güncelleyen “uyum” kuralı çalıştırılıyor.

Birden fazla iLogic ile programlanmış model içeren bir montaj dosyasında tüm model
dosyalarının aynı anda güncellenmesi istenmez, bu nedenle montaj içerisinde bulunan alt
parçalardaki iLogic kuralları otomatik olarak çalışmaz, bu kuralları bizim tetiklememiz gerekir.

Montaj dosyası içerisinde birden çok iLogic kuralı tanımlanmışsa ve bu kurallardan birisinin
sonucu diğer kuralların sonuçlarını da etkiliyorsa o
zaman montaj içerisindeki tüm kurallar pasif hale
getirilir ve düzenleyici yeni bir kural oluşturularak bu
kuralların belli bir sıraya göre çalışmaları sağlanır.

Sıralama işlemi parçalar arasındaki parametrik ve


geometrik ilişkiler göz önünde bulundurularak yapılır.

Kuralları tetiklemek için iLogic kod parçacıkları içerisinde


yer alan “Çalışma Sırası (Run Other)” kodları kullanılır,
bu kodlar içerisinden en sık kullanılan “RunRule”
ve “RunRule in Component” yapılarının kullanımı sayfa
46 da anlatılmıştır.

Montaj dosyalarında çalıştırdığımız iLogic kuralları işlemleri tamamladıktan sonra ortaya çıkan
yeni modeli görebilmek için inventor modelini hızlı erişim menüsündeki “Update” butonuna
tıklayarak güncellememiz gerekebilir. Güncelleme işlemini özel bir iLogic kuralına da yaptırabiliriz.
56 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Bir önceki adımda açtığınız “cekmeceler” isimli kuralı kapatmak için iLogic editörünün “Cancel”
butonuna tıklayın.

iLogic kuralları listesindeki “guncelle” isimli kurala çift tıklayarak iLogic editörü ile açın.

“guncelle” isimli kural bilgisayar masası montaj dosyası içerisinde yer alan tek aktif kuraldır, bunun
nedeni ise montaj içerisinde tanımlı diğer bütün kuralların birbirlerinin sonuçlarını etkilemesidir.

“guncelle” kuralı oldukça basit bir yapıdan oluşmaktadır, bu kuralın kod yapısı aşağıdaki gibidir.

iLogicVb.RunRule("uyum")
iLogicVb.RunRule("kenarlik_g-01 Rule")
iLogicVb.RunRule("kenarlik_g-02 Rule")
iLogicVb.RunRule("kenarlik_g-03 Rule")
iLogicVb.RunRule("bilgisayar_altlik_kapak_h-01 Rule")
iLogicVb.RunRule("cekmeceler")
iLogicVb.UpdateWhenDone = True

Yukarıda yazılan kodların ifade ettiği işlem akışının şematik görünüşü aşağıdaki gibidir.

Uygulama 4 – Özet

Bu uygulamada;

İçerisinde birden fazla iLogic kuralı içeren model dosyalarında kural çalışma sırasının
düzenlenmesini inceledik.

Ana montaj dosyasındaki iLogic kurallarını kullanarak alt montajlarda yer alan kural dosyalarını
çalıştırmayı inceledik.

Bir montaj dosyasının içerisinde iLogic kuralı içeren parça veya montaj dosyaları kullanılmış ise
bu dosyalarda yer alan iLogic kuralları kendiliğinden çalışmaz. Alt montaj ve parçalarda yer alan
kurallar bir başka iLogic kuralı tarafından çalıştırılabilir veya tetikleyiciler kullanılabilir.

Ana montaj içerisine otomatik güncelleme kuralı eklenmemişse ana montaj tüm iLogic
kuralları çalıştırıldıktan sonra el ile güncellenmelidir.

Dosya Konumu = " Bolum2\uygulama_4\bilgisayar_masasi.iam"

57 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Program Akış Sıralamasının Yapılması

Montaj dosyaları, birbirlerine geometrik ve mekanik sınırlandırmalar


ile ilişkilendirilmiş parça dosyalarından oluşurlar.

Bazı montaj dosyalarında merkez parçanın aldığı şekil bu parça ile


ilişkilendirilmiş diğer parçaların aldığı şekilleri de etkiler, Bu ve benzeri
durumlarda hangi parçanın önce güncellendiği ve hangi kuralların ilk
çalıştırıldığı önemli hale gelir.

Şekil 1 deki gibi iki boyutlu bir montaj dosyasında hangi parçayı
referans alacağımızı montajın kullanım şekli belirler.
Şekil 1: İki boyutlu montaj dosyası

Son hali dikdörtgen formunda olan şekil 1 deki montaj dosyasının en


ve boy ölçüleri veriliyor ve diğer parçaların boyutları isteniyorsa kural çalışma sıralaması dıştaki
parçalardan başlayarak merkeze doğru ilerler.

Merkezdeki “A” parçası birincil kabul ediliyorsa o zaman kural çalışma sırası “A” parçası ile başlar ve
dışa doğru devam eder.

iLogic kurallarının hangi sırayla çalışacağını ve hangi parçaların önce işlem göreceğini belirlemek
için aşağıda yer alan kıstasları kullanabilirsiniz.

Diğer parçalara referans olan parçalardaki kurallar önce çalıştırılırlar.

Diğer kurallar için girdi değeri oluşturan kurallar önce çalıştırılırlar.

Birbirlerini karşılıklı etkileyen model veya parametreler için döngü kuralları kullanılabilir.

58 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Kod Yapısı: “While…End While”

While döngüsünün yapısı;


While ifade Kullanıcı Girişi
işlem
End While

While döngüsünün referans aldığı Yanlış ifade Doğru


ifade doğru ise döngü içerisindeki
işlem yapılır ve tekrar referans İşlem
denklem sorgulanır, referans Sonuç
denklem sağlandığı sürece döngü
devam eder.

Uyarı: While döngüsü dikkatli kullanılmalıdır, döngünün referans aldığı ifade sürekli sağlanıyorsa while
döngüsü sürekli kendini tekrar ederek sonsuz döngü oluşturur ve program kilitlenir, while döngüsünde
sonsuz döngü oluşturmayacak ifadeler kullanılmalıdır.

Döngünün Kullanım Alanları: İstenilen sonucu elde etmek için bir işlem döngüsünün kaç defa
çalıştırılması gerektiği öngörülemiyorsa while döngüsü kullanılabilir.

Not: İşlem döngüsünün sonsuza gitme ihtimali var ise denklem içerisinde bir koşul tanımlanabilir ve bu
koşulun sonucu olarak “Exit While” komutunu çalıştırarak döngüden çıkılabilir.

Uygulama 5: “While…End While” Döngüsünün Kullanımı

Bu uygulamada bir parça modelinin belirli bir parametresi iLogic kuralı ile kontrol edilerek
parça kütlesinin istenilen bir değeri alması sağlanmıştır. Bu uygulamada kullanılan kodları kendi
modellerinize uygulayarak çok karmaşık modellerin kütle ayarlamalarını yapabilirsiniz.

Bu örnekte kullanılan parça aşağıdaki kıstaslar gözetilerek programlanmıştır;

1-) Parçanın malzemesi bir form penceresi kullanılarak değiştirilebilmelidir.

2-) Form penceresi üzerinden parçanın en son kütlesinin ne olacağı ve hangi hassasiyette bu kütleye
ulaşılacağı belirtilebilmelidir.

3-) Parçanın belirlediğimiz bir parametresi iLogic kuralı ile kontrol edilmeli ve parça istenilen kütleye
istenilen hassasiyette ulaşıncaya kadar belirlediğimiz parametre değişmeye devam etmelidir.

4-) Parça parametresini değiştirecek olan iLogic kuralı kendiliğinden çalışmamalı, Form penceresi
üzerindeki bir buton yardımıyla çalıştırılabilmelidir.

59 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

5-) Hesaplama işleminin başlangıcında ve bitiminde bir mesaj kutusu açılmalı ve parçanın ilk ve son
kütlesi ile değişen parametrenin aldığı son değer kullanıcıya bildirilmelidir.

6-) Hesaplama içerisinde kullanılan while döngüsünün kaç defa çalıştığı mesaj kutusu ile kullanıcıya
bildirilmeli, döngünün sonsuz döngü oluşturmaması için döngüye koşul eklenmeli ve tekrar sayısı en
fazla 2000 tekrar olacak şekilde ayarlanmalıdır.

Bu örnekte inceleyeceğimiz model dosyasına aşağıdaki konumdan ulaşabilirsiniz.

Dosya Konumu = \while.ipt"

Autodesk Inventor ile proje klasöründe bulunan “while.ipt” dosyasını açın.

“while.ipt” dosyası açıkken şerit menü üzerindeki butonuna


tıklayarak “iLogic Browser” penceresine ulaşın.

iLogic Browser penceresi üzerinde yer alan butonuna


tıklayarak yukarıda belirttiğimiz kıstaslara göre oluşturulmuş Form penceresini açın. Form
penceresi Şekil 2 deki gibi görünmektedir.

Form penceresi üzerindeki değerleri değiştirerek


programın nasıl çalıştığını inceleyelim;

Form penceresindeki “Hedef


Kütle” değerini “2000 g” veya “2 kg” olarak
değiştirin. (Autodesk Inventor birimleri tanır.)

Form penceresindeki “Malzeme” değerini açılır


menüden “Copper” olarak değiştirin.

Form penceresindeki “Hacim Ayarı” butonuna


tıklayarak hesaplama işlemlerini başlatın.

“Hacim Ayarı” Butonuna tıkladığınızda


ekranda aşağıdaki mesaj kutusu
açılacaktır. Bu pencerede üç adet bilgi yer alır.

Şekil 2: Hacim Ayarlama Form Penceresi

Formda Görünen İsim Parametre İsmi


Hedef Kütle hedef_kutle
Hassasiyet hassasiyet
Malzeme malzeme
Hacim Ayarı (buton) hacim_ayari (kural)

60 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

a Mesaj kutusundaki tekrar sayısı değeri while döngüsünün kaç defa tekrarlandığını
göstermektedir, bu mesaj kutusu program while döngüsüne girmeden önce gösterildiği için
birinci mesaj kutusundaki tekrar sayısı değeri sıfır olmaktadır.

b Form penceresini kullanarak seçtiğimiz malzemenin ismini göstermektedir.

c Form penceresini kullanarak seçtiğimiz malzemenin yoğunluğuna ve mevcut parçanın hacmine göre
hesaplanmış işlem öncesindeki parça kütlesini göstermektedir. (Hassasiyet sınırları içerisinde kalmak
kaydı ile sizin testlerinizde bu değer farklı çıkabilir.)

Bilgi Kutusunun üzerindeki “Tamam” butonuna tıklayarak iLogic işleminin devam etmesini sağlayın.

1 Ekrandaki parça modelinin iLogic ile kontrol edilen parametresi parça hedeflenen kütleye
ulaşıncaya kadar değişmeye devam eder, bu işlemin süresi bilgisayarınızın işlem
kapasitesine ve hedef kütleye ulaşmak için yapılan işlem tekrarı sayısına göre değişir.

Test değerlerine göre işlem süreleri değişebilir, uzun süren işlemlerde programı kapatmanıza
gerek yoktur, While döngüsünün tekrar limitini 2000 tekrar olacak şekilde ayarladığımız için program
sonsuz döngüye girmez.

2 Parçanın kütlesi istenilen değere ulaştıktan sonra


işlem sonucunu ve işlem tekrar sayısını gösteren
ikinci bir bilgi penceresi açılır. (Şekil 3)

Bilgi penceresin içerisinde parçanın genel


durumunu özetleyen bilgiler bulunur.

İşlemler While döngüsü içerdiği için farklı


hedef kütle değerleri ve farklı malzemeler için işlem
tekrar sayıları değişebilir.

Bilgi penceresinde yer alan “Tamam” butonuna Şekil 3: İşlem sonucunu gösteren bilgi penceresi
tıklayarak iLogic işlemlerinin tamamlanmasını sağlayın.

Hesapları yapan iLogic kurallarını incelemek için “iLogic Browser” üzerindeki “Rules” sekmesini açın.

B “Rules” sekmesinde iki adet iLogic kuralı bulunmaktadır.

B “malzeme” isimli kuralın görevi “Hacim Ayarlama” isimli form


penceresini kullanarak yaptığımız malzeme seçimini parçaya
uygulamaktır.

“malzeme” kuralı form penceresinde yer alan malzeme listesine malzeme


isimlerinin eklenmesi görevini de yerine getirmektedir.

B “malzeme” kuralı otomatik olarak çalışabilmesi için aktif bırakılmıştır.

61 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

B “hacim_ayari” kuralı hedeflenen parça kütlesine ulaşmak için gerekli işlemleri yapmaktadır. Bu
kuralın otomatik olarak çalışması istenmemektedir, bu nedenle kural pasif olarak ayarlanmıştır.

B “hacim_ayari” kuralı “Hacim Ayarlama” isimli form penceresinde bulunan “Hacim Ayarı” butonu
ile tetiklenmektedir.

“hacim_ayari” kuralını incelemek için kuralın üzerine çift tıklayın, iLogic kuralı düzenleme penceresi
açılacaktır. (“Edit Rule: <kural ismi>” isimli kural düzenleme penceresi)

“hacim_ayari” isimli iLogic kuralının içerisinde yer alan tüm kodlar aşağıda yer almaktadır.
tekrar_sayisi=0
'hedef_kutle 'form penceresinde tanımlanmıştır, min hassasiyet*10 için bu formül geçerlidir.
kutle = iProperties.Mass
'hassasiyet 'form penceresinde tanımlanmıştır.
artma_azalma_miktari= 1 mm
eski_kutle=0.0 g
oran=64.0
MessageBox.Show("Malzeme = " & malzeme & vbNewLine & _
"İlk Kütle = "& kutle*1000 & " gr." ,"Bilgi (Tekrar Sayısı = " & tekrar_sayisi & ")")
While Abs(kutle - hedef_kutle) > hassasiyet
dis_genislik=dis_genislik + artma_azalma_miktari
tekrar_sayisi=tekrar_sayisi+1
eski_kutle=kutle

RuleParametersOutput()
InventorVb.DocumentUpdate()
kutle = iProperties.Mass

kutle_degisimi=Abs(kutle-eski_kutle)

If tekrar_sayisi<2 Then:isaret=Sign(kutle-eski_kutle):End If
fark=hedef_kutle-kutle

Select Case True


Case dis_genislik<ic_genislik :dis_genislik=ic_genislik+2 mm :oran=oran/2
artma_azalma_miktari=artma_azalma_miktari+oran
Case (kutle=0 Or fark=0):oran=oran/2
artma_azalma_miktari=artma_azalma_miktari+oran
Case (fark < 0):artma_azalma_miktari=-isaret*oran*Sign(dis_genislik)
If (a=2) Then : oran=oran/2 : End If
a=1
Case (fark > 0):artma_azalma_miktari=isaret*oran*Sign(dis_genislik)
If (a=1) Then : oran=oran/2 : End If
a=2
Case Else : Exit While
End Select

If tekrar_sayisi>=2000 Then: Exit While:End If


End While

MessageBox.Show("Malzeme = " & malzeme & vbNewLine & _


"Son Kütle = "& kutle*1000 & " gr." & vbNewLine & _
"Hassasiyet = "& hassasiyet*1000 & " gr." & vbNewLine & _
"İç Kenar Uzunluğu = "& ic_genislik & " mm" & vbNewLine & _
"Dış Kenar Uzunluğu = "& dis_genislik & " mm" & vbNewLine & _
"Kalınlık = "& kalinlik & " mm" ,"Bilgi (Tekrar Sayısı = " & tekrar_sayisi & ")")

Yukarıda verilen kodların içerisinde aşağıdaki programlama deyimleri ve operatörler kullanılmıştır.


iProperties.Mass RuleParametersOutput()
MessageBox.Show("içerik","Başlık") InventorVb.DocumentUpdate()
Abs(ifade veya parametre) vbNewLine
While … End While Sign(ifade)
Exit While Satır bölme işareti ( _ )
If … Then … End If String birleştirme işareti ( & , : )
Select Case … End Select Sayısal birimler ( g, kg, mm, … )
62 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Programın çalışma prensipleri

Program çalıştırıldığında parça üzerinde hiçbir işlem


yapılmadan önce parçanın mevcut kütlesi bir
değişkene atanır.

Belirlenen parametre test amaçlı 1 mm artırılır ve


yeni kütle hesaplanır.

Eski kütle ile yeni kütle arasındaki değişime bakılarak


parametre artışının kütleyi artırıp artırmadığı
incelenir. (Verilen parametre parça içerisindeki bir
boşaltmaya ait ise parametre değeri arttığında kütle
azalacaktır.)

Parametre değişiminin kütle üzerindeki etkisine göre


belirli bir orandaki değer parametreye eklenir veya
çıkarılır.

Parçanın değişimden sonraki kütlesi tekrar hesaplanır


ve hedeflediğimiz kütle değeri ile arasındaki fark
bulunur.

Eğer hedeflediğimiz kütle ile parçanın en son kütlesi arasındaki fark hassasiyet değerinden büyük ise
işlemler tekrar edilir, eğer fark hassasiyetten küçük ise işlemler sonlandırılır.

Not: Belirlenen bazı koşullar sağlanırsa artma/azalma oranı küçültülerek işlemlere devam edilir.
(Kriterler “Select … Case … End Select” yapısının içerisinde yer almaktadır.)

Uyarı: İşlemlerin doğruluğu için parametrelerin birimlerine dikkat edilmelidir, iLogic içerisinde bir
değişken tanımlarken kütle, uzunluk, hacim … vb. birimleri kullanabilirsiniz, Autodesk Inventor
değişkenlere verdiğiniz birimleri dikkate alarak işlem yapar, eğer değişkenlere herhangi bir birim
atamaz iseniz iLogic varsayılan dosya birimleri üzerinden işlem yapar.

Örnekler:

iLogic içerisinde;

“a = 1 kg” eşitliği yerine “a = 1000 g” eşitliğini kullanırsanız aynı sonucu elde edersiniz.

Bir değişkene birim atamak için sayısal değerin ardından bir boşluk bırakıp birimi temsil eden harfleri
eklemelisiniz. ( “a = 25kg” ifadesi yanlış yazılmıştır, ifadenin doğrusu “a = 25 kg” dır. )

Aynı ölçü türüne ait farklı birimlerdeki değişkenleri aynı denklemde kullanabilirsiniz;

{ a= 10 mm : b= 25 m : c= a+b } işlemlerinin sonucunda “c” değeri 25010 mm değerini alır.

63 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

64 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

degisken = iProperties.Mass

iLogic düzenleme penceresinin 1 numaralı


bölmesinde yer alan kod parçacıkları içerisinde
bulabileceğiniz bu yapı ile Autodesk Inventor
içerisindeki modelin kütlesini hesaplatarak
belirlediğiniz bir değişkene değer olarak
atayabilirsiniz.

Abs(ifade veya parametre)

iLogic içerisindeki Matematik fonksiyonlarından birisi


olan bu fonksiyon ile parantezin içerisine yazılan ifade
veya değişkenin değerinin mutlak değerini
alabilirsiniz. iLogic düzenleme penceresinin 1 numaralı
bölmesinde yer alır.

RuleParametersOutput()

iLogic kuralı içerisinde değiştirilen model


parametrelerini model dosyasına aktarır, model
güncelleme komutlarından önce kullanılmalıdır.

Önemli Not: iLogic kuralı içerisinde değiştirilen


parametreler kural içerisindeki tüm işlemler
tamamlandıktan sonra model dosyasına aktarılırlar.
iLogic kuralı içerisinde değiştirilen bir parametrenin model üzerindeki etkilerini iLogic kuralı
tamamlanmadan önce hesaplatmak için “RuleParametersOutput()” kod parçacığı kullanılır.

Önemli Not 2: iLogic kuralı içerisinde “iLogicVb.RunRule” fonksiyonları kullanılarak başka kurallar
çalıştırılacak ise çalıştırılmak istenen kuralın içerisinde değişen parametrelerin yeni değerlerinin
kullanılması için “iLogicVb.RunRule” fonksiyonundan önce “RuleParametersOutput()” kod parçacığı
kullanılmalıdır.

Sign(ifade_veya_degisken)

“Sign()” fonksiyonu parantez içindeki değişkenin değerine göre -1, 0 ve 1 olmak üzere üç farklı değer
alır, eğer parantez içerisindeki ifadenin değeri negatif ise -1, sıfır ise 0, pozitif ise 1 değerini alır.
“Sign()” fonksiyonu iLogic kuralı düzenleme penceresinin içerisindeki kod parçacıkları bölümünde,
Math düğümünün altında yer alır.
65 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogicVb.UpdateWhenDone = True

“iLogicVb.UpdateWhenDone” kod parçacığı bir iLogic


kuralının içerisinde kullanılır ise, o kural dosyası
çalışmayı bitirdiğinde kuralın bulunduğu model dosyası
güncellenir. Bu kod parçacığının yaptığı işlem Autodesk
Inventor’un hızlı erişim menüsündeki “Update”
komutunun yaptığı işlem ile aynıdır.

InventorVb.DocumentUpdate() Şekil 4: iLogic Kuralı Düzenleme Penceresi > 1


Numaralı Bölme > “System” sekmesi
iLogic kuralı çalışırken işlem sırası
“iLogicVb.DocumentUpdate()” kod parçacığının bulunduğu satıra geldiğinde parça modeli
güncellenir ve tasarım ekranındaki model görünümü yenilenir. Model görünümünün ve boyutlarının
önemli olduğu durumlarda bu kod parçacığı kullanılır. (kütle ve hacim hesaplamaları gibi işlemlerin
hemen öncesinde kullanılır.)

InventorVb.DocumentUpdate(False)

“iLogicVb.DocumentUpdate(False)” kod parçacığı iLogic kuralının çalışması esnasında model


dosyasını güncellemek için kullanılır. Bu kural ekrandaki model görünümünü yenilemez, sadece
modeli günceller. Eğer ekrandaki model görünümünün programın çalışması esnasında güncellenmesi
sizin için önemli değilse bu kural “iLogicVb.DocumentUpdate()” komutunun yerine kullanılabilir.

ThisApplication.ActiveView.Update()

“ThisApplication.ActiveView.Update()” kod parçacığı sadece modelin ekrandaki görünümünü


günceller, model dosyasının kendisini güncellemez.

‘ Program içerisine yazdığımız yorumların başına kesme işareti konur, kural çalışırken yorumlar
hesaba katılmazlar.

& birden fazla değişken ve deyim bir araya getirilip string değer oluşturulmaya çalışıldığında
farklı değişkenleri birbirine bağlamak için kullanılır.

vbNewLine String değişkeni içerisine yeni bir satır eklemek için kullanılan bir deyimdir. Diğer
değişkenlere “ & “ karakteri ile bağlanır.

_ iLogic editöründe uzun kod satırlarını bölmek için satır sonlarında kullanılır. “ _ “ işaretini
kullandıktan sonra kodları bir alt satıra yazmaya devam edebilirsiniz.

: iLogic editöründe iki farklı satırda yazmamız gereken kodları tek bir satırda yazabilmemizi
sağlar, yeni bir satır oluşturmak yerine farklı satırlarda olması gereken kodların arasına “ : “
işareti konulabilir.

66 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Örnek: Noktalama İşaretlerinin Kullanılması 'bu yorum hesaplama katılmaz


a = "Inventor "
Yandaki pencerede yer alan iLogic kuralının b = 2016
c = a & b
içerisinde noktalama işaretlerinin kullanımı d = a & vbNewLine & b
gösterilmiştir. Bu kural çalıştırıldığında beş adet f = a & _
vbNewLine & b & vbNewLine &
mesaj kutusu oluşturulmaktadır. "Professional"
g = 15 + 20 * _
Oluşturulan mesaj kutuları aşağıdaki gibidir. 40 - 1000
If b>2010 Then : MessageBox.Show( _
"Tek Satır Test" ,"Bilgi") : End If

MessageBox.Show(c ,"Bilgi (c)")


MessageBox.Show(d ,"Bilgi (d)")
MessageBox.Show(f ,"Bilgi (f)")
MessageBox.Show(g ,"Bilgi (g)")

iLogic kuralı düzenleme penceresinin altında yer alan “Cancel” butonuna tıklayarak “hacim_ayari”
isimli kuralı kapatın.

Inventor modelinin malzemesini değiştiren ve form penceresindeki malzeme listesini oluşturan


iLogic kuralını incelemek için iLogic Browser penceresi üzerindeki “malzeme” isimli kurala çift
tıklayın.

“malzeme” isimli kural iki satırdan oluşmaktadır. İlk satır “malzeme” isimli kullanıcı tanımlı alfanümerik
parametreye Autodesk Inventor’un aktif malzeme kütüphanesinde yer alan malzemelerin isimlerini
yüklemektedir. İkinci kod satırı ise form penceresini kullanarak değiştirdiğimiz “malzeme” isimli
parametrenin değerini kullanarak parça modelinin malzemesini değiştirmektedir.
MultiValue.List("malzeme") = iProperties.Materials
iProperties.Material=malzeme

Uyarı: Parça modelinin parametreleri içerisinde “malzeme” isimli bir parametre yer almaktadır, aynı
zamanda parça malzemesini kontrol eden iLogic kuralının ismi de “malzeme” dir.

Not: Autodesk Inventor yazılımında bir parametre ve bir iLogic kuralı aynı ismi alabilir fakat iki farklı
parametre aynı ismi paylaşamaz veya iki farklı iLogic kuralı aynı ismi alamazlar.
67 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Multi-Value Parametre

Birden fazla ön tanımlı değer içeren


parametrelere Multi-Value (çoklu değer)
parametreler denir.

Multi-Value parametresinin alacağı değer


açılır liste üzerinden seçilebilir.

Multi-Value parametreler form penceresi


üzerinde “Şekil 5” teki gibi açılır liste Şekil 5: Multi-Value parametrenin form penceresi
üzerindeki görünümü
şeklinde görünürler.

Multi-Value Parametre Oluşturma:

Şerit menü
üzerinden butonuna
tıklayıp “Parameters” diyalog penceresi açılır.

“Parameters” diyalog penceresindeyken multi-value


parametreye dönüştürmek istediğimiz parametrenin
bulunduğu satıra fare imleci getirilerek sağ tıklanır.

Fare imlecinin kenarındaki açılan menüden “Make


Multi-Value” komutu çalıştırılır.

Multi-value parametrenin açılır listesinde yer alan


seçenekleri düzenleyebileceğimiz “Value List
Editor” penceresi açılır.

Bu pencerenin üst kısmında yer alan kutucuğa


listede yer almasını istediğimiz değerler alt alta
yazılırlar.

Eklenecek tüm değerleri yazdıktan sonra pencere


üzerinde bulunan “Add” butonuna tıklanarak
değerler listeye eklenir.

Multi-value parametreye listeye eklediğimiz


değerlerin haricinde el ile değer girilebilmesi de
isteniyorsa; “Value List Editor” penceresinin alt kısmında yer
alan “Allow custom values” kutucuğu işaretlenmelidir.

“OK” butonuna tıklayarak “Value List Editor” penceresinden


çıkıldığında multi-value parametre oluşturulmuş olur.

68 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Multi-Value Parametreye Malzeme Listesinin Atanması:

MultiValue.List("param") = iProperties.Materials

Autodesk Inventor malzeme kütüphanesinin


içerisinde yer alan malzeme
isimlerini kullanıcı tanımlı alfanümerik
parametreye aktarma görevini yapar, bu
işlemden sonra kullanıcı tanımlı
parametre multi-value parametreye dönüşür.

Kod parçacığı içerisindeki “param” yazan


kısma malzeme listesinin aktarılacağı
Şekil 6: iLogic Kuralı Düzenleme Penceresi > 1 Numaralı
parametrenin ismi yazılır. Bölme > “System” sekmesi

degişken = iProperties.Material iProperties.Material = degişken

“iProperties.Material” fonksiyonu ile model


dosyasının malzeme bilgisini okuyabilir ve bu bilgiyi
alfanümerik değer alabilen bir değişkene
atayabilirsiniz.

“iProperties.Material” fonksiyonunu kullanarak parça


modelinin malzemesini değiştirebilirsiniz.

Kod Örnekleri: Aşağıda bir iLogic kuralının kodları görünmektedir.

MultiValue.List("malzeme") = iProperties.Materials
iProperties.Material=malzeme
MessageBox.Show( iProperties.Material ,"Malzeme")

Birinci kod satırında “malzeme” isimli kullanıcı tanımlı alfanümerik parametreye Autodesk Inventor
içerisinde o an aktif bulunan malzeme kütüphanesindeki malzemelerin listesi aktarılmaktadır.

“malzeme” isimli parametre bu işlemin sonucunda malzeme listesini içeren multi-value


parametreye dönüşür. Form penceresi veya parametre listesini kullanarak “malzeme”
parametresine ulaşıp listede yer alan malzemelerden birisini seçebilirsiniz.

İkinci satırda “malzeme” isimli parametrenin aldığı malzeme değeri model dosyasına uygulanarak
parça modelinin malzemesi değiştirilir.

Not: “malzeme” parametresi malzeme ismini yazı olarak taşır, “iProperties.Material” fonksiyonu ise
yazı ile yazılmış malzeme ismini kütüphanedeki malzemelerin isimleri ile karşılaştırır ve aynı isme
sahip olan malzemeyi parça modeline uygular.

69 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Üçüncü satırda ise “iProperties.Material” fonksiyonunun kendisi birer değişken olarak kullanılarak
mesaj kutusu ile parçanın mevcut malzemesinin ismi ekrana yazdırılmıştır.

Uygulama 5 – Özet

Bu Uygulamada;

While döngüsünün kural içerisinde kullanımını inceledik.

iLogic kod parçacıklarının kullanımı ve görevleri ile ilgili bilgi edindik.

iLogic kurallarında kullanılan noktalama işaretlerinin görevlerini inceledik.

Multi-value parametre oluşturma yöntemini inceledik.

iLogic kurallarını kullanarak parçanın malzeme bilgisinin değiştirilmesi yöntemini inceledik.

iLogic Kod Yapısı: “For … Next” döngüsü

For i = Başlangıç To Bitiş Step Artma Miktarı


For i=x To y Step z
ifade Başla
Next

i = Başlangıç

x = Başlangıç
i <= Bitiş Yanlış Bitir
y = Bitiş
Doğru
z = Artma Miktarı
İşlem
“For … Next” döngüsü bir başlangıç
değerinden başlayarak belirli bir bitiş
değerine kadar belirli miktarlarda artarak i = i + Artma Miktarı

devam eden döngü türüdür.

Örnek :

1 ile 200 arasındaki tam sayıların toplamını veren bir For … Next döngüsü oluşturalım.

toplam = 0
For i=1 To 200 Step 1
toplam += i
Next
MessageBox.Show( toplam , "For ... Next")

70 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Kod Yapısı: “Sub Main()… End Sub, Exit Sub, Return, Exit, End”

iLogic kuralı içerisindeki program kodlarını gruplar halinde toplayarak program akışının kontrol edilebilmesini
sağlayan yapılardır. Kural içerisinde bulunan kod gruplarının istenilen zamanda, istenildiği kadar ve isteğe bağlı
olarak çalıştırılabilmelerini sağlarlar. (Subroutine=Altyordam)

Sub Deyimini iLogic kuralı içerisinde Sub Main()


kullanmak büyük kolaylıklar sağlar fakat bu iLogic Kodları
grup1()
yapıyı kullanmanın bazı kuralları ve grup2(degisken)
kısıtlamaları vardır. End Sub

Sub grup1()
Sub Deyiminin kullanıldığı iLogic iLogic Kodları
kurallarında “Sub ???() … End Sub” yapısının End Sub
dışarısında kod satırının bulunmaması gerekir. Sub grup2(ByVal girdi As String)
Sub Main()
iLogic Kodları
kalinlik_1=kalinlik_2 grup1()
grup1() End Sub
End Sub
uzunluk_1=uzunluk_2 'buraya kod yazamazsınız !!! ...
Sub grup1()
genislik=120 mm
End Sub

Eğer iLogic kuralının içerisinde Sub Deyimi yapısı


Sub Main()
kullanılacak ise Sub Main() deyimi mutlaka iLogic kuralının kalinlik_1=kalinlik_2
'Aşağıdaki değişken sadece Sub Main()
içerisinde bulunmalıdır. Sub Main() deyimi yapısı iLogic ‘içerisinde kullanılabilir.
degisken=100
kuralının çalışması ile birlikte çalışmaya başlar. grup1()
End Sub
Sub deyiminin içerisinde oluşturulan değişken sadece Sub grup1()
oluşturulduğu yapı içerisinde kullanılabilir. Normal bir genislik=120 mm
'Aşağıdaki satır çalışmaz
değişkenin kullanılabileceği etki alanı sadece bulunduğu Sub MessageBox.Show(degisken, "gösterge")
End Sub
deyimini kapsar.

Aynı kural içerisinde aynı isimde birden fazla Sub deyimi


Sub Main()
kullanılamaz. (Kod Satırları)
End Sub
Sub deyiminin kural içerisindeki bulunduğu konum önemli
Sub Deyim_İsmi()
değildir, sub deyimleri çağrılma sıralarına göre çalışırlar. (Kod Satırları)
End Sub

“Sub Deyim_İsmi()” şeklindeki deyimi çalıştırmak için bir başka


kural içerisine “Deyim_İsmi()” şeklinde kod satırı eklenmelidir.

Sub deyimlerini çalıştırmak için kullanılan “Deyim_İsmi()” kod parçacığı bir değişkenin yerine
kullanılamaz.

Dışarıdan değişken kabul edebilen sub deyimleri “Deyim_İsmi(ByVal degisken1 As Integer, Byval
degisken2 As String) ” formatında yazılırlar ve “Deyim_İsmi(degisken1, degisken2) ” formatında
çağrılırlar. (Değişken formatı olarak String, Object, Double, Integer, … vb. kullanılabilir.)
71 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Uygulama 6: Sub Deyiminin Kullanılması

Uygulamada kullanılan dosya: “ \Bolum2\kaplin\kaplin.iam”

1 Proje Klasöründe Bulunan “kaplin.iam” dosyasını açın.

2 (Eğer “iLogic Browser” Kapalı İse) Şerit menü üzerinden


işaret kutusunu işaretleyerek “iLogic Browser” penceresinin ekranda görüntülenmesini
sağlayın.

3 kuralının üzerine sağ tıklayın ve açılan menüden “Edit Rule”


seçeneğini seçin.

4 iLogic kuralı düzenleme penceresindeki


kod satırlarının olduğu bölmeye(3
numaralı bölme) sağ tıklayın ve açılan
pencereden
seçeneğini seçin. Bu komut
iLogic kuralı içerisinde bulunan Sub
deyimlerinin görünümlerini kısaltarak
sadece deyim başlıklarının
görüntülenmesini sağlar.

b Deyim başlığı içerisindeki kod satırlarını


görebilmek için deyim ağacının sol
tarafında yer alan düğüm işaretine (+)
tıklamak yeterlidir.

b iLogic kuralı içerisinde birisi Sub Main() deyimi olmak üzere toplamda üç adet Sub deyimi
kullanılmıştır.

5 Kod satırlarını tekrar genişletmek için 3 numaralı bölmeye sağ tıklanır ve açılan
menüden komutu çalıştırılır.

b iLogic kuralı çalıştırıldığında ilk olarak Sub Main() deyimi


Sub Main()
içerisinde yer alan kodlar çalıştırılmaya başlanır. kaplin_p1_uyum()
kaplin_p2_uyum()
InventorVb.DocumentUpdate()
“kaplin_p1_uyum()” isimli kod satırı ile “Sub kaplin_p1_uyum() End Sub
… End Sub” deyimi çağrılır ve bu deyim içerisindeki kodlar …
çalıştırılır. Sub Main()
kaplin_p1_uyum()
“kaplin_p1_uyum()” deyiminin karşılığı olan kod satırı kümesi kaplin_p2_uyum()
içerisinde yer alan kodların hepsi çalıştırıldıktan sonra Sub InventorVb.DocumentUpdate()
End Sub
Main() deyimine geri dönülür ve bir sonraki kod satırına geçilir. …

72 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

“kaplin_p1_uyum()” deyiminin karşılığı olan kodların hepsi çalıştırıldıktan sonra tekrar Sub Main()
deyimine geri dönülür bu deyim içerisindeki diğer işlemlerde tamamlandıktan sonra Sub Main()
deyiminden çıkılarak iLogic kuralının çalışması sonlandırılır.

b Aşağıda yer alan sol tarataki kutuda “uyum1” kuralının yapısı verilmiştir, sağ taraftaki kutuda
ise “uyum1” kuralı ile aynı işlevi gören fakat sub deyimi kullanılmamış kod satırları yer almaktadır.

b Az sayıdaki kod satırı içeren kurallarda Sub deyiminin kullanılmasına fazla gerek yoktur. Kod satırı
sayısı arttıkça (50 ve daha fazla kod satırı) Sub deyiminin kullanılması kural çalışmasını kontrol
edebilmek için gerekli hale gelir.

b iLogic kuralı içerisine 20 000 satırdan daha fazla kod satırı yazabilirsiniz.

Sub Main()
kaplin_p1_uyum()
kaplin_p2_uyum()
InventorVb.DocumentUpdate()
End Sub
Parameter("KAPLIN_P1:1", "kaplin_dis_cap")=kaplin_dis_cap
Sub kaplin_p1_uyum() Parameter("KAPLIN_P1:1", "kaplin_genislik")=kaplin_kalinligi
Parameter("KAPLIN_P1:1", "kaplin_dis_cap")=kaplin_dis_cap Parameter("kaplin_p1:1", "dis_ic_cap")=kaplin_ic_cap
Parameter("KAPLIN_P1:1", "kaplin_genislik")=kaplin_kalinligi Parameter("kaplin_p1:1", "kaplin_dis_genisligi")=kaplin_dis_kalinligi
Parameter("kaplin_p1:1", "dis_ic_cap")=kaplin_ic_cap Parameter("kaplin_p1:1", "kaplin_dis_sayisi")=kaplin_dis_sayisi
Parameter("kaplin_p1:1", "kaplin_dis_genisligi")=kaplin_dis_kalinligi Parameter("kaplin_p1:1", "dis_uzunlugu")=kaplin_kalinligi
Parameter("kaplin_p1:1", "kaplin_dis_sayisi")=kaplin_dis_sayisi
Parameter("kaplin_p1:1", "dis_uzunlugu")=kaplin_kalinligi iLogicVb.RunRule("KAPLIN_P1:1", "dis_ayari")

iLogicVb.RunRule("KAPLIN_P1:1", "dis_ayari") kaplin_dis_cap=Parameter("KAPLIN_P1:1", "kaplin_dis_cap")


kaplin_kalinligi=Parameter("KAPLIN_P1:1", "kaplin_genislik")
kaplin_dis_cap=Parameter("KAPLIN_P1:1", "kaplin_dis_cap") kaplin_ic_cap=Parameter("kaplin_p1:1", "dis_ic_cap")
kaplin_kalinligi=Parameter("KAPLIN_P1:1", "kaplin_genislik") kaplin_dis_kalinligi=Parameter("kaplin_p1:1", "kaplin_dis_genisligi")
kaplin_ic_cap=Parameter("kaplin_p1:1", "dis_ic_cap") kaplin_dis_sayisi=Parameter("kaplin_p1:1", "kaplin_dis_sayisi")
kaplin_dis_kalinligi=Parameter("kaplin_p1:1", "kaplin_dis_genisligi") kaplin_kalinligi=Parameter("kaplin_p1:1", "dis_uzunlugu")
kaplin_dis_sayisi=Parameter("kaplin_p1:1", "kaplin_dis_sayisi")
kaplin_kalinligi=Parameter("kaplin_p1:1", "dis_uzunlugu") Parameter("kaplin_p2:1", "kaplin_dis_cap")=kaplin_dis_cap
End Sub Parameter("kaplin_p2:1", "kaplin_ic_cap")=kaplin_ic_cap
Parameter("kaplin_p2:1", "dis_genisligi")=kaplin_dis_kalinligi
Sub kaplin_p2_uyum() Parameter("kaplin_p2:1", "genislik")=kaplin_kalinligi
Parameter("kaplin_p2:1", "kaplin_dis_cap")=kaplin_dis_cap Parameter("kaplin_p2:1", "dis_sayisi")=kaplin_dis_sayisi
Parameter("kaplin_p2:1", "kaplin_ic_cap")=kaplin_ic_cap InventorVb.DocumentUpdate()
Parameter("kaplin_p2:1", "dis_genisligi")=kaplin_dis_kalinligi
Parameter("kaplin_p2:1", "genislik")=kaplin_kalinligi
Parameter("kaplin_p2:1", "dis_sayisi")=kaplin_dis_sayisi
End Sub

Önemli Not: Bu uygulamada kullanılan “ \Bolum2\kaplin\kaplin.iam” modeli


işerisinde form pencereleri, alt parçalar içerisinde de iLogic kuralları bulunmaktadır, model
içerisindeki iLogic kurallarını ve form pencerelerini şu ana kadar öğrendiğiniz bilgiler çerçevesinde
değiştirerek pratikler yapınız.

Önemli Not 2: Programlama yapmak bilgi birikimi ve yaratıcılık gerektirir, programlama öğrenmenin
en iyi yöntemi bol bol pratik yapmaktır, bu belge içerisinde anlatılan bilgileri pekiştirebilmeniz için
içerisinde birçok örnek model bulunduran “iLogic” isimli bir proje dosyası oluşturulmuştur. “iLogic”
isimli proje dosyası içerisinde bulunan birçok model bu belge içerisinde kısmen anlatılmıştır, diğer
modeller ise inceleme ve pratik yapabilmeniz için proje dosyasına eklenmiştir.

73 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Uygulama 6 – Özet

Bu Uygulamada;

Sub deyiminin basit bir örneğini inceledik.

iLogic içerisindeki deyimlerin görünümünü kısaltmaya ve genişletmeye yarayan komutları


inceledik.

iLogic Kod Yapısı: “Function…End Function”

Function deyimi iLogic içerisinde


Function isim()[As Değişken türü]
belirli bir işlemi veya işlemler serisini Kod Satırları
tamamlayıp bu işlemlerin sonucunda Return [işlem sonucu]
bir değer alabilen fonksiyonlar End Function
oluşturabilmemizi sağlar.

Function deyiminin genel kullanımı Sub deyimine benzer fakat aradaki en önemli fark; Sub
deyimi bir değer alamazken Function deyimi sayısal, alfanümerik veya diğer formatlarda değer
alabilmektedir.

Function deyimini çağıran yapı bir denklem içerisinde Sub Main()


değişken olarak kullanılabilmektedir. MessageBox.Show(fonksiyon(),"bilgi")
End Sub
Değişken türü: Fonksiyonun alacağı değerin türünü
Function fonksiyon() As Integer
tanımlamak için kullanılır. Fonksiyon değerinin türü olarak bu Return 100
alana string, integer, double … vb. yazılabilir. End Function

Not: Fonksiyonun değer türünü her zaman belirtmek


Function isim()
zorunda değilsiniz, değer türünün belirtilmediği Kod Satırları
durumlarda Function deyimi yandaki şekilde görüldüğü Return [işlem sonucu]
gibi yazılabilir. End Function

iLogic kuralının içerisinde Function deyiminin


kullanılabilmesi için kural içerisinde MUTLAKA Sub Main() deyiminin kullanılmış olması
gerekmektedir.

Sub Main() deyimi kural içerisindeki diğer fonksiyonların veya sub deyimlerinin hangi sıra ile
çalışacaklarının belirtildiği kısımdır. Eğer kural içerisinde sub deyimi veye function deyimi kullanılacak
ise mutlaka Sub Main() deyimi de kullanılmalıdır.

iLogic kuralı içerisinde aynı işlemi yapan kod satırlarını tekrar tekrar yazmak yerine bu satırları
Function deyimi ile bir araya getirerek çok daha az satır ile çok daha fazla görev yapabilen kurallar
yazabiliriz.

74 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Kod Yapısı: “Try … Catch … End Try”

iLogic kuralı içerisine yazdığımız kod satırları model içindeki parametrelere bağlı olarak bazı
durumlarda hata verebilirler.

Hata verme ihtimali olan kodları Try deyimi içerisine alarak kod satırının hata vermesi
durumunda yapılacak alternatif işlemleri tanımlayabiliriz.

Yandaki kutuda Try deyiminin kod yapısı verilmiştir. Try


Kod_satırları_1
Try yapısında önce “Kod_Satırları_1” yazan kısımdaki kodlar Catch
çalıştırılır, herhangi bir hata oluşmaz ise Try deyiminden çıkılarak Kod_satırları_2
End Try
“Kod_Satırları_2” yazan bölümdeki kodların hiçbirisi çalıştırılmaz.

“Kod_Satırları_1” yazan bölümdeki kodlardan birisi hata verecek olursa o zaman


“Kod_Satırları_2” yazan bölümdeki kodlar çalıştırılır ve Try deyiminden çıkılarak diğer işlemlere
devam edilir.

Try Deyimi içerisinde Sub deyimleri ve fonksiyonlar çağrılabilir, birden fazla Try deyimi iç içe
kullanılabilir.

iLogic Kod Yapısı: “Class ThisRule … End Class”

iLogic kuralı içerisinde Sub Main() deyimini


Class ThisRule
kullandığınızda program otomatik olarak Class yapıları Dim Depo As New Kod_Listesi
için VB.NET programlama dilinin yapısını kullanır yalnız
Sub Main()
tek bir farkla; iLogic içerisinde Class … End Class satırları Gosterge()
görünmez ve Sub Main() kuralından önceki satırlar bu End Sub
Class yapısına dahil değildir. Sub Gosterge()
Depo.merhaba()
Sub Main()…End Sub yapısından sonraki End Sub
boşlukta; altyordamlar(Sub Deyimleri), fonksiyonlar,
End Class
öznitelikler ve Class yapısı içerisinde bulunan tüm alt
elemanlarda geçerli olan değişkenler oluşturabilirsiniz. Public Class Kod_Listesi

Public Function merhaba()


Class ThisRule yapısı aynı iLogic kuralı içerisinde MessageBox.Show("Merhaba” & _
birden fazla Class oluşturulmak isteniyorsa kullanılır ve & “ Dünya","Class Kod_Listesi")
End Function
Class ThisRule … End Class yapısından sonra kurala bir
veya daha fazla Class yapısı eklenebilir. Bu durumda Class End Class
ThisRule yapısı birincil yapıyı oluşturur ve iLogic kuralı
çalıştırıldığında ilk olarak Class ThisRule yapısı ve içerisindeki Sub Main() deyimi çalışır.

Class yapılarına farklı iLogic kuralları içerisinden de ulaşılması isteniyorsa bu kodlar harici bir .dll
dosyasına kaydedilir ve bu kodlara diğer kurallar içerisinden gerekli kod satırları ile ulaşılabilir.
75 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Kod Yapısı: “Private” değişken tanımlama

Bir altyordamın(Sub Deyimi) veya fonksiyonun içerisinde tanımlanan bir değişken sadece o yapı
içerisinde geçerlidir.

Tüm Kural içerisinde geçerli olacak bir değişken oluşturabilmek için değişkeni Class yapısı
içerisinde fakat altyordam veya fonksiyonların dışında tanımlamalıyız.

Eğer Class ThisRule yapısını


Class ThisRule
kullanmayacaksanız tanımlamak istediğiniz Private degisken1 As String
ortak değişkenleri Sub Main() … End Sub
Sub Main()
yapısından hemen sonra tanımlayabilirsiniz, degisken1="Merhaba Dünya"
bu değişkenler tüm fonksiyon ve Gosterge()
End Sub
altyordamlar tarafından okunabilir ve
değiştirilebilir durumda olacaktır. Private degisken2 As String = "Bilgi"

Eğer Class ThisRule yapısını Sub Gosterge()


MessageBox.Show(degisken1,degisken2)
kullanacaksanız ortak değişkenleri Class End Sub
ThisRule … End Class yapısı içerisindeki
End Class
herhangi bir yerde tanımlayabilirsiniz.
(Altyordamların ve fonksiyonların dışında
olmak kaydı ile).

iLogic Kuralı Düzenleme Penceresinin 1 numaralı bölmesinde


iLogic kuralı içerisinde kullanabileceğimiz kod parçacıkları bulunur.

Kod parçacıkları bölmesinde iki adet sekme yer alır, bu sekmelerin


görevleri aşağıdaki gibidir.

System Sekmesi: Autodesk Inventor’un birçok özelliğini iLogic vasıtası


ile kontrol etmenizi sağlayan yüzlerce kod parçacığını içerir, buradaki
kod parçacıkları kurulum ile birlikte standart olarak gelmektedir.

Custom Sekmesi: Kullanıcı tarafından tanımlanan kod parçacıkları bu


sekmeye kaydedilir, Custom Sekmesinde “My Snippets” isimli bir
klasör içerisinde önceden tanımlanmış birkaç kullanıcı tanımlı kod
parçacığı da bulunmaktadır.

Bazı kod parçacıkları her iki listedede bulunmayabilir, iLogic içerisinde


VB.NET programlama dilinin kod satırlarını kullanabilir ve sık
kullandığınız kod satırlarını Custom sekmesi altına kaydedebilirsiniz.

76 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic içerisinde sık kullandığınız kod satırlarını farklı kurallarda tekrar tekrar yazmamak için
kendinize özel bir kod parçacığı kütüphanesi oluşturabilirsiniz.

İstediğiniz kod satırlarını aşağıdaki adımları uygulayarak iLogic kuralı düzenleme penceresinin 1
numaralı bölmesinde yer alan Custom sekmesinin altına kaydedebilirsiniz.

iLogic kuralı düzenleme penceresi üzerindeyken:


Kaydetmek istediğimiz kod satırlarını depolamak için Custom
sekmesinin altında yeni bir kategori oluşturalım.

1 numaralı bölmedeki “Custom” sekmesini açın.

Kod parçacıklarının listelendiği bölmeye sağ tıklayın ve açılan


penceredeki “Insert Category” komutunu çalıştırın.

Açılan yeni kategoriyi istediğiniz şekilde isimlendirin ve


klavyenizden “Enter” butonuna basarak onaylayın.

Kod editörünün 3 numaralı bölmesindeki kaydetmek istediğiniz


kod satırlarını seçin.

Seçtiğiniz kod satırları üzerine fare


imlecini getirin ve sağ tıklayın.

Açılan menüden “Capture Snippet”


Komutunu çalıştırın

Açılan diyalog penceresinde yandaki


resimde gösterilen adımları izleyerek
işlemi tamamlayın.

77 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Kuralının kod yapısı VB.NET programlama dilinin kodlama yapısı ile oldukça benzerlik
göstermektedir, iLogic kod yapısını VB.NET programlama dilinin sadeleştirilmiş hali olarak
düşünebilirsiniz.

Eğer daha önceden VB.NET programlama dilini kullandıysanız sıfırdan iLogic öğrenmenize gerek
yoktur, iLogic kod editöründe küçük bir ayar değişikliği yaparak VB.NET kodlarını doğrudan iLogic
kuralı içerisinde kullanabilirsiniz.

VB.NET programlama dilinde yazılmış program kodlarını doğrudan iLogic kuralında kullanmak için
yapmanız gereken ayar değişikliği aşağıda anlatılmıştır.

Düzenlemek istediğiniz iLogic kuralını


üzerine çift tıklayarak açın.

iLogic kuralı düzenleme penceresinin 2


numaralı bölmesindeki “Options” sekmesini
açın.

“Straight VB Code” kutucuğunu


işaretleyin. Kutucuğu işaretlediğinizde bir
onay penceresi açılacaktır.

Onay penceresindeki “Yes” butonuna tıklayın.

Ayarlarda yaptığınız bu değişiklik sadece düzenlemek için açtığınız kural için geçerlidir.

78 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

iLogic Modülünün sağladığı tüm olanaklara rağmen program tam olarak ihtiyacınızı
karşılamıyorsa veya inventor ile çalışan harici .exe uygulamaları yazmak istiyorsanız aşağıdaki
adımları uyguladıktan sonra Microsoft Visual Studio kullanarak Autodesk Inventor üzerinde çalışan
uygulamalarınızı yazmaya başlayabilirsiniz.

(Bu Uygulamada Microsoft Visual Studio Community 2015 Kullanılmıştır.)

1 Microsoft Visual Studio Yazılımınızı Çalıştırın

2 Ana menüyü kullanarak yeni bir proje dosyası oluşturun

3 Yeni proje oluşturma diyalog penceresini kullanarak


aşağıdaki resimde de gösterildiği gibi “Visual Basic >
Windows > Windows Forms Application” şablonunu
seçin.

4 Proje şablonu açıldıktan sonra uygulama menüsüne


giderek yandaki resimde gösterildiği gibi “Project”
sekmesi altındaki “Add Reference” komutunu
çalıştırın.

5 Açılan diyalog penceresini kullanarak


"C:\Program Files\Autodesk\Inventor
2016\Bin\Public
Assemblies\Autodesk.Inventor.Interop.dll"
dosyasını seçin ve diyalog penceresindeki “OK”
butonuna tıklayarak işlemleri tamamlayın.

79 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Yukarıda anlatılan işlemleri tamamladıktan sonra Microsoft Visual Studio yazılımını kullanarak
Autodesk Inventor üzerinde çalışan programları yazabilirsiniz.

Ayrıntılı bilgi için Autodesk’in hazırladığı “My First Inventor Plugin” sayfasına buraya tıklayarak
ulaşabilirsiniz.

Bu belge ile iLogic modülü ile ilgili giriş seviyesindeki temel bilgiler anlatılmaya çalışılmıştır.
iLogic modülü ile yapabileceklerinizin sınırı bilgi birikiminiz ve hayal gücünüz ile sınırlıdır. Autodesk
Inventor API si son kullanıcıların kullanımına açık olduğı için iLogic ve VB.NET kullanarak çok ileri
düzey yazılımlar yazabilirsiniz.

Aşağıda incelemeniz için iLogic ile programlanmış dosyaların konumları verilmiştir.

\Bolum1\tekerlek.iam

\Bolum2\uygulama_4\bilgisayar_masasi.iam

80 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

\Bolum2\yontem_1\Montaj_3

\Bolum2\kaplin\kaplin.iam

\Multivalue_test.ipt

\while.ipt

\Class.ipt

81 www.ertugrulates.net
Autodesk Inventor iLogic Uygulamaları

Autodes Inventor 2014-2015-2016 online yardım dosyaları.

Autodesk Inventor 2014 Online Yardım: http://help.autodesk.com/view/INVNTOR/2014/ENU/

Autodesk Inventor 2015 Online Yardım: http://help.autodesk.com/view/INVNTOR/2015/ENU/

Autodesk Inventor 2016 Online Yardım: http://help.autodesk.com/view/INVNTOR/2016/ENU/

Mod The Machine Blog Sayfası (http://modthemachine.typepad.com/)

Microsoft Geliştirici Forumları (https://msdn.microsoft.com/tr-tr/)

Autodesk Inventor Professional 2015 (30 Günlük Deneme Sürümü)

Autodesk Inventor Professional 2016 (30 Günlük Deneme Sürümü)

“ http://www.autodesk.com/products/inventor/free-trial “

Autodesk Showcase 2016 (30 günlük Deneme Sürümü)

“ http://www.autodesk.com/products/showcase/free-trial “

Microsoft Office 365 (Aylık Plan - Kiralama)

“ http://www.microsoftstore.com/store/msmea/tr_TR/pdp/Office-365-Bireysel/productID.298296900 “

Microsoft Visual Studio Community 2015 (Kurumsal olmayan kullanım için ücretsiz.)

“https://www.visualstudio.com/products/visual-studio-community-vs “

Adobe Acrobat Pro DC (Aylık Plan - Kiralama)

“ https://acrobat.adobe.com/us/en/pricing/pricing.html?promoid=KSCVC “

Greenshot (GNU – Genel Kamu Lisansı)

“ http://getgreenshot.org/downloads/ “

Gimp (GNU – Genel Kamu Lisansı)

“ http://www.gimp.org/ “

Inkscape (GNU – Genel Kamu Lisansı)

“ https://inkscape.org/en/ “

MeeSoft – Diagram Designer ( Freeware ) - “ http://meesoft.logicnet.dk/ “

82 www.ertugrulates.net

You might also like