Σελίδα 5 από 9 ΠρώτηΠρώτη ... 3 4 5 6 7 ... ΤελευταίαΤελευταία
Εμφάνιση αποτελεσμάτων : 41 έως 50 από 83

Θέμα: Έλεγχος Ρελέ με Arduino και Gsm A6 Βοήθεια με τον κώδικα

  1. #41
    Μέλος
    Όνομα
    Κωνσταντίνος
    Εγγραφή
    Jan 2015
    Περιοχή
    Πέραμα
    Μηνύματα
    83

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα από manolena Εμφάνιση μηνυμάτων
    Αν δεν βάλεις εδώ τον κώδικα που ΔΕΝ δούλεψε αλλά και τον κώδικα ΠΟΥ δούλεψε για να συγκριθούν, δεν μπορεί κανείς να σου πεί κάτι.
    Καλημέρα Μάνο , αυτός που δεν δούλεψε είναι αυτός που μου έστειλες,αυτός δηλαδή
    Κώδικας:
      #include <Wire.h> #include "SIM900.h"
    #include <SoftwareSerial.h>
    #include "sms.h"
    //===========================================
    #define relay_1      5//DIGITAL PIN D5
    #define relay_2      6//DIGITAL PIN D6
    #define relay_3      7//DIGITAL PIN D7
    #define relay_4      8//DIGITAL PIN D8
    #define A6_POWER_PIN 9//DIGITAL PIN D9 for power up modem
    //===========================================
    SMSGSM sms;              //instance for the modem
    //===========================================
    boolean started = false;
    char telnumber_1[] = "+306999999999"; //ΕΔΩ ΤΟΝ ΑΡΙΘΜΟ ΤΗΛΕΦΩΝΟΥ ΣΟΥ
    
    
    
    
    char pos;
    char *p;
    char phone_number[20]; // array for the phone number string
    char message[250];
    int i = 0;
    //===========================================
    void setup()
    { 
       Wire.begin();
       Serial.begin(9600);
       pinMode(relay_1, OUTPUT);
       pinMode(relay_2, OUTPUT);
       pinMode(relay_3, OUTPUT);
       pinMode(relay_4, OUTPUT);
       pinMode(A6_POWER_PIN, OUTPUT);
       digitalWrite(relay_1, LOW);
       digitalWrite(relay_2, LOW);
       digitalWrite(relay_3, LOW);
       digitalWrite(relay_4, LOW);
       digitalWrite(A6_POWER_PIN, LOW);
       
       A6Power();
       if (gsm.begin(9600)) 
       {
         started=true;
       }  
    }  
    //===========================================
    void loop()
    { 
      if(started) 
      {
        pos = sms.IsSMSPresent(SMS_UNREAD);
        if((int)pos > 0 && (int)pos <= 20) 
        {
          sms.GetSMS(pos, phone_number, message, 100);
          if(strcmp(phone_number,telnumber_1) == 0)// ΔΕΧΕΤΑΙ ΜΟΝΟ ΑΠΟ ΤΟ ΔΙΚΟ ΣΟΥ ΝΟΥΜΕΡΟ ΤΗΛΕΦΩΝΟΥ 
          {
            chooseRelayOutput();
          }
          pos = sms.IsSMSPresent(SMS_READ);  
        }   
        delay(1000);
      }
    }
    //===========================================
    void A6Power()
    {
      digitalWrite(A6_POWER_PIN, LOW);
      delay(1000);
      digitalWrite(A6_POWER_PIN, HIGH);
      delay(2000);
      digitalWrite(A6_POWER_PIN, LOW); 
    }
    //===========================================
    void chooseRelayOutput()
    {
      if(p == strstr(message,"RE1 ON"))//Πρέπει να στείλεις μήνυμα με το περιεχόμενο "RE1 ON"
      {
        digitalWrite(relay_1, HIGH);
      }
      else if(p == strstr(message,"RE1 OFF"))
      {
        digitalWrite(relay_1, LOW);
      }
      else if(p == strstr(message,"RE2 ON"))
      {
        digitalWrite(relay_2, HIGH);
      }
      else if(p == strstr(message,"RE2 OFF"))
      {
        digitalWrite(relay_2, LOW);
      }
      else if(p == strstr(message,"RE3 ON"))
      {
        digitalWrite(relay_3, HIGH);
      }
      else if(p == strstr(message,"RE3 OFF"))
      {
        digitalWrite(relay_3, LOW);
      }
      else if(p == strstr(message,"RE4 ON"))
      {
        digitalWrite(relay_4, HIGH);
      }
      else if(p == strstr(message,"RE4 OFF"))
      {
        digitalWrite(relay_4, LOW);
      }  
      
      sms.DeleteSMS((int)pos);  
    }  
    //===========================================
    //===========================================
    //===========================================
    //===========================================
    και αυτός που δοκίμασα να κάνει μία κλήση είναι αυτός

    Κώδικας:
     
    char phone_no[]="6955108660";
    
    
    void setup()
    {
    Serial.begin(9600);  
    delay(200);
    Serial.println("AT");
    delay(1000);
    Serial.print("ATD");
    Serial.println(phone_no);
    //Serial.println(";");
    delay(10000);
    Serial.println("ATH");
    }
    
    
    void loop()
    {
    }

    0 Not allowed! Not allowed!
    Τελευταία επεξεργασία από το χρήστη lepouras : 03-01-17 στις 19:43

  2. #42
    Μέλος Το avatar του χρήστη manolena
    Όνομα
    Μάνος
    Εγγραφή
    Dec 2006
    Περιοχή
    Ελευσίνα
    Μηνύματα
    2.709

    Προεπιλογή

    Αν δείς στο #20 σου έχω επισυνάψει ολόκληρη τη βιβλιοθήκη GSM για δύο configuration: με UNO και MEGA. Αυτό γιατί τα shields που καρφώνεις σε UNO πέφτουν σε άλλα πινάκια απο του MEGA. Κάνε ένα zip backup τη βιβλιοθήκη που έχεις και εγκατέστησε αυτήν για τον UNO. Χρησιμοποίησε τον πρώτο κώδικα που και καλά δεν δουλεύει και πες μας.

    0 Not allowed! Not allowed!

  3. #43
    Μέλος
    Όνομα
    Κωνσταντίνος
    Εγγραφή
    Jan 2015
    Περιοχή
    Πέραμα
    Μηνύματα
    83

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα από manolena Εμφάνιση μηνυμάτων
    Αν δείς στο #20 σου έχω επισυνάψει ολόκληρη τη βιβλιοθήκη GSM για δύο configuration: με UNO και MEGA. Αυτό γιατί τα shields που καρφώνεις σε UNO πέφτουν σε άλλα πινάκια απο του MEGA. Κάνε ένα zip backup τη βιβλιοθήκη που έχεις και εγκατέστησε αυτήν για τον UNO. Χρησιμοποίησε τον πρώτο κώδικα που και καλά δεν δουλεύει και πες μας.
    Καλησπέρα Μάνο έβαλα τις βιβλιοθήκες που είχες ανεβάσει εσύ.
    Και σύνδεσα όπως φαίνεται παρακάτω
    ARDUINO GSM A6
    RX (0) --> TX
    TX (1) --> RX
    GND --> GND
    PWR KEY Μόνιμα στο +5v


    Στον arduino έβαλα τάση από usb στον υπολογιστή
    και στο gsm a6 έχει usb θύρα και το σύνδεσα σε ένα τροφοδοτικό κινητού 5v 2.1a.

    0 Not allowed! Not allowed!

  4. #44
    Μέλος Το avatar του χρήστη manolena
    Όνομα
    Μάνος
    Εγγραφή
    Dec 2006
    Περιοχή
    Ελευσίνα
    Μηνύματα
    2.709

    Προεπιλογή

    Χρησιμοποίησες τη βιβλιοθήκη για τον UNO και δεν δουλεψε;

    0 Not allowed! Not allowed!

  5. #45
    Μέλος Το avatar του χρήστη SProg
    Όνομα
    Σάββας
    Εγγραφή
    Mar 2014
    Περιοχή
    Θεσσαλονίκη
    Μηνύματα
    2.612

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα από keap Εμφάνιση μηνυμάτων

    PWR KEY Μόνιμα στο +5v


    .........

    0 Not allowed! Not allowed!

  6. #46
    Μέλος
    Όνομα
    Κωνσταντίνος
    Εγγραφή
    Jan 2015
    Περιοχή
    Πέραμα
    Μηνύματα
    83

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα από manolena Εμφάνιση μηνυμάτων
    Χρησιμοποίησες τη βιβλιοθήκη για τον UNO και δεν δουλεψε;
    Ναι Μάνο γι αυτο σου ανέβασα πως τα σύνδεσα μήπως και έχω κάνει καμιά πατάτα εγώ,γιατί σε σένα απ'ότι είδα λειτουργεί κανονικά.
    Την βιβλιοθήκη σου την έκανα εγκατάσταση μέσα από το arduino ide.

    0 Not allowed! Not allowed!

  7. #47
    Μέλος
    Όνομα
    Κωνσταντίνος
    Εγγραφή
    Jan 2015
    Περιοχή
    Πέραμα
    Μηνύματα
    83

    Προεπιλογή

    Παράθεση Αρχικό μήνυμα από SavKok Εμφάνιση μηνυμάτων
    .........
    Σάββα φαίνεται περίεργο το ξέρω αλλά έτσι το σύνδεσα και μόλις έβαλα τον κώδικα με at commands να μου κάνει μία κλήση στο κινητό την έκανε κανονικά,έχεισ καμιά ιδέα?

    0 Not allowed! Not allowed!

  8. #48
    Μέλος
    Όνομα
    Κωνσταντίνος
    Εγγραφή
    Jan 2015
    Περιοχή
    Πέραμα
    Μηνύματα
    83

    Προεπιλογή

    Καλησπέρα στα παιδιά και πάλι,δοκίμασα με το Terminal v1.9 και ένα FTDI232 να συνδέσω το gsm a6 και δοκίμασα ότι μπορούσα για να μπορέσω να καταλάβω ότι λειτουργεί,δοκίμασα κλήση από το κινητό μου στην πλακέτα,όλα καλά δοκίμασα μήνυμα και εκεί όλα καλά μετά δοκίμασα κάτι άλλες εντολές άλλες απαντούσανε οκ και άλλες error,σας βάζω ακριβώς όλα όσα έγραψε από την ώρα που ξεκίνησα και σύνδεσα την πλακέτα στον υπολογιστή.Θα ήθελα αν μπορείτε να καταλάβετε εσείς πως μπορώ να κάνω αυτό που θέλω με τους ρελέδες και να μου πείτε την γνώμη σας.Ευχαριστώ πολύ για τον χρόνο σας.
    ^CINIT: 1, 0, 0

    ^CINIT: 2, 32, 41891


    ^STN: 33


    ^CINIT: 4, 8192, 33


    ^CINIT: 8, 2048, 1


    ^CINIT: 16, 0, 1638435


    ^CINIT: 32, 0, 0


    +CREG: 0


    +CIEV: service, 1
    +CIEV: roam, 0


    +CREG: 1
    ATAT
    AT


    +CME ERROR:58
    ATAT+CMGF=1ATATAT


    +CME ERROR:58
    AT
    AT


    OK
    AT+CMGF=1


    OK
    AT+CMGL=ALL


    OK
    ATD6955108660


    OK


    +CIEV: "CALL",1


    +CIEV: "SOUNDER",1
    ATH


    +CIEV: "CALL",0


    OK
    AT+CNMI=2,2,0,0,0


    OK
    AT+CMGR=1


    +CMS ERROR:321
    AT+CMGR=2


    +CMS ERROR:321
    AT+CMGR=3


    +CMS ERROR:321
    AT+CMGF=1


    OK
    AT+CSDH=1


    OK
    AT+CNMI=0,2,0,0,0


    OK
    AT+CMGR=?


    OK
    AT+CSQ


    +CSQ: 31,99


    OK
    AT+CMGF=1


    OK
    AT+CMGR=1


    +CMS ERROR:321


    RING


    RING


    RING


    RING


    RING


    RING


    RING


    RING


    RING


    RING


    RING


    RING


    +CIEV: "CALL",0


    ERROR
    AT+CMGL=?


    +CMGL: ("REC UNREAD","REC READ","STO UNSENT","STO SENT","ALL")


    OK
    AT+CMGL=ALL


    OK
    AT+CMGL=REC UNREAD


    OK


    +CIEV: "MESSAGE",1


    +CMT: "+306955108660",,"2017/01/19,13:40:02+02",145,17,0,0,"+306942190000",145,7
    Malakas
    AT+CMGR=ALL


    +CMS ERROR:305
    AT+CMGR=?


    OK
    AT+CMGR=1


    +CMS ERROR:321
    AT+CMGR=17


    +CMS ERROR:321
    AT+CMGR=3


    +CMS ERROR:321
    AT+CMGL=n


    +CMS ERROR:305
    AT+CMGL=1


    +CMS ERROR:305


    0 Not allowed! Not allowed!

  9. #49
    Μέλος
    Όνομα
    Κωνσταντίνος
    Εγγραφή
    Jan 2015
    Περιοχή
    Πέραμα
    Μηνύματα
    83

    Προεπιλογή

    Καλησπέρα Μάνο είναι εύκολο να ανεβάσεις τον κώδικα με την οθόνη και το σχεδιάγραμμα να τον δοκιμάσω και αν δεν σου κάνει κόπο να δεις και αυτά που ανέβασα με το terminal.
    Ευχαριστώ πολύ
    Παράθεση Αρχικό μήνυμα από manolena Εμφάνιση μηνυμάτων
    Καλησπέρα και Καλή Χρονιά!

    Έκανα μερικές αλλαγές στα παραπάνω, τώρα είναι ολοκληρωμένο. Για να είναι πιο εύκολο, οι έξοδοι των ρελέ είναι στα Α0-Α3, ενώ η κατάστασή τους φαίνεται πια και στην οθόνη LCD και στο σειριακό terminal όπως στις εικόνες.











    0 Not allowed! Not allowed!

  10. #50
    Μέλος Το avatar του χρήστη manolena
    Όνομα
    Μάνος
    Εγγραφή
    Dec 2006
    Περιοχή
    Ελευσίνα
    Μηνύματα
    2.709

    Προεπιλογή

    Καλημέρα Κωνσταντίνε,
    Πάλι αργοπορημενος είμαι... Θα ετοιμάσω ένα πρόχειρο σχηματικό για αυτό που εστησα όπως και τον κώδικα και θα τα ανεβάσω. Σημείωση: έχω κάνει το εξής αν σε ενδιαφέρει, εκτός από μήνυμά που μπορείς να στείλεις στο modem και να αλλάξεις κατάσταση στα ρελε, μπορείς απλά να του κάνεις μία κλήση και να ελέγξεις τα ρελε με τόνους DTMF. Εκείνο θα σου απαντάει πάλι με τόνους (δύο για ΟΝ έναν για OFF). Χωρίς πλάκα, δουλεύει ωραία αλλά με το shield που έχω εγώ.

    1 Not allowed! Not allowed!

