ΡΟΜΠΟΤΙΚΗ ΜΕ ARDUINO - ARDUINO ΚΑΙ ΗΧΟΣ II Δημιουργός: Δρ.Αθανάσιος Μπαλαφούτης Επιβλέπων: Πετεινάτος Ηλίας Υποψήφιος Διδάκτωρ 1
ARDUINO ΚΑΙ ΗΧΟΣ ΠΕΡΙΕΧΟΜΕΝΑ Επικοινωνία με κάρτα SD Ενισχυτές ήχου και αναπαραγωγή αρχείων wav Αναπαραγωγή αρχείων mp3 Χρήση Μικροφώνου Επικοινωνία με Smartphones Έλεγχος Μικροφώνου Smartphone από το Arduino Αναγνώρισης φωνητικών εντολών 2
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ ΚΑΡΤΑ SD Γίνεται μέσω του SPI (master το Arduino - slave η κάρτα SD) MISO (Master In Slave Out) - δεδομένα από SD προς Arduino MOSI (Master Out Slave In) -δεδομένα από Arduino προς SD SCK (Serial Clock) - για το συγχρονισμό SS (Slave Select) - pin για να μπορεί το Arduino να ενεργοποιεί ή απενεργοποιεί την SD 3
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ ΚΑΡΤΑ SD Ethernet Shield SD Shield 4
ΠΡΟΕΤΟΙΜΑΣΙΑ ΚΑΡΤΑΣ SD Format κάρτας Γίνεται με τη βοήθεια ενός card reader και ενός υπολογιστή Το çilesystem μπορεί να είναι FAT16 ή FAT32 (κατά προτίμηση FAT16) Αποθήκευση αρχείων ονόματα αρχείων μέχρι 8 + 3 χαρακτήρες π.χ. NAME1234.EXT για να ολοκληρωθεί η εγγραφή θα πρέπει να δώσουμε τις εντολές çlush() ή close() 5
ΑΝΑΠΑΡΑΓΩΓΗ ΑΡΧΕΙΩΝ WAV 6
ΑΝΑΠΑΡΑΓΩΓΗ ΑΡΧΕΙΩΝ WAV 7
ΑΝΑΠΑΡΑΓΩΓΗ ΑΡΧΕΙΩΝ WAV 8
Music Shield ΑΝΑΠΑΡΑΓΩΓΗ ΑΡΧΕΙΩΝ MP3 Βιβλιοθήκη https://github.com/seeed-studio/music_shield 9
ΕΓΚΑΤΑΣΤΑΣΗ ΒΙΒΛΙΟΘΗΚΗΣ 10
ΕΓΚΑΤΑΣΤΑΣΗ ΒΙΒΛΙΟΘΗΚΗΣ 11
ΕΓΚΑΤΑΣΤΑΣΗ ΒΙΒΛΙΟΘΗΚΗΣ 12
ΑΝΑΠΑΡΑΓΩΓΗ ΑΡΧΕΙΩΝ MP3 13
ΑΝΑΠΑΡΑΓΩΓΗ ΑΡΧΕΙΩΝ MP3 Έλεγχος των αναλογικών εισόδων (ρύθμιση έντασης ήχου) 14
ΑΝΑΠΑΡΑΓΩΓΗ ΑΡΧΕΙΩΝ MP3 Έλεγχος των ψηφιακών εξόδων (παύση ή αλλαγή τραγουδιών) 15
ARDUINO ΚΑΙ ΜΙΚΡΟΦΩΝΟ Χωρίς την προσθήκη κατάλληλου ενισχυτή, το Arduino θα λάβει από το μικρόφωνο ένα σήμα χαμηλής έντασης 16
ARDUINO ΚΑΙ ΜΙΚΡΟΦΩΝΟ 17
ARDUINO ΚΑΙ ΜΙΚΡΟΦΩΝΟ 18
ARDUINO ΚΑΙ ΜΙΚΡΟΦΩΝΟ 19
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE Θα χρησιμοποιήσουμε την πλακέτα επέκτασης 1SHEELD για σύνδεση με smartphone Η επικοινωνία με το Arduino, γίνεται με bluetooth 4. 20
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE 21
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE Χρήσιμα αρχεία Εγκατάσταση την εφαρμογής στο smartphone: https://play.google.com/store/apps/details?id=com.integreight.onesheeld Εγκατάσταση της Βιβλιοθήκης για το Arduino https://1sheeld.com/downloads/ 22
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE Έλεγχος Μικροφώνου 23
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE Ενεργοποιείται με: Βιβλιοθήκη Μικροφώνου #define INCLUDE_MIC_SHIELD Συναρτήσεις: byte value = Mic.getValue(); Mic.startRecording( ); ή Mic.startRecording("Mic1"); Mic.stopRecording(); Mic.setOnValueChange(&myFunction); void myfunction (byte noisevalue) { Terminal.println(noiseValue); } 24
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE Έλεγχος Μικροφώνου 25
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE Έλεγχος Μουσικής 26
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE Βιβλιοθήκες Μουσικής Ενεργοποιείται με: #define INCLUDE_MUSIC_PLAYER_SHIELD Συναρτήσεις: MusicPlayer.stop(); MusicPlayer.play(); MusicPlayer.pause(); MusicPlayer.next( ); MusicPlayer.previous( ); MusicPlayer.setVolume(8); (τιμές από 1 μέχρι 10) 27
Ενεργοποιείται με: ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE Βιβλιοθήκη Αναγνώρισης Φωνής #define INCLUDE_VOICE_RECOGNIZER_SHIELD Συναρτήσεις: VoiceRecognition.start(); c h a r * myarray = VoiceRecognition.getLastCommand(); String command = VoiceRecognition.getLastCommandAsString (); int commandlength = VoiceRecognition.getLastCommandLength (); VoiceRecognition.isNewCommandReceived( ); (boolean) VoiceRecognition.setOnNewCommand(&myFunction); void myfunction ( c h a r *commandspoken) { Terminal.println(commandSpoken); } 28
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE Αναγνώριση Φωνής 29
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE Έλεγχος Σφαλμάτων 30
ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ SMARTPHONE Αναγνώριση Φωνής 31
ΑΝΙΧΝΕΥΣΗ ΠΥΡΚΑΓΙΑΣ - SMARTPHONE Ο αισθητήρας ανιχνεύει την πυρκαγιά Το Arduino επικοινωνεί με το smartphone To smartphone παίρνει τηλέφωνο ή στέλνει sms 32
ΑΝΙΧΝΕΥΣΗ ΠΥΡΚΑΓΙΑΣ - SMARTPHONE Ενεργοποιείται με: Βιβλιοθήκη SMS #define INCLUDE_SMS_SHIELD Συναρτήσεις: SMS.send( XXXXXXXX, bodymessage ); SMS.isNewSms(); (boolean) c h a r * n u mb e r = SMS.getNumber( ); String n u mb e r = SMS.getNumberAsString(); c h a r * sms= SMS.getSms(); String s ms = SMS.getSmsAsString(); SMS.setOnSmsReceive(&myFunction); void myfunction (char * phonenumber,char * messagebody){ Terminal.println(phoneNumber); Terminal.println(mesageBody); } 33
ΑΝΙΧΝΕΥΣΗ ΠΥΡΚΑΓΙΑΣ - SMARTPHONE Αποστολή SMS 34
ΑΝΙΧΝΕΥΣΗ ΠΥΡΚΑΓΙΑΣ - SMARTPHONE Ενεργοποιείται με: Βιβλιοθήκη Τηλεφωνικής Κλίσης #define INCLUDE_PHONE_SHIELD Συναρτήσεις: Phone.call( phonenumber ); Phone.isRinging(); (boolean) c h a r * n u mb e r = Phone.getNumber(); String n u mb e r = Phone.getNumberAsString(); Phone.setOnCallStatusChange(&myFunction); void myfunction (bool isphoneringing,char * phonenumber){ if(!strcmp(phonenumber, XXXXXXXXX )) { } digitalwrite(ledpin,high); } 35
ΑΝΙΧΝΕΥΣΗ ΠΥΡΚΑΓΙΑΣ - SMARTPHONE Τηλεφωνική Κλίση Η χρήση του delay πρέπει να αποφεύγεται σε τέτοιες περιπτώσεις. Συνιστάται η χρήση timers 36
ΑΝΙΧΝΕΥΣΗ ΠΥΡΚΑΓΙΑΣ - SMARTPHONE Τηλεφωνική Κλίση με χρήση timer 37
ΕΥΧΑΡΙΣΤΟΥΜΕ ΠΟΛΥ!!! 38