При удлинение антенного кабеля следует учитывать потери сигнала на кабеле. Максимально допустимая длина кабеля будет зависеть от качества радиосигнала в месте установки антенны и типа кабеля (коэффициент затухания).
В рабочем режиме индикацией состояния (сети) управляет GSM модуль. Если при подаче питания на модем индикация отсутствует, но модем работает (отвечает на AT-команды), то возможны следующие причины:
- Эта функция отключена на модуле. Необходимо её активировать. Например, на модулях компании Cinterion это можно сделать с помощью AT-команды: at^ssync=1;
- Модем не зарегистрирован в сети (верно для модема iRZ ES90u);
- Неисправность.
Уточните у оператора связи APN для sim-карты со статическим IP-адресом. APN для динамических и статических IP-адресов, как правило, различны.
Международный идентификатор оборудования мобильной связи (IMEI) выводится по команде "AT+GSN" или идентичной команде "AT+CGSN".
Индикация приема нового сообщения происходит в случае, если управляющее устройство активно (например, включен сигнал DTR). Если управляющее устройство неактивно, прием сообщения должен быть выполнено согласно стандарту GSM 03.38. Если сигнал DTR не используется, надежная передача сообщения обеспечивается за счет использования процедуры подтверждения AT+CNMA.
Задается индикация нового короткого сообщения командой at+cnmi.
Убедитесь в правильности настроек:
at+cnmi=<mode>,<mt>
Описание параметров:
<mode>:
0 - буферизация незапрашиваемых кодов результатов в модеме.
1 - отбрасывание сообщения-индикатора и отклонение незапрашиваемых кодов результатов нового принятого сообщения , когда линия связи "модем – управляющее устройство" зарезервирована (например, в online-режиме передачи данных). В противном случае они передаются непосредственно в управляющее устройство.
2 - буферизация незапрашиваемых кодов результатов в модеме, когда линия связи модем – управляющее устройство зарезервирована, с их выгрузкой в управляющее устройство после резервирования. В противном случае они передаются непосредственно в управляющее устройство.
3 - передача незапрашиваемых кодов результатов непосредственно в управляющее устройство. Когда канал связи модем – управляющее устройство зарезервирован, URC-сообщения посылаются в соответствии с параметрами <uri>, <udri> и <urat> команды AT^SCFG.
<mt>:
0 - сообщения-индикаторы SMS-DELIVER не пересылаются в управляющее устройство;
1 - если SMS-DELIVER хранится в модеме, сообщение-индикатор ячейки памяти пересылается в управляющее устройство с помощью незапрашиваемого кода результата.
2 - Сообщения SMS-DELIVER, за исключением сообщений класса 2 и сообщений из группы индикации ждущих сообщений (store message) пересылаются непосредственно в управляющее устройство с помощью незапрашиваемого кода результата.
3 - Сообщения SMS-DELIVER класса 3 пересылаются непосредственно в управляющее устройство с помощью незапрашиваемых кодов результата, определенных значением <mt>=2. Индикация сообщений с другими схемами кодирования данных осуществляется в соответствии с <mt>=1.
В соответствии с "3GPP TS 27.007 (GSM 07.07): AT command set for User Equipment (UE)" ("Набор AT-команд для пользовательского оборудования (UE)") команда ATS0 используется также в качестве команды совместимости с GPRS для автоматического ответа на запрос сети об активизации PDP-контекста. Следовательно, при выдаче команды записи ATS0, параметр <n> которой имеет значение больше 0, оборудование ME предпринимает попытку выполнить подключение GPRS, если эта услуга еще не подключена и соответствующим образом сконфигурирована (установка команды AT^SCFG). Если автоматическое подключение GPRS завершается неудачно, оборудование ME по-прежнему пытается выполнить подключение в течение приблизительно 5 минут до того, как в ответ на команду ATS0 будет выдан результат "ERROR" или "+CME ERROR: unknown", хотя действует новое значение <n>. В таких случаях во избежание риска длительного реагирования на команду ATS0 следует выключать режим автоответа для GPRS, если не используется GPRS.
Перед тем, как установить автоответ, подайте команду at^scfg="GPRS/ATS0/withAttach",off.
Так же обязательно в модем должна быть установлена сим-карта, пин-код снят.
Для того, чтобы организовать обмен данными через CSD соединение (не все операторы предоставляют эту услугу), необходимо предварительно настроить модемы с помощью АТ-команд.
Настройка ведущего модема (с его стороны будет инициализироваться звонок):
at+ipr=9600 (скорость обмена по ком-порту)
at&d0 (игнорирование DTR)
ate0 (отключение эха)
at&w (сохранение)
at^smso (выключение)
Настройка ведомого модема (сим-карта должна быть установлена):
at+ipr=9600 (скорость обмена по ком-порту)
at^scfg="GPRS/ATS0/withAttach",off
ats0=1 (автоответ)
at&c1 (определение DCD режима)
at&d0 (игнорирование DTR)
at+cbst=71,0,1
ate0 (отключение эха)
at&w (сохранение)
at^smso (выключение).
Установить модемы на свои места. Подать питание, дождаться регистрации модемов (мигание светодиода станет кратковременным).
С ведущего модема подать команду atd8921… (создать CSD соединение). Дождаться ответа (обычно не более 10 секунд), что соединение установлено, при этом светодиод на двух модемах горит постоянно. Далее закрыть (отключить) гипертерминал, чтобы освободить ком-порт. Можно передавать данные.
Чтобы прервать CSD-соединение, подайте команду «+++» - переключение из режима передачи данных в командный режим. Потом команду ath - прервать соединение.
Для некоторых счетчиков производители предоставляют программы, в которых можно установить CSD-соединение и опросить счетчик. В некоторых программах от модема требуется конкретный ответ от модема о CSD соединении - программа создана под определенный модем. Это легко проверить – через программу от производителей счетчика соединение не создается, а через гипертерминал – да.
Если счетчик напрямую (через провод) опрашивается, а через CSD нет – увеличьте тайм-ауты (в разных счетчиках может называться по-разному) в настройках счетчика.
Различия в аппаратной части
| Hardware | MC35iT / TC35iT | MC52iT/MC55iT | Migration |
| Power supply | 8V to 30V | 8V to 30V | ![]() |
| SIM cards | 3V only | 1.8V & 3V | ![]() |
| Serial Interface | 300bps to 115,000bps | 300bps to 115,000bps | ![]() |
| Character Framing | 8N1 / 7E1,7O1,8N1, 8E1, 8O1, 8N2 | 8N1 | ![]() |
| Frequencies | 900,1800 | 900, 1800 / 850, 900, 1800, 1900 | ![]() |
| Operational temp. | -25 0C to +55 0C |
-30 0C to +75 0C | ![]() |
| Temp. Switch off | yes | yes | ![]() |
| Real Time Clock | yes | yes | ![]() |
| Status LED | yes | yes | ![]() |
| Power Saving | 0, 1, 5, 6, 7, 8 | 0, 1, 5, 6, 7, 8, 9 | ![]() |
| GPRS Class | Class 8 / n.a. | Class 8 / Class 10 | ![]() |
| Voice Codecs | HR, FR, EFR | HR, FR, EFR, AMR | ![]() |
Различия в программной части
| Software | MC35iT / TC35iT | MC52iT / MC55iT | Migration |
| TCP / UDP | no | yes | ![]() |
| HTTP | no | yes | ![]() |
| FTP | no | yes | ![]() |
| POP3 / SMTP | no | yes | ![]() |
| Fax | group 3 class 2 & 1 | group 3 class 2 & 1 | ![]() |
| Transparent TCP | no | no / yes | ![]() |
| Audio – Echo / Limiter | suppression / yes | Cancellation / no | ![]() |
| Concatenated SMS | no / yes | no |
![]() |
| Approvals | R&TTE, GCF | R&TTE, GCF, UL, FCC, IC, PTCRB | ![]() |
| Пояснения: | |
|
Жирный |
- указывает на новые возможности или улучшения в новых продуктах; |
![]() |
- миграция по этому параметру пройдёт без осложнений, т.к. он не изменился или улучшился; |
![]() |
- при миграции нужно обратить особое внимание на этот параметр, т.к. изменения могут быть не совместимы со старыми решениями; |
Причиной этой ошибки может быть некорректно установленный драйвер, но гораздо чаще дело в неправильном номере дозвона. В мобильных телефонах обычно используют номер *99#, но для модемов Siemens и Cinterion необходимо указывать номер *99***1#.
Другая возможная причина - используется неполный кабель RS-232. В этом случае модем будет успешно опрашиваться, но установить соединение не получится. Замените кабель на полный, имеющий все линии.
При работе с компаниями, использующими средства беспроводного доступа в платёжных терминалах, наши инженеры много раз сталкивались с ошибкой, вследствие которой в программном обеспечении от "Объединённых Систем Моментальных Платежей" модемы работают неправильно. Выражается эта ошибка в том, что данное программное обеспечение не может получить название оператора и баланс СИМ-карты, установленной в модем. Ошибка проявляется только в том случае, если для подключения модема используются платы расширения COM-портов с назначенным для модема номером порта выше 9.
Ошибка исчезает, если назначить для модема номер COM-порта от 1 до 9. Если все эти номера заняты, можно заранее переназначить какое-нибудь устройство, подключенное к COM-порту из этого диапазона (например, купюроприёмник или сторожевой таймер) на более старший номер.
Для переназначения номера COM-порта следует проделать следующие операции:
1. В "Диспетчере устройств" выберите переназначаемый COM-порт. Зайдите в его свойства.
2. Перейдите на вкладку "Параметры порта" и нажмите на кнопку "Дополнительно".
3. Выберите COM-порт, который не помечен меткой "(Используется)".
4. Нажмите OK.
Чтобы модем поднимал трубку при входящем звонке, необходимо выполнить AT-команду:
ats0=n
, где n - количество звонков. Обычно n ставится единицей, т.е. ats0=1
После установки этой команды следует выполнить команду at&w и выполнить команду at^smso для корректного завершения работы модуля с сохранением всех настроек.
Проверять работу автоподнятия трубки следует в режиме DATA-Call (CSD). При звонке на модем с обычного сотового телефона сотовой сетью обычно посылается маркер о том, что звонок голосовой. Но при голосовом звонке модем трубку поднимать не будет!
AT-команда для совершения звонка для передачи данных (DATA-Call, CSD): atdXXXXXXXXXXX
AT-команда для совершения голосового звонка: atdXXXXXXXXXXX;
(т.е. для голосового звонка необходима точка с запятой после номера, для CSD её, наоборот, быть не должно).
Так же автоподнятие трубки не будет работать, если не задана фиксированная скорость командой AT+IPR.
Некоторые модемы имеют открытые программные платформы Open AT® (GSM модем iRZ Q24PL001) или Java (GSM модемы iRZ TC65Smart, TC65i-485GI, TC65Lite). С помощью соответствующего ПО на этих модемах можно создавать/ поддерживать GPRS/EDGE соединение.
Остальные модемы в этих стандартах связи являются ведомыми. Для создания/поддержки GPRS/EDGE/UMTS соединения ими должны управлять некие управляющие устройства (компьютер, промышленный контроллер).
Практически все модемы имеют встроенный TCP/IP стек, что облегчает написание ПО. Описание AT-команд для работы с TCP/IP стеком и примеры их использования можно найти в общем списке AT-команд.
Все антенны, сертифицированные для работы в GSM сетях, имеющие разъем подключения, соответствующий выбранному модему. Однако следует учитывать диапазоны рабочих частот модема и антенны, а также чувствительность антенны. Чем меньше чувствительность антенны, тем слабее будет сигнал на входе модема. (См. ответ на вопрос «В месте установки модема слабый уровень сигнала. Как можно добиться устойчивой связи?»)
Список кодов ошибок: http://www.smssolutions.net/tutorials/gsm/gsmerrorcodes/
|
Siemens:
|
Cinterion:
|
Здесь: http://bit.ly/HudfCc
Обратите внимание, что SDK для модулей Siemens и Cinterion различаются. Чтобы определить, какой модуль установлен у вас в терминале, подключитесь к нему через COM-порт с помощью терминальной программы и введите команду ATI. Модуль сообщит производителя, модель и ревизию ПО.
Любым модемом с интерфейсом USB или RS-232 (RS-485) можно управлять при помощи AT-команд. Полные руководства по AT-командам к каждому конкретному наименованию модема ищите в разделе "Поддержка продуктов". В данном разделе описываются наиболее часто спрашиваемые команды выключения и перезагрузки модемов.
Для перезагрузки модема с последующей перерегистрацией в сети оператора рекомендуется пользоваться командой
AT+CFUN=1,1
Первое число в этой команде означает режим, в который необходимо выйти модему после перезагрузки - в данном случае полная работоспособность. Существуют еще различные режимы сна, которые можно использовать для временного отключения модема. Для полного описания см. соответствующий документ.
Второе число в этой команде - указание модему на необходимость перезагрузки. Единица - перезагрузить.
Данная команда является рекомендованной консорциумом 3GPP (http://www.3gpp.org) для применения в мобильном оборудовании. Данная команда имеет реализацию в подавляющем большинстве терминалов и модемов.
Для выключения модемов на основе модулей компании Siemens можно воспользоваться командой:
AT^SMSO
Хотя эта команда и имеет реализацию в мобильном оборудовании компании Siemens, использование её НЕ РЕКОМЕНДУЕТСЯ по той причине, что эта команда, как не имеющая поддержки консорциума 3GPP, может в любой момент быть исключена из состава команд модема при обновлении версии встроенного программного обеспечения. Для справки: любая команда с символом ^ после букв AT является собственной инициативой компании Siemens, не является стандартной и не рекомендуется к использованию.
Новые модемы iRZ MC35S и iRZ MC35PU имеют возможность принудительного перезапуска с помощью внешней программы. Функция реализуется путём восьмикратного поднятия-опускания сигнала DTR в течение заданного времени. Рекомендуемые значения: 0.5 сек импульс, 0.5 сек пауза.
Утилита для Windows: DTR8X.exe (474.50 KB)
Для Linux можно использовать следующий Perl-скрипт:
---------------------------DTR8X.pl----------------------------------------
#!/usr/bin/perl -w
# yum install perl-Device-SerialPort # Fedora
# apt-get install libdevice-serialport-perl # Debian
# ./DTR8X.pl /dev/ttyUSB0 # syntax
use Device::SerialPort;
my $device = '/dev/ttyS0'; # default device
my $milliseconds = 500; # 0.5s delay
my $count = 8;
$device = $ARGV[0] if ($#ARGV == 0); # get device from command line
my $port=new Device::SerialPort($device) || die "new($device): $! ";
for (my $i = 0; $i <= $count; $i++) { $port->pulse_dtr_off($milliseconds); }
Попытаться добиться устойчивой связи можно подбором GSM антенны и правильным выбором места ее установки.
При выборе антенны следует учитывать удаленность от базовой станции сотовой связи. При удалении более 10 км следует использовать направленные антенны.
Не всегда подбором антенны можно решить проблему плохого качества сигнала. Например, в таких случаях, как подвальное помещение, низина. Тогда рекомендуется изменить место установки антенны. Например, вынести антенну за пределы подвального помещения, увеличить высоту установки.
При изменении места установки антенны может потребоваться удлинение антенного кабеля. (См. ответ на вопрос «Возможно ли удлинение антенного кабеля от модема?»)
Слабый уровень сигнала. Для уверенной передачи данных по каналу GPRS/EDGE необходимо обеспечить качество сигнала (CSQ) минимум 15. При приеме/передаче данных по каналу GPRS/EDGE используются различные схемы кодирования, отличающиеся по скорости передачи и помехоустойчивости. Скорость передачи данных обратно пропорциональна помехоустойчивости. Выбор схемы кодирования зависит от качества радиосигнала.
Дополнительно см. ответ на вопрос «В месте установки модема слабый уровень сигнала. Как можно добиться устойчивой связи?»
У модемов ES90U(3G) и ES90i(3G) ранее возникали проблемы с некоторыми типами сим-карт. Путем программно-аппаратной доработки изделий специалистами нашего инженерного отдела удалось решить проблему несовместимости с некоторыми типами сим-карт. Проведенные испытания позволяют судить о том, что проблема решена полностью.
В первую очередь, проверьте все провода и разъёмы, затем убедитесь, что SIM-карта вставлена правильно и баланс положительный. Если всё в порядке - смело задавайте вопрос в техподдержку. В описании проблемы не забудьте привести сделанные вами настройки, введённые команды и полученные от модема ответы. Очень трудно опознать проблему по описанию вроде: "Я ввёл команду, а модем пишет ошибку!".
В новых версиях большинства модемов есть принудительная перезагрузка с помощью сигнала DTR.
Утилита для Windows: DTR8X.exe (474.50 KB)
Для Linux можно использовать следующий perl-скрипт:
---------------------------DTR8X.pl----------------------------------------
#!/usr/bin/perl -w
# yum install perl-Device-SerialPort # Fedora
# apt-get install libdevice-serialport-perl # Debian
# ./DTR8X.pl /dev/ttyUSB0 # syntax
use Device::SerialPort;
my $device = '/dev/ttyS0'; # default device
my $milliseconds = 500; # 0.5s delay
my $count = 8;
$device = $ARGV[0] if ($#ARGV == 0); # get device from command line
my $port=new Device::SerialPort($device) || die "new($device): $! ";
for (my $i = 0; $i <= $count; $i++) { $port->pulse_dtr_off($milliseconds); }
Возможны два варианта установки USB модема в Linux. Первый - изменение драйвера в исходном коде ядра с последующей пересборкой соответствующего модуля. Второй - изменение PID-кода устройства с помощью программы для ОС Windows.
Первый вариант
Во-первых, вам нужно узнать VID (Vendor ID) и PID (Product) устройства. Сделать это можно командой lsusb после подключения модема к системе:
$ lsusb
Bus 002 Device 001: ID 0000:0000
Bus 001 Device 004: ID 10c4:8341 Cygnal Integrated Products, Inc.
Bus 001 Device 001: ID 0000:0000
Нас интересует вторая строка. Число 10c4 - это VID, а 8341 - это PID. PID для разных модемов будет разным.
Теперь, когда мы знаем VID и PID, вам понадобятся исходные коды ядра. В Ubuntu они устанавливаются командой
sudo apt-get install linux-source
Далее, нужно добавить идентификатор модема в исходный код драйвера
cd /usr/src/linux/
sudo gedit drivers/usb/serial/cp2101.c
Найдите строку
{ USB_DEVICE(0x10C4, 0xEA60) }, /* Silicon Labs factory default */
и добавьте после неё следующую
{ USB_DEVICE(0x10C4, 0x8341) }, /* Siemens MC35PU GPRS modem*/
Пересоберите ядро:
make
Скопируйте новый модуль на место старого:
sudo cp /usr/src/linux/drivers/usb/serial/cp2101.ko /lib/modules/версия_ядра/kernel/drivers/usb/serial/cp2101.ko
Перезагрузите компьютер. После внесённых изменений модем будет определяться как преобразователь USB-COM.
Второй вариант
Подключите модем к компьютеру с ОС Windows и установите драйвер ( http://radiofid.ru/upload_data//drivers/irz/MC35pu/mc35pu.zip). Скачайте и запустите CP210x Customization Utility (http://radiofid.ru/upload_data//soft/AN144SW.zip). В секции PID установите галочку и впишите значение EA60. Нажмите кнопку Program Device.

После этого Linux будет определять модем как обычный USB-COM преобразователь. Для использования такого модема в Windows необходимо поставить драйвер USB-COM преобразователя с сайта Silicon Labs (https://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx).




