Почему люди не используют LabVIEW для других целей, кроме сбора данных и виртуализации? [закрыто]

Вы можете использовать символ по часовой стрелке (U + 21BB) :

.arrow {
  display: inline-block;
  font-size: 300px;
  line-height: 200px;
  font-weight: bold;
  transform: rotate(90deg);
}

20
задан Simon Hayter 31 January 2013 в 19:18
поделиться

12 ответов

Я использую LabView дома , поскольку это часть Lego Mindstorms, которую любит мой сын. И мне очень нравится, как составлять подобные системы.

Однако в моей работе (встроенные системы) он обычно носит слишком ограничительный характер. Но и здесь я пытаюсь продвинуться в абстракции: - управление и поведение состояния: дизайн на основе модели (например, Rhapsody) - алгоритмы данных и т. д. Simulink

Иногда графическая модель может потребовать больше кликов, чем кусок кода. Но это также включает в себя работу, которую хороший программист должен делать в области дизайна и документации; не только набор кода. Графическая нотация избавляет от многих проблем и, как правило, работает намного быстрее, если инструмент достаточно мощный для данной сложности. Поэтому я ожидаю, что такие инструменты станут более популярными в ближайшие годы, по мере их развития и знакомства с ними.

иногда соединение для кода Labview может стать слишком сложным и становится невозможным комментировать, отлаживать и расширять для любых будущих изменений. Я предлагаю взглянуть на Measurement Studio для Visual Studio и использовать ваш любимый язык .NET с красивыми элементами управления NI.

27
ответ дан 29 November 2019 в 22:29
поделиться

Я использую LabVIEW около двух лет для разработки автоматизации. Если уделить должное внимание и правильно спроектировать, мы уверены, что сможем разработать поддерживаемое и действительно красивое приложение в LabVIEW. Я думаю, что это то же самое для всех других языков. Я видел такой же плохой код в LabVIEW, в основном, от людей, которые используют его только для разработки быстрой и грязной работы автоматизации. IMHO Графическое программирование намного проще кодировать и понимать, если все сделано правильно. Но при этом я считаю, что текстовое программирование «кажется» более мощным! LabVIEW в первую очередь ориентирован на промышленную автоматизацию, имеет встроенную поддержку для большого количества оборудования NI, и вы можете довольно быстро заставить оборудование сторонних производителей работать с ним. Думаю, поэтому вы видите это только в области автоматизации. Более того, это довольно дорого, и вы заблокированы NI, поскольку вы не можете даже открыть свой код, если не купите у них программное обеспечение!

0
ответ дан 29 November 2019 в 22:29
поделиться

We use LabVIEW for running our end of line test equipment and it is ideal for data acquisition and control. Typically measuring 15 to 80 differential voltages and controlling environmental chambers, mass flow controllers and various serial devices LabVIEW is more than capable.

Interfacing with custom devices can be simplified greatly by using the NI instrument driver wizard to create reusable VI's, interfacing with custom dll's if needed. On a number of projects we have created such drivers for custom hardware and once created there are reusable in future projects with no modification.

Using event driven structures user interfaces are responsive and we regularly use LabVIEW applications to interface with a database.

Whatever programming environment you choose it's the process of designing the application that matters most. I agree that you can create some really horrible and unreadable block diagrams in LabVIEW but then you can also create unreadable code in Visual studio. With just a little thought and planning a LabVIEW block diagram can be made to fit on a single 24" monitor with plenty of space to add comments.

I would use LabVIEW over Visual Studio for most projects.

2
ответ дан 29 November 2019 в 22:29
поделиться

Я думал, что LabVIEW - это мечта программирования ПЛИС. Независимые исполняемые блоки просто ... работают. В общем, я использую LabVIEW для различных задач, связанных с моим оборудованием DAQ и FPGA, но это все. Мне кажется (опять же), что это сильная сторона LabVIEW и причина, по которой он был создан, но за пределами этой области он кажется «громоздким». Что касается выполнения задач, то это как любой другой язык с кривой обучения - как только вы это разберетесь, это не так уж плохо для выполнения работы. Я видел, как несколько человек сдавались, считая, что кривая обучения была постоянной или что-то в этом роде.

Покупка 30-дюймового монитора имела огромное значение.

Я знаю, что людям не нравится интеграция системы контроля версий.

12186] Edit: LabVIEW / оборудование стоит hella дорого за "

6
ответ дан 29 November 2019 в 22:29
поделиться

Два моих опыта с «графической альтернативой [ям] традиционному текстовому программированию» были ужасными. Я нахожу такие языки медленными в использовании, трудными для редактирования и невыразительными. Отладка их - кошмар. И они не дают никаких реальных преимуществ.

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

