Σελίδα 2 από 3 ΠρώτηΠρώτη 1 2 3 ΤελευταίαΤελευταία
Εμφάνιση αποτελεσμάτων : 11 έως 20 από 30

Θέμα: RF arduino

  1. #11
    Μέλος
    Όνομα
    ΑΛΕΞΑΝΔΡΟΣ
    Εγγραφή
    Jan 2012
    Περιοχή
    Άνω Αχαρναί
    Μηνύματα
    717

    Προεπιλογή

    Είναι λογικό να βλέπεις θόρυβο στην έξοδο data του δέκτη, γιατί όταν δεν λαμβάνει ισχυρό σήμα, το AGC του φθάνει στα ύψη. Δυστυχώς ο χρόνος ανταπόκρισης του AGC είναι μεγάλος και αυτό είναι και το μειονέκτημα σε όλα αυτά τα modules. Επίσης δεν υπάρχει η δυνατότητα της "φίμωσης" του δέκτη όταν εμείς στέλνουμε από δίπλα από τον ίδιο μC πακέτο, με αποτέλεσμα να πρέπει να περάσει ένας χρόνος 400 με 600 msec και μετά να αρχίσουμε να περιμένουμε την απάντηση για το αν έφθασε σωστό το πακέτο.

    Φυσικά το πρόβλημα αυτό υφίσταται μόνο στην αμφίδρομη επικοινωνία.

    1 Not allowed! Not allowed!

  2. #12
    Μέλος Το avatar του χρήστη SeAfasia
    Όνομα
    SV3IRG Dinos
    Εγγραφή
    Sep 2012
    Περιοχή
    Άργος.
    Μηνύματα
    3.363

    Προεπιλογή

    Αλέξαντρε τι εννοείς "γιατί όταν δεν λαμβάνει ισχυρό σήμα, το AGC του φθάνει στα ύψη." κάπου σε χάνω...

    0 Not allowed! Not allowed!

  3. #13
    Μέλος
    Όνομα
    ΑΛΕΞΑΝΔΡΟΣ
    Εγγραφή
    Jan 2012
    Περιοχή
    Άνω Αχαρναί
    Μηνύματα
    717

    Προεπιλογή

    Αυτό που θέλω να πω είναι ότι όταν υπάρχει απλά ο θόρυβος της μπάντας, το AGC που εμπεριέχει ο δέκτης, πηγαίνει σε μέγιστη ευαισθησία και γι'αυτό το λόγο λαμβάνουμε τυχαία κυματομορφή στην έξοδο. Με το που αρχίζει να λαμβάνει ένα ισχυρό σήμα, ρίχνει κατά πολύ την ευαισθησία το AGC, για να μην "μπουκώνει" ο δέκτης. Με το που πάψει να λαμβάνει το σήμα, θέλει ένα χρόνο της τάξεως των 400 με 600 ms για να αρχίσει ο δέκτης να λαμβάνει χαμηλής ισχύος σήματα. Γι'αυτό όταν δουλεύουμε πρωτόκολλο με αναγνώριση πακέτου, πρέπει να περιμένουμε έναν ασφαλή χρόνο (τουλάχιστον 600 ms), πριν σταλεί η απάντηση του OK.

    3 Not allowed! Not allowed!

  4. #14
    Μέλος Το avatar του χρήστη thanasis 1
    Όνομα
    Θανάσης
    Εγγραφή
    Jul 2010
    Περιοχή
    ΑΘΗΝΑ
    Μηνύματα
    1.382

    Προεπιλογή

    Kαλημερα και καλο μηνα,θελω να στειλω καποια δεδομενα με ενα rf module και θελω να ρωτησω το εξης.
    Ας υποθεσουμε οτι θελουμε να στειλουμε τρεις αριθμους π.χ. τους 35,25 και 78 αλλα οχι εναν εναν καθε φορα αλλα ολους μαζι
    σε μια αποστολη και οταν τους λαβει ο δεκτης να τους "ξεχωρισει" αυτος σε 35,25 και 78 ωστε να μπορω να τους χρησιμοποιησω.
    Αυτο πρακτικα πως μπορει να γινει??

    0 Not allowed! Not allowed!

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

    Προεπιλογή

    Τους κανεις συμβολοσειρα με χαρακτηρες αναμεςσα.Για παραδειγμα:

    < 12 |43.3 | 450 >

    Στις ακραιες θεσεις θα βαλεις (προαιρετικο) χαρακτηρες αρχης και τελους, επισης μπορεις να βαλεις και ενα CC για επαληθευση (παλι προαιρετικο).Οι χαρακτηρες '|' ή οτι θες να βαλεις.. βοηθουν στο να σπας τον αριθμο.


    Υπαρχει συναρτηση για αυτη τη δουλεια.Μπορει να σου ανεβασω κομματι κωδικα απο τη πτυχιακη που εκανα κατι παρομοιο.Ειδικα εαν μιλαμε για int τιμες ειναι ακομα πιο ευκολο να παρεις την πληροφορια και να την ξανακανεις αριθμο-αριθμο.

    Περισσοτερα οταν σχολασω.

    0 Not allowed! Not allowed!

  6. #16
    Μέλος Το avatar του χρήστη thanasis 1
    Όνομα
    Θανάσης
    Εγγραφή
    Jul 2010
    Περιοχή
    ΑΘΗΝΑ
    Μηνύματα
    1.382

    Προεπιλογή

    Oκ σαββα,βασικα μπορει να ειναι και float ή int δεν ειναι κατι συγκεκριμενο απλα θα ηθελα να δω λιγο τον τροπο για το πως γινεται.
    Εψαξα στο νετ αλλα δεν βρηκα κατι μαλλον θα ψαχνω λαθος,δεν ξερω πως να το ψαξω.
    Βεβαια τωρα ετσι οπως τι εγραψες κατι μου θυμησε,πρεπει να εχει ξανα υποθει κατι παρομοιο αλλα δεν το βρισκω στην αναζητηση του φορουμ.

    0 Not allowed! Not allowed!
    Τελευταία επεξεργασία από το χρήστη thanasis 1 : 01-08-16 στις 12:56

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

    Προεπιλογή

    Τα κανεις συμβολοσειρα.

    sprintf (info,"<%d|%d|%d>",pwm_var,mode,kent_pixel);

    // Ενωση πληροφορίας που θέλουμε να στείλουμε με χαρακτήρες '<' και '>' για την σηματοδότηση της έναρξης και λήξης πακέτου και βάζουμε το χαρακτήρα '|' ανάμερα απο τις τρεις μεταβλητές μας pwm_var,mode,kent_pixel

    Δεκτης

    Εδώ είμαστε είτε γιατί όλα τα εκκρεμή δεδομένα διαβάστηκαν είτε γιατι ήρθε ο χαρακτήρας λήψης πακέτου


    if(started && ended) // Σηματοδότηση ότι έχει έρθει χαρακτήρας λήξης πακέτου '>'
    {

    // Διαχορισμός της πληροφορίας με βάση το χαρακτήρα '|' ανάμερα από τις τιμές μας

    val1 = strtok(inData,"|");

    val2 = strtok( NULL,"|");


    // Βάλε στις μεταβλητές val1,val2,val3 τα στοιχεία που χωρίζονται από τον χαρακτήρα '|'

    val3 = strtok( NULL,"|");

    pwm_var = atoi(val1);


    mode = atoi(val2);


    // Βάλε στις μεταβλητές pwm_var,mode,dir τις αντιστοιχες τιμές από την πληροφορία του διαχωρίσαμε σε μορφή int με χρήση της εντολής atoi() dir = atoi(val3);

    started = false;
    ended = false;


    // Eπαναφορά των μεταβλητών ender,started για τα νέα πακέτα index = 0; // Επαναφορά του δείκτη για τα νέα πακέτα

    }


    3 Not allowed! Not allowed!
    Τελευταία επεξεργασία από το χρήστη SProg : 01-08-16 στις 13:41

  8. Ένα μέλος ευχαρίστησε τον SProg για αυτό το χρήσιμο μήνυμα:

    thanasis 1 (01-08-16)

  9. #18
    Μέλος Το avatar του χρήστη tasosmos
    Όνομα
    Τάσος
    Εγγραφή
    Jul 2005
    Περιοχή
    Αθήνα
    Μηνύματα
    3.057

    Προεπιλογή

    Aν δουλευεις σε C η απλουστερη λυση ειναι με μια printf (αν συνδεεται απευθειας μεσω uart το module σου) ή sprintf (μετατροπη σε string χαρακτηρων που μπορεις να το κανεις ο,τι θες μετα).

    0 Not allowed! Not allowed!

  10. Ένα μέλος ευχαρίστησε τον tasosmos για αυτό το χρήσιμο μήνυμα:

    thanasis 1 (01-08-16)

  11. #19
    Μέλος Το avatar του χρήστη thanasis 1
    Όνομα
    Θανάσης
    Εγγραφή
    Jul 2010
    Περιοχή
    ΑΘΗΝΑ
    Μηνύματα
    1.382

    Προεπιλογή

    Ευχαριστω σαββα θα πεσει μελετη
    Τασο με spi συνδεεται το module.

    0 Not allowed! Not allowed!

  12. #20
    Μέλος
    Όνομα
    Νίκος
    Εγγραφή
    Feb 2014
    Περιοχή
    Μοσχάτο
    Μηνύματα
    607

    Προεπιλογή

    Εγώ θα προτιμούσα ένα union.
    Πολύ ποιο βολική, και δεν μπλέκεις και με μετατροπές...

    Πχ για να στείλεις ένα integer (2 bytes)

    union transmitInteger
    {
    int Value;
    byte byteValue[2];
    };
    transmitInteger akeraios;
    akeraios.Value = 5;


    Τώρα μπορείς να στείλεις τα 2 στοιχεία του array akeraios.byteValue() και στον δέκτη να τα βάλεις σε μια αντίστοιχη μεταβλητή τύπου union.

    0 Not allowed! Not allowed!

Σελίδα 2 από 3 ΠρώτηΠρώτη 1 2 3 ΤελευταίαΤελευταία

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

  1. arduino?
    By nikakis30 in forum Μικροελεγκτές
    Απαντήσεις: 7
    Τελευταίο Μήνυμα: 19-04-17, 00:50
  2. arduino help
    By giorgosm3 in forum Μικροελεγκτές
    Απαντήσεις: 49
    Τελευταίο Μήνυμα: 27-03-17, 09:16
  3. arduino
    By lefteris_gr in forum Μικροελεγκτές
    Απαντήσεις: 5
    Τελευταίο Μήνυμα: 23-11-13, 00:07
  4. arduino
    By Γιαννάκης 7 in forum Μικροελεγκτές
    Απαντήσεις: 4
    Τελευταίο Μήνυμα: 30-12-12, 17:36
  5. arduino
    By chrisn in forum Μικροελεγκτές
    Απαντήσεις: 2
    Τελευταίο Μήνυμα: 27-06-12, 01:44

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

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