11.10.2021, 13:21
|
#11
|
Гуру
Регистрация: 24.09.2020
Сообщения: 160
Сказал Спасибо: 46
Сказали Спасибо 2 раз(а) в 2 сообщении
|
Сообщение от роботёр
|
да и вообще проверь состояние прерывания на момент выполнения данной части программы. если я не ошибаюсь, то в "мониторе" можно посмотреть состояние прерывания. от этого уже буде плясать
|
проблема в том, что дугу не зажигает именно на данном участке траектории довольно редко. 2-3 раза за смену и поймать этот момент сложно. момент- выход 777 отвечает за прерывания? в других местах программы все работает нормально.
|
|
|
|
11.10.2021, 13:23
|
#12
|
Гуру
Регистрация: 24.09.2020
Сообщения: 160
Сказал Спасибо: 46
Сказали Спасибо 2 раз(а) в 2 сообщении
|
Сообщение от роботёр
|
да и вообще проверь состояние прерывания на момент выполнения данной части программы. если я не ошибаюсь, то в "мониторе" можно посмотреть состояние прерывания. от этого уже буде плясать
|
или прерывания можно посмотреть даже если не сработало? сейчас схожу попробую найти менюшку в мониторе
|
|
|
|
11.10.2021, 13:39
|
#13
|
Гуру
Регистрация: 20.12.2017
Сообщения: 712
Сказал Спасибо: 19
Сказали Спасибо 145 раз(а) в 138 сообщении
|
Сообщение от александр пик
|
проблема в том, что дугу не зажигает именно на данном участке траектории довольно редко. 2-3 раза за смену и поймать этот момент сложно. момент- выход 777 отвечает за прерывания? в других местах программы все работает нормально.
|
да, выход 777 отвечает за включение прерывания. это видно по части кода, который я прислал выше
|
|
|
|
11.10.2021, 13:42
|
#14
|
Гуру
Регистрация: 20.12.2017
Сообщения: 712
Сказал Спасибо: 19
Сказали Спасибо 145 раз(а) в 138 сообщении
|
Сообщение от александр пик
|
или прерывания можно посмотреть даже если не сработало? сейчас схожу попробую найти менюшку в мониторе
|
через монитор, на протяжении всей программы, можно смотреть включено или выключено прерывание
|
|
|
|
11.10.2021, 14:24
|
#15
|
Гуру
Регистрация: 04.08.2016
Сообщения: 81
Сказал Спасибо: 0
Сказали Спасибо 29 раз(а) в 19 сообщении
|
У меня тоже будет пару замечаний:
1. Файл sps.sub строки:
64 $CYCFLAG[17] = NOT (O_TI_MOVING_TORCH OR I_MOVING_TORCH) ;CONTROL PLASMA CUT
65 ;=$CYCFLAG[17] = NOT I_MOVING_TORCH ;CONTROL PLASMA CUT
Здесь при объявлении $CYCFLAG[17] проверяется сразу и выход и вход. Причем проверяемый выход, как я понял,
влияет на проверяемый вход. Здесь, как мне кажется, закоментированная строка 65 более уместна.
2. Объявлять $CYCFLAG[17] в sps.sub необязательно. Робот опрашивает циклические флаги интерактивно.
Я бы для удобства (или отладки) объявил $CYCFLAG[17] перед объявлением прерывания:
$CYCFLAG[17] = NOT I_MOVING_TORCH ;CONTROL PLASMA CUT
INTERRUPT DECL 17 WHEN $CYCFLAG[17]==TRUE DO REAKT_AVARIA_PLASMA()
Ну и как правильно заметил Роботер надо отладить plasma_start (), а то не понятно, что не срабатывает
$CYCFLAG[17] и висящее на нем прерывание или все-таки прерывание в результате запрещено.
|
|
|
cказали "Спасибо" Pavel_T за это сообщение:
|
|
|
11.10.2021, 14:34
|
#16
|
Гуру
Регистрация: 24.09.2020
Сообщения: 160
Сказал Спасибо: 46
Сказали Спасибо 2 раз(а) в 2 сообщении
|
Сообщение от Роботёр
|
через монитор, на протяжении всей программы, можно смотреть включено или выключено прерывание
|
во время работы постоянно горит 777 выход. на проблемном отверстии тоже горит
фото
https://disk.yandex.ru/d/Yl-6L5dcykpyjQ
|
|
|
|
11.10.2021, 14:44
|
#17
|
Гуру
Регистрация: 04.08.2016
Сообщения: 81
Сказал Спасибо: 0
Сказали Спасибо 29 раз(а) в 19 сообщении
|
см. sps.sub строка 57
$OUT[777]=TRUE
это какая-то заглушка (байпас).
|
|
|
|
11.10.2021, 15:01
|
#18
|
Гуру
Регистрация: 24.09.2020
Сообщения: 160
Сказал Спасибо: 46
Сказали Спасибо 2 раз(а) в 2 сообщении
|
Сообщение от Pavel_T
|
см. sps.sub строка 57
=TRUE
это какая-то заглушка (байпас).
|
тогда я не догнал где смотреть прерывания...(((
|
|
|
|
11.10.2021, 15:03
|
#19
|
Гуру
Регистрация: 24.09.2020
Сообщения: 160
Сказал Спасибо: 46
Сказали Спасибо 2 раз(а) в 2 сообщении
|
где то в программе косяк думаю. так то ведь все работает, кроме одного отверстия. и почему там не срабатывает х.з.
|
|
|
|
11.10.2021, 15:07
|
#20
|
Гуру
Регистрация: 24.09.2020
Сообщения: 160
Сказал Спасибо: 46
Сказали Спасибо 2 раз(а) в 2 сообщении
|
Сообщение от Роботёр
|
Смотри, в подпрограмме plasma_start () есть строчки:
IF == TRUE THEN ;check PLASMA CUT ON
;== OUT[777] TEST wait I_MOVING_TORCH
PULSE (O_TI_MOVING_TORCH,TRUE,1.5 ) ;=pulse O_TI_MOVING_TORCH
INTERRUPT ON 17
ELSE
INTERRUPT OFF 17
Что за выход out[777]? От состояния этого выхода зависит включено или выключено прерывание.
Советую проверить его состояние во время выполнения программы.
Или попробуй его закомментировать и посмотри что будет.
|
Как узнать, что за выход? Должно же где то быть описание всех выходов...Проверить состояние- смотреть горит или нет. Верно?
Там выбора особо нет- входы, выходы- цифр, аналоги, внеш авто, драйвера
|
|
|
|
Опции темы |
Поиск в этой теме |
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +2, время: 14:14.
|
|