GSM Сигнализация
- Войдите на сайт для отправки комментариев
Чт, 28/06/2018 - 15:16
Добрый день помогите с ощибкой. не могу понять почему вылазит ощибка, самое что интересное что этот скетч работал я его проверял он был без надобности .а сейчас есть нужда поставить сигналку в гараже но пишет ошибку.
ощибка вот в этой строчке sms.GetSMS(1,n,20,smsbuffer,160);
пишет exit status 1
no matching function for call to 'SMSGSM::GetSMS(int, char [20], int, char [160], int)'
Спасибо.
#include "SIM900.h" #include <SoftwareSerial.h> #include "sms.h" #include "call.h" SMSGSM sms; CallGSM call; //=================Пины 2 и 3 для Подключения GSM модуля int sensor1=0; int flag1=0; boolean started=false; char smsbuffer[160]; char n[20]; String n1 = "+79170417032"; String input_string = ""; String smsContent = ""; char sirena[] = "Sirena vkluchena!"; char PowerOFF[] = "Snyato s ohrani"; char smsDv[] ="Wnimaniye! Dvijeniye na objekte!"; char smsW[] ="Postanovka na ohranu!"; char pos; char sendsms[160]; void setup() { pinMode(10, OUTPUT); // Пассивный зумер (сигнал) pinMode(7, OUTPUT); Serial.begin(9600); pinMode(4, INPUT); // датчик движения // digitalWrite(4, HIGH); pinMode(5, INPUT); // еще какой-нибудь датчик // digitalWrite(5, HIGH); if (gsm.begin(4800)) { Serial.println("\nstatus=READY"); started=true; } else Serial.println("\nstatus=IDLE"); } void loop() { //===========================Первое срабатывание датчика движения if ((digitalRead(5)==HIGH) && sensor1==1 && flag1==0){ n1.toCharArray(n,20); sms.SendSMS(n, smsDv); // Посылаем СМС о том, что есть движение sms.DeleteSMS(1);memset(n,0,20); char smsbuffer[160]=""; flag1++; delay(5000); // Ждем 5 секунд } //===========================Повторное срабатывание датчика движения if ((digitalRead(5)==HIGH) && sensor1==1 && flag1==1){ n1.toCharArray(n,20); sms.SendSMS(n, sirena); // Посылаем СМС о том, что включена сирена sms.DeleteSMS(1);memset(n,0,20); char smsbuffer[160]=""; flag1++; } if (flag1>=2){ tone(10, 2780, 200); // Сирена } pos = sms.IsSMSPresent(SMS_UNREAD); // смотрим непрочитанные СМС if (pos) { // Если непрочитанные СМС есть, то... getsms(); // получаем непрочитанную СМС if (input_string=="0"){Serial.print("Snyato s ohrani!");n1.toCharArray(n,20); sms.SendSMS(n, PowerOFF); sms.DeleteSMS(1);memset(n,0,20); // Команда "0" - снять с охраны sensor1=0;digitalWrite(7,LOW);input_string=""; char smsbuffer[160]=""; flag1=0;} if (input_string=="1"){Serial.print("Postanovka na ohranu!");n1.toCharArray(n,20); sms.SendSMS(n, smsW); sms.DeleteSMS(1); memset(n,0,20); // Команда "1" - Поставить на охрану sensor1=1; input_string=""; char smsbuffer[160]=""; flag1=0;} sms.DeleteSMS(pos); // удаляем СМС из симки } } void getsms() { sms.GetSMS(1,n,20,smsbuffer,160); input_string =String(smsbuffer); }
Никто, кроме Вас не знает, что у Вас за файл sms.h, но если вот этот, то оно не могло работать, Вам это приснилось. У функции getSMS
char GetSMS(byte position, char *phone_number, char *SMS_text, byte max_SMS_len);
четыре параметра, а Вы в строке №84 пытаетесь передать пять.
да действительно если убрать один их параметров то скетч компилируется, но все работало именно с таким скетчем. это было проверенно лично и не чего не приснилось мне.
да действительно если убрать один их параметров то скетч компилируется, но все работало именно с таким скетчем. это было проверенно лично и не чего не приснилось мне.
вы, простите, в программировании что-либо понимаете?
ЭТО В ПРИНЦМПЕ НЕ МОГЛО РАБОТАТЬ.
Если работало - значит скетч был не этот или файл sms.h другой.
да действительно если убрать один их параметров то скетч компилируется, но все работало именно с таким скетчем. это было проверенно лично и не чего не приснилось мне.
вы, простите, в программировании что-либо понимаете?
ЭТО В ПРИНЦМПЕ НЕ МОГЛО РАБОТАТЬ.
Если работало - значит скетч был не этот или файл sms.h другой.
Нет я не особо понимаю в программировании возможно был файл другой скетч я спас с жесткого диска (съемного) который сгорел, доказывать я не буду не чего я 100% знаю что работала сигналка и тестировал я ее взято это вот от сюда только немного было доработанно. https://vk.com/arduino_nodemcu_esp8266?z=video-123836335_456239059%2Ff576a503cffd11ac92%2Fpl_post_-123836335_573 был добавлен геркон. сейчас не понимаю почему не хочет ....
чего вы от форума-то хотите? Как исправить ошибку компиляции - вам Евгений указал.
Вот мой код.
Тут еще есть 2 реле, которые работают как GSM розетки, все работает.
Правда у меня стоит промежуточный ППКОП Кварц и на 10 пин идет с реле.
Сделанно для того, точ бы постоянно смс не снимать охрану, Кварц реле щелкает, только когда сработка произойдет, а его я снимаю обыкновенным TouchMemory. И Кварц питает у меня Ардуино.
Сильно прошу не пинать - это мой 1 скетч и первая разработка на Ардуино
У Вас пожарная сигнализация тоже задействована?
Если не трудно накидайте схему подключения к ардуино.
У Вас пожарная сигнализация тоже задействована?
Если не трудно накидайте схему подключения к ардуино.
Пожарный шлейф заведен на прибор кварц параллельно охранному шлейфу (в охранном шлейфе стоит оконечное сопротивление, которое видит Кварц), т.е. когда прибор Кварц стоит на охране, происходит обрыв шлейфа охранного (сработка охранной сигнализации, Кварц перестает видеть оконечное сопротивление), он включает реле, то же самое при замыкании датчика пожарного на внешний диод (Прибор Кварц видит что-то на подобие КЗ в шлейфе), так же кварц включает реле.
А уже с этого реле я беру на ардуино сигнал.
Я не вижу что сработало, пожарка или охранка пока не подойду к гаражу. Ко мне только смс приходит "Srabotka".
В этом скетче нет еще звонка на телефон.
У меня вообще работает так:
1. Происходит сработка.
2. Сига мне звонит на телефон мне, чтоб разбудить, если я сплю (я на ночь телефон ставлю на беззвучку, смс приходят я их только утром могу увидеть - сигнала звукового нет, а звонок на телефон если идет, то телефон забрякает).
3. Потом шлет смс с текстом, что произошло. (сработка или пропажа питания 12 вольт - 12 вольт у меня идет с Кварца, в GSM сиге стоит аккумулятор на 3,7 вольта свой).
пунктирным контуром обозначен корпус GSM модуля на ардуино построенный (в скетче с реле идет на 10 пин, а на схеме идет на 6 пин - 6 пин вылетел у меня на ардуинке).
Еще к Сиге хочу добавить 3 цифровых датчика температуры по каналу 1Wire, что бы видеть температуру в самом гараже, GSM модуле и на улице (что бы знать на сколько там холодно и как одеться).
В добавок поставить нагреватель в корпус GSM сиги, включающийся по уставкам одного из датчиков температуры (тот что в корпусе), на сколько я зная Ардуинка не любит морозы, а в гарже мороз до -12 опускался.
Скетч на температуру уже написал, остается только исправить некоторые огрехи схемы и собрать новую схему и новый скетч.
Диоды возле стабилизаторов правильно нарисованы?
И питание на SIM800 правильно нарисуйте - а то кто-нибуть по вашей схеме начнет собирать - печалька будет.
Диоды возле стабилизаторов правильно нарисованы?
Конечно же нет))) Спасибо! На схеме спаяно, как надо, но как говорится - это же черновая схема.)))
И питание на SIM800 правильно нарисуйте - а то кто-нибуть по вашей схеме начнет собирать - печалька будет.
А что в питании не так?!
Я знаю, что порог у Сим 800 4,7 вольта, но как показала практика и на 5,2 вольта она работает (не вижу смысла усложнять). Если питание превысит порог, то сим 800 уйдет в аварию.
Может чего не учел?!
Может чего не учел?!
Если делаете "для себя" - тода экспериментируйте на здоровье :-). Но Вы ВЫЛОЖИЛИ схему как РАБОТАЮЩУЮ. И кто-то захочет повторить. И если у него сгорит SIM из-за повышеного напряжения- он справедливо будет винить ВАС. Вам это надо? :-(
Может чего не учел?!
Если делаете "для себя" - тода экспериментируйте на здоровье :-). Но Вы ВЫЛОЖИЛИ схему как РАБОТАЮЩУЮ. И кто-то захочет повторить. И если у него сгорит SIM из-за повышеного напряжения- он справедливо будет винить ВАС. Вам это надо? :-(
Мне почему-то казалось, что такие самоделки делаются на свой страх и РИСК)))))
Поправлю схему!
Мне почему-то казалось, что такие самоделки делаются на свой страх и РИСК)))))
Так то оно так, только Вы понимаете разницу между помощью и мелким пакостничеством?
Мне почему-то казалось, что такие самоделки делаются на свой страх и РИСК)))))
Так то оно так, только Вы понимаете разницу между помощью и мелким пакостничеством?
Ну совсем-то меня распинать уже не будем может)))) Я с этой темой, как Ардуино вообще в первый раз столкнулся и это мой первый проект, в котром возможны ошибки.
Схему с питанием СИМ поправил, Диоды на стабилизоторах развернул. Замечания устранил.
Ну совсем-то меня распинать уже не будем может)))) Я с этой темой, как Ардуино вообще в первый раз столкнулся и это мой первый проект, в котром возможны ошибки.
Для этого сдесь и обсуждаем как лучше и ПРАВИЛЬНЕЙ делать. Чтоб следующие уже знали где грабли лежат.