Блок пользователя для работы с GSM

Создаем свой блок. Вопросы, помощь знатоков.
Аватара пользователя
stapmoff
Лейтенант
Сообщения: 341
Зарегистрирован: 16.05.2016{, 10:21}
Репутация: 4

Блок пользователя для работы с GSM

#101

Сообщение stapmoff » 12.08.2016{, 10:38}

Так давайте по порядку. В проэкте надо менять с меги на УНО? Я не менял, просто заменил строки в скетче и ошибка компиляции. Вы мне в прошлый раз просто прям блок для унки скидывали

Добавлено (12.08.2016, 10:38)
---------------------------------------------
Слимпер писал(а):Можете подключится к модулю напрямую, и посмотреть, что он шлет после подачи питания?
Вечерком посмотрю

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 27
Откуда: Новосибирск

Блок пользователя для работы с GSM

#102

Сообщение Слимпер » 12.08.2016{, 10:44}

Только, что проверил, вот новая версия

Добавлено (12.08.2016, 10:39)
---------------------------------------------
Этот вариант под уно компилируется, но в железе не тестил.

Добавлено (12.08.2016, 10:43)
---------------------------------------------
Max писал(а):По моему личному мнению, модуль SIM800L гораздо лучше, надежней и перспективней М590 и гораздо компактней... Я бы сосредоточился на нем...
А в чем отличия не подскажете, если с обоими имели дело.
А то у меня только М590. А Команды вроде основные совпадают, думал получится сделать универсальный (до определенных  приделов конечно) блок, но не зная тонкостей вред ли получится.

Добавлено (12.08.2016, 10:44)
---------------------------------------------
stapmoff, Просьба убирайте картинки под спойлер, страницу читать удобнее.
Вложения
test_13.flp
(797.88 КБ) 70 скачиваний

Аватара пользователя
stapmoff
Лейтенант
Сообщения: 341
Зарегистрирован: 16.05.2016{, 10:21}
Репутация: 4

Блок пользователя для работы с GSM

#103

Сообщение stapmoff » 12.08.2016{, 10:51}

Скомпелировал, выбрал #define Module_Start "Call Ready" в терминале 

SVONOK STOP
NET_Start_module
и всё, тишина

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 27
Откуда: Новосибирск

Блок пользователя для работы с GSM

#104

Сообщение Слимпер » 12.08.2016{, 11:16}

stapmoff писал(а):Скомпелировал, выбрал #define Module_Start "Call Ready" в терминале SVONOK STOP
NET_Start_module
и всё, тишина
Ну значит, пока не узнаю, что он передает при включении, не получится сисправить.

Аватара пользователя
stapmoff
Лейтенант
Сообщения: 341
Зарегистрирован: 16.05.2016{, 10:21}
Репутация: 4

Блок пользователя для работы с GSM

#105

Сообщение stapmoff » 12.08.2016{, 11:35}

Сейчас ципанул модуль на прямую, модуль тупо нашел сеть и молчит, проверил AT ответил OK

Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06.09.2015{, 13:12}
Репутация: 5
Откуда: Тюмень-Баку
Имя: Максим

Блок пользователя для работы с GSM

#106

Сообщение Max » 12.08.2016{, 11:35}

Слимпер писал(а):А в чем отличия не подскажете, если с обоими имели дело.
Во первых, SIM800L платы новые, а не б/у, М590 все б/у (во всяком случае у меня).
SIM800L четко отвечает на АТ команды. М590 иногда конкретно тупит и шлет кракозябры, хотя скорость выставлена нужная. После перезагрузки восстанавливается.
Часто просто отказывается общаться, не отвечает на АТ команды... Перезагрузка восстанавливает общение, хотя может и повторяться неоднократно.
М590 гораздо чувствительней к питанию.
Потом, несколько отличаются длины строк. Логика сделанная под М590 у меня, например, отказывалась работать под SIM800L, пока не перелопатил и не изменил считывание по длине строк.
Последний раз редактировалось Max 12.08.2016{, 11:37}, всего редактировалось 1 раз.

Аватара пользователя
stapmoff
Лейтенант
Сообщения: 341
Зарегистрирован: 16.05.2016{, 10:21}
Репутация: 4

Блок пользователя для работы с GSM

#107

Сообщение stapmoff » 12.08.2016{, 11:58}

