georg Posted January 14, 2010 Share Posted January 14, 2010 Всем доброе время суток. Хотелось бы поговорить на следующую тему: Каким образом осуществляется преобразование данных от компьютера пользователя до устройства на порту 485, через модем MOXA 5230. В общем интересуют следующие вопросы. Я разрабатываю приложение которое должно подключаться к устройству через интерфейс RS485. Связь через модем. С подключением к модему проблем нет, создаю обычный сокет (модем в режиме TCPServer), а каким образом мне сформировать пакет, и как его отправить на конкретное устройство подключенное к выходу rs485 модема, я не понимаю. Может кто в нескольких словах может объяснить принцип конвертации tcp-пакета в пакет для rs485, и что требуется от меня? Link to comment
Batmah Posted January 15, 2010 Share Posted January 15, 2010 http://forum.ixbt.com/topic.cgi?id=48:6048 GPRS модем с TCP/IP и приложение пользователя в микроконтроллере модема. Link to comment
Komantsev Posted January 15, 2010 Share Posted January 15, 2010 Всем доброе время суток. Хотелось бы поговорить на следующую тему: Каким образом осуществляется преобразование данных от компьютера пользователя до устройства на порту 485, через модем MOXA 5230. В общем интересуют следующие вопросы. Я разрабатываю приложение которое должно подключаться к устройству через интерфейс RS485. Связь через модем. С подключением к модему проблем нет, создаю обычный сокет (модем в режиме TCPServer), а каким образом мне сформировать пакет, и как его отправить на конкретное устройство подключенное к выходу rs485 модема, я не понимаю. Может кто в нескольких словах может объяснить принцип конвертации tcp-пакета в пакет для rs485, и что требуется от меня? Добрый день! На самом деле, всё легко. Нужно установить TCP-соединение с NPort (предварительно перевести NPort в режим TCP Server или TCP Client). Каждому COM-порту NPort соответствуют свои TCP-порты. По умолчанию: COM1: TCP-порт данных 4001, служебный TCP-порт 966 COM2: TCP-порт данных 4002, служебный TCP-порт 967 итд. Т.е. каждый COM-порт работает независимо от других. По служебному TCP-порту передаются команды в тех случаях, если требуется "на лету" менять параметры связи или управлять сигналами RTS/DTR. Для передачи данных используется TCP-порт данных. Всё, что Вы передадите в сокет 4001, посимвольно будет передано через COM1, сокет 4002 будет транслироваться в COM2 итп. Пример работы: 1) Переставить COM1 на NPort 5230 в режим TCP Client 2) Установить TCP-соединение с портом COM1 устройства NPort 5230, с компьютера набрать "telnet 192.168.127.254 4001" 3) Написать в Telnet-консоли "hello". Слово "hello" будет передано в порт COM1 устройства NPort. Link to comment
georg Posted January 19, 2010 Author Share Posted January 19, 2010 Добрый день!На самом деле, всё легко. Нужно установить TCP-соединение с NPort (предварительно перевести NPort в режим TCP Server или TCP Client). Каждому COM-порту NPort соответствуют свои TCP-порты. По умолчанию: COM1: TCP-порт данных 4001, служебный TCP-порт 966 COM2: TCP-порт данных 4002, служебный TCP-порт 967 итд. Т.е. каждый COM-порт работает независимо от других. По служебному TCP-порту передаются команды в тех случаях, если требуется "на лету" менять параметры связи или управлять сигналами RTS/DTR. Для передачи данных используется TCP-порт данных. Всё, что Вы передадите в сокет 4001, посимвольно будет передано через COM1, сокет 4002 будет транслироваться в COM2 итп. Пример работы: 1) Переставить COM1 на NPort 5230 в режим TCP Client 2) Установить TCP-соединение с портом COM1 устройства NPort 5230, с компьютера набрать "telnet 192.168.127.254 4001" 3) Написать в Telnet-консоли "hello". Слово "hello" будет передано в порт COM1 устройства NPort. В принципе мне стало немного ясно. Т.е. если мне нет необходимости в использовании командного порта, так как суть сводится к тому, чтобы передать пакет через NPort 5230. Дело в том, что если я использую его в режиме Real Com Mode, то передавая просто через com, модем сам определяет что мне нужно. А вот если использую режим TCP Server, данные как будто бы уходят через NPort (link P2 мигает), но ответа я не получаю и в этом вся загвоздка. Может быть есть какая таблица комманд для NPort 5230? Link to comment
Komantsev Posted January 19, 2010 Share Posted January 19, 2010 В принципе мне стало немного ясно. Т.е. если мне нет необходимости в использовании командного порта, так как суть сводится к тому, чтобы передать пакет через NPort 5230.Дело в том, что если я использую его в режиме Real Com Mode, то передавая просто через com, модем сам определяет что мне нужно. А вот если использую режим TCP Server, данные как будто бы уходят через NPort (link P2 мигает), но ответа я не получаю и в этом вся загвоздка. Может быть есть какая таблица комманд для NPort 5230? Добрый день, Как таковой таблицы команд нет. Судя по тому, что индикатор P2 моргает, данные все-таки выходят из порта RS-485. Они могут не восприниматься подключенным устройством, например, потому, что неправильно выставлены в NPort'е настройки скорости и формата передачи данных по COM-порту. Если Вы открываете виртуальный COM-порт, то все настройки порта (скорость передачи данных, четность итп.) задаются драйвером. А при работе в режиме TCP Server берутся настройки, "вбитые" в NPort. Проверьте, чтобы настройки NPort'а были в точности такими же, как и настройки утилиты, которой Вы открываете COM-порт. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now