2008-09-15 9 views

ответ

7

Мы не использовали Profibus, но использовали DEVICENet (другой протокол на основе CAN), Ethernet/IP и ControlNet, которые все имеют схожие проблемы.

Мы занимаемся этим с конца 1990-х годов и поэтому полагаемся главным образом на наш собственный сгенерированный код с использованием готового оборудования. Компании, которые показали продолжительность жизнь в тот период, что я помню, являются: -

  • AnyBus (HMS, www.anybus.com) мы недавно начали использовать свои продукты шлюза, как мы можем разместить полевую шину интерфейсов близко к оборудованию, а затем общаться по нормальный Ethernet (обычно с использованием Ethernet/IP www.odva.org). Это имеет преимущество разделения оборудования и ПК с использованием только сетевого кабеля. Классы Ethernet/IP .NET были написаны нами сами, так как в то время на рынке не было ничего особенного. Я уверен, что быстрый поиск в Google найдет подходящие библиотеки классов.
  • SST (www.mysst.com) уже более десяти лет имеют интерфейсы fieldbus. Последняя карта SST, которую мы использовали для DeviceNET, по-прежнему имела только код образца VB6. Хороший выбор поддержки полевой шины и различных форм-факторов, например. PC104, PCI, PMCIA
  • Beckhoff/Wago (www.beckhoff.com, www.wago.com) мы обычно используем Beckhoff для ввода/вывода больше, чем интерфейсные карты, но снова компанию, которая существует уже давно. У них также есть продукты, которые поддерживают подвергая помощью OPC (еще один способ для вас, чтобы получить I/O информации без непосредственного взаимодействия с аппаратным/devicedrivers)

Я предлагаю не использовать OPC интерфейсов к оборудованию напрямую (это нормально для связи используя ПК (.NET) -> PLC-> Profibus), так как вам необходимо убедиться, что система управления реагирует на потерю контроля над вашим .NET-приложением. Я предполагаю, что вам нужен мастер Profibus Master (а не подчиненный), поэтому, если ваша система управления по своей сути отказобезопасна, то потеря связи должна означать, что система управления переходит в состояние «бездействия», и поэтому большая часть I/O вернется в безопасное состояние.

Мы также стараемся обеспечить, чтобы мы не устанавливали код безопасности в .NET. Большая часть нашего кода .NET является пользовательским интерфейсом от ПЛК, но в некоторых местах мы напрямую управляем полевой шиной, но гарантируем, что аппаратные блокировки предотвратят безотказную работу, либо используя предохранительные переключатели/реле, либо небольшой ПЛК с задачей только блокировки , И, прежде всего, сделать систему отказоустойчивой! Потеря коммитов из кода .NET должна отключить автоматизацию до состояния безопасности.

+0

Спасибо за ваш комментарий, хорошие предложения. Я мог бы добавить, что вы заявляете, что все должно быть безопасным с ошибкой, немного избыточно, так как защита от сбоев не должна быть задачей ПЛК. (Если, конечно, вы не обманываете большие доллары для ПЛК безопасности) – GEOCHET

 Смежные вопросы

  • Нет связанных вопросов^_^