Можно Ваши контактные данные в личку, чтобы наши специалисты смогли связаться с Вами?
Вид для печати
Можно Ваши контактные данные в личку, чтобы наши специалисты смогли связаться с Вами?
Добрый день, мы недавно приобрели контроллер ПЛК160 и модем ПМ01, пробую использовать данную библиотеку отправки СМС модем не отправляет СМС никак не могу разобрать в чем причина, увеличивал время цикла, скорости менял, все безуспешно. Через гипертерминал модем отправляет СМС. К посту прикрепляю пример. П.С. С приемом смс все отлично работает
Вложение 8657
набираю в терминале, at+cmgf? ответ +CMGF:1, выходит текстовый режим стоит
на at+csms? ответ такой 0,1,1,1
Все наконец разобрался, причина была в неправильном указании номера sms центра через команду at+csca.
Слежу за переменной FB_SMS_SR.state, если переменная равна нулю более 20 сек., рублю питание модема на 3 сек и опять включаю. Хотя, если не используете входящие смс или звонки, тогда лучше использовать Enable и запускать FB_SMS_SR тогда, когда нужно отправить смс. За две недели ни одного зависания не было.
Добрый день, работаю с двумя библиотеками, Mercury.lib и SmsOwen.lib, в обеих этих библиотеках есть функциональные блоки OpenPort, при добвалении обеих кодесис начинает ругаться, подскажите как быть?!
Мой вопрос аналогичный, только библиотеки разные: oscat_basic_332.lib и SmsOwen.lib. SmsOwen.lib использует функции FUNCTION IS_NUM : BOOL, FUNCTION ISC_NUM : BOOL и FUNCTION to_UML : STRING(4) из библиотеки
oscat_basic_332.lib. Понятно, что необходимо убрать дублированные функции из одной из библиотек. Но как?
Спасибо.
Это же вопрос был в другой теме, там же приведено решение.
От этого поста http://www.owen.ru/forum/showthread....l=1#post115512
до этого http://www.owen.ru/forum/showthread....l=1#post115538
Здравствуйте.
Используя библиотеку SmsOvenLib у меня получилось отправлять СМС группе абонентов. Однако получить баланс не удалось.
После запроса баланса FB_SMS_SR (SendSmsText='', SendSmsNum='*101#') на выходах:
ErrCode=9 (не удалось получить баланс),
NewInSmsText='ERROR: no answer'.
ПЛК160(цикл 15мс, прошивка 2.14.0, Target version 2.10). Модем ПМ01-220-АВ подключен к RS-232 ПЛК.
При подключении гипертерминалом к модему (команда ADT*101#;) приходит баланс.
Длительность цикла ПЛК менял в пределах 1-50мс.
Проект прилагаю. Что можете посоветовать?
попробуйте набрать номер #101#
Артем ответ приходит. надо смотреть что там внутри библиотеки происходит.
klg, Вы сможете предоставить доступ к вашему компьютеру (через teamviewer или ammy admin) чтобы поквыряться в ПЛК?
В гипертерминале : AT+CUSD=1,"*100#",15 --- ответ оператора +CUSD: 0,"30.62 UAH, dijsnyj do 13.09.2014. Taryf - Super MTS 3D Nul Dnipro. * B
ezlim z Opera Mini 7dniv za 7grn. Aktyvacija *101*140#",15.
При этом на выходе ФБ FB_SMS_SR: ErrCode=9, NewInSmsText='ERROR: no answer'.
значит баланс приходит, просто время таймаута мало и не успевает прочитать весь приходящий текст, попробуйте тогда команду изменить, вместо *100# послать #100#, там обычно не многословны опсосы :)
а почему 101?
Запрос баланса у оператора МТС (Украина) '*101#'.
Запрос баланса коротким номеров у оператора МТС (Украина) '*101#'.
это же Ваш текст, набрали команду AT+CUSD=1,"*100#",15 получили ответ баланса, раз баланс пришел, надо то всего лишь сменить один символ AT+CUSD=1,"#100#",15 и ответить получилось или нет, а Вы начали объяснять что запрос должен быть *101#, непонимаю
Да, такой же.
Если набрать с мобильного '#100#' ответ сети: Dlya popovnennja rahunku natysnit *100*sekretny kod vauchera#.'.
Доброе время суток!
использую ПМ01 в связке с ПЛК63
Вопросов возникает три:
1. При попытке послать строку, конвертированную из REAL (REAL_TO_STRING) в смс приходит "пбопня", то есть набор букв, а никак не значение.
2. Подскажите, как отредактировать уставку с помощью смс. Простое присвоение уставке значение не приводит к ее сохранению по фронту. При попытке присвоить значение через указатель (READ_BY_HASH, SAVE_PARAMETR) получаю ошибку, что значение должно быть типа ARRAY OF Byte. Вопрос в таком случае, как преобразовать DWORD в ARRAy OF BYTE?
3. Решилась ли проблема с подвисаниями модема? За стабильностью работы модема следит библиотека или необходимо писать код, описанный немного выше?
ЗЫ. Прошу сильно не пинать, если вопросы ламерские, я новичек в данном вопросе
Вопрос от gonzale:
1) как выглядит текст который вы отправляете (т.е. что подается на вход блока)?
2) если на СТ то с помощью IF , если на FB то с помощью move
в качастве условия (пишу без дополнительных проверок) использовать выход блока NewInSms
Необходимо выделить из текста СМС место где лежат данные, и преобразовать в REAL (выделить можно с помощью функций Find и Mid)
3) Дайте пожалуйста ссылку на упомянутый код.
Не подскажите, какие-то настройки GSM модема надо проводить, при использовании данных библиотек?!
Для использования функциональных блоков библиотеки необходима библиотека UNM.lib - где взять?
можно и здесь http://www.owen.ru/forum/showthread.php?t=13585
Спасибо, capzap. Могу еще посоветовать http://www.owen.ru/catalog/67395347, там все библиотеки.
Написал програмку на ST для отправки смс.
Выполняю.
Порт открывается.
FB_SMS_CFG => Done = TRUE, ErrCode = 0
После этого перевожу переменную SendSms := TRUE и жду когда FB_SMS_SR.SmsSend станет TRUE.
Проверяю ErrCode = 10.
СМС естественно не отправляется.
Подскажите, где я допускаю ошибку?
Подключился к модему с компьютера по rs232.
Putty (serial)
По инструкции пытаюсь отправить смс.
AT+CMGF=1
OK
AT+CMGS="79171234567" (номер вставлял свой. СМСки не отправляются)<enter>
>hello! Ctrl-Z<ctrl-z>
и тишина. После нажатия Ctrl-Z <ctrl-z>модем больше не реагирует на команды терминала.</ctrl-z></ctrl-z></enter>
1. подаю значение температуры с датчикаЦитата:
1) как выглядит текст который вы отправляете (т.е. что подается на вход блока)?
2) если на СТ то с помощью IF , если на FB то с помощью move
в качастве условия (пишу без дополнительных проверок) использовать выход блока NewInSms
Необходимо выделить из текста СМС место где лежат данные, и преобразовать в REAL (выделить можно с помощью функций Find и Mid)
3) Дайте пожалуйста ссылку на упомянутый код.
df(value:=ain1, def_value:=5,_ERR=>err1,out_value=>temp);
d1:=REAL_TO_STRING(ain1);
textSMS:=d1;
ssend:=TRUE;
2. Пишу на ST. Что значит с помощью IF?
Присваиваю значение sp4:=STRING_TO_REAL(RIGHT(new****2));
Но по фронту sp4 остается прежним
3. Разобрался сам, все в порядке, зависаний нет
Библиотека оправляет сообщение длиной максимум 160 символов. Можно ли модифицировать ее, что бы отправляла более длинные смс?
Я так понимаю, что для этого текст разбивается по 160 байт и между смс вставляются какие-то спец символы, анализируя которые в телефоне это выглядит как одна смс.
Спец.символы не трудно вычислить если отправить вобратку на модем длинное сообщение. Только зачем, нет же разницы библиотека разложит на два сообщения или пользователь создаст два сообщения и отправит последовательно, плк всё равно выполнять код, тодько в случае бибки, теоретически код будет более громоздким и вставлять в смску лишние символы