19
ответ дан 29 November 2019 в 22:29
поделиться

Я действительно использую LabView дома , так как это часть Lego Mindstorms, которую любит мой сын. И мне очень нравится, как составлять подобные системы.

Однако в моей работе (встроенные системы) он обычно носит слишком ограничительный характер. Но и здесь я пытаюсь продвинуться в абстракции: - управление и поведение состояния: дизайн на основе модели (например, Rhapsody) - алгоритмы данных и т. д. Simulink

Иногда графическая модель может потребовать больше кликов, чем кусок кода. Но это также включает в себя работу, которую хороший программист должен делать в области дизайна и документации; не только набор кода. Графическая нотация избавляет от многих проблем и, как правило, работает намного быстрее, если инструмент достаточно мощный для данной сложности. Поэтому я ожидаю, что такие инструменты станут более популярными в ближайшие годы, по мере их развития и знакомства с ними.

0
ответ дан 29 November 2019 в 22:29
поделиться

Наша компания использует LabVIEW в течение последних 10 лет для измерения, мониторинга и создания отчетов по нашему объекту (поездам).
Недавно мы начали использовать LabVIEW в качестве графического интерфейса для баз данных с большим количеством данных. Возможности LabVIEW с недавно появившимися новыми функциями (классы, XControls) позволяют создавать графические интерфейсы такого типа за небольшую часть затрат на разработку на других платформах. Хотя нам не нужны внешние программисты по ставке консультанта.

Ton

6
ответ дан 29 November 2019 в 22:29
поделиться

Но люди действительно используют LabView для других целей, кроме сбора данных и виртуализации. Конечно, LabVIEW в основном используется в лабораториях и производственных средах, потому что он является (или был) одной из основных целей клиентов NI.

Однако вы можете делать много разных вещей с помощью LabVIEW, например, программировать робота, который будет много работать. анализа изображений, а затем опубликовать результаты в Твиттере. Посмотрите видео с NI Week 2009 на YouTube, и вы поймете, насколько мощным является этот инструмент. Например, есть возможность написать код и развернуть его на ARM MCU (см. статью Dev Monkey от 2009.08.10).

И, наконец, проверьте эту группу DIY LabVIEW

2
ответ дан 29 November 2019 в 22:29
поделиться

Я думал над этим вопросом десятилетиями (да, с 1989 года ...)

Как и все языков программирования, LabVIEW - это инструмент высокого уровня, используемый для управления потоком электронов. Если вы не пурист и не отказываетесь использовать что-либо, кроме макета и проводов; транзисторы, интегральные схемы и языки программирования, вероятно, полезны, если вы хотите создать что-то значимое.

Но, как и все инструменты высокого уровня, простое владение одним не делает вас профессиональным мастером. Еще во времена паяльников, операционных усилителей и UART требовалось тщательное изучение, прежде чем можно было создать действительно работающую систему. В современном мире текстовых языков настолько преобладает синтаксис, что программист должен понять его прямо перед тем, как он будет скомпилирован и запущен. Чтобы написать работающий код, программист должен повысить свой уровень навыков, чтобы создавать системы, намного превосходящие «Hello World».

В LabVIEW преобладает не синтаксис, а поток данных. День назад, Достижение шаблона блок-схемы и разработка диаграммы хорошо сбалансированной информационной системы было искусством и красотой части работы. Только после того, как у вас будет в руках проверенная блок-схема, вы даже сможете подумать о том, чтобы проделать утомительную работу по выбиванию кода. (да ... перфокарты)

LabVIEW - это система разработки, которая позволяет программисту использовать инструменты построения диаграмм для построения диаграммы всей информационной системы и нажатия кнопки «запустить» ..... LabVIEW «вырезает код» и компилирует это для вас. Нет необходимости бороться с синтаксисом текстового языка A или языка B.

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

Люди часто указывают на то, что «LabVIEW хорош только для разработки больших систем сбора данных». Возможно, этим людям стоит подумать о профессионализме ученых и инженеров, работающих над сбором данных. Если они знают достаточно, чтобы правильно подобрать провода для датчиков и преобразователей, то можно поспорить, что они также являются экспертами в разработке схем подключения LabVIEW.

1
ответ дан 29 November 2019 в 22:29
поделиться

Labview может быть использован для создания больших, сложных программных проектов. Labview, несомненно, гораздо более интересен в использовании, чем язык, основанный на синтаксисе. Я программировал математически плотные динамические симуляции с помощью labview. Более новые версии Labview включают в себя множество интересных функций, особенно для использования нескольких процессоров. Labview мне очень нравится. Но я никому его не рекомендую.

