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

Создаем свой блок. Вопросы, помощь знатоков.
Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06 сен 2015, 13:12
Откуда: Тюмень-Баку
Имя: Максим

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

Сообщение Max »

Слимпер писал(а):А вот что надо наверное написать, что подавать питание на модуль надо, одновременно или после питания контроллера.
Ах вот оно что!
У меня, так как я делал общение с блоком SIM800L в стандартном режиме FLProg (без создания программного блока), в блоке питания установлена задержка на включение MEGA 5 сек. Т.е. сначала включается SIM800, потом через задержку включается Ардуино.
Т.к. замечал, что если включать GSM модуль сразу с Ардуино, то бывает сыпется мусор...
И бывало, что из за этого строки разбирались не правильно. Я с этим же блоком питания пробую ваш блок... пару раз замечал, что нет коннекта с SIM800
zikkgaz24
Сержант
Сообщения: 132
Зарегистрирован: 26 авг 2016, 22:53
Откуда: Красноярск

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

Сообщение zikkgaz24 »

привет а может добавить вывод который будет через указанный пин подовать ипульс на контакт ресет после вкл ардуино так может эта проблема исчезнет и не надо будет выкл потом вкл модуль или все остольные варианты вот такая мысль
Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06 сен 2015, 13:12
Откуда: Тюмень-Баку
Имя: Максим

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

Сообщение Max »

НовыйUser писал(а):для каких задач сделана задержка ?
Я же объяснил. При включении модуля SIM800L иногда появляется мусор... Для отсечения оного и завел задержку.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

zikkgaz24 писал(а):привет а может добавить вывод который будет через указанный пин подовать ипульс на контакт ресет после вкл ардуино так может эта проблема исчезнет и не надо будет выкл потом вкл модуль или все остольные варианты вот такая мысль
Это легко делается и без переделки блока. 
Еще где то раньше выкладывал (сообщение 293) блок перезагрузки по ошибкам, но это так идея была без тестов.

Добавлено (08.09.2016, 18:04)
---------------------------------------------
Вопрос не по теми у кого нибудь есть 74НС165? Если есть, загляните в тему Входной сдвиговый регистр 74HC165
У вас нет необходимых прав для просмотра вложений в этом сообщении.
zikkgaz24
Сержант
Сообщения: 132
Зарегистрирован: 26 авг 2016, 22:53
Откуда: Красноярск

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

Сообщение zikkgaz24 »

ДА ДА  видел качал но вот что мешает ему не всегда ошибки появляються нужные чтоб блок произвел сброс и я только мысль огласил 
Сам я просто поставил таймер на 3 сек и сброс производиться чтоб наверняка

Добавлено (09.09.2016, 09:26)
---------------------------------------------
пиривет слимпер а скажи ты не думал над идеей сделать блок для работы по GPRS например с андроида управлять чем нибудь ? сложно или нет реально вообще это сделать ? хочу знать твое мнение !!!
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

zikkgaz24 писал(а):пиривет слимпер а скажи ты не думал над идеей сделать блок для работы по GPRS например с андроида управлять чем нибудь ? сложно или нет реально вообще это сделать ? хочу знать твое мнение !!!
Думал, даже читал кое что, но я почти не знаю интернет технологии (передачу данных), на моем уровне знаний, только скопировать существующий проект. 
Да и к тому же, без возможности передать в блок массив данных сделать что универсально вообще крайне сложно.
Да и пока другими делами занялся. Может и вернусь к этой идее, но позже.
zikkgaz24
Сержант
Сообщения: 132
Зарегистрирован: 26 авг 2016, 22:53
Откуда: Красноярск

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

Сообщение zikkgaz24 »

А как ты готовое в ставляешь  в редакторе блоков ?
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

zikkgaz24 писал(а):А как ты готовое в ставляешь  в редакторе блоков ?
Ну на эту тему есть в Учебный центр, и статья и видео.

АТ-команды работы модуля  по GPRS,  пытался понять,  это  вроде не так сложно. 
А имел виду, то что кроме написания блока, надо понимать как формируются запросы передачи данных через интернет, а вот это для меня темный лес. А глубоко погружаться в эту область, пока нет не времени не желания.
Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06 сен 2015, 13:12
Откуда: Тюмень-Баку
Имя: Максим

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

Сообщение Max »

