Форум : Программное обеспечение

Название : Проблема отправки SMS

 Zheka :

5.12.18 14:45
 Здравствуйте! Использую связь maestro 100+плк150 и maestro 100+дискретный модуль вывода через TCP соединение, в случае выхода значений за максимальные или минимальные параметры нужно чтобы модем отправил СМС сообщение машинисту и в диспетчерский пункт о возникновении аварии.
Модем на стороне клиента производит чтение ip адреса c FTP сервера и подключается через TCP/IP соединение. После того как установится прозрачное соединение модем перестает отвечать на AT команды. Подскажите как разорвать TCP соединение между модемами чтобы отправить СМС либо как сделать чтобы модем отвечал на AT команды во время TCP соединения. Спасибо!

*** MtCfg v.1.08.5
[MT9] Restart, power ON
[MT9] MT9m v.1.09, GPRS-client
[MT9] SIM control OK
[MT9] UART1 OK
[MT9] Time sys: OFF
[MT9] SIM ins
[MT9] SIM PIN OK
[MT9] GSM: search
[MT9] GSM cell: 1C34/1651
[MT9] SIM init
[MT9] GSM: reg (H)
[MT9] Netlib load
[MT9] GPRS bearer open
[MT9] GPRS bearer start
[MT9] +CLIP indic enabling
[MT9] Std. S0 reset
[MT9] ConnAsData enabling
[MT9] GPRS started
[MT9] 46.227.190.118
[MT9] Starting client(s)
[MT9] FTP access
[MT9] GSM: 93%
[MT9] FTP connected
[MT9] FTP dir change
[MT9] FTP done
[MT9] FTP read
[MT9] FTP close
[MT9] TCP1->46.227.186.83,502

CONNECT
[MT9] TCP1 out OK
[MT9] Cl1 id TX
DEVID:server
at
at
ata
atat
+++
atz
at
at+cmgs="123456789"
at
[MT9] Peer disc

NO CARRIER
[MT9] TCP1 disc
[MT9] TCP1 success
at
at
OK
at
at
OK

 xBocT :

6.12.18 08:57
 Не уловил суть и принцип работы Вашей схемы, но все же...

Для разрыва соединения, сперва попробовать "передернуть" на порте модема сигнал DTR (сбросить и установить), в случае успеха модем должен "выплюнуть" в порт "NO CARRIER".
Если это не помогло, отправить в порт модема команду состоящую из трех знаков "+" (+++), что должно вывести его из "Прозрачного" режима, и ждать "OK" от модема, после чего ему можно дать команду "ATH".

 CH :

6.12.18 10:25
 Да, чтобы модем начал воспринимать AT-команды в процессе установленного соединения, COM-порт нужно вывести из режима передачи данных последовательностью символов +++.
По завершении работы в AT-режиме правильно было бы вернуть порт в режим данных командой ATO.
Но, помнится, что-то в модемных мозгах Маэстро в этом случае не сходится, поэтому для завершения командного режима с восстановлением прежней работоспособности может потребоваться тяжёлая артиллерия - полный рестарт модема командой AT+RST или AT+CFUN=1.

 Zheka :

6.12.18 13:00
 Так в этом и проблема, после того как модем установит прозрачное соединение он перестает отвечать на какие либо команды, но как только пройдет таймаут сессии модем сам разрывает соединение и начинает успешно отвечать на AT команды. Может что то с настройками не так, может нужно что-то включить чтобы он отвечал на AT команды во время установленного соединения?


CONNECT
[MT9] TCP1 out OK
[MT9] Cl1 id TX
DEVID:server
at
at
at
+++
+++
ata
ato
atat

_________

в логе видно, после установки соединения я отправляю ему команды а в ответ тишина.


[ Редактировано Zheka в 6.12.18 16:01 ]

 CH :

6.12.18 13:10
 Возможно, вы неверно используете +++. Обратите внимание, что это не команда, которую следует завершать вводом. Это 3 символа, после которых следует лишь обязательная пауза, чтобы на основании этой обособленности модем мог отличить их от нормального потока данных.

 Zheka :

6.12.18 13:35
 Спасибо большое! я действительно неверно использовал "+++". Подключился к модему через HyperTerminal отправил последовательность клавиш и модем успешно вернул "OK".

© NegaSoft co., 2005
http://www.teplovizor.ru

URL этой темы
http://www.teplovizor.ru/forum/viewtopic.php?topic_id=590&forum=2