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

Библиотека автоматизации в CREO на JSON - CREOSON (OpenSource)


Onizuka

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

Компания Simplified Logic, Inc. выступила с инициативой создания открытой библиотеки инструментов для автоматизации Creo с помощью языка запросов JSON. Те в Creo можно отправлять запрос в виде JSON данных и получать некий ответ. Таким образом можно запрограммировать какой-нибудь алгоритм обработки полученных данных или управлять Creo, отправляя ему команды через JSON. Теоретически можно использовать любой язык программирования для формирования запросов и обработки полученных ответов от Creo.

 

https://community.ptc.com/t5/Additional-Creo-Questions/CREOSON-v2-0-OpenSource-Automation-Official-Release/m-p/477858

 

http://www.creoson.com/

 

На оф. странице есть видео с небольшой демонстрацией.

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


2 часа назад, Onizuka сказал:

Те в Creo можно отправлять запрос в виде JSON данных и получать некий ответ.

Мне, как пользователю, нифига не понятно.

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

очень инетерсная идея!

вот бы еще ссылочку на документацию по параметрам самих json-запросов...

 

 

 

Ссылка на сообщение
Поделиться на других сайтах
В 25.09.2017 в 09:20, Onizuka сказал:

Те в Creo можно отправлять запрос в виде JSON данных и получать некий ответ.

 

В 25.09.2017 в 11:32, Ветерок сказал:

Мне, как пользователю, нифига не понятно.

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

Ссылка на сообщение
Поделиться на других сайтах
В 26.09.2017 в 03:47, vladimir_ сказал:

очень инетерсная идея!

вот бы еще ссылочку на документацию по параметрам самих json-запросов...

 

 

 

Необходимо скачать дистрибутив CreosonServer-2.0.0-win64.zip. Запустить установку. После установки в окне программы будет активна кнопка "Open Documentation".

 

img-2017-09-27-09-59-28.thumb.png.b7cfcdba9a112fa9fc88b8c5a1f8bf41.png

 

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

спасибо! 

я смотрел на github исходники проекта -- там есть только один creoson_source_doc.pdf

наверное это и есть та документация, которая "должан быть доступна после установки"

но там по поводу параметров ниче не сказано, в основном как среду настроить

Ссылка на сообщение
Поделиться на других сайтах
В 25.09.2017 в 13:32, Ветерок сказал:

Мне, как пользователю, нифига не понятно.

Записал небольшое видео. Используется демонстрационный пример подключения к Creo через web-страничку. Открытие модели. Поиск параметра модели по имени.

https://cloud.mail.ru/public/CD6d/kAqcGsaWd

 

ps: сразу выяснилось, что кириллицу не понимает (имена параметров, значения параметров). Надо разобраться как об этом сообщить разработчикам....

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

Поиск параметра модели по имени.

Опять не понял. Зачем для этого лезть в интернет, когда всё можно найти в самой модели штатными средствами? Зачем эти костыли здоровому? Чтобы собирать информацию для спецслужб?

В 25.09.2017 в 09:20, Onizuka сказал:

можно отправлять запрос в виде JSON данных и получать некий ответ

КОМУ отправлять запрос? КТО будет отвечать на этот запрос?

 

Программисты сами себе придумывают задачи и сами их решают через одно место.

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

@Ветерок  я как то был на конференции у Autodesk, там разработчики в одном из докладов презентовали какую-то новую фичу, и очень долго и подробно о ней рассказывали. Потом кто-то из инженеров пользователей спросил а зачем все таки нам это нужно? Разработчики сказали что не знают:smile:, их задача была показать какой есть функционал, а как вам его использовать придумайте сами. 

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

@Onizuka а обратного эффекта можно добиться? тоесть изменить параметр в Creo из стороннего приложения?

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

из стороннего приложения

Из потустороннего...

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

 

@Onizuka а обратного эффекта можно добиться? то есть изменить параметр в Creo из стороннего приложения?

Да, такая функция есть. Также можно скопировать, удалить параметр.

img-2017-09-27-15-54-31.thumb.png.17997d98de4fe431035417cc8c066a0f.png

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

Также можно скопировать, удалить параметр.

Это всё только для работы с параметрами?

Не забываем про ModelCheck.

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

Это всё только для работы с параметрами?

Не забываем про ModelCheck.

Не только. Это только малая часть функций.

 

По поводу ModelCheck... Вот один из вариантов применения библиотеки: прочитать из модели параметр ОБОЗНАЧЕНИЕ. Проверить по шаблону/алгоритму правильность заполнения. Например, отсутствие кириллицы, соответствие шаблону ДТ-XXX.XXX.XX. Если значение параметра ОБОЗНАЧЕНИЕ не соответствует заданным требованиям, то выводить сообщение и/или запретить Сдачу на хранение такой модели.

 

Не уверен что ModelCheсk имеет возможность так глубоко анализировать значение параметра. Кроме как проверить наличие параметра, не равен ли он пустой строке или равен конкретному значению - сложнее проверить ничего не получится.

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

@Onizuka

а можете поподробнее видео записать? Управлять параметрами сразу всех моделей в сборке можно?

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

Ссылка на сообщение
Поделиться на других сайтах
В 28.09.2017 в 16:44, Onizuka сказал:

Проверить по шаблону/алгоритму правильность заполнения. Например, отсутствие кириллицы, соответствие шаблону ДТ-XXX.XXX.XX. Если значение параметра ОБОЗНАЧЕНИЕ не соответствует заданным требованиям, то выводить сообщение и/или запретить Сдачу на хранение такой модели.

 

В типах и атрибутах Windchill есть возможность ограничения параметра по регулярному выражению.

Ссылка на сообщение
Поделиться на других сайтах
В 28.09.2017 в 21:06, Angels.Lexx сказал:

@Onizuka

а можете поподробнее видео записать? Управлять параметрами сразу всех моделей в сборке можно?

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

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

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

 

PS: ошибку с не понимаем кириллицы в параметрах разработчики исправили.

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

Нашел функцию для получения списка (иерархию) компонентов, которые входят в сборку

bom : get_paths

Пример запроса

{
  "sessionId": "~sessionId~",
  "command": "bom",
  "function": "get_paths",
  "data": {
    "file": "plate_assy.asm"
  }
}

Ответ от Creo

{
  "status": {
    "error": false
  },
  "data": {
    "file": "plate_assy.asm",
    "generic": "base_assy",
    "children": {
      "file": "plate_assy.asm",
      "seq_path": "root",
      "children": [
        {
          "file": "bracket.prt",
          "seq_path": "root.1"
        },
        {
          "file": "bracket-2.prt",
          "seq_path": "root.2"
        },
        {
          "file": "plate_sub.asm",
          "seq_path": "root.3",
          "children": [
            {
              "file": "bracket.prt",
              "seq_path": "root.3.1"
            },
            {
              "file": "nut.prt",
              "seq_path": "root.3.2"
            }
          ]
        },
        {
          "file": "no_solid.prt",
          "seq_path": "root.4"
        },
        {
          "file": "short<screw>.prt",
          "seq_path": "root.5"
        }
      ]
    }
  }
}

Ну а дальше, зная имена входящих моделей извлекать из них параметры с помощью функции

parameter : list

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

Нашел функцию для получения списка (иерархию) компонентов, которые входят в сборку

 

Ну а дальше, зная имена входящих моделей извлекать из них параметры с помощью функции

parameter : list

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

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

для экспериментаторов:

очень похоже, что перечень всех констант (названий функций) описан тут https://github.com/SimplifiedLogic/creoson/tree/master/creoson-json-const/src/com/simplifiedlogic/nitro/jshell/json/request

 

например, функция bom:get_paths объявлена в https://github.com/SimplifiedLogic/creoson/blob/master/creoson-json-const/src/com/simplifiedlogic/nitro/jshell/json/request/JLBomRequestParams.java

 

 

 

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • anykeyto
      Ага, спасибо... А в связке с G07.1 это как работает? Есть детали ,кольца, на которых надо делать по 4 паза. Сейчас программист написал прогу под шаровую фрезу. Там рабочие движеня происходят через одновременное смещение по оси Х и Z... фреза убивается буквально на третьем кольце, да и обработка получаестя фиговой.. На сколько я понимаю надо стремиться к тому, чтобы на 5ти осном станке фреза всегда была перпендикулярна касательной ли самой поверхности. Мне посоветовал как раз цилндрческую интерполяцию, когда ось С преобразуется в плоскость. В мануале к HNC описано эт криво, но в примерах программ как раз сначала включается CTOS и потом G07.1. но дальше как запрограммировать понимания пока нет...  P.S. хочу добавить, что на 5-снике раньше работал только как оператор по готовым программам  на Хенденхайне. А сейчас на новом предприятии на новой для меня стойке нужно все делать с нуля и самостоятельно. С одной стороны интересно, с другой стороны спросить не у кого, в инете инфы по стойке нет от слова совсем, уж тем более видео....  чем это отличается от просто G0 C180? Или это уже будет шпиндель позиционироваться, а не стол?
    • AlexKaz
      Различают жёсткие и гибкие ротора. В данном случае вал жёсткий. Для него соответствуюшая формула. 4000 об/мин = 66.67 Гц, это ни о чём, эффекты для такой частоты почти не скажутся на жёстком роторе. Но проблема в том, что в лопаточных машинах (а насос на скрине наверное лопаточная?) собственные кратны числу лопаток. Я не разбирался в вопросе чтобы что-то здесь советовать. Лучше не спешить и внимательно почитать про модальный в лопаточных. Заодно проверить, а какое нагружение идёт в деталях насоса чтобы корректно выполнить престресс.
    • ДОБРЯК
      Хотите еще и матрицу масс изменить. :=) И сколько килограмм воды будете присоединять?  Опыт правильного моделирования, опыт расчета таких конструкций накапливается десятилетиями. Маловероятно, что кто-то на форуме будет вам объяснять как правильно моделировать, какие КЭ использовать, какие граничные условия задавать и т. д. Вы же всегда уклоняетесь от разговора на эти темы, даже для простых моделей.  Даже если перейдете на Ансис и не разберётесь в том, что он считает это не поможет вам написать грамотный отчет и объяснить грамотному заказчику, что вы там насчитали. Считает расчетчик, а программа это инструмент. Это только в рекламе пишут, что купите программу трехмерного моделирования, сделайте трехмерную модель, потом нажмите одну кнопку и на обычном игровом компьютере все посчитаете. Только в жизни все немножко иначе...:=)
    • Jesse
      Вот что у Биргера: Центробежные силы и индуцированный гироскопический момент зависят от квадрата частоты вращения вала   Хотя уже сама критическая частота зависит только от момента инерции колеса (альфа, бэта, гамма - это прогибы, углы поворота и прочая шелуха), т.е. частота вращения в формулу не входит, а всё определяется только моментом инерции Jm Ну у него рассматривается простая одномассовая система (фактически грузик на пружинке). Думаю поискать публикации.. мб где то раскопали аналитическую зависимость первой и высшей СЧ от частоты вращения для сложных систем. Хотя если выяснится что зависит,  всё равно обоснование придумывать придётся.  Эхх...
    • Fedor
      https://www.litres.ru/book/v-n-faddeeva/vychislitelnye-metody-lineynoy-algebry-65999878/  Ну и классику жанра :) 
    • Jesse
      4000 об/мин при наружном диаметре колеса 380 мм. Думаете, на больших оборотах вилка всё равно может разойтись и могут появиться гироскопические эффекты? Даже несмотря на вышеприведенные массово-инерционные оценки и расположение опор?   да я влияние престресс (вращение) особо не увидел... Думал обычным модальником прогнать, Ланцошом (он пошустрее).   Ещё мои раздумья направлены в сторону присоединённой массы воды, что по идее должно занижать частоты. Хотя для такого массивного вала как у меня даже на это дело можно забить, наверно...
    • Handrusik
      Maxx2000 - благодарю Павлуха - это не фриланс Утомлённый солнцем - приятно, что меня помнят
    • Борман
      Я так понимаю, что обороты не особо большие. ДК - это чисто высокооборотистая тема.   Просто мысли вслух... Если вилка будет сильно расходится, то всегда будет точка пересечения любого луча с кривой BW. Причем точка будет на меньших оборотах по сравнению с обычным престресс-модальником. Какие дальше действия ? С чем тут нужно дополнительно бороться по сравнению с тем, с чем нужно было бы бороться по результатам обычного престресс-модальника Если вилка не сильно расходится (от кривой обычного престресс-мобальника), то смысла стоить строгую ДК большого нет.    
    • boomeeeer
      На сименсе параметрами настраивается многое, что связано с менеджером иснструмента. Вызов возможен как по номерам, так и по именам инструментов. Через равно вроде как по имени вызывается (Т="имя"), а по номеру можно было, например, Т1 M6, а первый корректор подтянулся бы автоматически. И не всегда М6 на смену. Производитель мог нагородить чего угодно. Параметры надо смотреть
    • Den4ik85
      P.S этой ошибки не было при запуске,она возникла при выполнении команды смены инструмента "T=.." d1m6. (так учили на курсах) возможно,не тот номер ввел или не соответствовало название инструмента его номеру?
×
×
  • Создать...