Перейти к содержанию
Посмотреть в приложении

A better way to browse. Learn more.

Форум Академгородка, Новосибирск

A full-screen app on your home screen with push notifications, badges and more.

Чтобы установить это приложение на iOS и iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
Чтобы установить это приложение на Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Автоматизация рабочего процесса

Опубликовано

День добрый!

Как программист я в общем не очень силён :unsure: . Но есть необходимость разобраться с одним вопросом.

Есть достаточно сложная лабораторная установка, на которой есть приводы и датчики. Приводы соленоидного типа и шаговые двигатели перемещений, датчики температуры, перемещений (уголовой и продольный), фотодатчики. Часть из них с аналоговым, часть с цифровым выходами.

Как дешёво и сердито эти компоненты объединить в единую автоматизированную систему? Есть ли специальные программы для персональных компьютеров, которые могут управлять всем процессом? Закономерность работы установки достаточно сложная, её необходимо будет настраивать фактически каждый раз заново, поэтому необходима гибкая программная среда с возможностью подстройки параметров входа-выхода. Насколько эта программа сложна для освоения технарём, ранее с ней не работавшим?

ПС: Прошу за дилетанство сильно не пинать...

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

Опубликовано

Задачка интересная, но сложная. Занимался подобным и советую не наступить на те же грабли как и я, сделайте сначала нормальный контролер для сигналов, я на базе ком-портов делать начал, и они быстро у меня элементарно кончились, потом пришлось вообще все переписывать под новый контролер. Кстати писать советую на pure C под дос, потом проще портировать будет. По срокам у меня примерно год ушел, первые месяцев 8-9 просто учился сигнал в удобоваримую форму переводить, кажется все просто, а не тут то было, у производителей термина калибровка вообще похоже не было.

ЗЫ Я микрофрезерный станок с возможностью копирования мучил. В итоге прикольная штука получилась.

Опубликовано
  • Автор
Задачка интересная, но сложная. Занимался подобным и советую не наступить на те же грабли как и я, сделайте сначала нормальный контролер для сигналов, я на базе ком-портов делать начал, и они быстро у меня элементарно кончились, потом пришлось вообще все переписывать под новый контролер. Кстати писать советую на pure C под дос, потом проще портировать будет. По срокам у меня примерно год ушел, первые месяцев 8-9 просто учился сигнал в удобоваримую форму переводить, кажется все просто, а не тут то было, у производителей термина калибровка вообще похоже не было.

ЗЫ Я микрофрезерный станок с возможностью копирования мучил. В итоге прикольная штука получилась.

Ларрик, можно уточнить.

На каком варианте контроллера Вы остановились, какие подводные камни при использовании других контроллеров? Если ли на него какие ссылки, описания, характеристики?

ПС: LabVIEW посмотрел, вроде близко к требуемому, до конца ещё не ознакомился. Радует, что программу можно руссифицировать. Для меня это полезная соломина :D

Опубликовано
Если ли на него какие ссылки, описания, характеристики?

Рукоделанный, Вы я так понимаю в институте? мне сделали за пару дней, я дольше объяснял что нужно сделать, у меня всего 18 каналов было в итоге, но с этими "радиолюбителями" я секаса поимел, они конечно все отлично сделали, но не знают какой сигнал пойдет.

Опубликовано
Если бы я заново начал это писать то ЮСБ2.0 использовал, там хоть документации кучи в отличии от ком-портов
Опубликовано
Не связывайтесь с рукодельными контроллерами. Ничего сложного тут нет. Купите готовую плату ввода/вывода. И не нужно будет никакого геморроя с DOS, как вам тут насоветовали. Всё будет работать из Windows и из LabVIEW, если захотите.

Я так же начинал :) Человек видимо хочет сделать чтобы это работало, а не на отбейся, а готовые платы не лучше и не хуже заказных, только я так понимаю что он еще и не начинал в это лезть, поэтому и советы сразу даю, я бы сейчас в это опять не полез, спасибо, нервы не железные.

Опубликовано
  • Автор
Я так же начинал :) Человек видимо хочет сделать чтобы это работало, а не на отбейся, а готовые платы не лучше и не хуже заказных, только я так понимаю что он еще и не начинал в это лезть, поэтому и советы сразу даю, я бы сейчас в это опять не полез, спасибо, нервы не железные.

Да, именно с этим прицелом и спрашиваю, чтобы время зазря не терять на бесполезные блуждания...

Опубликовано

1. Без указания времён процессов, происходящих в установке что-либо советовать сложно. Чем меньше время - тем дороже и железо и софт

2. Сколько сигналов всего? Чем больше - тем больше контроллеров.

3. Какая нужна точность сигналов? Ооочень влияет на железо и инструмент

 

В зависимости от ответов это может быть что-либо примитивное из "сделай сам и опроси по КОМ-порту", либо уже что-то интереснее.

 

 

Опубликовано

Если основная ваша деятельность научно-исследовательская работа, то не стоит заморачиватья с самодельными и заказными платами, как уже выше советовали проще взять LabVIEW, и к примеру готовые платы АЦП/ЦАП и цифрового ввода-вывода так же National Instruments.

А если интересно именно "помучиться", я в свое время делал подобную систему на китовых платах, брал АЦП типа http://www.terraelectronica.ru/news_made.php?ID=8, плату на ARM9 (сейчас их пруд пруди) например http://starterkit.ru/html/index.php?name=shop&op=view&id=23, на нее ставил линукс, это был, по сути контроллер который общался с платой АЦП, и по TCP/IP передавал информацию на компьютер, а для цифрового ввода вывода использовал GPIO контроллера. Но такой велосипед был больше нужен для самообразования, для серьезной работы лучше купить готовые системы.

 

  • 3 месяца спустя...
Опубликовано
  • Автор

По ходу разбора возник вопрос обмена данными между собственно LabView и датчиками.

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

Стоит ли рассматривать для установки датчики, которые имеют встроенный контроллер RS232/485?

 

Опубликовано
По ходу разбора возник вопрос обмена данными между собственно LabView и датчиками.

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

Стоит ли рассматривать для установки датчики, которые имеют встроенный контроллер RS232/485?

Берете платуы ввода-вывода, цепляете к ним ваши датчики/двигатели/еще что - получаете это все в Labview.

Камень в LabView - какой либо алгоритм (не идущий в LabView) реализовывать на языке G не сильно весело.

Бюджетные платы ввода-вывода: Adlink.

  • 2 недели спустя...
Опубликовано
Камень в LabView - какой либо алгоритм (не идущий в LabView) реализовывать на языке G не сильно весело.

Не очень понял данную фразу. Если приноровиться, то в LabVIEW можно писать довольно быстро и весело программы любой сложности :) Чем я собственно и занимаюсь.

 

Вообще могу посоветовать неплохой форум по LabVIEW - В своё время многому там научился.

 

Ну и присоединюсь к предыдущим постам на тему оборудования. Проще всего и удобнее взять готовые устройства от NI. Есть, например, не очень дорогие многофункциональные USB:

http://sine.ni.com/np/app/main/p/bot/no/ap...igenso7+default

Подбирать конечно нужно под конкретные требования:

Частота АЦП, разрядность, количество каналов, диапазон напряжений и пр.

 

В LabVIEW работать с оборудованием NI - одно удовольствие, есть куча готовых функций.

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

Опубликовано
Камень в LabView - какой либо алгоритм (не идущий в LabView) реализовывать на языке G не сильно весело.

Не очень понял данную фразу. Если приноровиться, то в LabVIEW можно писать довольно быстро и весело программы любой сложности :) Чем я собственно и занимаюсь.

 

Писать на LabView какую либо серьезную мат. обработку сложно, если ее нет в самой labview (из-за кривости языка).

Любой инструмент хорош, если соответствует задаче.

 

LabView хороша для задач - нажал сюда, открыл этот клапан, загорелась эта лампочка.

Превышен порог - стало красным это, закрылось это.

Опубликовано
Писать на LabView какую либо серьезную мат. обработку сложно, если ее нет в самой labview (из-за кривости языка).

Да, согласен. Просто из стандартных блоков какую-то сложную формулу составить будет непросто. В этом случае для простых вещей удобно пользоваться Formula Node, а если мат. обработка ещё более сложная, то удобно использовать Matlab (в LabVIEW с помощью MATLAB script выполнять М-файлы).

 

Любой инструмент хорош, если соответствует задаче.

LabView хороша для задач - нажал сюда, открыл этот клапан, загорелась эта лампочка. Превышен порог - стало красным это, закрылось это.

Да кто бы спорил :)

LabVIEW отлично подходит для автоматизированных систем научных исследований и чуть хуже для автоматизированных систем управления технологическим процессом. И в этих областях с помощью LabVIEW можно быстро и легко делать довольно сложные вещи.

А если используется оборудование NI, то простота и удобство возрастают ещё сильнее.

 

Это очевидно что для каждой задачи лучше всего подходит свой инструмент. Никто в здравом уме не будет писать на LabVIEW интернет-магазин :) Но насколько я понимаю для задачи ТСа LabVIEW подходит идеально :)

  • 1 месяц спустя...
Опубликовано
  • Автор
Спасибо всем откликнувшимся. Решено использовать LabView с контроллерами NI. Дорого и сердито, но быстро и качественно.

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

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

Гость
Ответить в этой теме...

Аккаунт

Навигация

Поиск

Поиск

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.