Перейти к публикации

Сделай свою работу в Solidworks эффективнее


Рекомендованные сообщения

Есть хорошая новость для поклонников макроса SameACircle. В SW 2018 он наконец то заработал. На более ранних версиях не пробовал, я с 2015 перескочил. Изредка бывают огрехи, когда отверстия берутся наискосок, но в основном работает без нареканий

Ссылка на сообщение
Поделиться на других сайтах


Здравия желаю!

 

Подскажите пожалуйста существует ли в природе таблетка от криво созданной сборки (назначение шифров, переименование, материалы и все что Mpro умеет но для всех деталей и подсборок).

Заранее спасибо!!!

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...

Добрый день, нашел в интеренет такой макрос которые делает dxf из всех конфигураций

 

Показать содержимое  
Option Explicit

Sub main()

    Dim swApp                   As SldWorks.SldWorks
    Dim swModel                 As SldWorks.ModelDoc2
    Dim vConfNameArr            As Variant
    Dim sConfigName             As String
    Dim nStart                  As Single
    Dim i                       As Long
    Dim bShowConfig             As Boolean
    Dim bRebuild                As Boolean
    Dim bRet                    As Boolean
  

    Set swApp = CreateObject("SldWorks.Application")
    Set swModel = swApp.ActiveDoc

    vConfNameArr = swModel.GetConfigurationNames

    For i = 0 To UBound(vConfNameArr)

        sConfigName = vConfNameArr(i)

       
bShowConfig = swModel.ShowConfiguration2(sConfigName)

bRebuild = swModel.ForceRebuild3(False)

Dim FilePath As String
Dim PathSize As Long
Dim PathNoExtension As String
Dim NewFilePath As String

FilePath = swModel.GetPathName
PathSize = Strings.Len(FilePath)
PathNoExtension = Strings.Left(FilePath, PathSize - 6)

NewFilePath = PathNoExtension + sConfigName & ".DXF"

'Export Flat Pattern
bRet = swModel.ExportFlatPatternView(NewFilePath, 1)

Next i

End Sub

 

Hide  

 

убрал цикл, получилось

 

Показать содержимое  
Option Explicit

Sub main()

    Dim swApp                   As SldWorks.SldWorks
    Dim swModel                 As SldWorks.ModelDoc2
    Dim vConfNameArr            As Variant
    Dim sConfigName             As String
    Dim nStart                  As Single
    Dim bShowConfig             As Boolean
    Dim bRebuild                As Boolean
    Dim bRet                    As Boolean
  

    Set swApp = CreateObject("SldWorks.Application")
    Set swModel = swApp.ActiveDoc

    vConfNameArr = swModel.GetConfigurationNames
        
    bShowConfig = swModel.ShowConfiguration2(sConfigName)

bRebuild = swModel.ForceRebuild3(False)

Dim FilePath As String
Dim PathSize As Long
Dim PathNoExtension As String
Dim NewFilePath As String

FilePath = swModel.GetPathName
PathSize = Strings.Len(FilePath)
PathNoExtension = Strings.Left(FilePath, PathSize - 6)

NewFilePath = PathNoExtension + vConfNameArr & ".DXF"

'Export Flat Pattern
bRet = swModel.ExportFlatPatternView(NewFilePath, 1)

End Sub

 

Hide  

 

но ругается на  NewFilePath = PathNoExtension + vConfNameArr & ".DXF" что не так?

 

Изменено пользователем Vasiliy85
Ссылка на сообщение
Поделиться на других сайтах
В 05.09.2018 в 13:12, alek77 сказал:

 Вроде с сортировкой дерева все закончено, можно ли добавить ссылку на макрос в шапку и как это сделать?

 

Я повторю на всякий случай описание:

TreeSorter

Макрос для сортировки дерева компонентов и перемещения компонентов в папки по разделам спецификации

ВНИМАНИЕ!!!
Макрос без возврата удаляет все имеющиеся папки, без удаления компонентов и создает новую структуру
папок с компонентами в соответствии с их разделом

 

 

Исправил кучу косяков, работать стал стабильнее, прошу протестировать кто может, но аккуратно, на копиях, а то, как бы чего лишнего не отсортировалось :)

 

TreeSorter.swp

TreeSorter.Bmp

Ссылка на сообщение
Поделиться на других сайтах
2 часа назад, alek77 сказал:

прошу протестировать

sw2016sp5 Макрос запускается но вылетают ошибки и ничего не происходит.

Показать содержимое  

11.JPG.371acd854e58f3bddbd23735b5b2ee15.JPG22.JPG.9d67192d39146138055d2a308370ef08.JPG44.JPG.2236f24a2e7d37961ab537686969414a.JPG33.JPG.b52bb8afa2867a671a100cc92943fda6.JPG







 

Hide  

 
Ссылка на сообщение
Поделиться на других сайтах
19 минут назад, malvi.dp сказал:

