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

Как создать чертеж или схему програмно на C#


maxfederal

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

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

Суть ее вот в чем: нужно автоматизировать построение эпюр сгибающих моментов. Я уже на C#-пе сделал програмку по определению опорных точек для эпюр моментов и этих данных достаточно для того чтобы построить эпюры вручную, но это построение нужно автоматизировать.

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

Это возможно реализовать??

Пожалуйста ответте.

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


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

Суть ее вот в чем: нужно автоматизировать построение эпюр сгибающих моментов. Я уже на C#-пе сделал програмку по определению опорных точек для эпюр моментов и этих данных достаточно для того чтобы построить эпюры вручную, но это построение нужно автоматизировать.

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

Это возможно реализовать??

Пожалуйста ответте.

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

maxfederal

а зачем вообще программа? Экселька же есть.

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

p.s. странные программисты пошли)) вместо использования функционала системы, свои проги пишут. :smile:

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

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

Вы действительно полагаете, что SW одна параметрическая?..

Это система для моделирования твердотельных объемных деталей (ну и не только).

Для построения графиков применяйте что-то попроще.

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

Вы действительно полагаете, что SW одна параметрическая?..

Это система для моделирования твердотельных объемных деталей (ну и не только).

Для построения графиков применяйте что-то попроще.

Проще применить не могу, так как в теме проектта стоит слово SolidWorks. Ну и для себя конечно хочется узнать.

maxfederal

а зачем вообще программа? Экселька же есть.

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

p.s. странные программисты пошли)) вместо использования функционала системы, свои проги пишут. :smile:

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

За "шестерню" спасибо, буду искать.

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

Пример схемы в приложении

Очень даже возможно!

А поконкретней можно узнать?

post-32423-1334233652_thumb.jpg

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

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

:smile: курсовые штамповать))) врятли это для преподавателя программа, за зачет или экзамен.

Про эксельку зря так. Как раз на кафедре сопромата такая экселька и была, хранилась в строгой секретности и была доверена для открытия лишь избранным лаборантам, для платной сдачи зачетов студентами. Так шо... :smile: без солидворксов обходились

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

В Simulation вообще все эпюры считаются:). Любят у нас изобретать велосипед, даже в дипломных проектах

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

Скажите в Simulation можно определить прогиб переднего конца шпинделя относительно его оси в условно жестких опорах (последний график на схеме эпюр). Ответ на этот вопрос являэтся очень важным. Ответте кто с Simulation работает.

Всем спасибо за обсужденяе. Жду новых ответов.

:smile: курсовые штамповать))) врятли это для преподавателя программа, за зачет или экзамен.

Это цель дипломного проекта.

А эпюры - часть раздела при расчете на жесткость

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

:smile: курсовые штамповать))) врятли это для преподавателя программа, за зачет или экзамен.

Про эксельку зря так. Как раз на кафедре сопромата такая экселька и была, хранилась в строгой секретности и была доверена для открытия лишь избранным лаборантам, для платной сдачи зачетов студентами. Так шо... :smile: без солидворксов обходились

Я не чего против екселя не имею. Наоборот считаю очено практичной и полезной прогой, особенно если есть знания VBA.

И что та програмка эпюры строила??

а чего конкретно ждёте?

Сейчас эскизик накину.

Нужно вот что: когда момент равняетя 300 Нм, то эпюра выглядит так как в аттаче А), а при 200 Нм - Б).

Но и конечно возможно построение эпюры в "минус" в зависимости от типа схемы.

Я так понимаю точка равная 300 Нм имеет свои координаты в документе. Вот скорее всего нужно менять координаты этой точки. Я в правильной стороне?

Программа расчета имеет все координаты для построения, нужно связать программу на C# и SolidWorks

post-32423-1334235123.jpg

post-32423-1334235412_thumb.jpg

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

maxfederal

зачем вы выдумываете велосипед? )))

стройте модель!!! треугольника, а в чертеже давайте разрез. Размеры меняются в модели (с пом программы) - автоматом в чертеже. Виды фиксируете, либо точки вида фиксируете, чтобы он не "убегал" при значительном изменении.

О программе: в экселе возможен самый полный расчёт. Задаёте переменные в уравнениях. В таблице параметров делаете все расчеты и связи. В результате - при изменении глобальных переменных - меняется модель - меняется чертёж.

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

