Советы по программированию на LabVIEW
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Советы по программированию на LabVIEW
laryc
Вроде что-то понаписал, проверяйте =)
Вроде что-то понаписал, проверяйте =)
- Вложения
-
- Inc_Array_Upd.vi
- LV 2O11
- (12.27 КБ) 226 скачиваний
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Советы по программированию на LabVIEW
sdk5v3
Смотря в чём у вас там ошибка. Но судя по скриншоту, что вы приводили, проблема может быть в трех (как минимум) вещах: неправильно заданное условие выхода из цикла, неверно введенная формула и Feedback Node, который там ни к месту. Я склонясь к последнему варианту. Замените Feedback Node на сдвиговый регистр и посмотрите, что получится. Заодно в книжке по про сдвиговые регистры почитайте.
Смотря в чём у вас там ошибка. Но судя по скриншоту, что вы приводили, проблема может быть в трех (как минимум) вещах: неправильно заданное условие выхода из цикла, неверно введенная формула и Feedback Node, который там ни к месту. Я склонясь к последнему варианту. Замените Feedback Node на сдвиговый регистр и посмотрите, что получится. Заодно в книжке по про сдвиговые регистры почитайте.
-
- beginner
- Сообщения: 19
- Зарегистрирован: 02 июл 2013, 14:18
- Версия LabVIEW: 2012
- Контактная информация:
Re: Советы по программированию на LabVIEW
Спасибо за поддержку! ..но... нужно чтобы величина массива сохранялась по максимальному и минимальному значению т.е вводим индекс со значением 9 - всё замечательно ,затем вводим со значением 8 и 9 уже нет! а нужно чтобы 9 сохранился и 8 инкрементировался.. затем снова вводим идекс 9 - инкрементируется ... а 8 потерялся до 0 - одним словом чтобы ранее инкрементированные элементы сохранялись и сохранялся диапазон расширенного массива... да и ещё кнопку reset надо приладитьdadreamer писал(а):laryc
Вроде что-то понаписал, проверяйте =)
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Советы по программированию на LabVIEW
laryc
Ну так я вам привёл пример реализации основного алгоритма. А то, что вам нужно, делается через обычный сдвиговый регистр. У вас главная программа будет наверняка работать в цикле While, на каждой итерации которого будет формироваться новый индекс. А массив будет "гулять" по регистру, изменяясь на каждой итерации согласно вышеприведенному алгоритму. И ничто не потеряется: если был индекс 9, значит так и будет 9 элементов.
Ну так я вам привёл пример реализации основного алгоритма. А то, что вам нужно, делается через обычный сдвиговый регистр. У вас главная программа будет наверняка работать в цикле While, на каждой итерации которого будет формироваться новый индекс. А массив будет "гулять" по регистру, изменяясь на каждой итерации согласно вышеприведенному алгоритму. И ничто не потеряется: если был индекс 9, значит так и будет 9 элементов.
-
- beginner
- Сообщения: 19
- Зарегистрирован: 02 июл 2013, 14:18
- Версия LabVIEW: 2012
- Контактная информация:
Re: Советы по программированию на LabVIEW
Наверно я не очень порядочно поступаю предлагая разделить кусочек моей булочки ...при это не показывая её всю. А булка очень вкусная тем более что мы уже её попробовали. Я (мы) работаем над не коммерческим проектом по освоению физики эфира. Это не общепризнанная физика тем более Нобелевской синагогой,но тем не менее она есть (и всегда была) и мы получаем результаты на разного рода таблах и экранах. Если есть желание загляните сюда http://nerealnost.net/forum/index.php?s ... entry51582 я там laryc.. И если есть желание помочь в решении нетривиальной задачи - то милости прошу. По замыслу в конце - концов должен получиться прибор по свойствам похожий на "лозу" (см.лозоходство) только всяко разно визуализированный компьютерными средствами с соответствующей математикой. Вот сейчас варганю анализатор распределений случайной величины на xy Graf - если распределение Гаусово то движения эфира нет если логнормальное то есть движение по оси (...а оно есть проверено другими способами ..) а таких осей в пространстве три - стало быть нужна трёхмерная визуализация,а она слава богу в LabView есть.. ну в таком духе и так далее.. Если будите читать ветку читайте посты мои и Andy1744 (он строит приборы по фиксации эфирного ветра с Альфа Дракона.. я по ловле оного под носом) и Xenia (грамотная сочувствующая).. если кто есть заинтересованый - просьба помочь со своей стороны обещаю открыть все таинства ремесла,схемы ,прошивки ,исходники. Работаем на человечество..
-
- beginner
- Сообщения: 19
- Зарегистрирован: 02 июл 2013, 14:18
- Версия LabVIEW: 2012
- Контактная информация:
Re: Советы по программированию на LabVIEW
Спасибо..покумекаю...dadreamer писал(а):laryc
Ну так я вам привёл пример реализации основного алгоритма.
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Советы по программированию на LabVIEW
sdk5v3, вам поможет инструмент Quotient & Remainder. IQ - целая часть.
Re: Советы по программированию на LabVIEW
я кстати разобрался со своей прошлой проблемой, спасибо) а для того что бы начать нормально соображать в этой мего лютой программе нужно больше книжки читать, или так же методом проб и ошибок?dadreamer писал(а):sdk5v3, вам поможет инструмент Quotient & Remainder. IQ - целая часть.
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 87 раз
Re: Советы по программированию на LabVIEW
И то и другое...sdk5v3 писал(а):а для того что бы начать нормально соображать в этой мего лютой программе нужно больше книжки читать, или так же методом проб и ошибок?
и как можно больше
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 19
- Зарегистрирован: 02 июл 2013, 14:18
- Версия LabVIEW: 2012
- Контактная информация:
Re: Советы по программированию на LabVIEW
Хочу поделиться одним важным выводом с теми кто решил освоить LabView и имеет опыт программирования на языках высокого уровня Сишнобэйсиковскопаскалевской конюшни. Чем в корне отличается программирование в потоке данных (LabView и G положенный в его основу) отличаются тем что переменные так любовно определяемые в других языках являются только статическими т.е. изменяются при приходе другого значения, а проводники на блок диаграмме являются именно этими переменными - других переменных НЕТ! (Правда есть процедуры объявления глобальной и локальной переменной ,но всё равно она остаётся статической) Для того чтобы увести значение переменной в начало придумали "обратную связь" и сдвиговый регистр . Если бы кто-то объянил мне этот момент на стадии знакомства с LabView то понимание пришло бы быстрее.
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Советы по программированию на LabVIEW
Мне проще воспринимать провода как присвоение переменной значения, именно саму операцию :=, ну а индикаторы и контролы (и их вариации с локальными переменными и узлами свойств) как обычные переменные. Хотя это не совсем корректно, так как для индикатора/контрола выделяет отдельную область памяти, а само значение находится вовсе по другому адресу.laryc писал(а):проводники на блок диаграмме являются именно этими переменными - других переменных НЕТ!
-
- interested
- Сообщения: 8
- Зарегистрирован: 03 мар 2014, 12:48
- Версия LabVIEW: 8
Re: Советы по программированию на LabVIEW
Eugen Graf, подскажите, как сделать чтобы через event structure при нажатии на стрелки (right, left, up, down) происходило увеличение определенной численной величины? Или, если понадобится, события для других клавиш, к примеру пробел.
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 87 раз
Re: Советы по программированию на LabVIEW
Посмотрите пример, думаю все понятно станет:Рустам1990 писал(а):Eugen Graf, подскажите, как сделать чтобы через event structure при нажатии на стрелки (right, left, up, down) происходило увеличение определенной численной величины? Или, если понадобится, события для других клавиш, к примеру пробел.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- interested
- Сообщения: 8
- Зарегистрирован: 03 мар 2014, 12:48
- Версия LabVIEW: 8
Re: Советы по программированию на LabVIEW
IvanLis, спасибо, пример отличный!
Тогда тут еще один вопрос из примера возникает, хоть и не по теме. Там используется reference переменной - в чем отличие reference от local variable?
Тогда тут еще один вопрос из примера возникает, хоть и не по теме. Там используется reference переменной - в чем отличие reference от local variable?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 3 Ответы
- 2068 Просмотры
-
Последнее сообщение PozhiloyGoblin
-
- 0 Ответы
- 344 Просмотры
-
Последнее сообщение maxim_MA
-
- 23 Ответы
- 2423 Просмотры
-
Последнее сообщение dadreamer
-
- 2 Ответы
- 391 Просмотры
-
Последнее сообщение ujin1
-
- 5 Ответы
- 847 Просмотры
-
Последнее сообщение dadreamer