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

Простейшие вопросы в области инженерной разработки
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

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

Сообщение dadreamer »

laryc
Вроде что-то понаписал, проверяйте =)
Вложения
Inc_Array_Upd.vi
LV 2O11
(12.27 КБ) 226 скачиваний
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

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

Сообщение dadreamer »

sdk5v3
Смотря в чём у вас там ошибка. Но судя по скриншоту, что вы приводили, проблема может быть в трех (как минимум) вещах: неправильно заданное условие выхода из цикла, неверно введенная формула и Feedback Node, который там ни к месту. Я склонясь к последнему варианту. Замените Feedback Node на сдвиговый регистр и посмотрите, что получится. Заодно в книжке по :labview: про сдвиговые регистры почитайте. :wink:
laryc
beginner
beginner
Сообщения: 19
Зарегистрирован: 02 июл 2013, 14:18
Версия LabVIEW: 2012
Контактная информация:

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

Сообщение laryc »

dadreamer писал(а):laryc
Вроде что-то понаписал, проверяйте =)
Спасибо за поддержку! ..но... нужно чтобы величина массива сохранялась по максимальному и минимальному значению т.е вводим индекс со значением 9 - всё замечательно ,затем вводим со значением 8 и 9 уже нет! а нужно чтобы 9 сохранился и 8 инкрементировался.. затем снова вводим идекс 9 - инкрементируется ... а 8 потерялся до 0 - одним словом чтобы ранее инкрементированные элементы сохранялись и сохранялся диапазон расширенного массива... да и ещё кнопку reset надо приладить :help:
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

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

Сообщение dadreamer »

laryc
Ну так я вам привёл пример реализации основного алгоритма. А то, что вам нужно, делается через обычный сдвиговый регистр. У вас главная программа будет наверняка работать в цикле While, на каждой итерации которого будет формироваться новый индекс. А массив будет "гулять" по регистру, изменяясь на каждой итерации согласно вышеприведенному алгоритму. И ничто не потеряется: если был индекс 9, значит так и будет 9 элементов.
laryc
beginner
beginner
Сообщения: 19
Зарегистрирован: 02 июл 2013, 14:18
Версия LabVIEW: 2012
Контактная информация:

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

Сообщение laryc »

Наверно я не очень порядочно поступаю предлагая разделить кусочек моей булочки ...при это не показывая её всю. А булка очень вкусная тем более что мы уже её попробовали. Я (мы) работаем над не коммерческим проектом по освоению физики эфира. Это не общепризнанная физика тем более Нобелевской синагогой,но тем не менее она есть (и всегда была) и мы получаем результаты на разного рода таблах и экранах. Если есть желание загляните сюда http://nerealnost.net/forum/index.php?s ... entry51582 я там laryc.. И если есть желание помочь в решении нетривиальной задачи - то милости прошу. По замыслу в конце - концов должен получиться прибор по свойствам похожий на "лозу" (см.лозоходство) только всяко разно визуализированный компьютерными средствами с соответствующей математикой. Вот сейчас варганю анализатор распределений случайной величины на xy Graf - если распределение Гаусово то движения эфира нет если логнормальное то есть движение по оси (...а оно есть проверено другими способами :wink: ..) а таких осей в пространстве три - стало быть нужна трёхмерная визуализация,а она слава богу в LabView есть.. ну в таком духе и так далее.. Если будите читать ветку читайте посты мои и Andy1744 (он строит приборы по фиксации эфирного ветра с Альфа Дракона.. я по ловле оного под носом) и Xenia (грамотная сочувствующая).. если кто есть заинтересованый - просьба помочь со своей стороны обещаю открыть все таинства ремесла,схемы ,прошивки ,исходники. Работаем на человечество..
laryc
beginner
beginner
Сообщения: 19
Зарегистрирован: 02 июл 2013, 14:18
Версия LabVIEW: 2012
Контактная информация:

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

Сообщение laryc »

dadreamer писал(а):laryc
Ну так я вам привёл пример реализации основного алгоритма.
Спасибо..покумекаю...
sdk5v3
beginner
beginner
Сообщения: 16
Зарегистрирован: 25 мар 2013, 21:08
Версия LabVIEW: 2010

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

Сообщение sdk5v3 »

Скажите пожалуйста как выделить целую часть из числа?
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

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

Сообщение dadreamer »

sdk5v3, вам поможет инструмент Quotient & Remainder. IQ - целая часть.
sdk5v3
beginner
beginner
Сообщения: 16
Зарегистрирован: 25 мар 2013, 21:08
Версия LabVIEW: 2010

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

Сообщение sdk5v3 »

dadreamer писал(а):sdk5v3, вам поможет инструмент Quotient & Remainder. IQ - целая часть.
я кстати разобрался со своей прошлой проблемой, спасибо) а для того что бы начать нормально соображать в этой мего лютой программе нужно больше книжки читать, или так же методом проб и ошибок?
Аватара пользователя
IvanLis

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

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

Сообщение IvanLis »

sdk5v3 писал(а):а для того что бы начать нормально соображать в этой мего лютой программе нужно больше книжки читать, или так же методом проб и ошибок?
И то и другое...
и как можно больше :wink:
laryc
beginner
beginner
Сообщения: 19
Зарегистрирован: 02 июл 2013, 14:18
Версия LabVIEW: 2012
Контактная информация:

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

Сообщение laryc »

Хочу поделиться одним важным выводом с теми кто решил освоить LabView и имеет опыт программирования на языках высокого уровня Сишнобэйсиковскопаскалевской конюшни. Чем в корне отличается программирование в потоке данных (LabView и G положенный в его основу) отличаются тем что переменные так любовно определяемые в других языках являются только статическими т.е. изменяются при приходе другого значения, а проводники на блок диаграмме являются именно этими переменными - других переменных НЕТ! (Правда есть процедуры объявления глобальной и локальной переменной ,но всё равно она остаётся статической) Для того чтобы увести значение переменной в начало придумали "обратную связь" и сдвиговый регистр . Если бы кто-то объянил мне этот момент на стадии знакомства с LabView то понимание пришло бы быстрее. :drink:
Аватара пользователя
dadreamer

Activity Professionalism Автор
professor
professor
Сообщения: 3926
Зарегистрирован: 17 фев 2013, 16:33
Награды: 4
Версия LabVIEW: 2.5 — 2022
Благодарил (а): 11 раз
Поблагодарили: 127 раз
Контактная информация:

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

Сообщение dadreamer »

laryc писал(а):проводники на блок диаграмме являются именно этими переменными - других переменных НЕТ!
Мне проще воспринимать провода как присвоение переменной значения, именно саму операцию :=, ну а индикаторы и контролы (и их вариации с локальными переменными и узлами свойств) как обычные переменные. Хотя это не совсем корректно, так как для индикатора/контрола :labview: выделяет отдельную область памяти, а само значение находится вовсе по другому адресу.
Рустам1990
interested
interested
Сообщения: 8
Зарегистрирован: 03 мар 2014, 12:48
Версия LabVIEW: 8

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

Сообщение Рустам1990 »

Eugen Graf, подскажите, как сделать чтобы через event structure при нажатии на стрелки (right, left, up, down) происходило увеличение определенной численной величины? Или, если понадобится, события для других клавиш, к примеру пробел.
Аватара пользователя
IvanLis

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

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

Сообщение IvanLis »

Рустам1990 писал(а):Eugen Graf, подскажите, как сделать чтобы через event structure при нажатии на стрелки (right, left, up, down) происходило увеличение определенной численной величины? Или, если понадобится, события для других клавиш, к примеру пробел.
Посмотрите пример, думаю все понятно станет:
Untitled 1.vi
lv2010
(14.77 КБ) 237 скачиваний
Рустам1990
interested
interested
Сообщения: 8
Зарегистрирован: 03 мар 2014, 12:48
Версия LabVIEW: 8

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

Сообщение Рустам1990 »

IvanLis, спасибо, пример отличный!
Тогда тут еще один вопрос из примера возникает, хоть и не по теме. Там используется reference переменной - в чем отличие reference от local variable?
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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