Как то странно, если модуль не находит сеть, то что то летит в порт, вижу по состоянию индикатора USB-TTL. По умолчанию на 800 скорость порта стоит автоматом/ Отправляю ему AT и он пишет либо Call Ready либо +CPIN: READY но почему то не всегда, не пойму

Добавлено (12.08.2016, 11:54)
---------------------------------------------
Короче ему либо порт надо настраивать, либо дать команду для автоматич. настройки, а потом уже инициализировать

Добавлено (12.08.2016, 11:58)
---------------------------------------------
Да все правильно, при откл. питания настройки становятся по умолчанию, при вкл модуля сразу шлю ему AT и он отвечает последовательностью команд
+CPIN: READY

Call Ready

SMS Ready
Последний раз редактировалось stapmoff 12.08.2016{, 11:52}, всего редактировалось 1 раз.

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 27
Откуда: Новосибирск

Блок пользователя для работы с GSM

#108

Сообщение Слимпер » 12.08.2016{, 12:26}

stapmoff писал(а):Да все правильно, при откл. питания настройки становятся по умолчанию, при вкл модуля сразу шлю ему AT и он отвечает последовательностью команд+CPIN: READY

Call Ready

SMS Ready
Ладно надо тогда подумать как лучше сделать, но возможно и правда один раз настроить, записать настройки в память и проблем не будет. Надо глянуть вроде часть параметров можно записать командой AT&W 

Просто если бы он сам что отправлял в порт (как сейчас M590) проще было бы обнаружить его перезагрузку, или определить что он запустился после принудительной перезагрузки.

Аватара пользователя
stapmoff
Лейтенант
Сообщения: 341
Зарегистрирован: 16.05.2016{, 10:21}
Репутация: 4

Блок пользователя для работы с GSM

#109

Сообщение stapmoff » 12.08.2016{, 14:15}

Ну перевел я модем на скорость 19200 и сохранил, теперь видно что пишет после включения, первое RDY
Изображение

Добавлено (12.08.2016, 13:11)
---------------------------------------------
Вообщем такая картина

Изображение

Добавлено (12.08.2016, 13:12)
---------------------------------------------
Дальше 2 пусто)

Добавлено (12.08.2016, 13:47)
---------------------------------------------
Скорость в проэкте поменял на 19200

Добавлено (12.08.2016, 14:14)
---------------------------------------------
Попробовал перевести модуль на 9600, проэкт тоже. Итог один, NET start module и далее ничего

Добавлено (12.08.2016, 14:15)
---------------------------------------------
#define Module_Start_107836100_1 Что только не писал, начиная от RDY и до SMS Ready
Последний раз редактировалось stapmoff 12.08.2016{, 12:53}, всего редактировалось 1 раз.

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 27
Откуда: Новосибирск

Блок пользователя для работы с GSM

#110

Сообщение Слимпер » 12.08.2016{, 15:17}

Ладно, посмотрим, что еще  НовыйUser, скажет.

Но похоже модуль не отвечает на запросы (2 означает - вышло время ожидание ответа )
Толи он какую то команду не переваривает, то ли что, ну можно проверить на все команды он через терминал отвечает OK:
ATE0
AT+CPAS
AT+CREG?
AT+CLIP=1
AT+CMGF=1
AT+CSCS="GSM"
AT+CNMI=2,2,0,0,0

И еще надо пробовать, включить модуль после Arduino.
Последний раз редактировалось Слимпер 12.08.2016{, 15:22}, всего редактировалось 1 раз.

Аватара пользователя
stapmoff
Лейтенант
Сообщения: 341
Зарегистрирован: 16.05.2016{, 10:21}
Репутация: 4

Блок пользователя для работы с GSM

#111

Сообщение stapmoff » 12.08.2016{, 15:43}

Слимпер писал(а):И еще надо пробовать, включить модуль после Arduino.
Пробовал, такая же песня! На все команды отвечает OK

Изображение

Добавлено (12.08.2016, 15:43)
---------------------------------------------
Пробовал увеличивать время ответа, не помогает!!
НовыйUser писал(а):и конвертер логики нужен все же..
Конвертер не нужен

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 27
Откуда: Новосибирск

Блок пользователя для работы с GSM

#112

Сообщение Слимпер » 12.08.2016{, 16:42}