Изменение знака силы (перестроение модели, при условии изменения размера до точки в "-") ТОЖЕ решается с пом обычной работы в SW.

В каком месте тут программирование?

p.s. Блин, сделать такую модель - да и распространять бесплатно))) чтоб неповадно было. Знаю даже как защитить её))) данные писать в "party storage" - а без аддона оттуда ничего не считать)))

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

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

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

maxfederal

зачем вы выдумываете велосипед? )))

стройте модель!!! треугольника, а в чертеже давайте разрез. Размеры меняются в модели (с пом программы) - автоматом в чертеже. Виды фиксируете, либо точки вида фиксируете, чтобы он не "убегал" при значительном изменении.

О программе: в экселе возможен самый полный расчёт. Задаёте переменные в уравнениях. В таблице параметров делаете все расчеты и связи. В результате - при изменении глобальных переменных - меняется модель - меняется чертёж.

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

Изменение знака силы (перестроение модели, при условии изменения размера до точки в "-") ТОЖЕ решается с пом обычной работы в SW.

В каком месте тут программирование?

p.s. Блин, сделать такую модель - да и распространять бесплатно))) чтоб неповадно было. Знаю даже как защитить её))) данные писать в "party storage" - а без аддона оттуда ничего не считать)))

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

Я искренне верил что можно использовать чертеж без 3Д модели и изменять его части программно.

Разьве нельзя менять координату точки С (это точка равная 300 Нм). К примеру координаты точки Y1000 X250, координаты осевой линии Y700 X0 X500. Длятого чтобы поменять эпюру на 200 Нм, то можно записать так Y700 + 200.

post-32423-1334237583_thumb.jpg

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

Я так понимаю точка равная 300 Нм имеет свои координаты в документе. Вот скорее всего нужно менять координаты этой точки. Я в правильной стороне?

С чего Вы взяли, что точка равна 300 "Нм", на эпюре этого нет!

Или только у нас в политехе это считалось за неправильную эпюру и оценивалось перездачей?

У меня когда-то валялась прожка расчета консольных и двухопорных балок. И тут опять велосипед.

Вы все-равно свои значения (расчеты) будете переводить в SW через таблицу Exel.

Зачем использовать 3 программы там, где можно обойтись двумя? Или это закон программирования: не искать легких путей?

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

maxfederal

зачем вы выдумываете велосипед? )))

...

ИМХО maxfederal насколько я понял ничего, не выдумывает: он же ясно написал, что у него задание на диплом такое - программным способом менять координаты точек эпюр. Ему свое приложение нужно, а не способы использования Excel-а :bash:

Что, ему подраться с преподавателем? :sport_box:

О, Господи! И `Michael_Mira`туда-же :confused_1:

И откуда такое утверждение:

Вы все-равно свои значения (расчеты) будете переводить в SW через таблицу Exсel.

???

Это закон природы?

Я вот с успехом переводил любые свои значения прямиком из своего приложения в SW, где менялись нужные мне размеры. Без всякого там Exсel-а...

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

Неподходит. Тема проекта содержит слово SolidWorks.

Напиши это слово в любой программе, и оно будет там.

стройте модель!!! треугольника, а в чертеже давайте разрез.

А построить эскиз эпюры и показать его на чертеже в Солиде нельзя? Зачем модель и сечение, если достаточно линий?

Хотя Солид здесь абсолютно не нужен.

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

А построить эскиз эпюры и показать его на чертеже в Солиде нельзя? Зачем модель и сечение, если достаточно линий?

Согласен 100% Именно такой вариант устраивает!

Я вот с успехом переводил любые свои значения прямиком из своего приложения в SW, где менялись нужные мне размеры. Без всякого там Exсel-а...

Я вот тоже при создании 3Д моделей необходимые размеры передаю из Си шарп в солид напрямую.

С чего Вы взяли, что точка равна 300 "Нм", на эпюре этого нет!

Интересно...

Там же 300 над точкой. А почему перездача. У Вас как показывалось??

post-32423-1334241952_thumb.jpg

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

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

Я искренне верил что можно использовать чертеж без 3Д модели и изменять его части программно.

Разьве нельзя менять координату точки С (это точка равная 300 Нм). К примеру координаты точки Y1000 X250, координаты осевой линии Y700 X0 X500. Длятого чтобы поменять эпюру на 200 Нм, то можно записать так Y700 + 200.

Можно и без 3Д модели обойтись - менять размеры прямо в чертеже(программно).
Ссылка на сообщение
Поделиться на других сайтах

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Alexey8107
      Всем доброго дня. Имеется ивановский обрабатывающий центр ИС-800, в нем установлены: PSM-45HVi A06B-6120-H045 SPM-30HVi A06B-6121-H030#H550 Возникла авария 9030 Overcurrent in the converter input circuit. Если смотреть В-65285 в этом случае на PSM должна отображаться 1, а на SPM - 30. Так оно и есть на самом деле. Документ ссылается на пункт 3.1.1, в свою очередь этот пункт говорит о неисправности PSM и следует проверить Входящее питание. Скорее всего здесь имеется ввиду питание управления, оно 240 В и стабильно Рекомендуют проверить реактор. Сразу откидываем, т.к. дело до включения силового питания еще даже не доходит, МСС отключен. Да и реактор штатный, всю жизнь работал с этим реактором. Проверить IGBT. Проверить проверил как мог, на КЗ, но дело до силовухи еще не доходит, ее питания еще нет и физически включиться не может из за MCC(ну это естественно, блок в аварии). Принципиально все рекомендации. На LEADWELL была похожая ситуация, на торможении шпинделя на PSM помнится выпадала авария 1, а на шпинделе не помню уже что. Тоже думали на PSM, а судя по всему мозг вынимал рекуператор в SPM. Т.к. на шине 500 вольт на торможении шпинделя напряжение вылетало далеко за 500 вольт выше. Здесь тоже нечто подобное, SPM опрокидывает PSM в аварию. Вобщем при включении питания станка, запитывается только управление на PSM, а он в свою очередь раздает 24 вольта на все остальные блоки по CXA2A, если все нормально и ЧПУ включена, замыкается контакт МСС, разрешая подачу силового питания на PSM. Шаги загрузки на полностью исправном станке PSM    SPM   -          A   -         50   -         12(или 18)   -         -- После включения ЧПУ и подачи силового питания   0         0 У нас PSM    SPM   -          A   -         50   -         12(или 18)   1         30 Включение силовухи невозможно. Что было сделано: 1. Проверены все питания, 240 СХ1А, 24 СХА2А, силовое питание, везде порядок. 2. Проверены IGBT на PSM и SPM, явного замыкания нет. 3. Проверены обмотки серво двигателя шпинделя. На всех 0,4 ома(сопротивление щупов 0,2 + обмотки 0,2 ома). Сравнил с заведомо исправным таким же двигателем(он стоит в другом таком же станке и работает), все тоже самое, На массу КЗ нет. Да и силовухи тоже нет, так что это бессмысленно. 4. Откинул от PSM разъем СХА2А(тупо обесточил остальные блоки от 24 вольт), включил питание управления, PSM перестал опрокидываться в ошибку, на дисплее "-". Ждал долго, не опрокидывается. Силовое питание подавать не стал, ибо чревато для остальных блоков, а скидывать шинку постоянного тока честно говоря поленился. 5. С соседнего станка снял плату управления SPM и переставил в неисправный станок, по номерам они идентичные. Станок включился и даже подал силовое питание на PSM без всяких аварий. Гонял пару минут в холостую, все было нормально, но после опрокинулся с той же ошибкой 1 и 30 на PSM и SPM соответственно. 6. Взял плату управления SPM с неисправного станка и установил в исправный. Станок включился и сколько бы не гонял, и даже шпинделем крутил, не опрокидывается. Т.е. к обоим платам претензий ноль. После вернул все обратно. Исправный станок работает как ни в чем не бывало, неисправный сразу опрокидывается в аварию почти сразу после включения управляющего питания. На ЧПУ ошибка 9030 и какие то еще по осям, но они связаны с отсутствием питания на шине постоянного тока если не ошибаюсь, так что это нормально. Итого, силовуха явных признаков неисправности не имеет, и даже на какое то время с другой платой включает силовое питание(скорее всего это связано с разбросом параметров защит на разных платах). К самому PSM тоже вроде претензий не должно быть, хотя В-65285 указывает именно на него. В истории с LEADWELL точно помню, что тоже все указывало на PSM(в том числе 1 на дисплее), и даже сервисный инженер FANUC был уверен в неисправности именно PSM. По факту, неисправен был как раз SPM. К платам управления тоже никаких претензий, обе работают в исправном станке. Единственное логическое объяснение, неисправность силовухи SPM. НО!!! Шина постоянного тока даже не думает запитываться, так что и тут с опрокидыванием сразу после включения есть засада! Ну не тестирует же SPM и PSM силовую часть напряжением 24 вольта??? Ведь до включения силового питания в этом случае даже не доходит из-за аварии! Может у кого есть еще идеи или опыт устранения таких дефектов? Помнится у фанука была типовуха на платах А16В-2203-0623 с датчиками тока, они отгорали и привод отваливался в аварию по одной из фаз. Это были привода шпинделя и двух осей в одном корпусе, были такие у нас на токарных. Сервисники фанука тогда их тучами меняли... Хотя тут я думаю не наш случай
    • Kelny
      Даже при всём при этом оно не всегда корректно работало, так что даже в старых версиях было быстрее удалить размер и потом вставить заново, чем искать эти точки размеров, а потом пытаться их привязать к новому месту.   Возможно это всего лишь глюк новой версии, в последних версиях они похоже штатно закладываются.
    • maxx2000
      @davidovka я их сразу ссыпаю в TEMP,  в тех что живы нет отметок о создании current_session.pro. Интересно что сам current_session.pro создаётся, но не обновляется дата в отличии от даты модели. Может быть и вправду менял какие нить настройки и забывал сохранить
    • Ahito
    • maxx2000
      т.е. доверять разработчикам оснований нет. Ясно-понятно
    • clavr
      все так и было до 2024 версии. размеры не импортировались. теперь вот в 2024 так нельзя. может где-то в настройках поменять что нужно? все перерыл, пока не нашел
    • arsenev
      Первый свободный номер инструмента   int list $toolnumblist = extract(folder('TOOL'), 'Tool.Number.Value') int $newToolNumb = 1 while member( $toolnumblist, $newToolNumb) {     $newToolNumb = $newToolNumb + 1 } Message Info 'Первый свободный номер инструмента - ' + $newToolNumb     Инструменты с повторяющимися номерами   int list $toolnumbers = extract(folder('tool'),'Number.Value') int $i = remove_duplicates($toolnumbers) string $op = '' foreach $n in $toolnumbers {     string list $names = extract(filter(folder('tool'),'this.Number.Value == "' + $n + '"'),'Name')     if size($names) > 1 {         $op = $op + 'Инструменты с повторяющимся номером T ' + $n + CRLF         foreach $name in $names {             $op = $op + $name + CRLF         }         $op = $op + CRLF     } } message info $op     Удаление выбранного   Макрос, который проверяет тип объекта, а затем позволяет выбрать один и удалять выбранные части. Я связал это с ctrl+d.   string list $rootTypes = {'toolpath','featureset','pattern','boundary','model'} string list $selectedTypes = {} foreach $rt in $rootTypes {     if entity_exists(entity($rt,'')) {         entity $ent = entity($rt,'')         if number_selected($ent.RootType, $ent.Name) > 0 {             int $i = add_last($selectedTypes,$rt)         }     } } if size($selectedTypes) <= 0 {     return } int $index = -1 if size($selectedTypes) == 1 {     $index = 0 } else {     $index = input choice $selectedTypes 'Wich Type to remove?' } if $index != -1 {     String $cmd = 'DELETE ' + $selectedTypes[$index] + ' "' + entity($selectedTypes[$index],'').Name + '" SELECTED'         DoCommand $cmd }
    • PETR_1
      Можно переназначить правую и центральную (колесо) кнопки с помощью бесплатной программы X-Mouse Button Control (есть портабельная версия). Это переназначение будет работать только для компаса.
    • Kelny
      Может изменяемый вами размер импортирован из модели?  Обычно переносилось удержанием левой кнопки мыши, а если сделать двойной клик, то нужно потом выбрать новый объект уже без удержания кнопок мыши.
    • Kelny
      Отключить галочки режима большой сборки. Инструменты-Параметры...-Настройки пользователя-Сборки
×
×
  • Создать...