К сожалению, это абсолютный кошмар для всего, кроме простого приобретения и отображения. Возможно, однажды он будет достаточно развит, чтобы его можно было рассматривать как жизнеспособную альтернативу текстовым языкам. Тем не менее, разработчики в NI постоянно игнорируют три фундаментальные проблемы, которые чумят labview.

1) Он нестабилен и избалован ошибками. Существуют тысячи ошибок, которые были размещены на форумах поддержки labview и которые еще не исправлены. Некоторые из них достаточно серьезные, такие как утечка памяти или математические ошибки в основных функциях.

2) Документация ужасна. Чаще всего, когда вы ищете помощь с функцией labview в локальном файле справки, вы найдете предложение, которое просто переформулирует имя элемента, на котором вы пытаетесь найти какую-то деталь. Например, пользователь ищет файл справки в настройках режима текстурной фильтрации, и единственное, что написано в файле справки - "Режим текстурной фильтрации - выбирает режим, используемый для текстурной фильтрации". Спасибо. Это все проясняет, не так ли? В этом проблема гораздо глубже; довольно часто, когда вы обращаетесь к техническому представителю национальных инструментов с просьбой предоставить критические подробности о функциональности лабиринта или специфическом поведении математических функций, они просто не знают, как работают функции в их собственной библиотеке. Это может звучать как преувеличение, но поверьте мне, это не так.

3) Хотя не исключено, что графический код будет чистым и хорошо документированным, Labview создан для того, чтобы сделать эти задачи и сложными, и неэффективными. Чтобы ваш код не стал запутанным и запутанным, вы должны регулярно (каждые несколько операций) использовать такие структуры, как кластеры, а также элементы управления, определяемые субвизорами и гигантскими типами (которые могут растягиваться на несколько экранов в большом проекте). Эти структуры съедают память и разрушают производительность, заставляя лабораторию делать несколько копий данных в памяти и выполнять безвозмездные операции... все для того, чтобы графическая диаграмма не выглядела как радужные спагетти без комментариев и текста нигде на виду. Программирование в labview похоже на игру в словарь с дьяволом. Представьте себе свой гигантский программный проект, написанный в виде настенной блок-схемы без слов. Теперь представьте, что все линии пересекаются тысячу раз, так что проследить поток данных совершенно невозможно. Вы только что предусмотрели самый естественный и эффективный способ программирования в labview.

Labview - это круто. Labview становится лучше с каждым новым релизом. Если National Instruments будет продолжать его улучшать, то однажды это будет здорово как общий язык программирования. Сейчас это очень плохой выбор в качестве платформы для разработки программного обеспечения для больших или логически сложных проектов.

.
14
ответ дан 29 November 2019 в 22:29
поделиться

Кто-то сказал, что LabView судится только в области автоматизации. Просто не пишут вообще. Она находит применение в цифровой обработке сигналов, системах управления, коммуникациях, Web-based, математике, обработке изображений и так далее. Он начинался как метод сбора данных, и они придумали название Virtual Instrumentation, но сейчас он вышел далеко за эти рамки. Это научный язык программирования с непревзойденным графическим интерфейсом. Он выходит далеко за рамки Simulink, и если вам нравится Matlab, то в него встроен тип сценариев Matlab для тех, кому нравятся такие способы программирования. Он постоянно развивается. Единственное, что мне показалось сложным, это написание кода для Compact Rio - непросто, но гораздо проще, чем альтернатива. Это дорого, но вы получаете качественный продукт. Лично я не нашел ни одной ошибки в обычном программировании. Это инженерный язык, но любой может использовать его для программирования.

0
ответ дан 29 November 2019 в 22:29
поделиться

Я использую LabView уже около 10 лет. Она великолепна для научного программирования, т.е. как Matlab или Simulink, но в 10 раз лучше. Если у вас возникают проблемы, значит, вы что-то делаете неправильно. Как и любой другой язык, он требует времени для изучения. Что касается использования .Net вместо этого - эти люди вообще живут на одной планете? Зачем вам писать все с нуля, если вы можете взять FFT и т.д. и использовать уже написанный код. .NET хорош для простых программ, но не так хорош для научной обработки. Да, вы можете это сделать, но не без множества дополнений для графики и т.д. Программирование в G намного проще, чем в текстовом формате для решения научных задач. Конечно, вы можете программировать на c, если вы взаимодействуете с ним и используете dll. Сейчас есть вещи, для которых я бы не стал использовать LabView - например, распознавание речи в настоящее время может быть немного запутанным. Однако, более того, почему людям нравится программировать в устаревшей текстовой форме, когда есть простая альтернатива. Такое впечатление, что люди хотят все усложнить, чтобы хоть как-то оправдать свою работу. Упрощайте упрощайте!

0
ответ дан 29 November 2019 в 22:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: