Вопрос по GSM-модулю.
- Войдите на сайт для отправки комментариев
Пт, 11/12/2015 - 11:36
В общем нужно сделать один проект. Нужно выполнить некое действие по звонку на моб телефон. Для основы выбрал Ардуино с GSM-модулем, т.к. он может принимать звонки и может сам звонить. Но вот может ли он выполнять действие при поступлении входящего звонка? Всё что после Ардуино это уже нюансы и выполнить не так уж и тяжело. Но тут надо, что б на пример, при входящем звонке на каком-то выходе Адруино появлялась логическая 1, а при сбросе вызова появлялся опять 0. Вот и всё что нужно, можно такое выполнить с GSM-модулем?
берешь самый дешевый телефон и контакты от динамика вешаешь на вход, вот тебе и логический 1.
В общем нужно сделать один проект. Нужно выполнить некое действие по звонку на моб телефон. Для основы выбрал Ардуино с GSM-модулем, т.к. он может принимать звонки и может сам звонить. Но вот может ли он выполнять действие при поступлении входящего звонка? Всё что после Ардуино это уже нюансы и выполнить не так уж и тяжело. Но тут надо, что б на пример, при входящем звонке на каком-то выходе Адруино появлялась логическая 1, а при сбросе вызова появлялся опять 0. Вот и всё что нужно, можно такое выполнить с GSM-модулем?
можно, хотя ваше объяснение можно понять двояко.
хм, ну в принципе как вариант.Спасибо, чот сразу не подумал про это))
можно, хотя ваше объяснение можно понять двояко.
ахахаах,это не бомба))) алахакбар)
Управлять нужно электромагнитом, делать это буду через електро-механическое реле.
как двояко?
Возникае сомнение, а не тот ли это случай, когда надо звонить по указанному здесь телефону.
Это конечно дешево и сердито, но срабатывать будет при любом входящем звонке. Т.е. кто то ошибся номером и устройство сработало.
Здесь было описание M590 и SIM800L www.2159602.ru
как двояко?
Возникае сомнение, а не тот ли это случай, когда надо звонить по указанному здесь телефону.
юмаристы.
Я имел ввиду при использовании варианта с телефоном.
Это конечно дешево и сердито, но срабатывать будет при любом входящем звонке. Т.е. кто то ошибся номером и устройство сработало.
Здесь было описание M590 и SIM800L www.2159602.ru
Это же мобилка, можно сделать всё проще. Настроить игнор всех номеров, кроме конкретного.
Управлять нужно электромагнитом, делать это буду через електро-механическое реле.
Простите, что лезу, когда Вы об этом не спрашивали ...
Я тут недавно управлял магнитом. Задача была сделать незатухающий маятник. Шарик качался над магнитом (магнит в центральной точке). Длина нити была такая, что шарик проходил над магнитом в нескольких миллиметрах.
1. В момент, когда шарик находится на наибольшем удалении от магнита (в амплитудной точке) нужно включать магнит (подтягивать шарик)
2. В момент, когда шарик подошёл к магниту - надо выключать магнит и дать шарику своим ходом дойти до противоположной амплитудной точки.
2. В той точке снова ключить магнит на подтягивание, и так далее.
Т.е. в итоге получаем незутахающий маятник.
Так вот, возникла проблема, которая может возникнуть и у Вас (потому и пишу). Сердечник магнита довольно быстро накапливал остаточную намагниченность и превращался в "постоянный магнит", который мешал шарику свободно удаляться от магнита когда тот выключен.
Решение, которое я нашёл было таково: я стал включать магнит через раз в противоположной полярности. Стальному шарику всё равно какая там полярность, а сердечник ничего не накапливал, т.к. каждый раз перемагничивался.
Для этого потребовалось управлять магнитом не через реле, а через H-мост. У меня ток магнита небольшой - 700ma, поэтому в качестве H-моста я использовал драйвер электродвигателя TA7291P. У этой микросхемы есть два хороших плюса для работы с магнитом. 1) регулировка выходного напряжения, что позволило мне сделать обратную связь - при увеличении амплитуды шарика я уменьшаю мощность магнита, а при уменьшении - увеличиваю; 2) режим торможения - позволяет полностью подавить скачок напряжения на индуктивной нагрузке (магните) в момент выключения магнита.
Если для Вас намагничивание тоже может стать проблемой, то подумайте о таком решении. Если у Вас ток больше, то можно подобрать драйвер для больших токов или самогонный мост на мосфетах сделать.
юмаристы.
Не "юмаристы", а "бдительные граждане"! :)))
Вот пример. #include <SoftwareSerial.h> SoftwareSerial mySerial(2, 3); // RX, TX int ch = 0; String val = ""; #define MASTER "+7XXXXXXXXXX" //укажите телефон хозяина void setup() { Serial.begin(9600); //подключаем порт компьютера Serial.println("GSM Neoway M590 example"); mySerial.begin(19200); //подключаем порт модема (при других скоростях не отвечает) mySerial.println("ATI"); //вывести в терминал иноформацию о модеме delay(100); mySerial.println("AT+CSQ"); //вывести в терминал уровень сигнала (если 99, то связи нет) delay(100); mySerial.println("AT+CLIP=1"); //включаем АОН delay(100); mySerial.println("AT+CMGF=1"); //режим кодировки СМС - обычный (для англ.) delay(100); mySerial.println("AT+CSCS=\"GSM\""); //режим кодировки текста delay(100); mySerial.println("AT+CNMI=2,2"); //отображение смс в терминале сразу после приема (без этого сообщения молча падают в память) } void loop() { if (mySerial.available()) { //есть данные от GSM модуля delay(200); //выждем, чтобы строка успела попасть в порт целиком раньше чем будет считана while (mySerial.available()) { //сохраняем входную строку в переменную val ch = mySerial.read(); val += char(ch); delay(10); } Serial.println(val); // дублируем сообщение в терминал //----------------------- определение факта приема СМС и сравнение номера(ов) с заданным(и) if (val.indexOf("+CMT") > -1) { //если обнаружен СМС (для определения звонка вместо "+CMT" вписать "RING", трубку он не берет, но реагировать на факт звонка можно) if (val.indexOf(MASTER) > -1) { //если СМС от хозяина Serial.println("--- MASTER SMS DETECTED ---"); } else { Serial.println("NO MASTER SMS"); } //----------------------- поиск кодового слова в СМС (вообще эту часть надо поместить внутрь предыдущей, но если использовать кодовое слово не совпадающее с сообщениями модема, то не обязательно) if (val.indexOf("sendme") > -1) { // если обнаружено кодовое слово Serial.println("send you ok"); // сообщаем об этом в терминал (если нужно) sms("yes sir!", MASTER); // отвечаем смской } else { // если другое слово или вообще пустое сообщение Serial.println("no send you"); sms("no sir!", MASTER); } val = ""; } } } void sms(String text, String phone) //процедура отправки СМС { Serial.println("SMS send started"); mySerial.println("AT+CMGS=\"" + phone + "\""); delay(500); mySerial.print(text); delay(500); mySerial.print((char)26); delay(500); Serial.println("SMS send complete"); delay(2000); }ЕвгенийП, спасибо, но у меня така проблема скорее всего не проявиться, т.к. включать-отключать магнит надо будет всего несколько раз в сутки. Вы говорили что у Вас магнит на 700мА, а сколько вольт? Я буду использовать готовый магнит который используют в домофонах на двери. Он на 60кг, 12В, но пишет что всего 300-400мА, вот и ещё вопрос, может ли такой магнит потреблять так мало тока?
Рсчётно 5 (именно при пяти вольтах там 700ma) а так, через свою обратную связь я могу менять от 2 вольт до 6.
Конечно может. Чем больше провода намотаешь, тем больше его активное сопротивление, тем меньший ток он потребляет и меньше греется (меняем лишнюю медь, на лучший КПД). Да у Вас там ещё и сердечник поди серьёзный.
Вообще-то сила магнита не прямо связана с током. Магинтная сила прямо пропорциональна произведению тока на количество витков (она и измеряется в ампер-витках). Так что, если мотаете больше меди, увеличиваете витки, но уменьшаете ток, магнитая сил принципиально не меняется (меняется, конечно, но не так, чтобы "ток вдвое и сила вдвое" - гораздо скромнее).
В авто себе сделал модем для запуска бинара, оригинальный модем стоит примерно 100 баксов. Я потратил меньше 5 баксов на все. Neoway M590, Дуня, про мини, dc-dc преобразователь и релюшка. Сильно не мудрил, в планах на будущее, пока все на макетке собрано модулями и уже несколько месяцев работает. При звонке с одного номера, модем сбрасывает звонок и отправляет на заданный номер смску с температурой двигателя и напряжением аккумулятора. При звонке с другого номера, сбрасывает звонок и запускает/останавливает котёл. Модем деньги тратит только на смски, а так, все звонки сбрасываются, тоесть деньги не тратятся ни с каких номеров.
Приветствую, а можно как нибудь зациклить модуль чтоб он звонил на один и тот же номер с определенной паузой. Без испльзования компа для отсыла ат- команд?
Приветствую, а можно как нибудь зациклить модуль чтоб он звонил на один и тот же номер с определенной паузой. Без испльзования компа для отсыла ат- команд?
хочешь свести кого то с ума? еще нужно чтобы дыхание в трубку транслировалось...
Ответ: как нибудь можно!
[/quote]
хочешь свести кого то с ума? еще нужно чтобы дыхание в трубку транслировалось...
Ответ: как нибудь можно!
[/quote]
Можно и без дыхания, ну я попробую сам , если не получится спрошу.
спасибо что отклкнулись