Rehber · CAD Otomasyonu

SolidWorks Otomasyonu

Makro, API ve Eklenti — Baştan Sona Rehber

Makro mu, API mi, add-in mi? Hangi işin hangi katmanla çözüleceğini, hangi dilin seçileceğini ve nereden başlanacağını tek sayfada topladım.

SolidWorks APIVBA MakroC# Add-inPythonToplu İşlem
Bu Yazıda

SolidWorks otomasyonu, tekrarlayan CAD işlerini SolidWorks API üzerinden yazılıma devretmektir. Üç katmanı vardır: kaydedilebilen ve tek dosyada duran VBA makrolar, SolidWorks'ün nesne modeline doğrudan eriştiğiniz API, ve SolidWorks'ün içine yüklenerek çalışan C#/.NET add-in'ler. Üçü de aynı API'yi kullanır; fark, kodun nerede durduğu ve nasıl dağıtıldığıdır.

01 / 06

SolidWorks otomasyonu nedir?

Bir parçanın ölçüsünü değiştirip teknik resmini güncellemek, yüzlerce dosyadan PDF çıkarmak, özel özellik alanlarını tek tek doldurmak — bunların hepsi elle yapılabilir. Otomasyon, aynı işi SolidWorks'e programla komut vererek yaptırmaktır. O komutu taşıyan şey SolidWorks API'sidir.

API, SolidWorks'ün içindeki her nesneye — uygulama, belge, feature, ölçü, konfigürasyon — kodla erişmenizi sağlayan katmandır. Makro da add-in de bu aynı katmanı kullanır; aralarındaki fark API'ye erişim biçimi değil, kodun nasıl saklandığı ve nasıl dağıtıldığıdır.

02 / 06

Makro mu, API mi, add-in mi? Karar tablosu

Üçü birbirinin alternatifi değil; işin ölçeğine göre seçilir.

VBA MakroC# / .NET Add-inPython (COM)
Nerede çalışırSolidWorks içinde, .swp dosyasıSolidWorks'e yüklenen DLLDışarıdan, ayrı süreç
KurulumDosyayı ver, çalıştırKayıt ve kurulum paketi gerekirPython + pywin32
ArayüzBasit formCommandManager, PropertyManager sekmesiYok ya da kendi arayüzünüz
Ne zamanTek kişilik, hızlı işEkip geneli, sürümlenen ürünToplu işlem, veri işleme, dış entegrasyon
BakımDosya çoğaldıkça zorlaşırSürüm kontrolü ve test mümkünBetik seviyesinde kolay

Pratik kural: iş bir kişinin masasında kalıyor ve haftada birkaç kez çalışıyorsa makro yeterlidir. Aynı iş ekibe yayılıyor, arayüz istiyor ve sürümlenmesi gerekiyorsa add-in'e geçme zamanı gelmiştir. SolidWorks'ün dışında veri işleyecekseniz — örneğin bir Excel listesinden yüzlerce varyant üretecekseniz — Python çoğu zaman en kısa yoldur.

03 / 06

SolidWorks makro nasıl yazılır? Öğrenme sırası

Sıra önemli: her adım bir öncekinin üstüne biniyor.

  1. Macro Recorder ile kaydedinYapmak istediğiniz işi elle yapın ve kaydedin. Üretilen kod dağınıktır, ama hangi arayüzlerin çağrıldığını gösterir — API'de arama yapmanın en hızlı yolu budur.
  2. Nesne modelini okuyunSldWorks → ModelDoc2 → belge türü → Feature / Configuration / Dimension zinciri. Ara basamağı atlayamazsınız; bu hiyerarşiyi içselleştirmek metot ezberlemekten önemlidir.
  3. Seçim tabanlı kodu atınKaydedilen makro nesnelere kullanıcının o anki seçimiyle ulaşır ve bu kırılgandır. Nesneye adıyla ya da kimliğiyle ulaşan koda geçin.
  4. Hata yönetimi ekleyinDosya kapalı, konfigürasyon yok, feature yeniden adlandırılmış — makro üretimde bunlarla karşılaşır. Hataları sessizce yutmayın, raporlayın.
  5. Butona ve kısayola bağlayınÇalıştırması zor bir makro kullanılmaz. Araç çubuğuna buton ekleyin veya klavye kısayolu atayın.
  6. Ekibe dağıtırken add-in'e geçirinAynı makro üç kişide üç farklı sürüm olmaya başladıysa artık bir üründür. C# add-in sürümlemeyi ve kurulumu çözer.
04 / 06

SolidWorks'te ne otomatikleştirilir?

  • Ölçü girdisinden komple montaj kurulması ve konfigürasyon üretimi
  • Teknik resim sayfalarının, görünüşlerin ve ölçülendirmenin otomatik oluşturulması
  • PDF, DWG, DXF ve büküm resimlerinin tek komutla, standart adlandırmayla paketlenmesi
  • Özel özellik (custom property) alanlarının parça listesiyle tutarlı doldurulması
  • Klasördeki yüzlerce dosyada toplu kaydetme, dönüştürme ve rapor üretimi
  • Tasarım kurallarının denetimi: eksik özellik, yanlış malzeme, standart dışı ölçü

En doğrudan kazanç, aynı işin defalarca modellenmesinin ortadan kalkmasıdır. İkinci ve çoğu zaman daha değerli kazanç standardizasyondur: çıktı adlandırması, klasör yapısı ve revizyon numaralandırması otomasyonun parçası olduğunda, üretime giden dosyalar kişiye göre değişmez.

05 / 06

Yapay zeka SolidWorks otomasyonunu nasıl değiştiriyor?

06 / 06

Makrodan ürüne: projeyi nasıl kurarsınız?

Sık Sorulanlar

SolidWorks makro nedir?

SolidWorks makro, SolidWorks içinde çalışan ve API üzerinden CAD işlerini otomatikleştiren bir VBA programıdır. Macro Recorder ile kaydedilebilir ya da elle yazılabilir; .swp uzantılı tek bir dosyada durur ve kurulum gerektirmeden çalışır.

SolidWorks API nedir?

SolidWorks API, SolidWorks'ün nesne modeline programla erişmenizi sağlayan COM tabanlı arayüz katmanıdır. SldWorks.Application kökünden başlayıp ModelDoc2, PartDoc, AssemblyDoc ve DrawingDoc üzerinden feature, ölçü ve konfigürasyonlara ulaşırsınız. Makro da add-in de bu aynı API'yi kullanır.

SolidWorks makro ile add-in arasındaki fark nedir?

İkisi de aynı API'yi kullanır; fark dağıtımdadır. Makro tek dosyadır, kurulum istemez ve tek kullanıcı için hızlıdır. Add-in ise SolidWorks'e yüklenen bir DLL'dir: kendi araç çubuğunu ve PropertyManager sekmesini kurabilir, sürümlenebilir ve ekip geneline kurulum paketiyle dağıtılır.

SolidWorks otomasyonu için hangi dili öğrenmeliyim?

Başlangıç için VBA, çünkü Macro Recorder doğrudan VBA üretir ve öğrendiğiniz nesne modeli her dile taşınır. Ekip için ürün geliştirecekseniz C# / .NET. SolidWorks dışında veri işleyecek ya da toplu iş yapacaksanız Python (pywin32) çoğu zaman en kısa yoldur.

SolidWorks makro nasıl çalıştırılır?

Tools → Macro → Run yolundan .swp dosyası seçilerek çalıştırılır. Sık kullanılan makrolar için Tools → Customize üzerinden araç çubuğuna buton eklenebilir veya klavye kısayolu atanabilir; böylece makro menüde aranmadan tek tıkla çalışır.

SolidWorks makrom neden çalışmıyor?

En sık üç sebep: makro kaydedilirken seçime dayalı kod üretilmiş olması ve nesnenin artık seçili olmaması, açık belge yokken ModelDoc2'ye erişilmesi, ve referans alınan feature'ın yeniden adlandırılmış olması. Üçünün de çözümü aynı: nesnelere seçimle değil adıyla ya da kimliğiyle ulaşmak.

Sahadaki Karşılığı