НовыйUser писал(а):est_13.flp под уно с софтваресериалом?
Я описывал, что теперь можно просто перенастроить на нужный порт комментариями в блоке.
СпойлерПоказать
// #define SERIAL_M  Serial    // для работы с COM порт 0
// #define SERIAL_M  Serial1  // для работы с COM порт 1
// #define SERIAL_M  Serial2  // для работы с COM порт 2
// #define SERIAL_M Serial3  // для работы с COM порт 3

//Для работы сCOM Software следующие две строки
//#include <SoftwareSerial.h>

//SoftwareSerial SERIAL_M( RX ,  TX );
//Конец блока настройки Software
Вот так, красным нужные имения на 3 порт, то что вычеркнуто убрать
Последний раз редактировалось Слимпер 12.08.2016{, 16:42}, всего редактировалось 1 раз.

Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06.09.2015{, 13:12}
Репутация: 5
Откуда: Тюмень-Баку
Имя: Максим

Блок пользователя для работы с GSM

#113

Сообщение Max » 12.08.2016{, 16:48}

Вот как у меня работает запрос баланса. Посылаем СМС слово-запрос "Bal".
Далее, когда кодовое слово Bal поступает в модуль, SIM800 формирует запрос AT+CUSD=1,\"#100#\" \r
Приходит ответ с балансом. По ключевому слову в строке ответа: Balance:
Сохраняем полученный баланс в переменную "BalanceAnsver"
И тут же отсылаем на телефон хозяина...
Вложения
__SIM800L.rar
(13.08 КБ) 96 скачиваний

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 27
Откуда: Новосибирск

Блок пользователя для работы с GSM

#114

Сообщение Слимпер » 12.08.2016{, 16:51}

Max писал(а):Приходит ответ с балансом. По ключевому слову в строке ответа: Balance:
А у вас какой мобильный оператор? А то у меня у мегафона  #100# не работает даже с телефона.

Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06.09.2015{, 13:12}
Репутация: 5
Откуда: Тюмень-Баку
Имя: Максим

Блок пользователя для работы с GSM

#115

Сообщение Max » 12.08.2016{, 16:56}

Слимпер писал(а):А у вас какой мобильный оператор?
МТС

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 27
Откуда: Новосибирск

Блок пользователя для работы с GSM

#116

Сообщение Слимпер » 12.08.2016{, 17:03}

Max писал(а):МТС
Вот сейчас засунул симку МТС и у меня на выходе строка с Balance:126,61r 
Короче почему то мегафон не хочет нормально отвечать, дела

Добавлено (12.08.2016, 17:03)
---------------------------------------------
Если у кого есть сим карты других операторов интересно бы узнать как они ответят на #100#

И кстати на работе сталкивался, что на корпоративных тарифах эти коды вообще не работают.

Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06.09.2015{, 13:12}
Репутация: 5
Откуда: Тюмень-Баку
Имя: Максим

Блок пользователя для работы с GSM

#117

Сообщение Max » 12.08.2016{, 17:09}

Слимпер писал(а):мегафон не хочет нормально отвечать
Может у Мегафона есть альтернативный USSD запрос?

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 27
Откуда: Новосибирск

Блок пользователя для работы с GSM

#118

Сообщение Слимпер » 12.08.2016{, 17:16}

При запросе *100# пришел ответ 20.02?????? *210#- ??????? ???? ???????! ????????
Правда почему то подчеркнутая часть пришла позже
Надо дальше пробовать, но сделать извлечение баланса MTS не сложно, а вот что делать с МЕГАФОН не знаю.

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 27
Откуда: Новосибирск

Блок пользователя для работы с GSM

#119

Сообщение Слимпер » 12.08.2016{, 17:27}

НовыйUser писал(а):-ответа нет
Нашел в коде один кося после него его устранения и замены коанды на #100# на МТС баланс приходит
Как исправить 
СпойлерПоказать
в функции setup_comand() убрать
case 6:
AT_Command("AT+CMGF=1" ,2 ) ;
count_++;
break;
Последний раз редактировалось Слимпер 12.08.2016{, 17:30}, всего редактировалось 1 раз.

Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06.09.2015{, 16:56}
Репутация: 27
Откуда: Новосибирск

Блок пользователя для работы с GSM

#120

Сообщение Слимпер » 12.08.2016{, 17:32}

Ладно фиг с ним с балансом, вопрос почему у stapmoff, SIM800L не завелся.
НовыйUser, А у вас нету 800 модуля?

Ответить

Вернуться в «Разработка пользовательских блоков»