Советы по программированию на LabVIEW

Простейшие вопросы в области инженерной разработки
rsv
assistant
assistant
Сообщения: 110
Зарегистрирован: 18 июл 2019, 13:53
Версия LabVIEW: 2018
Благодарил (а): 8 раз

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Artem.spb писал(а): 30 апр 2020, 14:39
rsv писал(а): 30 апр 2020, 11:54 Вырезал из TypeDef, ...
может, проблема в этом?
после вырезания всё, что осталось сдвинулось вверх. Новый вставленный элемент стал последним, и неважно, что вы его на самый верх сдвинули. Надо индексацию менять ("reorder control in cluster..")
Поменял. В 2-х модулях пришло к состоянию TypeDef, а в третьем - один контрол вместо списка стал строкой. И опять та же ошибка...
Artem.spb

Activity Автор
doctor
doctor
Сообщения: 2484
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 14 раз
Поблагодарили: 68 раз
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение Artem.spb »

strict typedef -> save all -> typedef
rsv
assistant
assistant
Сообщения: 110
Зарегистрирован: 18 июл 2019, 13:53
Версия LabVIEW: 2018
Благодарил (а): 8 раз

Re: Советы по программированию на LabVIEW

Сообщение rsv »

С контролом я ошибся - визуально в модулях всё так же как и в TypeDef. А ошибка с перечислимыми типами осталась. И ещё раз вырезать - вставить уже не помогает...
Artem.spb

Activity Автор
doctor
doctor
Сообщения: 2484
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 14 раз
Поблагодарили: 68 раз
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение Artem.spb »

rsv писал(а): 30 апр 2020, 16:47И ещё раз вырезать - вставить уже не помогает...
Сначала я предлагал не typedef править, а тот vi, где глюк. Просто туда скопипастить новую копию взамен глюкнувшей
rsv
assistant
assistant
Сообщения: 110
Зарегистрирован: 18 июл 2019, 13:53
Версия LabVIEW: 2018
Благодарил (а): 8 раз

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Мой косяк. В качестве шаблона для Bundle By Name использовал константу. Заменил на локальную переменную и всё заработало.
Вложения
Неправильный шаблон.JPG
Неправильный шаблон.JPG (32.36 КБ) 1626 просмотров
Правильно.JPG
Правильно.JPG (26.44 КБ) 1626 просмотров
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5129
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 16 раз
Поблагодарили: 27 раз

Re: Советы по программированию на LabVIEW

Сообщение IvanLis »

rsv писал(а): 01 май 2020, 09:08 Мой косяк. В качестве шаблона для Bundle By Name использовал константу. Заменил на локальную переменную и всё заработало.
Вы все правильно сделали, только константа тоже должна быть связана с TypeDef, они также как и контролы помечены "уголком".
В этом случае, при изменении TypeDef, константа так же будет изменяться.
Screenshot_20200501_112120.png
Дергать каждый раз локальную переменную не очень хорошо, особенно если все это в цикле происходит.
rsv
assistant
assistant
Сообщения: 110
Зарегистрирован: 18 июл 2019, 13:53
Версия LabVIEW: 2018
Благодарил (а): 8 раз

Re: Советы по программированию на LabVIEW

Сообщение rsv »

IvanLis писал(а): 01 май 2020, 11:28
rsv писал(а): 01 май 2020, 09:08 Мой косяк. В качестве шаблона для Bundle By Name использовал константу. Заменил на локальную переменную и всё заработало.
Вы все правильно сделали, только константа тоже должна быть связана с TypeDef, они также как и контролы помечены "уголком".
В этом случае, при изменении TypeDef, константа так же будет изменяться.

Не совсем понял. Надо на каждый нумерованный список создать отдельный TypeDef и включить их в кластер и в константу?
Аватара пользователя
IvanLis

Activity Professionalism Tutorials Gold Man of the year 2012
Автор
guru
guru
Сообщения: 5129
Зарегистрирован: 02 дек 2009, 17:44
Награды: 7
Версия LabVIEW: 2015, 2016
Откуда: СССР
Благодарил (а): 16 раз
Поблагодарили: 27 раз

