Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > ПЛК и микроконтроллеры
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

ADAM 5510. MBRTU*.LIB. Как установить таймаут ожидания ответа?

 Ответить Ответить
Автор
Сообщение
kuzulis Смотреть выпадающим
Участник
Участник


Присоединился: 04 Декабрь 2008
Категория: Russian Federation
Online Status: Offline
Публикации: 81
Свойства публикации Свойства публикации   Ответить, цитируя автора - kuzulis Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: ADAM 5510. MBRTU*.LIB. Как установить таймаут ожидания ответа?
    Опубликовано: 23 Сентябрь 2009 09:45
Доброго всем дня!

Разработка. Серия ADAM 5510. Библиотека функций Modbus - MBRTU*.LIB

Как установить таймаут ожидания ответа от ведомого устройства?

Например, в документации:

"ADAM 5510 Series
PC-based Programmable Controller
User's Manual"

на странице 5-158 сказано:


Error_Code

Syntax:
int Error_Code(void);

Description:
When following function call gets error return, this function can get the
exact error code for user.

ADAMRTU_ForceMultiCoils(), ADAMRTU_ForceSingleCoil(),
ADAMRTU_PresetMultiRegs(), ADAMRTU_PresetSingleReg(),
ADAMRTU_ReadCoilStatus(), ADAMRTU_ReadHoldingRegs(),
ADAMRTU_ReadInputRegs(), ADAMRTU_ReadInputStatus()

Parameters Description
None

Return value:
NULL No exception error returned
Erro Code Exception error returned

Error code:
91 Invalid Response
92 COM Port Initial or Mode Error
93 COM Port Time Out


Интересует код ошибки 93!!!

Вопросы:

1. Какая величина таймаута режима Modbus RTU у порта по умолчанию?
2. Как можно установить другой таймаут режима Modbus RTU для порта?

PS: НО в описании функций: Modbus TCP Client Functions, например на странице 5-186
в функциях (и т.д.) :

int ADAMTCP_ForceMultiCoils(SOCKET * SO, int WaitMilliSec,
                             int Slave_Addr, int CoilIndex, int TotalPoint,
                             int TotalByte, unsigned char szData[]);


имеется параметр: int WaitMilliSec , НО в функциях RTU его нет! :(
Наверх
KozlovKS Смотреть выпадающим
Prosoft.ru
Prosoft.ru


Присоединился: 21 Июнь 2003
Online Status: Offline
Публикации: 432
Свойства публикации Свойства публикации   Ответить, цитируя автора - KozlovKS Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 23 Сентябрь 2009 11:50

В заголовочном файле RTU.h в папке библиотек C:\Program Files\Advantech\Adam.NET Utility\Source\Library\ModRTU_Lib\5510 есть две функции для этого:

void ADAM_SetCOMTimeout(unsigned long i_milliseconds);
//////////////////////////////////////////////////////////////////////////
//  Set COM Port Timeout value                                          //
//                                                                      //
//  Return Value:                                                       //
//      None                                                            //
//                                                                      //
//  Parameters:                                                         //
//      i_milliseconds  COM Port Timeout Value, in milliseconds         //
//                      0 means use default timeout value (2 seconds)   //
//                                                                      //
//////////////////////////////////////////////////////////////////////////

void ADAM_GetCOMTimeout(unsigned long * o_milliseconds);
//////////////////////////////////////////////////////////////////////////
//  Get COM Port Timeout value                                          //
//                                                                      //
//  Return Value:                                                       //
//      None                                                            //
//                                                                      //
//  Parameters:                                                         //
//      o_milliseconds  COM Port Timeout Value, in milliseconds         //
//                                                                      //
//////////////////////////////////////////////////////////////////////////

 

Наверх
kuzulis Смотреть выпадающим
Участник
Участник


Присоединился: 04 Декабрь 2008
Категория: Russian Federation
Online Status: Offline
Публикации: 81
Свойства публикации Свойства публикации   Ответить, цитируя автора - kuzulis Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 23 Сентябрь 2009 11:54
Спасибо! :)
Наверх
 Ответить Ответить

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz