Advertisement
Guest User

Untitled

a guest
Apr 10th, 2016
123
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.70 KB | None | 0 0
  1. /*===============================================================
  2. ============
  3. *****************************************************************************
  4. ***************************
  5. ================================================================
  6. ===========*/
  7.  
  8. #include "SIM900.h" //bibliotecas do módulo GSM #include "sms.h"
  9.  
  10. #include <SoftwareSerial.h>
  11. #include "sms.h"
  12. SMSGSM sms;
  13.  
  14. boolean started=false;
  15.  
  16. char telefones[][15] = { // Matriz para o número de dígitos do telefone
  17. "+5586981338795", 0}; // o 0 é utilizado como condicional de stop
  18. int LIGAGSM = 6; //Pino para ligar o GSM
  19. int ledVermelho = 13; // Pino para o LED vermelho
  20. int PIRPin = 7; // Pino OUT do sensor PIR
  21. int PIR = 0; // representa o valor fornecido pelo PIR
  22. int teste_ping = 9;
  23.  
  24.  
  25. /************************************************************************************************
  26.  
  27. ****************************FUNÇÃO ENVIO DE SMS**************************************/
  28. void sensor_presenca() {
  29.  
  30. if(started){
  31. for (int i = 0; (int)*telefones[i] != 0; i++) { // o 0 detecta o final
  32.  
  33. if (sms.SendSMS(telefones[i], "Alerta! Perimetro Invadido!"))
  34. { Serial.print("\nSMS enviado para o numero: ");
  35. Serial.println(telefones[i]);
  36.  
  37. Serial.println("Perimetro Invadido!"); Serial.println("SMS OK OK OK OK OK");
  38. }
  39.  
  40. }
  41. }
  42. delay(10000);
  43. };
  44. /************************************************************************************************
  45. ************************************************************************************************/
  46.  
  47. void setup()
  48. {
  49.  
  50. pinMode(ledVermelho, OUTPUT);
  51. pinMode(PIRPin, INPUT);
  52. pinMode(teste_ping, OUTPUT);
  53. digitalWrite(teste_ping, LOW); // acende led para simbolizar erro de ping
  54. pinMode(LIGAGSM, OUTPUT); //Declara o pino do LED como de saida
  55. //Inicia o shield GSM
  56. digitalWrite(LIGAGSM, HIGH); //Liga o GSM
  57. //digitalWrite(PIRPin, LOW); //AMBIENTE NORMAL
  58.  
  59. //função da Conexão Serial
  60.  
  61. Serial.begin(9600); // bitrate - Taxa de dados 9600 bps
  62. Serial.println("Conectando Shield IComSat GSM/GPRS SIM900 v1.1"); //teste de
  63. //configuração do Shield com a baudrate.
  64.  
  65. if (gsm.begin(2400)){
  66.  
  67. Serial.println("\nSTATUS = SISTEMA CARREGADO!"); started=true;
  68.  
  69. }
  70.  
  71. else Serial.println("\nSTATUS = SISTEMA COM PROBLEMA, FALHA NA REDE GSM!");
  72.  
  73. };
  74.  
  75. void loop()
  76. {
  77.  
  78. digitalWrite(teste_ping, HIGH);
  79. if (digitalRead(teste_ping)==HIGH){
  80. PIR = digitalRead(PIRPin); // Faz leitura do OUT do sensor PIR e atribui o valor lido em PIR
  81. if (PIR == HIGH) { // Testa se a variável PIR é alta
  82. digitalWrite(ledVermelho, HIGH); // acende led vermelho
  83. Serial.println("Perimentro Invadido!");
  84. sensor_presenca();
  85. //delay(100000);
  86. }
  87. else{
  88. digitalWrite(ledVermelho, LOW); // mantem o led vermelho apagado
  89. }
  90. }
  91. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement