2 / 1 / 1
Регистрация: 17.10.2015
Сообщений: 17
|
|
1 | |
Примитивная система диспетчеризации17.12.2018, 22:13. Показов 2197. Ответов 7
Метки нет (Все метки)
Разрабатываю систему диспетчеризации (точнее сказать визуализации), для простеньких САУ.
Задумка в следующем: Программа должна опрашивать промышленные контроллеры по протоколу Modbus RTU, получать информацию о состоянии узлов управления и отображать. Работа программы предполагается под Windows. Приблизительный дизайн приложения набросал в paint. Состояние каждого контроллера должно отображаться в отдельном поле. В этом поле должно располагаться поле со структурной схемой системы, которой управляет контроллер (структурная схема динамическая, отображение зависит от данных с контроллера), кнопки управления, таблица со списком аварий (получаем с контроллера). Количество подключенных контроллеров не ограничиваю. Может быть несколько десятков. Когда не влазим в размеры Frame, должна появиться полоса прокрутки. Подскажите на каких компонентах и технике построить такое отображение? Так же, хорошо бы реализовать возможность сворачивания каждого окошка контроллера, и оставлять минимальную информацию - Работ\авария.
0
|
17.12.2018, 22:13 | |
Ответы с готовыми решениями:
7
Примитивная система частиц? Примитивная охранная система Поток диспетчеризации событий Swing поток диспетчеризации событий |
1246 / 858 / 265
Регистрация: 02.04.2009
Сообщений: 3,255
|
|
17.12.2018, 23:45 | 2 |
Whitephoenix1, http://zetcode.com/gfx/java2d/shapesandfills/
0
|
2 / 1 / 1
Регистрация: 17.10.2015
Сообщений: 17
|
|
18.12.2018, 08:44 [ТС] | 3 |
Kukstyler, я остался не понятным.
Как нарисовать геометрические фигуры, я знаю. Вопрос в том, какие объекты можно использовать под поля, на котором будет отображаться структурная схема, и, под общее поле для одного контроллера, на котором будут размещаться мой объект со структурной схемой, кнопки, таблица аварий и др. И как эти все объекты правильно разместить друг относительно друга. Я пытался использовать JPanel. Но разместить то я ее могу только в одном из 5 частей окна (Запад, Восток, Юг, Север, Центр). А в моем случае наверное как-то нужно использовать таблицу.
0
|
1246 / 858 / 265
Регистрация: 02.04.2009
Сообщений: 3,255
|
|
18.12.2018, 21:44 | 4 |
Зависит от
Layout . Во первых можно в каждую панель разместить ещё по несколько. А во вторых, для специфического дизайна, можно вообще всё вручную ставит, без автоматического контроля позиции и рисайзинга.Если нет необходимости видеть все панели одновременно, то вот ещё вариант: https://docs.oracle.com/javase... dpane.html
1
|
2 / 1 / 1
Регистрация: 17.10.2015
Сообщений: 17
|
|||||||||||
30.03.2019, 23:21 [ТС] | 5 | ||||||||||
Воспользовался последним советом. Вроде пошло. На первой картинке пример.
Но дальше столкнулся с новой проблемой. На вкладку нужно добавить таблицу (в дальнейшем 2 таблицы и кнопки). Но, кода добавляю таблицу, функциональная схема смещается вверх за пределы экрана. Таблица принимает размеры больше, чем количество строк. Пример на 2й картинке. Отображение JFrame: Кликните здесь для просмотра всего текста
Класс Drawer наследник JPanel, рисует функциональную схему. Кликните здесь для просмотра всего текста
Подскажите как управлять расположение элементов? Я пробовал несколько разных Layout, но подозреваю у меня ошибка в чем-то другом.
0
|
296 / 149 / 67
Регистрация: 22.02.2017
Сообщений: 592
|
|
02.04.2019, 08:47 | 6 |
Простите за грубый ответ, плюньте в рож* тому кто учит применять BorderLayout или GridLayout.
Работайте с слоями через JLayeredPane и нормальным позиционированием setLocation, и ваших проблем с геморроем позиционирования существовать не будет от слова совсем.
1
|
10 / 10 / 0
Регистрация: 02.01.2019
Сообщений: 38
|
|
03.07.2019, 19:26 | 7 |
Какой то бред накидали. Если нужна оболочка именно для винды и оба контроллера modbus RTU, TCP, Server (MQTT), аски.. без разницы именно modbus ключевое слово.. к! И еще актуально, напиши в личку, или на емаил korotkevichov@gmail.com. Накидаю быстро или в скада системе какой, или напишу прогу в VS2019 на с# или C++.. Это быстро делается. И очень просто. Че то вы не в те дебри полезли. Смотрю уже пол года тыкаетесь.
Как пример насосов накидал за 1 минуту в скада системе, фото ниже (безобразие конечно). Пример работы программирование VS: https://www.youtube.com/watch?v=i4aV2gvvHNE
0
|
2 / 1 / 1
Регистрация: 17.10.2015
Сообщений: 17
|
|
04.07.2019, 00:39 [ТС] | 8 |
Суть задачи не в том, чтобы сделать СКАДА систему под конкретный проект.
Контроллер хранить в себе информацию о системе, которой управляет. Программа должна вычитывать эту информацию и по ней рисовать схему системы, выводить все показанная датчиков, параметры. Я набросал черновой вариант: Красота хромает, главное принцип. А вообще, проект закрыл, по причине смены деятельности.
0
|
04.07.2019, 00:39 | |
04.07.2019, 00:39 | |
Помогаю со студенческими работами здесь
8
Моделирование дисциплины диспетчеризации задач Как изменить дисциплину диспетчеризации для ранее созданного потока в QNX? Примитивная рекурсия Примитивная рекурсивность Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |