|
|
  |
ProfiBus DP Slave, реализация протокола на МК |
|
|
|
May 15 2007, 01:43
|
Группа: Новичок
Сообщений: 12
Регистрация: 27-07-04
Из: Красноярск
Пользователь №: 403

|
Прошу откликнутся тех, кто имел опыт реализации протокала ProfiBusDP Slave на любом контроллере, спомощью UART и простого преобразователя сигналов TTL<->RS485 (что-то вроде ADM485). Данный протокол я реализовал на AtMega16, обмен данными осуществляется с контроллерос Siemens 313C-2DP, на скорости 9600, GSD - файл я создал. Проблема возникает при увеличении скорости обмена, если перейти на 19200, то мой девайс получает данные нормально и отвечает на них, но контроллер Siemens их не воспринемает, как будто устройства нет в сети... Мое устройство работает только на скорости 9600, но этого недостаточно хотелось бы увеличить...
|
|
|
|
|
Jun 28 2007, 12:50
|
Частый гость
 
Группа: Свой
Сообщений: 125
Регистрация: 21-03-07
Из: Санкт-Петербург
Пользователь №: 26 371

|
Цитата(Denis @ May 15 2007, 05:43)  Проблема возникает при увеличении скорости обмена, если перейти на 19200, то мой девайс получает данные нормально и отвечает на них, но контроллер Siemens их не воспринемает, как будто устройства нет в сети... Мое устройство работает только на скорости 9600, но этого недостаточно хотелось бы увеличить... Может Ваше устройство просто не успевает ответить вовремя? Насколько я себе представляю время на общения в DP-мастере ограничено, а дальше он может отдать маркер например? А сколько времени у вас заняла программная реализация протокола, как я понимаю вы не использовали ASIC микросхемы для аппаратной поддержки интерфейса? И вдогонку один вопрос (может не очень умный), как через профибас-DP запросить значение одной конкретной переменной? В документации протокола много говорится о "словаре объектов", но это уровень 7 профибаса, которого в ProFiBus-DP нет, как же тогда они адресуются и какой телеграммой запрашиваются?
Сообщение отредактировал Юрий Санвальд - Jun 28 2007, 13:07
|
|
|
|
|
Jul 13 2007, 02:47
|
Группа: Новичок
Сообщений: 12
Регистрация: 27-07-04
Из: Красноярск
Пользователь №: 403

|
Цитата(Юрий Санвальд @ Jun 28 2007, 15:50)  Может Ваше устройство просто не успевает ответить вовремя? Насколько я себе представляю время на общения в DP-мастере ограничено, а дальше он может отдать маркер например?
А сколько времени у вас заняла программная реализация протокола, как я понимаю вы не использовали ASIC микросхемы для аппаратной поддержки интерфейса?
И вдогонку один вопрос (может не очень умный), как через профибас-DP запросить значение одной конкретной переменной? В документации протокола много говорится о "словаре объектов", но это уровень 7 профибаса, которого в ProFiBus-DP нет, как же тогда они адресуются и какой телеграммой запрашиваются? проблему со скоростью я решил..., оказалось все просто... Никакими микросхемами ASIC непользовалось, протокол был реализован программно. Времени у меня заняло где то 3 месяца, но много времени я потратил на поиск документации по ProfiBusDP, первые шаги в освоении контроллера сименс, создание GSD файла. Любые данные передаются телеграммой "SAP00" конфигурация этих данных должна быть описана в GSD файле (параметр module), и соответственно реализованно на Slave. Необходимо описать тип телеграммы размером в одну переменную и все...
|
|
|
|
|
Jul 13 2007, 08:13
|
Знающий
   
Группа: Свой
Сообщений: 793
Регистрация: 5-11-04
Из: Краматорск, Украина
Пользователь №: 1 057

|
Цитата(Юрий Санвальд @ Jun 28 2007, 15:50)  И вдогонку один вопрос (может не очень умный), как через профибас-DP запросить значение одной конкретной переменной? В документации протокола много говорится о "словаре объектов", но это уровень 7 профибаса, которого в ProFiBus-DP нет, как же тогда они адресуются и какой телеграммой запрашиваются? "Философия" ProFiBus такая: описываются все данные в виде структуры, мастер и слейв работают с ними, а синхронизация происходит автоматически. В идеале, пользователю надо настроить структуру, а потом не заморачиваться на реализацию обмена, а пользоваться данными как локальными.
|
|
|
|
|
Nov 9 2010, 11:16
|
Группа: Новичок
Сообщений: 5
Регистрация: 27-10-10
Пользователь №: 60 451

|
У меня стоит задача реализовать обмен по протоколу ProFiBus с использованием ASIC, а именно запрограммировать slave-dp. Слэйвом является наш преобразователь частоты (ПЧ) на PCB STM3210B + АСИК. Предыдущие ПЧ работали по Модбасу.
Подскажите, пожалуйста, с реально ли использовать этот контроллер?? И с чего начать. Уже перечитала 1000-страничный мануал по Профибасу и много другой инфы. Теоретическая база есть.
|
|
|
|
|
Jan 24 2011, 12:31
|
Группа: Новичок
Сообщений: 5
Регистрация: 28-02-07
Пользователь №: 25 749

|
Многие начинали самостоятельно реализовывать протокол Profibus, но я не знаю НИКОГО в России, кто бы завершил эту работу. Да, делали с Профибасом какие-то частные решения для работы в конкретном проекте в связке с конкретными устройствами, но нормальных устройств, полностью соответствующих спецификации Profibus никто не родил. А нормальные потребители еще и про сертификат соответствия спецификации Profibus могут спросить, а сертификация дело не простое. Для небольших партий продукции проще и по совокупности затрат не дороже использовать специализированные микросхемы и модули. Например, Siemens. Или такие: http://www.industrialnets.ru/index/?interf...uct&node=90http://www.industrialnets.ru/index/?interf...uct&node=76
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|