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

FAQ/Unigraphics/POST


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

11 минуту назад, artem-nafanya сказал:

Не пойму почему код сравнивает несколько наборов значений $tool и $row_tool?

Если мне надо найти одинаковые номера инструментов, то имеется только один набор значений состоящий из номеров инструментов, и потому цикл должен как бы искать одинаковые числа внутри самого себя, или я не правильно понял код?

А за чем создавать список с дубликатами, когда можно проверить на наличие перед записью?

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


1 час назад, lexincton сказал:

 

Не, вот где

Screenshot_1.png.847891c05d7d96f069eb44abd1555a44.png

Не знаю почему, но у меня не работает эта фишка. Все равно программу выдает без повторного вывода инструмента

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

Не знаю почему, но у меня не работает эта фишка. Все равно программу выдает без повторного вывода инструмента

Пост прикрепите

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

Спасибо. А ты можешь написать как и что, где сделал на будущее. Пост не может твой открыть из-за более старой версии. А самое главное то, и не получилось, чтоб он подходил к точки безопасного подхода(((.

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

Спасибо. А ты можешь написать как и что, где сделал на будущее. Пост не может твой открыть из-за более старой версии

Поменял вывод инструмента в событии начала траектории

9 минут назад, 62Alex33 сказал:

А самое главное то, и не получилось, чтоб он подходил к точки безопасного подхода(((.

Прописать статично эту строку перед инструментом

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

@lexincton

4 часа назад, lexincton сказал:

А за чем создавать список с дубликатами, когда можно проверить на наличие перед записью?

Я не против, пускай перед записью, но что внутри переменных $tool и $row_tool одни и те же номера инструментов будут? 

 

 

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

@lexincton

Я не против, пускай перед записью, но что внутри переменных $tool и $row_tool одни и те же номера инструментов будут? 

$tool - инструмент из списка

$row_tool - добавляемый инструмент

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

$tool - инструмент из списка

$row_tool - добавляемый инструмент

Сделал так:

КОД  

global listtool
global mom_tool_number


set listtool $mom_tool_number
set rowtool $mom_tool_number
set bsearch 0
foreach tool $listtool {
    if { $tool == $rowtool } {
        set bsearch 1
        break
    }
}

if {$bsearch != 0} {
MOM_output_text 11111111111111111111111111111
}
#если bsearch == 0, значит элемент в списке не найден

Hide  

Но в таком виде код всегда находит совпадения, даже если в обработке одна операция с одним инструментом.

Что я делаю не так?

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

Что я делаю не так?

Почитайте про списки, стр. 134, без этого не поймете, потом напишите, если не прояснится

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

Всем привет , вопрос по посту на синумерик, не выводит после выбора оборотов направление ( M3-М4 ) со второго инструмента.

В первом все отлично, а со второго только обороты, куда тыкнуть ? 

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

Почитайте про списки, стр. 134, без этого не поймете, потом напишите, если не прояснится

@lexincton

(имеется ввиду стр. 134 в книге Уэлш Б., Джонс К. - Практическое программирование на Tcl и Tk)

запись

global list_tool

set row_tool  $mom_tool_number
set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}

 

чтение

global list_tool

 

foreach number [lsearch -ascii -exact -inline {$list_tool} ]

if {$number == "YES"} {

MOM_output_text "обнаружены дублирующие номера инструментов: T:$number"

}

 

Снимок.JPG

54 минуты назад, museok сказал:

Всем привет , вопрос по посту на синумерик, не выводит после выбора оборотов направление ( M3-М4 ) со второго инструмента.

В первом все отлично, а со второго только обороты, куда тыкнуть ? 

А в начальном перемещении М3 заданы?

Снимок.JPG

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

@lexincton

(имеется ввиду стр. 134 в книге Уэлш Б., Джонс К. - Практическое программирование на Tcl и Tk)

запись

global list_tool

set row_tool  $mom_tool_number
set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}

 

чтение

global list_tool

 

foreach number [lsearch -ascii -exact -inline {$list_tool} ]

if {$number == "YES"} {

MOM_output_text "обнаружены дублирующие номера инструментов: T:$number"

}

А в этот раз что хотите получить?

 

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

@lexincton

(имеется ввиду стр. 134 в книге Уэлш Б., Джонс К. - Практическое программирование на Tcl и Tk)

запись

global list_tool

set row_tool  $mom_tool_number
set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}

 

чтение

global list_tool

 

foreach number [lsearch -ascii -exact -inline {$list_tool} ]

if {$number == "YES"} {

MOM_output_text "обнаружены дублирующие номера инструментов: T:$number"

}

 

Снимок.JPG

А в начальном перемещении М3 заданы?

Снимок.JPG

да все указано

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

А в этот раз что хотите получить?

 

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

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

2 минуты назад, museok сказал:

да все указано

Выложите пост и проект обработки, надо смотреть.

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

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

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

global list_tool double_tools

set row_tool  $mom_tool_number
set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}

if { $bsearch && ![info exists $double_tools($row_tool)] } { set double_tools($row_tool) 0 }

 

чтение

foreach number [array names double_tools]  {
     MOM_output_literal "обнаружены дублирующие номера инструментов: T:$number"
}

Изменено пользователем lexincton
Ссылка на сообщение
Поделиться на других сайтах
15 часов назад, lexincton сказал:
Показать содержимое  

global list_tool double_tools

set row_tool  $mom_tool_number
set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}

if { $bsearch && ![info exists $double_tools($row_tool)] } { set double_tools($row_tool) 0 }

 

чтение

foreach number [array names double_tools]  {
     MOM_output_literal "обнаружены дублирующие номера инструментов: T:$number"
}

Hide  

Почему-то выдаёт ошибку, хотя переменная объявлена. Пробовал менять на другую, результат тот же.

Снимок.PNG

Снимок1.PNG

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

Почему-то выдаёт ошибку, хотя переменная объявлена. Пробовал менять на другую, результат тот же.

Потому что ее нет и к тому же ничего не добавляется

 

global list_tool double_tools

if { ![info exists list_tool] } { set list_tool {} }
set row_tool  $mom_tool_number
set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}

if { !$bsearch } {

    lappend list_tool $row_tool

} elseif { ![info exists $double_tools($row_tool)] } { set double_tools($row_tool) 0 }

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

Потому что ее нет и к тому же ничего не добавляется

 

global list_tool double_tools

if { ![info exists list_tool] } { set list_tool {} }
set row_tool  $mom_tool_number
set bsearch 0
foreach tool $list_tool {
    if { $tool == $row_tool } {
        set bsearch 1
        break
    }
}

if { !$bsearch } {

    lappend list_tool $row_tool

} elseif { ![info exists $double_tools($row_tool)] } { set double_tools($row_tool) 0 }

Hide  

С этим кодом тоже самое((

Снимок.PNG

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

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

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

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

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

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

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

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

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

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

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




  • Сообщения

    • lem_on
      ну с дуру известно что сломать можно.
    • Viktor2004
      руку привязки так сломать легко
    • lem_on
      По моему вполне логично если станок вывалится в ошибку если рука не доехала до места. У меня так же если кулачки или деталь на пути, просто пихаеш ее до места и станок опять активен. Но нынешние пановья даже не могут написать модель станка.
    • Viktor2004
      Я согласен что скорее всего проблема механическая Но если логика прописана криво и возможно не предусмотрела остановку в промежуточном состоянии, разве не логично будет попробовать принудительно подав напряжение дернуть эту руку вверх-вниз? Возможно то что туда попало выпадет  
    • Guhl
      Если оставить за скобками вопрото том, что до м19 работает нормально, а после нет, то вы не считали сколько у него реально импульсов на оборот? с помощью стороннего плк, например  А если ориентацию м5 снимать, а не м20?
    • lem_on
      Что это за станок такой в котором сразу ладер ковырять надо, даже не смотря на возможность механической проблемы? Или профдеформация?
    • Viktor2004
      не сразу я понял в чем вопрос. Долго соображал что такое режим управления скоростью. При завершении ориентации PMC снимает сигнал G70.6 ? И если он после снятия сигнала продолжает удерживать шпиндель, при каких условиях эта ориентация все же снимается? После нажатия аварийного грибка или еще как?
    • Viktor2004
      Ладдер пришлите. Будем принудительно пробовать поднимать и опускать
    • streamdown
      Коллеги приветствую! IPS 8. Подскажите пожалуйста, кто какое серверное железо использует? Интересуют параметры при одновременной работе, ну например, 400 пользователей онлайн
    • gudstartup
      так он так и позиционируется по m19 pmc выдает g70.6 а чпу отвечает f45.7 но ориентацию и смещение в 4077 он отрабатывает нормально шпиндель встает ровно и смена происходит хорошо. вопрос почему после ввода команды управления скоростью он все еще продолжает контролировать число импульсов между нуль метками хотя в принципе уже должен отменить позиционный контроль и просто считать обороты по 0 метке как он это делает без М19? это все понятно но почему оно продолжает проверять это после завершения ориентации мне непонятно
×
×
  • Создать...