PDA

Просмотр полной версии : возникла проблема с модемом пм-01



grayeddy
08.06.2010, 14:29
Использую ПЛК-100-24 (R-L), таргет версии 2.10 вместе с модемом ПМ-01-24.АВ.
Был написан проект месяц назад, который работал (TCP/GPRS ).
На прошлой неделе появился второй модем и второй контроллер - и работа с модемом сразу не заладилась из под контроллера.

Переключатели 1 и 2 выставлен в OFF.

Если подключиться к модему напрямую и опросить через гипертерминал - все введенные AT-команды он выполняет, команды проходят, замечаний нет.

Я написал тестовый проект, иллюстрирующий суть проблемы.
В этом проекте выполняются последовательно по шагам 6 команд
1. AT+CREG?
2. AT+CGATT=1
3. AT+CIPHEAD=1
4. AT+CIPCSGP=1. "you_apn", "you_login", "you_password"
5. AT+CDNSORIP=0
6. AT+CIPSTART="TCP", "you_ip", "you_port"

Модем отвечает поначалу нормально, потом выдает мусор вперемешку с читабельными символами, и в конце - сплошной мусор, 2 скрина прилагаются в качестве вещдоков, вывод идет в строки str_1....str_6, такое впечатление, что буфер модема при чтении чем-то забивается.
Контроллер соединен с модем через RS-485, контакты выведены от A и B контроллера соответственно на A (Rx) и B (DSR) модема.

3 дня бьюсь - и все безрезультативно.
Пожалуйста, помогите, протестируйте мой тестовый проект.

grayeddy
09.06.2010, 09:21
Поднимаю тему, вопрос для меня актуален как никогда.

Подключил модем Siemens MC35i, все работает ОК, никаких искажений или потерь не замечено. (!!!)

Теперь возвращаемся к ПМ-01.
Подумал, что дело в буфере приема при считывании данных в функции ReadFromBuf(), которая в свою очередь вызывает SysComRead().
Уменьшил буфер от 1024 до 256 байтов.
Между отправкой каждой АТ-команды модему и ответом от него - пауза длиной в 5 сек.
Нет, не помогло.
При анализе скриншотов видно, что:
1. Рис. Бага 5.png -- пропал первый символ в третьей строке (str_3), последующие символы не видны (должно быть ОК или ERROR)
2. Рис. Бага 6.png -- ошибка
3. Рис. Бага 7.png -- начало первой строки (str_1) забито мусором, четвертая строка (str1_1) -- аналогично
4. Рис. Бага 7.png -- первые три возвращемые строки - нормальные, четвертая строка -- мусор.

Тестовый проект - в test.zip
Скрины - в Bugs.zip

grayeddy
09.06.2010, 11:09
Коллеги, пожалуйста, помогите. Очень надо разобраться с модемами, тут пришла целай партия, проект горит.

Если можете, дайте работоспособный демо-проект, который просто принимает At-команду и отвечает на нее. Я протестирую.

И еще один вопрос. Раньше брал модем и используя переходник ADAM RS-485/USB - посылал АТ-команды в гипертерминале. Все работало.
Сейчас же, при нажатии любой клавиши загорается и постоянно горит RxD, как будто на модем непрерывно идут данные. Пропадает, если только выдернуть USB-шнур. Что это может быть?

grayeddy
09.06.2010, 12:07
Нашел рабочий пример вот здесь http://www.owen.ru/forum/showthread.php?t=551&page=6, тема № 58
Автор утдверждает, что пример заведомо рабочий
Адаптировал его, увеличил только время ожидания и интервал между запросами.
Все равно проблема остается!
Вот иллюстрация -- похоже, что это фича модема

grayeddy
09.06.2010, 13:54
Взял три модема и прогнал через программу Приходько - получил такой же результат.
Вопрос - что делать, звонить в техподдержку?
Могли ли быть сбои c модулями GSM?

Илья Кареткин
09.06.2010, 14:53
Здравствуйте. Давайте по порядку:
1) У вас все модемы модификации ПМ-01-24.АВ ? ( если можно серийники всех 3х в личку зав№*)

2) Ваша программа, как я понимаю, написана изначалаьно для Siemens? Мы используемый отличный от них gsm-модуль.. Поэтому передаваемые команды изначально желательно проверить на поддержку.
3) Пробовали вводить команды с ПК? Что выдает модем?

grayeddy
09.06.2010, 15:38
1. отправил серийники в личку
2. поначалу разрабатывалась для сименса, потом в январе купили пм-01-24.ав для оценки и теста, он сразу заработал.
в мае написал программу, все успешно работало как связка плк 100 + пм-01, никаких проблем не было, программа применяется в системе асуно (управление освещением света).
на основании этого было решено купить партию плк-100 (25 штук) и модемов пм-01 (тоже 25), и развернуть систему.
по приходу этой партии сразу не заладилась именно работа с модемами.
вот это для меня большая проблема.
3. да, пробовал, никаких замечаний, всего надо 5 команд, чтобы запустить программу, скрин прилагаю в архиве.
потом идет прием и отправка в цикле - с этим все нормально.
тестовый пример выполнения этих команд для контроллера выложен выше, во второй теме.

спасибо, что откликнулись, для меня принципиально важно решить эту проблему.

grayeddy
09.06.2010, 16:04
похоже, что победил таки проблему. не было отключено эхо.
в терминале вбил команды
Atz
Ate0
At&w
хотя по документации к модем написано, что эхо отключено (стр 14 руководства по эксрлуатации )
сегодня протестирую - завтра отпишусь, что получилось.
надеюсь, что это действительно так, во всяком случае, тестовый пример сразу взлетел!

PS: Рабочий проект пошел! Очень глупо, что четыре дня ходил вокруг очевидной вещи, столько времени убил и нервов.
Пожалуйста, сделайте так, чтобы в модемах 100% было отключено эхо.
Или хотя бы приписку в доках на самом видном месте жирным шрифтом - "проверьте что...."
Тема закрыта - всем спасибо