Чего-то у меня проблемы с запуском этого блока.
Я так понял, что блок начинает работать только тогда, когда в порту от модуля появится сообщение  Call Ready (+PBREADY).
Но у меня SIM800 почему то почти не генерирует эти сообщения.... Предлагаю внести в модуль другой принцип старта. При включении питания делается запрос в порт SIM800 команду AT+GSN (запрос IMEI) на что модуль ответит строкой с IMEI и в конце поставит ОК и только потом блок начинает работать с SIM800. Внести дополнительный параметр в раздел "Параметры блока" под названием "IMEI модуля" и каждый, кто будет пользоваться блоком вводит туда IMEI своего модуля.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

Max писал(а):Но у меня SIM800 почему то почти не генерирует эти сообщения...
Тут такое дело, что для того чтобы модуль начал их отправлять при старте, необходимо настроить его на статическую скорость порта.
По умолчанию у него авто настройка, он ждет  любой команды, по кторой подхватывает скорость. Почитай сообщения 147 -149.
В сообщении 309 выкладывали, переделанный вариант с отдельным входам для старта.
Max писал(а):Предлагаю внести в модуль другой принцип старта. При включении питания делается запрос в порт SIM800 команду AT+GSN (запрос IMEI) на что модуль ответит строкой с IMEI и в конце поставит ОК и только потом блок начинает работать с SIM800. Внести дополнительный параметр в раздел "Параметры блока" под названием "IMEI модуля" и каждый, кто будет пользоваться блоком вводит туда IMEI своего модуля.
Можно, но я считаю существующий вариант лучше, там что при правильной настройки модуля, происходит авто детектирование его перезагрузки и авто инициализация.
Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06 сен 2015, 13:12
Откуда: Тюмень-Баку
Имя: Максим

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

Сообщение Max »

Слимпер писал(а):Тут такое дело, что для того чтобы модуль начал их отправлять при старте, необходимо настроить его на статическую скорость порта.По умолчанию у него авто настройка, он ждет любой команды, по кторой подхватывает скорость. Почитай сообщения 147 -149.
В сообщении 309 выкладывали, переделанный вариант с отдельным входам для старта.
Нет, не работает. Пару раз в самом начале работал, а потом все...
И к тому же в двух вариантах блока - не работает. Отключишь блоки, просто в терминале в ручную - все работает, модуль отвечает на все команды. Скорость 9600 (установлена постоянно).
Если (как ранее писал stapmoff) при включении модуля успеть набрать в терминале команду АТ, то иногда запускается блок...

Все же считаю, что запуск по запросу на IMEI самый универсальный и не зависящий от особенностей плат в их начальной инициализации. Забиваешь свой IMEI и все, после временной задержки (на время переходных процессов в SIM800) запрашиваешь и он отвечает, а уже далее весь блок полноправно начинает работать. Всегда гарантированно, а не вылавливаешь эти +CPIN: READY, Call Ready, SMS Ready, которые может и загрузятся, а может не загрузятся, а могут частично загрузиться...

Добавлено (10.09.2016, 21:53)
---------------------------------------------
В общем вроде заработало, но только с блоком из 309 сообщения.
Сделал так, выбрал скорость командой AT+IPR и сразу AT&W для сохранения настроек, потом перезагрузка. Вероятно скорость порта все же оставалась с настройкой "0", т.е. автоматический выбор скорости...
Последний раз редактировалось Max 10 сен 2016, 21:18, всего редактировалось 1 раз.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

Max
Подумаю над вашим предложением, но пока не знаю как это правильно реализовать, то ли вообще отказаться от старой системы, то ли сделать переключатель.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

НовыйUser писал(а):+++Добавлено (14.09.2016, 13:45)
---------------------------------------------
Проверь возможную ошибку:
На запрос о обратной смс сформировался такой номер, соответственно отправки не было

(m590 v1.1)
_______

Номер (входящий): +Megafon
Если честно не понял что произошло.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

НовыйUser писал(а):на выходе вместо номера телефона сформировалась строка: +Megafon
Ну не знаю, а в контактах на СИМ карте нет контакта с таким именем?
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

НовыйUser писал(а):нету. чистая. тоже не пойму в чем ошибка.
Тут самое интересное не где ошибка, а откуда могло взяться  слово "Megafon"
Получается что вместо номер было это слово, плюс это мой код добавил 
Значит должно было прийти: 
+CMT: "Megafon", дальше дата время
Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06 сен 2015, 13:12
Откуда: Тюмень-Баку
Имя: Максим

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

Сообщение Max »

У меня сейчас такая проблема.
Вот формирую запрос на баланс. Соответственно на входе USSD_CODE прописан заранее *100#. На вход Get_USSD короткий импульс.
В ответ же приходят набор цифр, букв и символов... И к тому же все это появляется на выходах Text_sms и T_Nomer, где вообще ответных данных по USSD запросу не должно быть...
На выходе USSD_return пусто....
Ошибка в блоке?
Последний раз редактировалось Max 14 сен 2016, 21:40, всего редактировалось 1 раз.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

Max писал(а):В ответ же приходят набор цифр, букв и символов... И к тому же все это появляется на выходах Text_sms и T_Nomer, где вообще ответных данных по USSD запросу не должно быть...
Так, очень похоже, что оператор пересылает не USSD Ответ, а СМС  с балансом.
У меня такое часто бывает, даже на телефоне и зависит от место положения (на дачи регулярно).

Для начала, проверти, что будет если вставить симку в телефон и попробовать тот же код.
А еще попробуйте вариант #100#, на мтс более устойчива срабатывает, но на  мегафоне у меня не работает вообще.
Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06 сен 2015, 13:12
Откуда: Тюмень-Баку
Имя: Максим

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

Сообщение Max »

Слимпер писал(а):а СМС с балансом.У меня такое часто бывает, даже на телефоне и зависит от место положения (на дачи регулярно)
Хорошо, тогда почему это СМС появляется на других выходах, а не на выходе, где должны появляться СМС? И к тому же ответ должен быть читаемым а не просто набор цифр и символов, где ничего не понять...
Слимпер писал(а):А еще попробуйте вариант #100#
У меня (ранее уже кусок своего кода на запрос баланса (сообщение 155)) отлично срабатывал на код *100#.
Считаю, что это проблема в блоке.
Последний раз редактировалось Max 16 сен 2016, 06:54, всего редактировалось 1 раз.
Слимпер
Майор
Сообщения: 1009
Зарегистрирован: 06 сен 2015, 16:56
Откуда: Новосибирск

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

Сообщение Слимпер »

Max писал(а):Считаю, что это проблема в блоке.
Вполне возможно, но как бы ее отловить??? У меня нет SIM800, а на 590 работало нормально.

Вопрос, можете подключится к модулю напрямую через терминал, послать настроить его, а затем, послать команды
AT+CUSD=1,"*100#"
Приложить результат
AT+CUSD=1,"#100#"
тоже приложите результат.

Возможно, я не так разбираю ответ для 800.

И также что выдает блок (желательно прямо сам текст)  на всех выходах (где должно и где не должно появляться) .

Еще, а смс нормально все получаются?

И кстати, у stapmoff, вроде, все нормально работало.
Последний раз редактировалось Слимпер 16 сен 2016, 09:09, всего редактировалось 1 раз.
Аватара пользователя
Max
Лейтенант
Сообщения: 691
Зарегистрирован: 06 сен 2015, 13:12
Откуда: Тюмень-Баку
Имя: Максим

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

Сообщение Max »

Слимпер писал(а):Вопрос, можете подключится к модулю напрямую через терминал, послать настроить его, а затем, послать командыAT+CUSD=1,"*100#"
Приложить результат
AT+CUSD=1,"#100#"
тоже приложите результат.
Сегодня постараюсь. Но следует учитывать, что в ответе есть и невидимые символы, которые в терминале не видны...
Слимпер писал(а):И также что выдает блок (желательно прямо сам текст) на всех выходах (где должно и где не должно появляться) .
Так же постараюсь. Там реально просто набор цифр и несколько символов...
Слимпер писал(а):Еще, а смс нормально все получаются?
С СМС вроде нормально. Вообще есть лимит на количество символов в одном СМС?

Да, еще заметил (выскакивало пару раз) на месте строки-выхода телефонного номера в блоке, на котором появляется номер отправившего СМС модулю вылезала какая то команда инициализации SIM800. Но сейчас не повторяются, если повторится, то напишу.
Последний раз редактировалось Max 16 сен 2016, 10:02, всего редактировалось 1 раз.
Ответить

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

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость