Любые успешные коммуникации Profibus из .NET? - PullRequest
6 голосов
/ 16 сентября 2008

Кто-нибудь успешно говорил profibus из приложения .NET?

Если вы это сделали, какое устройство / карту вы использовали для этого, какое приложение и использовали ли вы какой-либо ранее существующий или доступный код?

Ответы [ 3 ]

7 голосов
/ 02 октября 2008

Мы не использовали 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 ) имеет интерфейсы полевой шины уже более десяти лет. Последняя SST-карта, которую мы использовали для DeviceNET, все еще имела только пример кода VB6. Хороший выбор поддержки полевой шины и различных форм-факторов, например PC104, PCI, PMCIA
  • Beckhoff / Wago ( www.beckhoff.com , www.wago.com ) мы обычно используем Beckhoff для ввода-вывода больше, чем интерфейсные карты, но опять же компания, которая был вокруг долгое время. У них также есть продукты, которые поддерживают экспозицию с использованием OPC (еще один способ получения информации ввода-вывода без непосредственного взаимодействия с аппаратными средствами / devicedrivers)

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

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

2 голосов
/ 19 сентября 2008

Мы использовали Steeplechase для подключения нашего Profibus к нашей системе автоматического выбора.

http://www.phoenixcontact.com/automation/32131_31909.htm

1 голос
/ 16 сентября 2010

Попробуйте это: http://libnodave.sourceforge.net

...