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

 
 
> Как устроен внешний GSM/GPRS модем
RKS
сообщение Jan 24 2011, 20:29
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 394
Регистрация: 13-10-05
Из: Москва
Пользователь №: 9 599



Есть потребность вынести модем из устройства. Отдельно запитать, отдельно обогевать, отдельно выбирать SIM карту. От устройства до модема идет 9-ти проводный интерфейс - полный RS232. Но кроме этих сигналов модем надо как то аппаратно включить и аппаратно обрезетить. Использовать сигналы не по назначению нельзя. Поменять разъеме на устройстве нельзя. На корпусе модема тоже поместится только DB9. Пока есть только идея поставить мелкий контроллер с UARTОм который услышав специально выдуманные команды дернет аппартным RESETом или аппаратным включателем. Похоже на изобретение велосипеда. Хочу узнать как это делается правильно...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 13)
andrewlekar
сообщение Jan 25 2011, 05:48
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 837
Регистрация: 8-02-07
Пользователь №: 25 163



Довольно сложное и неоправданное решение. В идеале, добавить нужных веревок. Компромиссное решение - поставить модем, который включается автоматически при подаче питания и, в общем, не нуждается в аппаратном сбросе. Вейвком, более-менее подойдёт.
Go to the top of the page
 
+Quote Post
V_G
сообщение Jan 25 2011, 05:57
Сообщение #3


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

Группа: Свой
Сообщений: 1 818
Регистрация: 15-10-09
Из: Владивосток
Пользователь №: 52 955



Неужели все стандартные сигналы RS232 так сильно нужны? Лично я обхожусь RxD, TxD.
Пересмотрите свои потребности в этом плане.
Go to the top of the page
 
+Quote Post
Harbinger
сообщение Jan 25 2011, 06:23
Сообщение #4


старший лаборант
******

Группа: Свой
Сообщений: 2 702
Регистрация: 30-09-05
Из: ЮЗЖД
Пользователь №: 9 097



Цитата(RKS @ Jan 24 2011, 22:29) *
отдельно выбирать SIM карту.

Из нескольких? Тоже по команде (сигналу) извне??? Тогда без дополнительного контроллера о двух UART таки не обойдётся. Чтобы "прозрачно" транслировал модулю его команды, а свои обрабатывал по-своему - ресетил модуль, коммутировал карточки и т.п.


--------------------
Китайская комплектация - европейское качество! ;)
Go to the top of the page
 
+Quote Post
Slonofil
сообщение Jan 25 2011, 10:26
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 327
Регистрация: 6-10-09
Из: РФ :: Ленинград
Пользователь №: 52 781



Модем модему рознь. Например, GNS-300RS (на основе SIM300) имеет две возможности для сброса. Одна - по питанию отдельным входом (типа аппаратного сброса), причём на разъёме RJ12 заведено и питание, и сброс, так что можно управлять модемом со своей платы, если есть такая возможность; вторая - по переводу ноги DTR в единицу или отрицательным импульсом. Логика управления реализована на встроенном в модем контроллере. Глядите на возможность Вашего модема, может имеется нечто подобное.
Go to the top of the page
 
+Quote Post
RKS
сообщение Jan 25 2011, 12:13
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 394
Регистрация: 13-10-05
Из: Москва
Пользователь №: 9 599



Мы уже имеем модем на основе HiloNC. Заказчик им доволен. Менять его не получится. Надо сделать такой же но автономный . Аппратный сброс обязательно нужен, причем необходима возможность его сбрасывать с центрального процессора. Были мысли по поводу неиспользуемых линий, но не хочется изобретать свой интерфейс. Заказчик ставит свой софт на другое оборудование, которое в этом случае будет необходимо "дотачивать" аппаратно. Программно это значительно проще - если вообще понадобится.

Заказчик хочет иметь минимум 2 а лучше 3 симкарты. Не знаю зачем - не спрашивайте. Сейчас как-то обходится двумя. Выбираем мы их с центрального процессора. Соответственно контроллер рядом с модулем сделает это получив специальную команду.
Я не понял зачем для нашего решения два порта! Контроллер может слушать своим приемником обе линии между процессором и GSM модулем - и RXD и TXD (используем монтажное ИЛИ). Я пока не встречал ситуации когда сигнал есть одновременно на обоих линиях. Если такое возможно - расскажите. Я планировал дождаться пока модуль что-нибудь ответит на "кривую" команду и после этого контроллер ее отработает.


Go to the top of the page
 
+Quote Post
rx3apf
сообщение Jan 25 2011, 12:19
Сообщение #7


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(RKS @ Jan 25 2011, 15:13) *
Заказчик хочет иметь минимум 2 а лучше 3 симкарты. Не знаю зачем - не спрашивайте. Сейчас как-то обходится двумя. Выбираем мы их с центрального процессора. Соответственно контроллер рядом с модулем сделает это получив специальную команду.

Тогда и управление питанием тоже таким же способом надо делать, слушать порт и ловить команду. Во времена внешних телефонных модемов тоже практиковалось дополнительное управление питанием (даже у приличных модемов бывали проблемы с зависанием), для этого либо смотрели за поведением DTR либо вообще использовали второй COM. Если категорически не хочется использовать два порта для связи с PC, то только смотреть за содержимым основного...
Go to the top of the page
 
