Автоматизация и диспетчеризация зданий
 
Единое информационное пространство инженеров и проектировщиков
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

[PG5] Сопряжение по RS 485
На страницу 1, 2  След.
 
Начать новую тему   Ответить на тему    Список форумов МЦ квадрат -> Вопросы и ответы по оборудованию Saia-Burgess
Предыдущая тема :: Следующая тема  
Автор Сообщение
Кирилл



Зарегистрирован: 10.09.2009
Сообщения: 13

СообщениеДобавлено: Вт Сен 15, 2009 4:56 pm    Заголовок сообщения: [PG5] Сопряжение по RS 485 Ответить с цитатой

Добрый вечер!
Столкнулся с такой проблемой.

Есть ведомое не SAIA устройство, подключаемое к SAIA контроллеру по средствам RS 485.

Есть описание слов запроса и соответственно слов ответа в шестнадцетеричном коде.

Помогите как в Fulpa через FBox (Send\Rcv) отправлять\получать данные в Нех виде.
Как организовать такой протокол?

И как правильно настроить S-Bus Master в данном случае?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Arnold



Зарегистрирован: 25.04.2008
Сообщения: 91

СообщениеДобавлено: Чт Сен 24, 2009 5:46 pm    Заголовок сообщения: Продублированно из Групп Saia Ответить с цитатой

Если это не Saia устройство, скорее всего протокол - не S-Bus, поэтому S-Bus Master ставить вообще не надо.

Для подобных случаев есть библиотека Communication Text. Для инициализации порта используем блок SASI Char, и для передачи/приема - блоки Receive Char и Transmit Char.

Если это решение - тиражируемое, то правильно будет написать драйвер на ассемблере.
Но это уже другая песня.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Кирилл



Зарегистрирован: 10.09.2009
Сообщения: 13

СообщениеДобавлено: Пн Окт 12, 2009 10:56 am    Заголовок сообщения: Ответить с цитатой

Добрый день!

Для решения этой задача по вашему совету была создана программа, состоящая из вышеупомянутых 3 блоков. Но при попытке отправки кодового слова запроса (через Transmit Char соответсвенно) нет результата, а на выходах контроллера (для PCD2.M5540 согласно гайду 28 и 29) не было замечено изменения напряжения.

В чем может быть причина неработоспособности?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Arnold



Зарегистрирован: 25.04.2008
Сообщения: 91

СообщениеДобавлено: Пн Окт 12, 2009 12:22 pm    Заголовок сообщения: 485 Ответить с цитатой

Пришлите программу из этих блоков, посмотрим.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Кирилл



Зарегистрирован: 10.09.2009
Сообщения: 13

СообщениеДобавлено: Вт Окт 13, 2009 8:50 am    Заголовок сообщения: Ответить с цитатой

Выслал файл Fupla. И вдогонку и сам проект)
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Arnold



Зарегистрирован: 25.04.2008
Сообщения: 91

СообщениеДобавлено: Вт Окт 13, 2009 9:10 am    Заголовок сообщения: Запрос Ответить с цитатой

А пришлите весь проект...
Выберите в меню Project - Backup...
В появившемся окне в области "Backup What" выберите "All files except listings and docs".
Вышлите сохраненный zip файл.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Кирилл



Зарегистрирован: 10.09.2009
Сообщения: 13

СообщениеДобавлено: Вт Окт 13, 2009 9:59 am    Заголовок сообщения: Ответить с цитатой

выслал и бекап
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Arnold



Зарегистрирован: 25.04.2008
Сообщения: 91

СообщениеДобавлено: Вт Окт 13, 2009 12:10 pm    Заголовок сообщения: 485 Ответить с цитатой

Получил проект - все нормально, должно работать.
Единственное замечание - вы не увидите изменения напряжения, поскольку передаете только один символ. Вход En блока SND-Chr динамический - передача происходит по положительному перепаду на этом входе. Что бы циклически осуществлять передачу, на вход надо подать импульсы.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Кирилл



Зарегистрирован: 10.09.2009
Сообщения: 13

СообщениеДобавлено: Вт Окт 13, 2009 1:09 pm    Заголовок сообщения: Ответить с цитатой

На счет циклической передачи и импульсного входа это понятно. Но как проверить, что передача была осуществленна или осуществляется, потому что при передачи конкртеного слова запроса мы ожидаем получить от внешнего устройство определенный ответ. Конечно возможна причина проблем в счетчике, но как отследить этап, когда данные с контроллера переданы?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Arnold



Зарегистрирован: 25.04.2008
Сообщения: 91

СообщениеДобавлено: Ср Окт 14, 2009 6:30 am    Заголовок сообщения: 485 Ответить с цитатой

Попробуйте использовать другой порт для приема.
Контроллер имеет на борту два 485 интерфейса (port #0 и port #3). Заведите с одного на другой, посмотрите в PG5, передаются символы или нет.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Кирилл



Зарегистрирован: 10.09.2009
Сообщения: 13

СообщениеДобавлено: Чт Окт 15, 2009 12:33 pm    Заголовок сообщения: Ответить с цитатой

Завел витую пару с клемм 28 и 29 (User I/O) на контакты 3 и 8 (RxD/TxD-P и RxD/TxD-N) разъема PGU на контроллере. Никаких изменеий в работе программы не последовало... Нужно ли определять какие-то настройки отдельно в блоках приема и передачи и блоке назначения последовательного интерфейса (SASI Char)? Может быть существуют какие-то нюансы в настройках портов, каналов или в чем-нибудь подобном?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Arnold



Зарегистрирован: 25.04.2008
Сообщения: 91

СообщениеДобавлено: Чт Окт 15, 2009 12:48 pm    Заголовок сообщения: 485 Ответить с цитатой

Вам надо такие же действия со вторым портом проделать - инициализировать, поставить блоки чтения и записи. Соответственно, передаете с #0 на #3, ставите SNDint на порт 0, RSVint на порт 3, и наоборот. Не забудьте только имя дать блоку и в блоках SND и RSV использовать ссылки на соответствующие каналы.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Кирилл



Зарегистрирован: 10.09.2009
Сообщения: 13

СообщениеДобавлено: Пт Окт 16, 2009 11:58 am    Заголовок сообщения: Ответить с цитатой

Правильно ли я понимаю,

† 1 † что номер канала (Channel0) должен соответствовать номеру порта (port number 0) в настройках контроллера (device configurator)?

† 2 † что #0 соответствует контактам User I\O контроллера, а #3 - разъему S-Net/MPI?

† 3 † И вы так же подразумеваете Snd - Char, RCV - Char, говоря SNDint и RCVint, потому что мы не используем в данной задаче S-Bus?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Кирилл



Зарегистрирован: 10.09.2009
Сообщения: 13

СообщениеДобавлено: Пт Окт 16, 2009 12:26 pm    Заголовок сообщения: Ответить с цитатой

Мы смогли наконецто передать данные с одного порта на другой внутри контроллера, но столкнулись со следующей проблемой - RCV блок у нас принимает только младший байт данных. Как принять все байты?

Тут или он отсылает нормально, но принимает только младший байт, то ли принимает то нормально, а уже на стадия посылки отправляется только младший байт. Как я понимаю эту ситуацию.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Кирилл



Зарегистрирован: 10.09.2009
Сообщения: 13

СообщениеДобавлено: Вт Окт 20, 2009 11:35 am    Заголовок сообщения: Ответить с цитатой

Несомненно использование этих блоков подразумевает передачу одного (до четырех?) ASCII символов, равному как раз 1 байту. Следовательно возникает вопрос возможно ли вообще с помощью блоков (SASI char, send\rcv char) организовать обмен больший чем в один байт?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов МЦ квадрат -> Вопросы и ответы по оборудованию Saia-Burgess Часовой пояс: GMT
На страницу 1, 2  След.
Страница 1 из 2

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB
Группа компаний «МЦ квадрат»
Россия, Москва, 117342, ул. Введенского 8
Тел./Факс: +7(495) 332-5092
Дизайн и разработка littlebear.ru