Re: Советы по программированию на LabVIEW

Сообщение IvanLis »

rsv писал(а): 02 май 2020, 09:04Не совсем понял. Надо на каждый нумерованный список создать отдельный TypeDef и включить их в кластер и в константу?
Нет, каждый элемент кластера, если Вы его отдельно не планируете использовать, не нужно делать TypeDef.
Но у Вас проблема, из-за того, что константа (кластер) не связана с TypeDef.
А следовательно изменения TypeDef ею не наследуются, отсюда и ошибка.
Неправильный шаблон.JPG
Неправильный шаблон.JPG (46.62 КБ) 1537 просмотров
уголок константы не закрашен
rsv
assistant
assistant
Сообщения: 110
Зарегистрирован: 18 июл 2019, 13:53
Версия LabVIEW: 2018
Благодарил (а): 8 раз

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Спасибо, IvanLis. Всё понял.
rsv
assistant
assistant
Сообщения: 110
Зарегистрирован: 18 июл 2019, 13:53
Версия LabVIEW: 2018
Благодарил (а): 8 раз

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Возникла проблема со списком состояний для конечного автомата.
После любого изменения списка (удалить, добавить, переименовать пункт) названия пунктов сбрасываются и остаются только номера (как на скрине).
Причём ещё недавно добавил в список новый пункт и все названия в списке сохранились.
Как можно исправить эту проблему?
LabVIEW 2018 SP1
Вложения
После изменения списка.png
После изменения списка.png (2.74 КБ) 445 просмотров
Artem.spb

Activity Автор
doctor
doctor
Сообщения: 2484
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 14 раз
Поблагодарили: 68 раз
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение Artem.spb »

rsv писал(а): 24 ноя 2020, 15:17 После любого изменения списка
В каком виде этот список хранится и где/как меняется? Есть подозрение, что используется ring вместо enum
rsv
assistant
assistant
Сообщения: 110
Зарегистрирован: 18 июл 2019, 13:53
Версия LabVIEW: 2018
Благодарил (а): 8 раз

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Artem.spb писал(а): 24 ноя 2020, 15:55 В каком виде этот список хранится и где/как меняется? Есть подозрение, что используется ring вместо enum
Подсказка показывает что это enum. Хранится в самом модуле. Пробовал сохранить в TypeDef - после изменений также остаются только номера.
Перенёс enum в новый модуль, подключил case - редактируется нормально, названия пунктов не пропадают.
Вложения
enum.png
enum.png (7.76 КБ) 422 просмотра
Artem.spb

Activity Автор
doctor
doctor
Сообщения: 2484
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 14 раз
Поблагодарили: 68 раз
Контактная информация:

Re: Советы по программированию на LabVIEW

Сообщение Artem.spb »

rsv писал(а): 25 ноя 2020, 13:16 Перенёс enum в новый модуль, подключил case - редактируется нормально, названия пунктов не пропадают.
Странное поведение. С ходу в голову приходит только такое решение - сделать case заново. Бывают глюки, которые лечатся только переделкой с нуля
rsv
assistant
assistant
Сообщения: 110
Зарегистрирован: 18 июл 2019, 13:53
Версия LabVIEW: 2018
Благодарил (а): 8 раз

Re: Советы по программированию на LabVIEW

Сообщение rsv »

Artem.spb писал(а): 25 ноя 2020, 14:33 Бывают глюки, которые лечатся только переделкой с нуля
Пожалуй, так и есть...
Borjomy_1

Activity Professionalism Silver
doctor
doctor
Сообщения: 2008
Зарегистрирован: 28 июн 2012, 09:32
Награды: 3
Версия LabVIEW: 2009..2020
Откуда: город семи холмов
Благодарил (а): 11 раз
Поблагодарили: 7 раз

Re: Советы по программированию на LabVIEW

Сообщение Borjomy_1 »

Надо отцепить провод от входа [?] и снова подцепить. Это баг LabView
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Для чайников»