Σελίδα 5 από 9 ΠρώτηΠρώτη ... 3 4 5 6 7 ... ΤελευταίαΤελευταία

Παρόμοια Θέματα

  1. SIM900 και πρόβλημα με κώδικα ARDUINO
    By andrew321 in forum Μικροελεγκτές
    Απαντήσεις: 21
    Τελευταίο Μήνυμα: 15-02-18, 15:08
  2. Βοήθεια σε κώδικα Arduino
    By ΚΩΣΤΑΣ2 in forum Μικροελεγκτές
    Απαντήσεις: 12
    Τελευταίο Μήνυμα: 27-02-16, 22:03
  3. Arduino και Internet μεσω GSM
    By pt3 in forum Μικροελεγκτές
    Απαντήσεις: 4
    Τελευταίο Μήνυμα: 22-06-14, 12:22
  4. Απαντήσεις: 14
    Τελευταίο Μήνυμα: 09-01-13, 17:54
  5. Έλεγχος ρελέ με PHP και AVR...
    By leone in forum Κυκλώματα για Η/Υ
    Απαντήσεις: 10
    Τελευταίο Μήνυμα: 17-01-11, 14:09

Δικαιώματα - Επιλογές

  • Δημιουργία θεμάτων: Όχι
  • Υποβολή μηνυμάτων: Όχι
  • Σύναψη αρχείων: Όχι
  • Επεξεργασία μηνυμάτων: Όχι
  •  
  • BB code: σε λειτουργία
  • Smilies: σε λειτουργία
  • [IMG]: σε λειτουργία
  • [VIDEO] code is σε λειτουργία
  • HTML: εκτός λειτουργίας