WHB02 и WHB04

mycnc
Posts: 403
Joined: Thu May 10, 2018 2:42 pm

Re: WHB02 и WHB04

Post by mycnc » Tue Jan 29, 2019 12:43 am

Я не успеваю за вами :)

Closed Loop настройки планировали как-то систематизировать и упростить процедуру, но пока нет времени.

Если все хорошо, то у меня на скорости 9600 опрос одного порта занимает примерно 50мс. Если несколько портов, то всемя пропорционально увеличивается. Подозреваю, что такое большое время, если один из портов не отвечает и идет большой таймаут.
Я сканировал 2 девайса, 5 портов (2 порта с одного и 3 порта с другого) - успевало крутить полный цикл 2-3 раза в секунду.


"Corner" у нас называется "THC Low Speed" - при снижении скорости ниже заданной слежение выключается. Еще этот сигнал прокинут на выход "hi/lo event" и на него можно назначить выходной порт в настройках THC.

philip
Posts: 56
Joined: Tue Oct 16, 2018 10:45 am

Re: WHB02 и WHB04

Post by philip » Sun Feb 10, 2019 9:26 pm

Отгружаю я свой портал (первый, из двух, на одной продольной оси), наконец-то! :D
Вымотал он меня, конкретно!
Итого, на выходе - myCNC ET-7 в управлении, со всеми примочками (Closed loop по Step/Dir, управление источником HPR400XD по rs-422, используется встроенное THC, пульт оператора, дистанционный пульт и т.д. и т.п. ).
В принципе, в данном ценовом диапазоне, сравнивая возможности/цена, конкурентов - нет.

Вопросы -
1.Заметил, что хреново регулируется скорость выполнения программы, во время выполнения. Регулировка, у меня заведена от энкодера на панели оператора ET-7. Во время выполнения программы. На экране, вроде как нормально, но от энкодера - глючит (тормозит).
2.По тригеррам. Как (когда) они запускаются ? Только в ПЛЦ ? Суть проблеммы - crash sensor, нужно, что бы работал сразу, но получается что нужно его запустить в какой-то ПЛЦ. Есть возможность, триггер, запустить сразу ? (в софтварном ПЛЦ, во время инициализации, к примеру?)
3.Раньше было не важно, а тут есть необходимость.
Выключать питание - кнопкой типа - sudo power off, в софте, удобно. Однако как перед этим запустить процедуру выхода ,как при закрытии приложения в софтварном ПЛЦ ?

PS Возможно туплю, возможно и сильно ! :D
Attachments
IMAG2480.jpg

mycnc
Posts: 403
Joined: Thu May 10, 2018 2:42 pm

Re: WHB02 и WHB04

Post by mycnc » Wed Feb 13, 2019 11:29 pm

philip wrote:
Sun Feb 10, 2019 9:26 pm
Вопросы -
1.Заметил, что хреново регулируется скорость выполнения программы, во время выполнения. Регулировка, у меня заведена от энкодера на панели оператора ET-7. Во время выполнения программы. На экране, вроде как нормально, но от энкодера - глючит (тормозит).
А если крутить ручку энкодера, пока программа не запущена и нет никаких движений и помех - меняется нормально или тоже плохо?
Из подозрений -
1) помеха от моторов-плазмы
2) дребезг от механического энкодера.
От оптических энкодеров проблем не наблюдалось.

philip wrote:
Sun Feb 10, 2019 9:26 pm
2.По тригеррам. Как (когда) они запускаются ? Только в ПЛЦ ? Суть проблеммы - crash sensor, нужно, что бы работал сразу, но получается что нужно его запустить в какой-то ПЛЦ. Есть возможность, триггер, запустить сразу ? (в софтварном ПЛЦ, во время инициализации, к примеру?)
Триггеры и задумывались, чтобы запускать в PLC.
Собственно все пошло от датчика дуги, на который не надо смотреть, пока дуга не горит, а как только дугу включили, так сразу надо смотреть (взвести триггер).
Если надо, чтобы работал сразу, то надо использовать аварийные датчики. Один из датчиков "collision sensor" как раз планировался на эту тему. По его срабатыванию остановится выполнение программы. Ручные перемещения тоже должны заблокироваться. Была идея заблокировать ручные перемещения и разрешить только движение вверх (Z+) при срабатывании датчика (по пока писал, засомневался доделали это или нет).

Еще начаты, но так и не доделаны пока Custom аварийные входы - когда можно на любой вход назначить тип ошибки, произвольное сообщение и обработчик Software или Hardware PLC. Тогда можно будет придумывать что-то свое, если из готовых аварийных ничего не подходит.
philip wrote:
Sun Feb 10, 2019 9:26 pm
3.Раньше было не важно, а тут есть необходимость.
Выключать питание - кнопкой типа - sudo power off, в софте, удобно. Однако как перед этим запустить процедуру выхода ,как при закрытии приложения в софтварном ПЛЦ ?
Пока такого нет, но очень разумное пожелание и сделать вроде не сложно. Постараемся

philip
Posts: 56
Joined: Tue Oct 16, 2018 10:45 am

Re: WHB02 и WHB04

Post by philip » Thu Feb 14, 2019 10:05 pm

Приветствую!

1.Энкодер проверю. Зацеплю осциллограф на оба канала, тогда что-то будет ясно. Глючит он , когда программа исполняеться. Ещё раз проверю, и дам знать. (Наводки, и помехи - исключаю.)

