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

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


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

16.02.2023 в 09:20, Srgwell сказал:

А это что такое?

изображение.png

Удалось решить эту проблему?

У меня такое же сообщение, не изменяется плотность и масса детали, хотя материал пишет правильно.

Как вылечить эту историю??

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


2 минуты назад, OlgaKubrik сказал:

Удалось решить эту проблему?

У меня такое же сообщение, не изменяется плотность и масса детали, хотя материал пишет правильно.

Как вылечить эту историю??

Нужно запустить из панели "Исследовать" функцию "Массовые характеристики", в ней войти в раздел "Переопределить..." там снять все галочки или нажать кнопку сбросить все.

image.png

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

Нужно запустить из панели "Исследовать" функцию "Массовые характеристики", в ней войти в раздел "Переопределить..." там снять все галочки или нажать кнопку сбросить все.

Самое плохое, что эти галочки портят не только ту модель, где поставлены эти галочки, но и все сборки куда эта деталь будет вставлена в последствии.

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

Самое плохое, что эти галочки портят не только ту модель, где поставлены эти галочки, но и все сборки куда эта деталь будет вставлена в последствии.

Иногда нужно переопределять, к примеру если узел взвешен, но в целом согласен это также опасно как переопределение размеров на чертеже.

Наверное было бы не плохо иметь макрос который выявляет такие детали и сборки. 

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

Иногда нужно переопределять, к примеру если узел взвешен, но в целом согласен это также опасно как переопределение размеров на чертеже.

Если узел взвешен, то подгоните плотность, это будет лучше соответствовать взвешенному узлу. Заодно проверьте все входящие детали: правильно ли задан материал или плотность, нет ли ошибок в деталях при изготовлении.

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

Если узел взвешен, то подгоните плотность, это будет лучше соответствовать взвешенному узлу. Заодно проверьте все входящие детали: правильно ли задан материал или плотность, нет ли ошибок в деталях при изготовлении.

Иногда в этом нет необходимости, особенно когда это касается покупной детали, масса которой известна, а нарисована она схематически или упрощенно. Допустим если конструктор захочет дорисовать что-то более подробно, то масса такой детали измениться, а это будет не соответствовать действительности и не всегда уследишь за плотностью такой детали, поэтому мое ИМХО изменение массы вручную иногда полезно и имеет место быть.

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

Нужно запустить из панели "Исследовать" функцию "Массовые характеристики", в ней войти в раздел "Переопределить..." там снять все галочки или нажать кнопку сбросить все.

image.png

Спасибо огромное!

Помогло!

Нюансы, о которых в комментариях ниже, пока не понятны, не очевидны, я ни разу пока не пользовалась этими инструментами, но все равно спасибо всем за отклик

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

Если узел взвешен, то подгоните плотность, это будет лучше соответствовать взвешенному узлу. Заодно проверьте все входящие детали: правильно ли задан материал или плотность, нет ли ошибок в деталях при изготовлении.

К примеру печатная плата с кучей покупных элементов информации о весе которых нет. Подгонять плотность под каждую плату плохое решение.

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

К примеру печатная плата с кучей покупных элементов информации о весе которых нет. Подгонять плотность под каждую плату плохое решение.

Нет в этом необходимости, можно задать плате плотность побольше и скомпенсировать вес элементов, а попасть в массу с точностью +-10% нормальный допуск для массы.

 

12 часов назад, Snake 60 сказал:

Допустим если конструктор захочет дорисовать что-то более подробно, то масса такой детали измениться, а это будет не соответствовать действительности

Нужно очень сильно изменить деталь, что бы изменения массы стали существенными.

 

12 часов назад, Snake 60 сказал:

ИМХО изменение массы вручную иногда полезно и имеет место быть.

Возможно в других программах это так, но в данной конкретной программе это может плохо сказаться на последующих сборках. Так что в данном случае ручной ввод может испортить расчёты всех последующих сборок, особенно когда эти данные важны (центр тяжести, моменты инерции и т.п.) или даже выносятся на чертежи, а найти такой файл будет проблемой, т.к. он не посвечивается.

 

Так что всё таки лучше воспользоваться подбором плотности для получения нужной массы, что бы расчёты в последующих сборках были корректны.

А то подмена массы это как на базаре вместо поверенных гирь использовать деревянные или высверленные для взвешивания товара. Или как уже приводили пример выше с размерами, когда реальный размер заменяется иным, что часто приводило к ошибкам - после изменения детали размер не менялся на новое изменённое значение.

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

Нужно очень сильно изменить деталь, что бы изменения массы стали существенными.

Например частичная модернизация оборудования, на которое нет полной документации (читай модели Солидворкс), а само оборудование обрисовывается , большей частью, контурами ....

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

Нет в этом необходимости, можно задать плате плотность побольше и скомпенсировать вес элементов, а попасть в массу с точностью +-10% нормальный допуск для массы.

Для плат с 10 или 1000 элементами, двух слойных или 8 слойных, цифровой или силовой электроники попасть +-10% с одной плотностью очень большая удача.

Компенсировать все возможные вариации созданием нового материала под конкретные платы очень сложный подход.

 

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

Для плат с 10 или 1000 элементами, двух слойных или 8 слойных, цифровой или силовой электроники попасть +-10% с одной плотностью очень большая удача.

Обычно высокая точность для плат не требуется. Может быть именно вам требуется большая точность.

Если подходить к вопросу более научно, то надо бы выбрать наимболее часто используемые элементы и вычислить среднюю массу, а так вычислить коэффициент заполняемости платы элементами, в этом случае добавка к плотности текстолита будет более точной и обдуманной.

 

Но часто требуется масса не плат, а всего изделия в целом и иногда центр тяжести - усреднённые массы в этом случае обычно дают примемлемый результа, а основная масса обычно от металлических деталей (мелкими элементами на плате часто можно пренебречь).

 

1 час назад, Nikollay сказал:

Компенсировать все возможные вариации созданием нового материала под конкретные платы очень сложный подход.

Наоборот подход проще, не под каждую плату, а подо все платы и не важно сколько там компонентов, но весь объём будет расчитан по плотности немного больше чем имеет плотность стеклотекстолита (ну или объём элементов по плотности стеклотестолита - как вам больше нравится). А вот особенно тяжёлые элементы можно всё таки выделять в отдельные детали и подгонять плотность для получения нужной массы, например, большие элменты, транформаторы и т.п.

Ошибка при таком подходе возможна, но и точность массы для плат не очень часто требуется в электронных устройствах. Платы не самые тяжёлые элементы в блоках.

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

Обычно высокая точность для плат не требуется. Может быть именно вам требуется большая точность.

Если подходить к вопросу более научно, то надо бы выбрать наимболее часто используемые элементы и вычислить среднюю массу, а так вычислить коэффициент заполняемости платы элементами, в этом случае добавка к плотности текстолита будет более точной и обдуманной.

 

Но часто требуется масса не плат, а всего изделия в целом и иногда центр тяжести - усреднённые массы в этом случае обычно дают примемлемый результа, а основная масса обычно от металлических деталей (мелкими элементами на плате часто можно пренебречь).

 

Наоборот подход проще, не под каждую плату, а подо все платы и не важно сколько там компонентов, но весь объём будет расчитан по плотности немного больше чем имеет плотность стеклотекстолита (ну или объём элементов по плотности стеклотестолита - как вам больше нравится). А вот особенно тяжёлые элементы можно всё таки выделять в отдельные детали и подгонять плотность для получения нужной массы, например, большие элменты, транформаторы и т.п.

Ошибка при таком подходе возможна, но и точность массы для плат не очень часто требуется в электронных устройствах. Платы не самые тяжёлые элементы в блоках.

У нас в приборостроении это не так, при модернизации плат без контроля массы или с контролем по условной плотности масса изделия значительно уходит от значений указанных по ТУ. Особенно явно это проявляется если имеется 100+ исполнений. Центр тяжести нас не волнует совсем.

 

Трудозатраты по предложенному вами методу не окупятся никогда.

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

Нужно очень сильно изменить деталь, что бы изменения массы стали существенными.

Не согласен, коллега. :) Допустим есть покупная сборочная единица, которая состоит из кучи деталей из разных материалов (ЭД, насосы и т.п.), но и в которой есть пустоты (корпус + начинка), а мы его рисуем сплошным твердым телом. У многих материал по умолчанию в шаблоне стоит сталь, и как следствие масса модели и реального изделия могут отличаться раза в 2, а то и более (из личного опыта), поэтому проще прибегнуть к изменению массы на паспортную и не парится отслеживая плотность при изменении модели. Прошу прощения, что повторяюсь, опять же скажу, что это мое личное мнение, никому не навязываю, просто делюсь для комьюнити )

7 часов назад, Kelny сказал:

а найти такой файл будет проблемой, т.к. он не посвечивается.

Таки SolidWorks API нам в помощь, Вы же не последний человек в этой теме ;)

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

А может кто-то отредактировать макрос сохранения чертежа в PNG?

Нужно чтобы второй и последующие листы при сохранении их в PNG имели имена отличные от имени первого листа. Иначе они заменяют друг друга.

Макрос нашел в интернете.Slddrw to PNG.swp

 

Sub main()

Dim swApp                     As SldWorks.SldWorks

Dim swModel                   As SldWorks.ModelDoc2

Dim swSheet                   As SldWorks.Sheet

Dim vSheetNameArr, vSheetName As Variant

Dim bRet                      As Boolean

Dim lErrors                   As Long

Dim lWarnings                 As Long

Dim fileName                  As String

Dim strOriginallyActiveSheet  As String

Set swApp = Application.SldWorks

Set swModel = swApp.ActiveDoc

' Is document active?

If swModel Is Nothing Then

    swApp.SendMsgToUser2 "A Drawing document must be active.", swMbWarning, swMbOk

    Exit Sub

End If

' Is it a Drawing document?

If swModel.GetType <> swDocDRAWING Then

    swApp.SendMsgToUser2 "A Drawing document must be active.", swMbWarning, swMbOk

    Exit Sub

End If

If swModel.GetTitle = "" Then

    swApp.SendMsgToUser2 "Save the Drawing first", swMbWarning, swMbOk

    Exit Sub

End If

fileName = Mid(swModel.GetPathName, InStrRev(swModel.GetPathName, "\") + 1)

fileName = Left(fileName, InStrRev(fileName, ".") - 1)

'Change/Set DPI Settings and Paper Size here

swApp.SetUserPreferenceIntegerValue swUserPreferenceIntegerValue_e.swTiffPrintDPI, 300

swApp.SetUserPreferenceIntegerValue swUserPreferenceIntegerValue_e.swTiffPrintPaperSize, swDwgPaperSizes_e.swDwgPaperA4size

Set swSheet = swModel.GetCurrentSheet

strOriginallyActiveSheet = swSheet.GetName

vSheetNameArr = swModel.GetSheetNames

For Each vSheetName In vSheetNameArr

bRet = swModel.ActivateSheet(vSheetName): Debug.Assert bRet

swModel.ViewZoomtofit2

swModel.Extension.SaveAs fileName + ".PNG", swSaveAsCurrentVersion, swSaveAsOptions_Silent, Nothing, lErrors, lWarnings

Next vSheetName

swModel.ActivateSheet (strOriginallyActiveSheet)

End Sub

 

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

@nahaus Мой вариант:

Option Explicit

Dim swApp                     As SldWorks.SldWorks
Dim swModel                   As SldWorks.ModelDoc2
Dim swSheet                   As SldWorks.Sheet
Dim vSheetNameArr, vSheetName As Variant

Dim bRet                      As Boolean
Dim lErrors                   As Long
Dim lWarnings                 As Long
Dim fileName                  As String

Dim strOriginallyActiveSheet  As String

Sub main()

Set swApp = Application.SldWorks
Set swModel = swApp.ActiveDoc

' Проверяем открыто ли что-либо?
If swModel Is Nothing Then
    swApp.SendMsgToUser2 "Нет ни одного открытого докумета! Пожалуйста, откройте ЧЕРТЕЖ!", swMbWarning, swMbOk
    Exit Sub
End If

' Проверяем открыт ли ЧЕРТЕЖ?

If swModel.GetType <> swDocDRAWING Then
    swApp.SendMsgToUser2 "Макрос работает только с чертежами! Пожалуйста, откройте ЧЕРТЕЖ!", swMbWarning, swMbOk
    Exit Sub
End If

' Проверяем сохранен ли чертеж?
If swModel.GetTitle = "" Then
    swApp.SendMsgToUser2 "Пожалуйста, сперва сохраните ЧЕРТЕЖ!", swMbWarning, swMbOk
    Exit Sub
End If

fileName = Mid(swModel.GetPathName, InStrRev(swModel.GetPathName, "\") + 1)

fileName = Left(fileName, InStrRev(fileName, ".") - 1)

' Здесь изменяем/устанавливаем настройки разрешения картинки (DPI) и размер листа

swApp.SetUserPreferenceIntegerValue swUserPreferenceIntegerValue_e.swTiffPrintDPI, 300
swApp.SetUserPreferenceIntegerValue swUserPreferenceIntegerValue_e.swTiffPrintPaperSize, swDwgPaperSizes_e.swDwgPaperA4size

Set swSheet = swModel.GetCurrentSheet

strOriginallyActiveSheet = swSheet.GetName

vSheetNameArr = swModel.GetSheetNames

For Each vSheetName In vSheetNameArr

    bRet = swModel.ActivateSheet(vSheetName): Debug.Assert bRet
    swModel.ViewZoomtofit2
    swModel.Extension.SaveAs fileName + " - " + vSheetName + ".PNG", swSaveAsCurrentVersion, swSaveAsOptions_Silent, Nothing, lErrors, lWarnings

Next vSheetName

swModel.ActivateSheet (strOriginallyActiveSheet)

End Sub

 

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

Столкнулся с одной проблемкой, может кто и подскажет...
Стоят две версии SW (21 и 23). Макрос не хочет запускаться в 21. Трассировкой выяснил, что не работает основная функция "Set Part = swApp.ActiveDoc" ничего в переменную не передает. В 23 версии все работает.  нужные библиотеки подключены из SW21

 

Part Nothing.jpg

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

@Rich Попробуйте заменить CreateObject("SldWorks.Application") на  Application.SldWorks

Так же замените Dim swApp As Object на Dim swApp As SldWorks.SldWorks

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

Спасибо, дружище, заработало. До момента установки 23 версии как второй и не знал о таком трабле, все старые вещи работали как часы, ну изредка менял библиотеку.

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

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

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

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

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

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

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

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

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

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

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



  • Сообщения

    • Aurifer
      Редактировал отдельно подсборку открывая через Windows. Потом открываю главную сборку, выходит сообщение "модели изменились, перестроить?", соглашаюсь, ошибка.  Редактировал прямо из основной сборки, кнопкой "редактировать сборку" в дереве построений. Эффект тот же.  Из ограничений, каркас на котором крепятся валы, выбираю ПКМ - "зафиксированный". Чтобы остальные детали (подсборки) двигались относительно валов. И в то же время в "свойства компонента" - "решить как" - ставлю "свободно". Чтобы валы можно было сдвигать/раздвигать между собой. Если решить как, ставлю "точно", то опять же ошибка перестроения.  P.s: Картинку мою видно? Как то криво у меня отображает. 
    • maxx2000
      редактировать можно по-разному, в контексте сборки, либо сделав подсборку активной и редактируется уже в контексте подсборки. А так всё что понятно что ты в сборке наложил ограничения, потом открыл подсборку и в ней наложил ограничения и у тебя естественно возник конфликт.
    • Aurifer
      Добрый день, подскажите что я делаю не так.  Имеется такая сборка: Расстояние между валами не фиксировал, чтобы потом сопряжения сделать по факту. Сборку сделал. Теперь задача сохранить деталь (подсборку) с зафиксированными валами. Но вот не задача.Редактирую подсборку прямо из сборки, делаю валы зафиксированными. Но при открытии файла вне сборки, валы фиксированны, но не в тех местах как в сборке, а в тех где они были до вставки в сборку.  Ладно, опять открываю эту подсборку, делаю в ней сопряжение "граничащее расстояние" . Расстояние оставляю, то которое программа автоматически подставила. Сохраняю. Основная сборка пытается перестроиться и выпадают ошибки, что нельзя решить данные сопряжения!  Пробовал измерить расстояние на ответной части и вбить вручную, ошибки перестроения.  Любые попытки зафиксировать эти валы или их кронштейны приводят к ошибкам перестроения. 
    • SAVASTEEV
      Всем привет, у фанука есть цикл G72 очень удобный цикл когда нужно отрезным резцом сделать какие-либо проточки контура, а как можно задать такую же обработку на сиеменсе? Стойка siemens 808d ? То есть создаю нужный контур, но какой вариант обработки нужно указать? Либо как правильно нужно задать контур, попробовал разные варианты у меня резец выходит либо в заготовку (по симуляции), либо идет как проходной резец (типа как по тому же циклу G71 фанучному)   Буду благодарен за помощь, так-как вручную прописывать и рассчитывать все контуры такое себе.... В 840 и в 828 стойки вроде можно выбрать вариант проточки продольная либо поперечная, но вот как сделать это в 808.... 
    • maxx2000
      установить сверхкомпактные противовесы из обеднённого урана  а если серьёзно, то рассмотреть верньерный механизм
    • gudstartup
      а вы на манометр при резке посмотреть не пробовали?
    • Guhl
      Ха, точно. Я почему-то был уверен, что это только для аналоговых шпинделей. Спасибо! Это согласование датчика
    • Tad
      Делал не раз и не два. Более десячти лет тому назад рекомендовал эту схему с соответствующей картинкой на одном техническом форуме для проверки насоса. Там она была уместна. А теперь хотел бы услышать от вас, в чем я неправ - если выдаете себя за специалиста - аргументы в студию, дабы не прослыть простым трепачем.  
    • Иван1987
    • Maik812
      автоматиче5ская рольставня сама все сделает ей хватает мощности
×
×
  • Создать...