sw2016sp5 Макрос запускается но вылетают ошибки и ничего не происходит.

1. проверьте пожалуйста, все ли библиотеки у Вас подключены (Tools/Reference)

2. Вы запускаете не тот модуль, надо запускать TreeSorter1.main

1111.jpg

Изменено пользователем alek77
Ссылка на сообщение
Поделиться на других сайтах
5 часов назад, Vasiliy85 сказал:

но ругается на  NewFilePath = PathNoExtension + vConfNameArr & ".DXF" что не так?

Задан параметр проверки объявления перменных:

Цитата

Option Explicit

Ошибка вероятно по причине, что PathNoExtension  не объявлено. Или объявить:

Dim PathNoExtension  As String

или убрать параметр проверки объявления переменных.

Ссылка на сообщение
Поделиться на других сайтах

@Vasiliy85 , 

5 часов назад, Vasiliy85 сказал:

NewFilePath = PathNoExtension + vConfNameArr & ".DXF"

vConfNameArr - у Вас объявлен как массив. Вы пытаетесь использовать его в формировании строковой переменной NewFilePath !!!

 

В исходном коде было:

5 часов назад, Vasiliy85 сказал:

NewFilePath = PathNoExtension + sConfigName & ".DXF"

, где sConfigName - это строковая переменная имени конфигурации

 

Поэтому, либо в Вашем варианте нужно заменить строку:

NewFilePath = PathNoExtension + vConfNameArr(0) & ".DXF" '- экспортируется только первая конфигурация 

Либо вернуть цикл и экспортировать все конфигурации

 

P.S.

 

А зачем цикл убрали то ?

Ссылка на сообщение
Поделиться на других сайтах
1 час назад, alek77 сказал:

1. проверьте пожалуйста, все ли библиотеки у Вас подключены (Tools/Reference)

2. Вы запускаете не тот модуль, надо запускать TreeSorter1.main

1. Библиотеки подключены все.

Показать содержимое  

1.JPG.144828407b1f11d6ee892ce132a6371b.JPG
 

Hide  

2. Там только main. Другого там нет, чтоб запустить.

Показать содержимое  

2.JPG.573d0effa2d7f59dbb984e67c0b775b5.JPG

 

Hide  

 
Ссылка на сообщение
Поделиться на других сайтах
11 минуту назад, malvi.dp сказал:

1. Библиотеки подключены все.

Показать содержимое

1.JPG.144828407b1f11d6ee892ce132a6371b.JPG
 

Hide

2. Там только main. Другого там нет, чтоб запустить.

Показать содержимое

2.JPG.573d0effa2d7f59dbb984e67c0b775b5.JPG

 

Hide

 

Я не силен в отладке макроса на расстоянии, прошу отписаться у кого еще sw16sp5, работает макрос ID: 4387 или нет

Если можно, файлы какой-нибудь Вашей маленькой сборки в личку

Тестировали на 17 и на 15, работает без замечаний

Ссылка на сообщение
Поделиться на других сайтах
36 минут назад, MUXALblCH сказал:

А зачем цикл убрали то ?


Потому что после создание развертка добавляется конфигурация 01SM-FLAT-PATTERN и на конфигурацию тоже создается dxf т.е если в файле 2 конфигурации сначало 2 dxf а потом 4

Изменено пользователем Vasiliy85
Ссылка на сообщение
Поделиться на других сайтах

@malvi.dp попробуйте вместо версии 9000 вставить версию 10000 в строке

 

'Контроль версии SW
conntrolFormatVersion = 9000

 

я 9000 версию поставил только потому, что люди отписались по 16 солиду и сказали, что группировка компонентов в дереве там есть. Если это ошибочно, то может получаться эта ошибка.

Ссылка на сообщение
Поделиться на других сайтах
10 часов назад, alek77 сказал:

 

Исправил кучу косяков, работать стал стабильнее, прошу протестировать кто может, но аккуратно, на копиях, а то, как бы чего лишнего не отсортировалось :)

 

TreeSorter.swp

TreeSorter.Bmp

Блин, нашли серьезный баг, поправил, завтра перевыложу

 

Если перед повторным нажатием сортировки не закрывая формы выделить в дереве компонент, макрос его волшебным образом удаляет. Я сам до такого непланового использования макроса не додумался бы, спасибо всем, кто помогает тестировать

Ссылка на сообщение
Поделиться на других сайтах
22 часа назад, alek77 сказал:

 

Исправил кучу косяков, работать стал стабильнее, прошу протестировать кто может, но аккуратно, на копиях, а то, как бы чего лишнего не отсортировалось :)

 

 

 

TreeSorter.swp

TreeSorter.Bmp

Ссылка на сообщение
Поделиться на других сайтах

alek77

Всем привет.

Проверил у себя в SW2013 v5. С начало вообще не запустился, пришлось войти в

редактирование и снять миссинг 2017. И сразу заработал.

Работает гораздо быстрее предыдущей версии у меня на компе конечно же.

Спасибо.

Ссылка на сообщение
Поделиться на других сайтах

@alek77 , теперь работает sw2016sp5!

 

Изменено пользователем malvi.dp
Ссылка на сообщение
Поделиться на других сайтах
1 минуту назад, Crab сказал:

alek77

Всем привет.

Проверил у себя в SW2013 v5. С начало вообще не запустился, пришлось войти в

редактирование и снять миссинг 2017. И сразу заработал.

Работает гораздо быстрее предыдущей версии у меня на компе конечно же.

Спасибо.

Спасибо за отзыв! Так и запишем, что макрос  работает под SW13-SW17. По SW 16 кто подскажет как работает?

Ссылка на сообщение
Поделиться на других сайтах

Может кому будет полезным

Ссылки на темы буржуйского форума, достаточно легко находить нужную инфу

 

ALL-In One.xlsx

Deepak Gupta Search.xlsx

Ссылка на сообщение
Поделиться на других сайтах
  • 2 недели спустя...
В 11.10.2018 в 09:43, alek77 сказал:

У меня sw2016 сп5.  Если не менять 9000 на 1000, то возникает ошибка аналогичная как в сообщении 4388. Если поменять, то работает, но, если у изделия несколько конфигураций, то не зависимо от раздела оно запихивается в папку детали. в том числе и тулбоксовкие винты - шайбы

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




  • Сообщения

    • gudstartup
      так он так и позиционируется по m19 pmc выдает g70.6 а чпу отвечает f45.7 но ориентацию и смещение в 4077 он отрабатывает нормально шпиндель встает ровно и смена происходит хорошо. вопрос почему после ввода команды управления скоростью он все еще продолжает контролировать число импульсов между нуль метками хотя в принципе уже должен отменить позиционный контроль и просто считать обороты по 0 метке как он это делает без М19? это все понятно но почему оно продолжает проверять это после завершения ориентации мне непонятно
    • Александр1979
      SP9047 SSPA:47 ILLEGAL SIGNAL OF POSITION CODER "The relationship between the A/B phase and 1-rotation signal is incorrect (Pulse interval mismatch)." "Неправильное значение счетчика импульсов сигнала на энкодере ALPHAi. На фазах A и B энкодера за один оборот шпинделя насчитывается 4096 импульсов обратной связи. Программное обеспечение по управлению шпинделем проверяет количество импульсов на фазах A и B, соответствующее энкодеру, при каждой генерации сигнала одного оборота. Данный аварийный сигнал срабатывает, если регистрируется число импульсов, нарушающее заданный диапазон."
    • gudstartup
      после ввода 789 в edit mod надо перейти в режим ручное упр. нажать mod а потом помощь и откроется wzw.hlp  с возможностью выполнения команд управления atc. если не появляется содержимое wzw.hlp то возможно что у вас другой код хотя 789 'это стандарт для dmg в этом случае надо смотреть ваш plc раздел у меня пароль прописан в файле wzw_rett.mod
    • Anat2015
      SERVO TURRET AMP ALARM - переводить не пробовали, учитывая, что AMP - это и есть сервопривод? Что тут не ясного, язык не знаком?
    • Viktor2004
      я бы попробовал позиционировать шпиндель сигналом G70.6 Ответный сигнал, шпиндель сориентирован F45.7
    • gudstartup
      Здравствуйте уважаемые участники форума попрошу вас поделится мнениями. Имеется фрезерный шпиндель с позиционным кодером (зубчатое колесо и считывающая головка). Ошибку 9047 выдает после того отрабатывает M19 c последующим включением оборотов Sxxx M3 причем обороты могут быть любыми от 100-макс. Если задавать обороты без предварительной ориентации то 9047 не возникает и шпиндель нормально вращается на любой скорости при этом обороты не гуляют точность поддержания +-1 об\мин. Кабель заменен заменить сам датчик нет возможности. Мой вопрос в следующем почему шпиндель после M19 и включении управления скоростью Sxxx M3 остается в режиме позиционирования а не сразу переходит врежим управления скоростью и даже явная отмена ориентации кодом M20 ничего не меняет ведь режим позиционного управления должен быть отменен или он остается и отменяется не сразу после подачи команды M3 и кода скорости? Станок достаточно старый 2009 года плату управления шпинделем меняли на соседний ничего не изменилось. Это может быть логика PMC или скорее всего это датчик?   PMC-SB.001
    • Killerchik
      А мы-то думали, что пропорциональный гидравлический.....
    • Grig75
    • EnKlL
      Я написал полностью ошибку, серво привод
    • gudstartup
      https://www.aggsoft.com/cnc-dnc/maho-cnc-432-1000.htm
×
×
  • Создать...