2.Не совсем понял, - триггер, точно, можно запустить в аппаратном ПЛК.
В софтварном, он не запускается ? По крайнеё мере, у меня вроде как не запускается, или я где-то и что-то не исправил ?

mycnc
Posts: 403
Joined: Thu May 10, 2018 2:42 pm

Re: WHB02 и WHB04

Post by mycnc » Thu Feb 14, 2019 10:52 pm

Когда триггеры были сделаны, программного PLC еще не было.
Все действия по триггерам обычно завязаны на М-коды - старт-стоп дуги, смена инструмента и тд.
Пока не было необходимости запускать асинхронно триггер из софтогого PLC, поэтому этого не делали.
Если надо, можно попробовать расширить API.

philip
Posts: 56
Joined: Tue Oct 16, 2018 10:45 am

Re: WHB02 и WHB04

Post by philip » Fri Feb 15, 2019 9:37 pm

-"Чем дальше в лес, тем толще партизаны." :)

Короче с триггером, выкрутился просто - без нажатия на стоп, после запуска программы myCNC (и запуска M02 соответственно), привода не могут запуститься (не получают свой Enable). Как только М02, отработала и запустила триггер, выставляется переменная (через gvarset(ххх,1)), которую "очень ждёт" в вечном цикле процедура софтварного PLC, и эта процедура и стартует серво привода. В принципе, такой же "финт ушами" с нажатием на стоп, есть и у одного очень известного производителя ЧПУ, для термической резки.

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

Может просто, тупо один раз запускать M02, в контроллере, после инициализации ? Хуже не будет, а ценного много чего ?!


ЗЫ Я надеюсь, что не сильно напрягаю ? :)
ЗЫЗЫ Пока не могу проверить работу с HPR400XD (проблемы с газовой консолью) , но вроде всё загружает и показывает.

philip
Posts: 56
Joined: Tue Oct 16, 2018 10:45 am

Re: WHB02 и WHB04

Post by philip » Mon Feb 18, 2019 10:49 pm

Как обычно, с переменными сам разобрался!
Хреново, однако !

Есть возможность переменную сделать константой при запуске ??? Т.е. чтобы не прописывала последнее состояние в cnc-variables.xlm ?
Т.к. при внезапном выключении или при выключении типа sudo poweroff, остаёться последнее состояние, а нужно именно определённое при запуске!
И самое интересное, что _handler_ini в софтовом ПЛК имеет первую строчку инициализации этой переменной (gvarset(52,0)), однако в другой процедуре, отрабатывает прописанная в cnc-variables.xlm (<value name="cnc-gvariable-52" hint="Added from Software PLC">1</value>) значение. Повторюсь - это при "неправильном" выходе из программы, когда переменная не было обнулена перед выходом.

ЗЫ Конечно, выход есть, наверное ... но пока не придумал. :?

mycnc
Posts: 403
Joined: Thu May 10, 2018 2:42 pm

Re: WHB02 и WHB04

Post by mycnc » Mon Feb 18, 2019 11:25 pm

philip wrote:
Fri Feb 15, 2019 9:37 pm
Вопрос - при запуске программы myCNC, адреса предназначенные для переменных пользователя обнуляются или имеют значения по умолчанию (от балды) ?
При запуске все переменные сбрасываются в 0,
а потом, если что-то находится в cnc-variables.xml, то ставятся в значения из конфига.

Поэтому, если надо, чтобы переменная запоминалась, то добавить в конфиг строчку типа

Code: Select all

<value name="cnc-gvariable-52">1</value>
И система будет запоминать и восстанавливать переменную 52 при запуске.

Также, в качестве эксперимента, сделано, что если потрогать переменную в Software PLC, то она добавляет ее в конфиг с подсказкой

Code: Select all

hint="Added from Software PLC"
Пока не понятно, удобно это или вызывает лишние вопросы (так как иногда в Software PLC делаются свершенно временные переменные, нет смысла их сохранять), возможно потом уберем.

mycnc
Posts: 403
Joined: Thu May 10, 2018 2:42 pm

Re: WHB02 и WHB04

Post by mycnc » Mon Feb 18, 2019 11:35 pm

philip wrote:
Mon Feb 18, 2019 10:49 pm
И самое интересное, что _handler_ini в софтовом ПЛК имеет первую строчку инициализации этой переменной (gvarset(52,0)), однако в другой процедуре, отрабатывает прописанная в cnc-variables.xlm (<value name="cnc-gvariable-52" hint="Added from Software PLC">1</value>) значение. Повторюсь - это при "неправильном" выходе из программы, когда переменная не было обнулена перед выходом.
Предполагалось, инициализация в ..._INIT и будет гарантией, что переменная встанет в нужное состояние не зависимо от конфига. Если не получается, то надо разбираться. Задумано, что cnc-variables считывается при запуске программы, а INIT запускается сразу после просылки конфигурации в плату (когда часики пробежали). То есть первым делом после конфига переменные из INIT встанут в нужное состояние.
Значение в конфиге как-бы не должно влиять, так как сразу после часиков должно встать куда надо.

philip
Posts: 56
Joined: Tue Oct 16, 2018 10:45 am

Re: WHB02 и WHB04

Post by philip » Tue Feb 19, 2019 6:46 am

Пока, получается что _handler_ INIT отрабатывается в общем потоке, одновременно с остальными процедурами.
Есть кое какие мысли, вечером проверю.(Я остальное всё прописал в вечный цикл в popup_handler, может из-за этого ? )

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

Post Reply