Это будет несколько отличаться в зависимости от используемого языка, платформы и типа ПЛК. Общий интерфейс выглядит так:
communication OPC/COM/
protocol OLE/ETC
[PLC] <-----------> [tag/data server] <-------> [YourGUIApp]
Общая идея состоит в том, что ПЛК имеет рабочий набор памяти для битов, слов и других типов данных. Через какой-либо коммуникационный протокол (Modbus, FINS, KSequence и т. д.) локальная системная служба на вашем ЧМИ/ПК будет сохранять локальный образ определенного, определяемого пользователем набора областей памяти в ПЛК, из которых ваше приложение должно либо считывать или написать в. С сервером будет связана библиотека разработки, которую вы можете импортировать в свой проект и использовать для доступа к ПЛК через эту локальную службу.
Обычно у вас есть какие-то средства для чтения из ячеек памяти в ПЛК, записи в них, и многие библиотеки также могут вызывать события, например, при изменении данных, поэтому все, что вам нужно сделать, это подключиться к событию и получить данные для каждого точки интереса данных.
К сожалению, пока вы не выбрали ПЛК и язык, может быть сложно выбрать оптимальную структуру для ваших данных. Существует немало различий в том, как описанный выше процесс работает между производителями. Не зная этого, я бы подумал, что вы можете создавать любые структуры, которые вам нравятся в вашем приложении, вам просто может понадобиться добавить еще один слой в какой-то момент, чтобы сделать последний шаг между вашей структурой данных и вызовом библиотеки ПЛК. В конце концов, вы просто передаете туда и обратно простые переменные — логические значения, целые числа, числа с плавающей запятой и т. д.
person
J...
schedule
24.02.2012