Στον δεύτερο κύκλο μαθημάτων θα μετατρέψουμε ένα απλό τηλεκατευθυνόμενο σε ρομποτικό όχημα ελεγχόμενο μέσω Bluetooth. Ο έλεγχος του οχήματος θα γίνετε μέσω Android τηλεφώνου ή tablet. Στο σημερινό μάθημα θα μάθουμε να προγραμματίζουμε αλλά και να χρησιμοποιούμε το Bluetooth Module HC-06.
Κάθε Bluetooth Module έχει ένα όνομα, έναν κωδικό πρόσβασης και έναν ρυθμό μετάδοσης (baud rate), τα οποία μπορούμε αν θέλουμε να τα αλλάξουμε, θα εξηγήσουμε παρακάτω πως γίνεται αυτό.
Τα σήματα του ακροδέκτη που υπάρχουν στο ΒΤ έχουν την ακόλουθη σημασία:
Κάθε Bluetooth Module έχει ένα όνομα, έναν κωδικό πρόσβασης και έναν ρυθμό μετάδοσης (baud rate), τα οποία μπορούμε αν θέλουμε να τα αλλάξουμε, θα εξηγήσουμε παρακάτω πως γίνεται αυτό.
Τα σήματα του ακροδέκτη που υπάρχουν στο ΒΤ έχουν την ακόλουθη σημασία:
Σωστή συνδεσμολογία
Για να γίνει σωστά η επικοινωνία θα πρέπει να ενώσουμε το RXD του Bluetooth με το TXD του Arduino και το TXD του Bluetooth με το RXD του Arduino αντίστοιχα. Προσοχή! Όταν περνάμε πρόγραμμα στο Arduino, θα πρέπει το RXD και TXD του Bluetooth να τα αποσυνδέουμε από το Arduino board ή να αποσυνδέουμε το Vcc του Bluetooth απ' τα 5V του Arduino.
Για να γίνει σωστά η επικοινωνία θα πρέπει να ενώσουμε το RXD του Bluetooth με το TXD του Arduino και το TXD του Bluetooth με το RXD του Arduino αντίστοιχα. Προσοχή! Όταν περνάμε πρόγραμμα στο Arduino, θα πρέπει το RXD και TXD του Bluetooth να τα αποσυνδέουμε από το Arduino board ή να αποσυνδέουμε το Vcc του Bluetooth απ' τα 5V του Arduino.
Προγραμματισμός Bluetooth module HC-06
Για να προγραμματίσουμε το Bluetooth module θα χρησιμοποιήσουμε το Arduino Uno board χωρίς τον μικρο επεξεργαστή ATMega328, οπότε με προσοχή τον αφαιρούμε πριν ξεκινήσουμε. Εάν δεν θέλετε να τον αποσυνδέσετε, μπορείτε να περάσετε απ' τα παραδείγματα το "Blink Led", με αυτόν τον τρόπο βεβαιωνόμαστε ότι ο μικρο επεξεργαστής δεν χρησιμοποιεί και αυτός την σειριακή θύρα.
H διαδικασία αυτή είναι προαιρετική και δεν απαιτητέ για την σωστή λειτουργία του BT module.
Βήματα:
1. Συνδέουμε το RXD του Bluetooth με το RXD του Arduino και το TXD του Bluetooth με το TXD του Arduino
2. Συνδέουμε το Vcc του Blueooth με τα 3,3V ή 5V του Arduino και το GNG του Bluetooth με το GND του Arduino
3. Συνδέουμε το KEY με μια αντίσταση ~10Κ στο Vcc του Bluetooth (3.3V) - Λειτουργία προγραμματισμού
4. Συνδέουμε το Arduino Uno με τον υπολογιστή μέσω του USB καλωδίου
5. Εκτελούμε το πρόγραμμα Arduino IDE στον υπολογιστή μας (Download)
6. Επιλέγουμε την σωστή σειριακή θύρα, εκείνη δηλαδή που έχει δοθεί στο Arduino UNO (Εργαλεία->Σειριακή Θύρα)
7. Ανοίγουμε την Σειριακή Οθόνη από τα εργαλεία του Arduino IDE και επιλέγουμε τον σωστό ρυθμό μετάδοσης (baud rate) που έχει ήδη το bluetooth module. Αυτή την πληροφορία μπορεί να σας την δώσει ο προμηθευτής του Bluetooth Module. Συνηθίζετε η προεπιλεγμένη τιμή να είναι 9600.
8. Πληκτρολογούμε AT , εάν πάρουμε απάντηση OK τότε είμαστε σε θέση να προγραμματίσουμε το Bluetooth. Εάν όχι τότε ξανά ελέγξτε τον ρυθμό μετάδοσης, βεβαιωθείτε για την συνδεσμολογία στα 3 πρώτα βήματα και πως έχετε βγάλει τον μικρο επεξεργαστή Atmel από το Arduino Uno ή έχετε περάσει σε αυτόν το "Blink Led"
9. Για αλλαγή ονόματος πληκτρολογούμε AT+NAMEνέο_όνομα. Το Bluetooth απαντάει OKsetname!
Για αλλαγή του κωδικού πληκτρολογούμε AT+PINνέος_κωδικός. Το Bluetooth απαντάει ΟΚsetpin!
Για αλλαγή του ρυθμού μετάδοσης AT+BAUDn (n=1,2,3,4,5,6,7,8) . To Blueooth απαντάει OKbaudrate! (όπου n=1,2,3,4,5,6,7,8 αντίστοιχα 1200,2400,4800,9600,19200,38400,57600,115200)
10.Αποσυνδέουμε το KEY από την αντίσταση και από το Vcc και το Bluetooth είναι έτοιμο με νέα χαρακτηριστικά.
Για να προγραμματίσουμε το Bluetooth module θα χρησιμοποιήσουμε το Arduino Uno board χωρίς τον μικρο επεξεργαστή ATMega328, οπότε με προσοχή τον αφαιρούμε πριν ξεκινήσουμε. Εάν δεν θέλετε να τον αποσυνδέσετε, μπορείτε να περάσετε απ' τα παραδείγματα το "Blink Led", με αυτόν τον τρόπο βεβαιωνόμαστε ότι ο μικρο επεξεργαστής δεν χρησιμοποιεί και αυτός την σειριακή θύρα.
H διαδικασία αυτή είναι προαιρετική και δεν απαιτητέ για την σωστή λειτουργία του BT module.
Βήματα:
1. Συνδέουμε το RXD του Bluetooth με το RXD του Arduino και το TXD του Bluetooth με το TXD του Arduino
2. Συνδέουμε το Vcc του Blueooth με τα 3,3V ή 5V του Arduino και το GNG του Bluetooth με το GND του Arduino
3. Συνδέουμε το KEY με μια αντίσταση ~10Κ στο Vcc του Bluetooth (3.3V) - Λειτουργία προγραμματισμού
4. Συνδέουμε το Arduino Uno με τον υπολογιστή μέσω του USB καλωδίου
5. Εκτελούμε το πρόγραμμα Arduino IDE στον υπολογιστή μας (Download)
6. Επιλέγουμε την σωστή σειριακή θύρα, εκείνη δηλαδή που έχει δοθεί στο Arduino UNO (Εργαλεία->Σειριακή Θύρα)
7. Ανοίγουμε την Σειριακή Οθόνη από τα εργαλεία του Arduino IDE και επιλέγουμε τον σωστό ρυθμό μετάδοσης (baud rate) που έχει ήδη το bluetooth module. Αυτή την πληροφορία μπορεί να σας την δώσει ο προμηθευτής του Bluetooth Module. Συνηθίζετε η προεπιλεγμένη τιμή να είναι 9600.
8. Πληκτρολογούμε AT , εάν πάρουμε απάντηση OK τότε είμαστε σε θέση να προγραμματίσουμε το Bluetooth. Εάν όχι τότε ξανά ελέγξτε τον ρυθμό μετάδοσης, βεβαιωθείτε για την συνδεσμολογία στα 3 πρώτα βήματα και πως έχετε βγάλει τον μικρο επεξεργαστή Atmel από το Arduino Uno ή έχετε περάσει σε αυτόν το "Blink Led"
9. Για αλλαγή ονόματος πληκτρολογούμε AT+NAMEνέο_όνομα. Το Bluetooth απαντάει OKsetname!
Για αλλαγή του κωδικού πληκτρολογούμε AT+PINνέος_κωδικός. Το Bluetooth απαντάει ΟΚsetpin!
Για αλλαγή του ρυθμού μετάδοσης AT+BAUDn (n=1,2,3,4,5,6,7,8) . To Blueooth απαντάει OKbaudrate! (όπου n=1,2,3,4,5,6,7,8 αντίστοιχα 1200,2400,4800,9600,19200,38400,57600,115200)
10.Αποσυνδέουμε το KEY από την αντίσταση και από το Vcc και το Bluetooth είναι έτοιμο με νέα χαρακτηριστικά.