реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Проблемма при "подъеме" GPRS-соединения на SIM900
BAG/ULG
сообщение Jan 20 2015, 18:57
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 20-09-10
Из: Россия
Пользователь №: 59 610



Доброго времени суток! Разрабатываю терминал системы мониторинга транспорта. Для передачи данных на сервер использую SIM900. Столкнулся с проблемой, что иногда SIM900 не может "поднять" GPRS-соединение с сервером. Предпологаю, что использую не совсем верные процедуры открытия и закрытия GPRS-сессии. Использую следующие алгоритмы:

Активирование SIM900 и "подъем" GPRS-сессии
----------------------------------------------
1) Если STATUS = 0 (модуль выключен), то переход к п. 7
2) GSM POWERKEY = 0
3) Пауза 1,5 с
4) GSM POWERKEY = 1
5) Ждем, установления STATUS = 0
6) Пауза 1 с
7) Ждем, пока истечет таймаут между попытками активирования SIM900 (1 минута)
8) GSM POWERKEY = 0
9) Пауза 1,5 с
10) GSM POWERKEY = 1
11) Пауза 5 с (чтобы успела придти строка "IIII")
12) Посылаем команду "AT+CREG=0"
13) Ждем ответ "OK"
14) Посылаем команду "ATE0"
15) Ждем ответ "OK"
16) Посылаем команду "AT+CSCLK=0"
17) Ждем ответ "OK"
18) Пауза 1 с
19) Посылаем команду "AT+CREG?"
20) Если ответ не "+CREG: 0,1", то переход к п. 18
21) Посылаем команду "AT+CGATT=1"
22) Ждем ответ "OK"
23) Пауза 1 с
24) Посылаем команду "AT+CSTT=APN, USERNAME, PASSWORD"
25) Ждем ответ "OK"
26) Пауза 1 с
27) Посылаем команду "AT+CIICR"
28) Ждем ответ "OK" (здесь часто зависает)
29) Пауза 1 с
30) Посылаем команду "AT+CIFSR"
31) Если от SIM900 пришел ответ "\r\n\r\n IP-адрес \r\n", то активирование SIM900 успешно

Деактивирование SIM900
--------------------------
1) Если STATUS = 0 (модуль выключен), то переход к п.
2) GSM POWERKEY = 0
3) Пауза 1,5 с
4) GSM POWERKEY = 1
5) Ждем, установления STATUS = 0
6) Деактивирование SIM900 успешно

Так вот, при таком алгоритме активирования, иногда происходит зависание на п 28. Есть предположение, что перед очередной попыткой активирования модуля, было неверно произведено его деактивирование и при последующих попытках сеть просто "банит" попытки повторного входа в сеть "двойника". Хотелось бы услышать мнение профессионалов.

Сообщение отредактировал BAG/ULG - Jan 20 2015, 19:03
Go to the top of the page
 
+Quote Post
Aner
сообщение Jan 20 2015, 19:17
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



Прошивка какая у SIM900?
Go to the top of the page
 
+Quote Post
smalcom
сообщение Jan 20 2015, 22:58
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 292
Регистрация: 26-06-07
Пользователь №: 28 718



без антенны пробовали? количество ошибок при этом увеличивается?
Go to the top of the page
 
+Quote Post
aleksandr-zh
сообщение Jan 21 2015, 05:19
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 359
Регистрация: 28-05-05
Из: Брянщина
Пользователь №: 5 494



может чуток не в тему:
какой оператор? на разных пробовали? а то я мучился, а оказалось, что все беды - от МТС (мине трохи слышно sm.gif
пауза между включениями GPRS и регистрацией модуля в сети - больше 9 секунд?
Go to the top of the page
 
+Quote Post
Pavel☺
сообщение Jan 21 2015, 10:22
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 166
Регистрация: 18-03-14
Из: Санкт-Петербург
Пользователь №: 80 977



Цитата(BAG/ULG @ Jan 20 2015, 22:57) *
Так вот, при таком алгоритме активирования, иногда происходит зависание на п 28. Есть предположение, что перед очередной попыткой активирования модуля, было неверно произведено его деактивирование и при последующих попытках сеть просто "банит" попытки повторного входа в сеть "двойника". Хотелось бы услышать мнение профессионалов.

День добрый!
Предлагаю не гадать, а снять логи через DEBUG-порт.
Для этого напишите мне chpa<с06aka>mt-system.ru. Вышлю инструкции и описание, как это сделать.


--------------------
Go to the top of the page
 
+Quote Post
BAG/ULG
сообщение Jan 22 2015, 12:49
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 40
Регистрация: 20-09-10
Из: Россия
Пользователь №: 59 610



Версия прошивки: 1137B11SIM900M64_ST
Go to the top of the page
 
+Quote Post
RadikX
сообщение Mar 6 2015, 09:31
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 125
Регистрация: 13-04-11
Из: Суровый Челябинск
Пользователь №: 64 337



Желательно делать сначала CIPSHUT, чтобы гарантировано перейти в состояние IP INITIAL (В SIM900B это был обязательный шаг). AT+CIICR должен выполняться только из состояния IP START. Состояние возвращается командой СIPSTATUS. Иногда в это время возвращается PDP DEACT - надо закрывать сессию и делать все сначала.

Сообщение отредактировал RadikX - Mar 6 2015, 09:32
Go to the top of the page
 
+Quote Post
Цырен.
сообщение Mar 6 2015, 11:11
Сообщение #8


Евгений
***

Группа: Участник
Сообщений: 341
Регистрация: 13-10-11
Пользователь №: 67 706



Шаг 21 не желателен. Внтуренний стек сам выставит единицу после того как получит аттач. надо поставить на цикл AT+CGATT? Если в течении долгого времени не будет аттача, то подаем AT+CFUN=0 и AT+CFUN=1. Слушаем AT+CGATT? и идем дальше.


--------------------
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th July 2025 - 02:45
Рейтинг@Mail.ru


Страница сгенерированна за 0.02199 секунд с 7
ELECTRONIX ©2004-2016