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

Ограничение массива R-параметров на SINUMERIK и отлов DEF команд посредине программы.


s_liam

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

Всем привет.
Столкнулся вроде как с простой проблемой, но быстро решить не получается.
В общем, нужно ограничить количество R-параметров до 100. (Ну то есть чтобы при R100=23 выдавалась ошибка о неверном индексе массива).
Вроде как всё просто должно быть. Удаляем из определений Word переменную R, заданную как Siemens840DRCond.
В *.def  файле стойки прописываем определение массива, как
DEF REAL R[100].
Но переменные работают только при присваивании им значения. Любые математические функции перестают работать. Возникает ошибка массива.
Как это победить пока не пойму.
И также, если определять массив R-переменных через DEF REAL R[100], то пропадает предупреждение в проекте, если идёт обращение к R-переменной, значение которой не было заранее определено.

Также ещё одна проблема. В SINUMERIK на стойке станка переменные можно задавать с помощью команды DEF только вначале программы (и подпрограммы). Если переменная будет определена через DEF после любой другой команды, то на станке возникает синтаксическая ошибка. В VERICUT это никак не ограничивается.
Как прописать проверку по этой штуке тоже не могу пока придумать. А то не все программисты это помнят и хорошо бы отлавливать это при симуляции.
Кто-то делал такую отловку у себя в проекте?

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


UnPinned posts
Только что, mr_Voden сказал:

@s_liamДа, та самая. Development tools -> CME-API раздел.

Понял, спасибо. Буду изучать! +)

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

Спустя месяц вспомнил про эту тему. Увы, решить проблему с запуском в версиях младше 9 мне не удалось. У меня нормально работает на 9.2, на 8.1.1 падает еще при запуске.

work.png

Sinumerik_Rvar_Detecter_13.05.23_23.32.rar

Ссылка на сообщение
Поделиться на других сайтах
  • 4 недели спустя...
14.05.2023 в 00:06, mr_Voden сказал:

Спустя месяц вспомнил про эту тему. Увы, решить проблему с запуском в версиях младше 9 мне не удалось. У меня нормально работает на 9.2, на 8.1.1 падает еще при запуске.

work.png

Sinumerik_Rvar_Detecter_13.05.23_23.32.rar 338 \u041a\u0431 · 0 скачиваний

Спасибо, попробую. Конечно, интересно было бы посмотреть сам код макро до компиляции, на будущее поглядеть, насколько просто или сложно всё это.

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

В общем, нужно ограничить количество R-параметров до 100. (Ну то есть чтобы при R100=23 выдавалась ошибка о неверном индексе массива).

А, например, если в Syntax Check написать R100~1000 и прогонять проги на ошибки?

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

А, например, если в Syntax Check написать R100~1000 и прогонять проги на ошибки?

Попробовал, потыкался. Почему-то не работает R100~1000. Через пробел если несколько значений задать, то находит.
Но это какой-то изврат 899 значений прописывать на проверку. Может как-то иначе нужно?
Версия у меня 9.2.2.

Нашёл пример
variable_alias_generic_3ax_vmill_fan30im_inch.vcproject
 

Здесь показано, как можно создать переменные и ассоциировать с помощью макрокоманд с другими переменными.
Всё работает для FANUC, где переменные через # определяются.
На SINUMERIK переменные вроде как создаются, а оперировать с ними не получается.

Ну то есть по аналогии создаём в ini файле

CGTECH_MACRO "VariableArrayAlias" "1,_UVR,1000"

 

Если в программе R101=12, то переменная _UVR[101]=12 в таблице переменных становится.
Но при обращении в программе к переменной _UVR[101] - ошибка синтаксиса.

 

Вообще, кажется, решение на поверхности где-то. Работала бы поддержка - было бы проще.

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • Alena2024
      Компания ООО «ТопС Бизнес Интегратор» (TopS BI) (входит в состав НКК) https://topsbi.ru/  проводит конкурс "АЛЬПИНИСТЫ САПР". Победителям конкурса будет предложено трудоустройство в компании TopS BI, занимающейся цифровой трансформацией высокотехнологичных предприятий машиностроительного комплекса и ОПК.   Мы предлагаем проявить свои таланты в конкурсе и стать частью нашей команды, чтобы развивать и применять свои навыки в самых интересных и важных цифровых проектах нашей страны.   Конкурс проходит с 20.05.2024 по 30.09.2024 включительно и состоит из двух этапов:   1)    Самостоятельное написание плагина для CAD системы (T-flex) на языке C++ 2)    Очное интервью   По итогам первого этапа отбора все участники получат баллы за написание плагина для CAD системы. Далее участники, набравшие наибольшее количество баллов, будут отобраны для проведения очных интервью. Участники, которые успешно пройдут этап интервью, получат возможность трудоустройства в компанию TopS BI.   Ознакомиться с информацией и зарегистрироваться на конкурс студенты могут на сайте TopS BI - https://topsbi.ru/competition.   Подробное описание конкурсного задания и необходимые инструкции будут отправлены участникам после регистрации на сайте.                    Приглашаем креативных молодых специалистов к участию в нашем конкурсе!  
    • Vengeance
      Там не сложно, почитай Post Section.pdf @lexa345 огромная благодарность за помощь с интеграцией Cimco в мой постпроцессор) За комментарии к циклам еще раз спасибо       
    • gudstartup
      а он там вообще есть? станок какого года 2023? у него поди  еще гарантия не кончилась так чего вас напрягают?
    • Kelny
      Последнии версии программы требуют завести в организации штат шаманов и не менее трёх бубнов, т.к. работы програмы часто требует риуталов Вуду, что бы хоть что-то работало нормально.   Так могут пропадать резьбы в сборках (частично или все), даже если вы их хотите или пытаетесь включить разнообразными способами, а если вам их удалось включить, то они могут отображаться не так как нужно. В вычислениях и уравнениях из-за вычислений с плавующей точкой два одинаковых числа могут быть не равны.   В чертежа на массивы обычно не надо задавать размеры каждого отверстия, а достаточно образмерить одно, шаг и максимальный размер.   Что подразумевается под правильно? Можно пример картинок, что это за отверстия и что значит правильно и как получается не правильно? Картинки или другие файлы в архиве можно вставлять прямо на форум после 10 сообщения на форуме.
    • kinovari
      Панель в виндовс не выходит... проект .ap18 по инфе производителя создан в тиа 18 
    • vad0000
    • OliverTwist
      Добрый день! Сдохла плата управления на приводе Bosch Rexroth серии HCS. Имеется в наличии ещё один такой привод и нужно стянуть с него параметры. Судя по документации мне необходим софт "IndraWorks ds" - но я никак не могу его найти :( Может кто-то подскажет - где можно такой скачать? Заранее спасибо!
    • gudstartup
      у ваших ис имеется сменщик паллет?? это просто место сбора слесарей + гидравлика мозг выносит. к фанукам притензий особых нет как и везде но электроавтоматика сделана отвратительно в шкафах полный хаос.   такие станки имеют износ 40-70% и их необходимо обновлять особенно это касается высокоточного оборудования но к исам это не относится там главное чтобы железо крепкое было я смотрю вы любите пространные описания но есть нюанс дочитывая до конца забываешь что в начале или это я такой склеротик
    • Alexandr97
      В сборке необходимо было создать массив нескольких деталей на линейном расстоянии друг от друга. При создании сопряжения между отдельной деталью и одним из объектов массива, объект массива ломается, свободно перемещается и расстояние, которое было задано при массиве, уже не актуально. При том, когда я к родительской детали пытаюсь крепиться, то все нормально. Подскажите, это недочет программы, или так и должно быть?
    • Shura762
      Кто нить пробовал ТФ18? ну там типа бета тестирование? или все это коммерческая тайна
×
×
  • Создать...