+Quote Post
RKS
сообщение Jan 25 2011, 14:12
Сообщение #8


Местный
***

Группа: Участник
Сообщений: 394
Регистрация: 13-10-05
Из: Москва
Пользователь №: 9 599



Цитата(Harbinger @ Jan 25 2011, 09:23) *
Из нескольких? Тоже по команде (сигналу) извне??? Тогда без дополнительного контроллера о двух UART таки не обойдётся. Чтобы "прозрачно" транслировал модулю его команды, а свои обрабатывал по-своему - ресетил модуль, коммутировал карточки и т.п.


Я не понял зачем 2 UARTа нужны контроллеру. Может я чего-то не знаю. Зачем контроллеру пропускать черех себя обмен? Мне кажется что просто подглядывать достаточно.
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Jan 25 2011, 16:49
Сообщение #9


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(RKS @ Jan 25 2011, 17:12) *
Я не понял зачем 2 UARTа нужны контроллеру. Может я чего-то не знаю. Зачем контроллеру пропускать черех себя обмен? Мне кажется что просто подглядывать достаточно.

Вероятно, предполагалось, что управляющие команды вырезаются из потока. Я думаю, что это вовсе не обязательно...
Go to the top of the page
 
+Quote Post
RKS
сообщение Jan 25 2011, 17:32
Сообщение #10


Местный
***

Группа: Участник
Сообщений: 394
Регистрация: 13-10-05
Из: Москва
Пользователь №: 9 599



Цитата(rx3apf @ Jan 25 2011, 19:49) *
Вероятно, предполагалось, что управляющие команды вырезаются из потока. Я думаю, что это вовсе не обязательно...


Команда RESET настолько первостепенна что совершенно неважно в какой позе модуль ее случайно услышит и что на нее попытается ответить. Контроллер его тут же обрезетит. Потом если нужно придет команда SIMSWITCH а за ней POWERON. В промежутках между резетом и включением можно заняться подогревом - что-нибудь установить и проконтролировать выполнение. Предполагалось такая логика.
Go to the top of the page
 
+Quote Post
Harbinger
сообщение Jan 25 2011, 19:19
Сообщение #11


старший лаборант
******

Группа: Свой
Сообщений: 2 702
Регистрация: 30-09-05
Из: ЮЗЖД
Пользователь №: 9 097



Цитата(RKS @ Jan 25 2011, 14:13) *
Я не понял зачем для нашего решения два порта! Контроллер может слушать своим приемником обе линии между процессором и GSM модулем - и RXD и TXD (используем монтажное ИЛИ). Я пока не встречал ситуации когда сигнал есть одновременно на обоих линиях.

Бывает такое, хоть вероятность и небольшая. Незапрашиваемые сообщения, которые модуль может выдать по собственной инициативе. И не все из них можно отключить.

Цитата(rx3apf @ Jan 25 2011, 18:49) *
Вероятно, предполагалось, что управляющие команды вырезаются из потока. Я думаю, что это вовсе не обязательно...

Не обязательно, если не напрягает принимать от модуля "ERROR" в ответ, вместе с ответом от контроллера wink.gif.


--------------------
Китайская комплектация - европейское качество! ;)
Go to the top of the page
 
+Quote Post
rx3apf
сообщение Jan 25 2011, 19:31
Сообщение #12


Гуру
******

Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047



Цитата(RKS @ Jan 25 2011, 20:32) *
Потом если нужно придет команда SIMSWITCH а за ней POWERON. В промежутках между резетом и включением можно заняться подогревом - что-нибудь установить и проконтролировать выполнение. Предполагалось такая логика.

Я бы сделал так же, как обработку esc-посылки ("+++") - защитная пауза, команда, защитная пауза. И можно еще сделать условием неактивный DTR, например...

Цитата(Harbinger @ Jan 25 2011, 22:19) *
Не обязательно, если не напрягает принимать от модуля "ERROR" в ответ, вместе с ответом от контроллера wink.gif.

Ну, если управляющие команды тоже будут иметь префикс "AT" - то да, будет "ERROR". Можно игнорировать, можно не использовать такой префикс - по желанию.
Go to the top of the page
 
+Quote Post
Harbinger
сообщение Jan 25 2011, 20:19
Сообщение #13


старший лаборант
******

Группа: Свой
Сообщений: 2 702
Регистрация: 30-09-05
Из: ЮЗЖД
Пользователь №: 9 097



Да даже "ERROR" в ответ на "AT+какая-то хрень" не обязательно будет (тут как-то писали, что Benq M23A на невалидные команды реагирует согласием, OK то есть, и ничего не делает при этом sm.gif ).


--------------------
Китайская комплектация - европейское качество! ;)
Go to the top of the page
 
+Quote Post
ssokol
сообщение Jan 25 2011, 20:37
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 615
Регистрация: 14-02-08
Из: г. Рыбинск, Ярославская область
Пользователь №: 35 028



Цитата(Harbinger @ Jan 25 2011, 23:19) *
(тут как-то писали, что Benq M23A на невалидные команды реагирует согласием, OK то есть, и ничего не делает при этом sm.gif ).

А разве это не противоречит GSM Specification?
Go to the top of the page
 
+Quote Post

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

 


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


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