zem21
Active Forum Member / Активный участник форума
Участник № / Member № 418
отправлено / posted
Насколько я понимаю, каналы можно группировать по разным признакам, причем в одном проекте может быть сразу несколько иерархий. Однако одна из них представляется мне наиболее естественной: проект состоит из контроллеров, гальванических развязок, и т.д. ("Узлов" в терминах Трейс Моуд), в свою очередь в контроллеры вставляются платы УСО, платы УСО могут иметь некоторый набор субблоков. На самом нижнем уровне - каналы. Мне кажется логичным построить "Редактор Базы каналов" в виде "Проводника" Windows. В левой панели отобразить иерархическое дерево. Вершина иерархии - Проект. Уровнем ниже: Аппаратура, FBD программы, Экраны (неплохо бы объединить редакторы Базы каналов и Представления данных). Аппаратура раскрывается описанной выше иерархией. При нажатии правой клавиши мыши на "Аппаратуре" выводится меню, в котором есть пункт "Добавить", при выборе которого выдается диалог выбора узлов (из числа известных для Автопостроения). Аналогично, при выборе пункта меню "Добавить" для контроллеров выдается диалог выбора плат УСО, которые могут быть установлены в этот контроллер. Как определить соответствие контроллеров и плат УСО? Считаю, что хранить в описании контроллера названия всех плат УСО, которые могут в нем использоваться, как, впрочем, и наоборот, помнить для каждой платы УСО названия всех контроллеров - нецелесообразно. В будущем могут быть разработаны новые контроллеры и платы УСО. Предлагаю следующий вариант. Каждый контроллер имеет определенный набор интерфейсных разъемов (PCI, ISA, PC-104 и т.д.). Платы УСО тоже имеют определенный интерфейсный разъем. Если интерфейс не имеет общепринятого имени, можно использовать имя контроллера (например ADAM-5000). Процедура Автопостроения, зная номенклатуру и количество интерфейсных разъемов контроллера подбирает список соответственных плат УСО. Если номенклатура и количество интерфейсных разъемов для некоторого класса контроллеров может быть различным, можно позволить пользователю задать ее в свойствах узла. Впрочем ограничивать пользователя количеством интерфейсных разъемов в контроллере, по моему, нельзя, надо предусмотреть возможность многовариантной конфигурации, когда в один разъем, в зависимости от варианта исполнения (но, разумеется, не одновременно), могут вставляться различные платы УСО. Кстати, кроме пункта меню "Добавить" должен быть пункт "Удалить". Теперь о правой панели. При выборе на левой панели "Аппаратура", на правой отображаются узлы, входящие в проект, для каждого узла отображаются выводы его внешних интерфейсов (RS-485, Ethernet, CAN и т.д.), в том числе и тех, которые поддерживаются установленными платами УСО. В целом редактор выглядит аналогично редактору FBD программ. Пользователь мышкой прокладывает связи между узлами. При нажатии правой клавиши, как на узлах, так и на связях, выводятся контекстно-зависимые меню, позволяющие в т.ч. задать свойства узла, или связи. . При выборе на левой панели какого-либо контроллера, на правой отображаются его внутренние интерфейсные разъемы и платы УСО. Пользователь мышкой прокладывает связи между интерфейсными разъемами и платами УСО. Если связь с платой УСО не проведена, значит она не используется в текущей конфигурации, но на экране присутствует, а вдруг понадобится.
Сообщения / Posts 82 | Из / From: Украина
| IP / IP: IP адрес / IP address |
отправлено / posted
Именно так это и будет реализовано в ТМ6. Кроме того - данная структура будет доступана пользователю на редактирование: добавление своих ветвей и элементов структуры, а также собственных редакторов этих элементов.
Сообщения / Posts 17317 | Из / From: Россия
| IP / IP: IP адрес / IP address |