Jump to content

Linux как платформа для АСУТП


Recommended Posts

Здравствуйте, уважаемые гуру. Передо мной стоит такая задача. Необходимо разработать программно-технический комплекс (ПТК) для реализации промышленных АСУТП, в частноти для контроля и управления конвейерными установками. (некий аналог Саргон). Программную часть решено организовать на linux. Ниже перечислены общие требования и мои вопросы:

1. Непосредственно система управления и контроля, которая делится на 2 составляющие - контроллерную и PC. PC-составляющая должна иметь:

- графический интерфейс для отображения мнемосхем,

- возможность работы с базой данных (см. ниже),

- возможность работы в сети с контроллерной составляющей;

Контроллерная составляющая:

- графический интерфейс не нужен,

- также необходима рабта с БД,

- возможность работы в сети с PC-составляющей;

- доступ к контроллеру по FTP, SSH, возможно WEB-интерсейс (скорее всего этот пункт будет реализоваться возможностями ОС).

К этой части ПТК предъявляется очень важное требование - данная система должна являться системой реального времени, то есть должна беспечивать требуемый уровень сервиса (применительно к АСУТП - обработку входных сигналов) в определённый промежуток времени. В связи с этим вопросы:

- какой дистрибутив лучше выбрать для установки на контроллеры и какой для работы на автоматизированных рабочих местах (АРМ)?

- Какой язык выбать для разработки?

- Какое выбрать графическое окружение?

2. База данных. Планируется использование единой БД как на этапе разработки, так и на этапе эксплуатации. Запись в базу будет осуществляться с часотой от 1 часа до 0,1 секунды.

Какаую базу, исходя из этих требований, лучше выбрать?

3. Среда программирования алгоритмов управления и преобразования информации - программных моделей. В современных ПТК программные модели реализуются в виде откомпилированных бинарных файлов, я же хочу реализовать их в виде скриптов на каком-либо языке, возможно с преобразованием их из функциональных блочных диаграмм (FBD). Таким образом это будет программа с графическим интерфейсом, текстовым редактором, редактором диаграмм и возможно с отладчиком программных моделей. Вопрос тот же:

Какой язык выбать для разработки?

В общем, это пока все. Постараюсь обновлять пост при появлении новых вопросов. Также прошу строго не судить, к критике отнесусь спокойно и с пониманием Smile

Link to post
Share on other sites

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

remm писал(а) Sun, 30 August 2009 21:56

1. Непосредственно система управления и контроля, которая делится на 2 составляющие - контроллерную и PC. PC-составляющая должна иметь:

- графический интерфейс для отображения мнемосхем,

- возможность работы с базой данных (см. ниже),

- возможность работы в сети с контроллерной составляющей;

Контроллерная составляющая:

- графический интерфейс не нужен,

- также необходима рабта с БД,

- возможность работы в сети с PC-составляющей;

- доступ к контроллеру по FTP, SSH, возможно WEB-интерсейс (скорее всего этот пункт будет реализоваться возможностями ОС)...

В связи с этим вопросы:

- какой дистрибутив лучше выбрать для установки на контроллеры и какой для работы на автоматизированных рабочих местах (АРМ)?

Если будет использоваться специализировання аппаратура, то этот вопрос нужно согласовать с её поставщиком. Иначе - любой распространенный дистрибутив. Для контроллера - достаточно стабильный и надежный. Из свободных это debian или centos. Из коммерческих - RHEL или SLES. На рабочих местах - если персонал привык к венде, то, наверное, ubuntu (при прочих равных будет меньше глупых вопросов).

Цитата:

- Какой язык выбать для разработки?

Для ПО контроллера - думаю, C. Его плюсы - скорость, непрожорливость и распространенность. Для ПО рабочих мест - любой. А вообще - это зависит от разработчиков. Не заставите же вы их специально изучать к примеру python. Smile

Цитата:

- Какое выбрать графическое окружение?

Наверное, GTK как наиболее распространенное, если уже не подсели на что другое.

Цитата:

2. База данных. Планируется использование единой БД как на этапе разработки, так и на этапе эксплуатации. Запись в базу будет осуществляться с часотой от 1 часа до 0,1 секунды.

Какаую базу, исходя из этих требований, лучше выбрать?

Этим требованиям удовлетворяет практически любая БД. Наиболее распространенные из свободных - mysql postpresgl.

Цитата:

3. Среда программирования алгоритмов управления и преобразования информации - программных моделей. В современных ПТК программные модели реализуются в виде откомпилированных бинарных файлов, я же хочу реализовать их в виде скриптов на каком-либо языке, возможно с преобразованием их из функциональных блочных диаграмм (FBD). Таким образом это будет программа с графическим интерфейсом, текстовым редактором, редактором диаграмм и возможно с отладчиком программных моделей. Вопрос тот же:

Какой язык выбать для разработки?

Здесь я не советчик, так как не представляю, что должно быть в резутьтате.

Link to post
Share on other sites

remm писал(а) Sun, 30 August 2009 21:56

1. Непосредственно система управления и контроля, которая делится на 2 составляющие - контроллерную и PC. PC-составляющая должна иметь:

- графический интерфейс для отображения мнемосхем,

- возможность работы с базой данных (см. ниже),

- возможность работы в сети с контроллерной составляющей;

Контроллерная составляющая:

- графический интерфейс не нужен,

- также необходима рабта с БД,

- возможность работы в сети с PC-составляющей;

- доступ к контроллеру по FTP, SSH, возможно WEB-интерсейс (скорее всего этот пункт будет реализоваться возможностями ОС).

К этой части ПТК предъявляется очень важное требование - данная система должна являться системой реального времени, то есть должна беспечивать требуемый уровень сервиса (применительно к АСУТП - обработку входных сигналов) в определённый промежуток времени. В связи с этим вопросы:

- какой дистрибутив лучше выбрать для установки на контроллеры и какой для работы на автоматизированных рабочих местах (АРМ)?

Для ОСРВ вам нужен дистрибутив РВ, это или MontaVista, или QNX, или ещё что-нибудь — смотрите, сравнивайте, выбирайте. Здесь ВАМ надо становиться экспертом и выбирать исходя из условий задачи, а не полагаться на чужие мнения.

Цитата:

- Какой язык выбать для разработки?

C, понятное дело. ASM в Linux непопулярен, C++ и др. более ориентированы на GUI. GUI же писать на C++, C, Java, Python — особой роли не играет. Даже web-решение, думаю, пойдёт.

Цитата:

- Какое выбрать графическое окружение?

Никакого. Если вам не нужна универсальная машина, а вам не нужна универсальная машина, то вы предоставляете голый X сервер и голую программу для управления.

Цитата:

2. База данных. Планируется использование единой БД как на этапе разработки, так и на этапе эксплуатации. Запись в базу будет осуществляться с часотой от 1 часа до 0,1 секунды.

Какаую базу, исходя из этих требований, лучше выбрать?

Одна запись в 0.1 сек — это вообще не скорость, с этим справится седая бабушка.

Цитата:

3. Среда программирования алгоритмов управления и преобразования информации - программных моделей. В современных ПТК программные модели реализуются в виде откомпилированных бинарных файлов, я же хочу реализовать их в виде скриптов на каком-либо языке, возможно с преобразованием их из функциональных блочных диаграмм (FBD). Таким образом это будет программа с графическим интерфейсом, текстовым редактором, редактором диаграмм и возможно с отладчиком программных моделей. Вопрос тот же:

Какой язык выбать для разработки?

Посмотрите, как это сделано в Blender (соответственно, язык — python). Не понравится — напишите ещё.

Цитата:

В общем, это пока все. Постараюсь обновлять пост при появлении новых вопросов. Также прошу строго не судить, к критике отнесусь спокойно и с пониманием Smile

Обновлять не надо, дописывайте.

Link to post
Share on other sites

Огромное спасибо вам за ответы.

Цитата:

Если вам не нужна универсальная машина, а вам не нужна универсальная машина, то вы предоставляете голый X сервер и голую программу для управления

А это очень интересно, попробую развить эту тему при разработке...

Насчет qnx я и сам подумывал, но тут действительно нужно сравнивать...

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...