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

Сборка. Массив деталей


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

День добрый.

Подскажите пож. как построить полки от пола до потолка если высота потолка неизвестна (ну или величина переменная) а расстояние между полками должно быть одинаковым.

В общем, речь идет о массиве, в котором "Шаг" должен расчитываться системой при изменении общей дистанции массива.

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


Или уравнения применяйте или API.

Надо задать какой-то (номинальный) р-р, а потом уравнение где и идет расчет.

По-моему так.

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

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

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

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

Дешево и сердито. У меня то же это была первая мысль.
Ссылка на сообщение
Поделиться на других сайтах

Массив по точкам это хорошо, но работает только при построении многотельной детали и, этот вариант не устраивает, поскольку нужна деталь "полка" в кол-ве N штук, а не одна деталь "полка" представляющая собой много одинаковых тел.

В сборке-же нам доступны только:

- круговой массив

- линейный массив

- управляемый элементом (т.е. на основе существующего массива).

... или я чего-то недопонял?

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

... и ещё:

При использовании формул - как определить название параметра "шаг"?

Пишу в формуле "D1@линейный массив 1" = "чему-то там" а оказывается этот параметр является кол-вом экземпляров массива...

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

... или я чего-то недопонял?

Массив по точкам это хорошо, но работает только при построении многотельной детали

Этот массив по точкам может быть, массив произвольных элементов по заранее заданным точкам в эскизе или массив отверстий созданный с помощью ОТВЕРСТИЕ ПОД КРЕПЕЖ, например, отверстия в боковой стенке шкафа для крепления полок.

Ну и конечно как вы правильно заметили:

- управляемый элементом (т.е. на основе существующего массива).

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

Пишу в формуле "D1@линейный массив 1" = "чему-то там" а оказывается этот параметр является кол-вом экземпляров массива...

"D1@линейный массив1" = int(360/"D2@линейный массив1")

Где 360 может иметь значение высоты стелажа.

В итоге количество полок будет зависеть от высоты стелажа и требуемого шага.

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

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

... или я чего-то недопонял?

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

Спасибо, разобрался:

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

вет живи - век учись...

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

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

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

Да, скорее всего этот вариант был бы проще если не одно "но":

я почему-то испытываю трудности при вводе формул: Если необходимо ввести в формулу значение какого либо размера, то тут всё понятно - шлёпнул по размеру в окне построения - получил в формуле егойное обозначение (типа "D1@Эскиз1"), а вот как ввести в формулу обозначение параметров элементов из окна свойств - непонятно. Видимо методом тыка можно догадаться что параметр "Интервал" в элементе "Линейный массив" обозначается как "D1@линейный массив1", а параметр "Количество экземпляров" как "D2@линейный массив1". Я так и думал - но вышел большой облом. Всё оказалось совсем не так.

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

... или я как обычно чего-то пропустил?

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

а параметр "Количество экземпляров"

Количество экземпляров - тоже является размером и присутствует в модели, как и интервал.

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

открою секрет запускаешь редактор формул добавить уравнение

дважды тыкаешь на нужный элемент в дереве( в раб области появляються размеры)

а далее комбинируешь клики по размерам в раб области( они будут автоматом вставляться в редакто формул) и нажатия клавиш + - = итд

лин массив имеет параметры индекс 1,последнего(всего) элементов,шаг

post-12021-1211878839_thumb.jpg

на картинке

D3@Местный линейный массив1=1425,57мм---расстояние между полками

D2@Sketch1@Part1.Part=10000мм---------------высота

D2@Местный линейный массив1=7--------------кол-во элементов

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

Можно в уравнении задать даже больше выбирать, на счёт вложенности максимальной вложенности не знаю, но что-то иной раз можно сделать.

Так можно задать, например, расстояние между полками в зависимости от других размеров или их сравнения:

При указании размеров модели можно также использовать функцию Visual Basic IIf. Эта функция возвращает одно из двух значений в зависимости от оценки выражения. Например, если указано уравнение "D1@Sketch1" = (IIf("D1@Sketch4">15, 20, 10)) + 8

С помощью функций VisualBaisic так же можно задать способ округления, по стандартному правилу или задать выбирать меньшее или большее целое число: <noindex>http://fsapr2000.ru/index.php?s=&show...st&p=155439</noindex>

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

как построить полки от пола до потолка если высота потолка неизвестна (ну или величина переменная) а расстояние между полками должно быть одинаковым.

В общем, речь идет о массиве, в котором "Шаг" должен расчитываться системой при изменении общей дистанции массива.

Как это можно сделать в ТФ

<noindex>http://fsapr2000.ru/index.php?showtopic=2...mp;#entry208130</noindex>

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Anat2015
      Надо пользоваться как Гуглом, так и Яндексом, иногда помогает одно, в другом случае - другое. Раньше пользовался только гуглом, после февраля 2022 стал замечать проблемы, особенно по китайским сайтам.
    • A_1
      Добрый день. Отправляю фрагмент из руководства по эксплуатации по циклу G76. Значение P (высота резьбы) для метрической резьбы можно найти умножив шаг резьбы на коэффициент 0.542. В цикле G76 она задаётся в дискретах станка (в микронах обычно). Это значение всегда примерное, так как на него влияет величина радиуса при вершине резца. Нельзя полагать, что задав рассчитанную высоту резьбы мы получим годную деталь, всегда требуется коррекция, в том числе из-за разной жёсткости системы СПИД. Но правильнее корректировать значение X в цикле G76, а уточненная высота резьбы зависит от этого значения.
    • Maik812
      По компасу есть, по SW 2014 и ниже есть, по step пишите рег выражение. По igs рег выражение и тд. По Creo тоже есть через регулярные. T-Flex нах.. нужен такой CAD :)   #- CMNM ((.*))\. $1 Выводит значение после #- CMNM , но абракотабра.. нужно ковыряться в регулярках чтоб переводил в юникод. http://wincmd.ru/plugring/PCREsearch.html PCREsearch   Еще Можно и http://wincmd.ru/plugring/WinScriptAdv.html скриптовый плагин Все то что выводит ехплорер выводит Shelldetals
    • Maik812
      Есть возможность просто строчку вывести, часто этого достаточно. TextLine.zip  
    • Maik812
      Все есть Плагин PCREsearch  из чего хочешь выведет данные любые,  не закрытый формат был бы. Но даже pdf , есть конверте и выводит .  
    • Rich
      Спасибо, дружище, заработало. До момента установки 23 версии как второй и не знал о таком трабле, все старые вещи работали как часы, ну изредка менял библиотеку.
    • RomanSV
      Здравствуйте всем. И сразу к делу. Есть Итальянский обрабатывающий центр Pama Speedram 2000. При включении станка есть необходимость выводить все оси (X, Y, Z, W, V, http://mir-cnc.ru/public/style_emoticons/default/cool.png на референтные точки и при этом с двумя осями (V линейное перемещение стола и B круговое вращение стола) возникает проблема. Не важно какую из этих двух осей выводить первой на референтные точки выходит ошибка 300512 что в документации описывается как "Ось %1 привод %2 определена параллельная связь". В описании ошибки говорится что: "Актуальное положение ротора и считанная с датчика информация о положении была сравнена при запуске и при этом была определена погрешность более чем в 45 градусов." были проведены следующие действия к попытке устранить ошибку: 1 Заменены управляющие платы приводов этих осей 2 Перезалит образ диска 3 Сброшены NCU и PLC и залиты пусконаладочные архивы Все эти действия ни к чему не привели. До этого в Hardware Config была изменена конфигурация (заменен модуль FLM DI8 M12 на FLM DIO 4/4 M12-2A) но это никак не относится к осям этот модуль отвечает за смазку шпинделя. Так же открывался кожух оси V (линейное перемещение стола) но никаких действий с энкодером не производилось (просто сфоткали название). Сейчас положение стола находится таким образом что энкодер находится прямо под ним и доступ к нему соответственно закрыт. Есть ли у кого ни будь опыт устранения похожей или аналогичной ошибки? Может кто ни будь подскажет в каком направлении нужно двигаться и что проверить? Буду благодарен за любой совет.   С уважением, Роман С.
    • Snake 60
      @Rich Попробуйте заменить CreateObject("SldWorks.Application") на  Application.SldWorks Так же замените Dim swApp As Object на Dim swApp As SldWorks.SldWorks
    • maxx2000
    • Rich
      Столкнулся с одной проблемкой, может кто и подскажет... Стоят две версии SW (21 и 23). Макрос не хочет запускаться в 21. Трассировкой выяснил, что не работает основная функция "Set Part = swApp.ActiveDoc" ничего в переменную не передает. В 23 версии все работает.  нужные библиотеки подключены из SW21  
×
×
  • Создать...