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

Как изменить параметр из ладерра на Fanuc


boberzz

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

Здравствуйте, не подскажите, какая функция в программе LadderIII отвечает за перезапись параметра ЧПУ.

Задача стоит в том, чтобы при сигнале F74.0=1 параметр 3208#1 становился равным 1 и наоборот при сигнале F74.0=0 параметр 3208#1 становился равным 0

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


Функция WINDR с кодом функции 17 - чтение параметра

Функция WINDW с кодом функции 18 - запись параметра

 

 

В ладдере устанавливается символ оконной функции и указывается значение DATA (свободное, никакой функцией не используемое)

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

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

Коллеги, апну тему. Почему может не работать? Нужно записать параметр 6200: делать его или 10110000 или 11110000 в зависимости от разных там условий.
Ставлю WINDW с переменной D2114 Предварительно этой переменной присваиваю значение 18 с помощью NUMEB.

D2118 присваиваю 1, пробовал не присваивать ничего

D2120 присваиваю 6200

D2122 присваиваю 0, пробовал не присваивать ничего

D2124 присваиваю с помощью NUMEB значение 120 или 11110000 в двоичном виде, параметр при этом 10110000 и не меняется. Пробовал отключать защиту записи в OFFSET SETTINGS - нет результата.

Пробовал ради эксперимента записать параметр 6241, он числовой, поменяв D2118 на 2 - безрезультатно. На экране вижу, что всем переменным присвоились нужные значения. Завершения функции WINDW не происходит, выход показывающий завершение не активен. Пробовал вывести D2116 как код завершения - там какая-то абракадабра типа 64513.

PMC RB5, 18i-MA

Никаких ошибок не выдаёт.

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

@Killerchik Запись параметра через данную функцию имеет атрибут Low-speed response. В документации расписаны ограничения, которые накладываются на использование данной функции, если у вас в логике где то ещё прописаны функции WINDW c Low-speed response. Там по признаку завершения надо сбрасывать сигнал ACT, иначе работать не будет

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

если у вас в логике где то ещё прописаны функции WINDW c Low-speed response

Да вот дело в том, что больше их нигде нет. Но попробую снимать-подавать сигнал активации, может сработает.

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

Да вот дело в том, что больше их нигде нет

Вы уверены? С помощью Collective Display искали? Вот вам проект от станка где как раз идёт использование двух медленных функций. Одна записывает параметр, а другая макропеременную.

LA250.LAD

@Killerchik Вот вам ещё проект. Здесь используются две медленных функции и обе для записи макропеременной. Тут немного по другому реализован семафор на их использование.

rais.LAD

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

Вы уверены? С помощью Collective Display искали?

Искал обычным поиском, поиском по функциям, с запросом windw. Без моей функции ничего не находит, если я добавляю windw - находит только её. Большое спасибо за проекты!

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

У меня есть постоянно работающая windr 28, но она не low speed

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

Искал обычным поиском, поиском по функциям, с запросом windw.

Рекомендую функцию Collective Display для поиска. По имени функции сразу выводит в одно окно все точки её использования.

111.png

 

11 минут назад, Killerchik сказал:

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

Да, лучше сначала на кошках потренироваться )))

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

@boomeeeer  И так, сегодня попробовал записать для пробы в переменную #701 значение 33. Что-то записалось, но нечто странное, торопился в конце дня и не сфоткал, но что-то около 10409.1
Прикладываю скрины программы. Судя по миганию сигнала на выходе WINDW - функция выполняется. Переменная кода завершения = 0 - запись прошла нормально. Ниже скрины:

2023-11-27_21-45-32.png

2023-11-27_21-46-21.png

2023-11-27_21-47-14.png

 

В конце функция сравнения просто чтобы отобразить значение D2116

 

В результате, как я уже сказал, в переменной #701 вместо пустого значения, которое там было - теперь какое-то большое число с десятичной точкой, типа десять с чем-то тысяч.

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

Как не удивительно, помогло изменение аргумента в функции присвоения значения D2124. Поскольку присваиваю 33 или 100001, поставил размер 1 байт. В результате в переменной было 10017

Изменил размер на 2 байта, и стало присваивать корректно, 33. Завтра буду пробовать возвращаться к присвоению значения какому-нибудь параметру.

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

В общем, всё получилось, параметр 6200 записался. В чём была проблема - не представляю, сделал всё также. Единственно что - оставил прерывание выполнения WINDW на 1 цикл после каждого окончания её выполнения, возможно это делать необходимо.

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

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

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

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

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

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

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

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

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

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

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




×
×
  • Создать...