SPL Meter: Sound Pressure Level Meter Software Development on a Smartphone

8
Ακουστική 2012 AK10_XX Ηχόμετρο: Σχεδιασμός και ανάπτυξη λογισμικού περιβάλλοντος ηχομέτρησης σε έξυπνο τηλέφωνο (iPhone) Βρύσης Λάζαρος Διπ. Μηχ., Υπ. Δρ. ΑΠΘ [email protected] Δημούλας Χαράλαμπος Δρ. Μηχ., Λέκτορας ΑΠΘ [email protected] Καλλίρης Γεώργιος Δρ. Μηχ., Επ. Καθηγητής ΑΠΘ [email protected] Παπανικολάου Γεώργιος Δρ. Μηχ. Καθηγητής ΑΠΘ [email protected] ΠΕΡΙΛΗΨΗ Η παρούσα εργασία αφορά στο σχεδιασμό, την ανάπτυξη και την αξιολόγηση μιας εφαρμογής λογισμικού ηχομέτρησης για έξυπνα τηλέφωνα (iPhone). Πρόκειται για μια πρόταση σχεδιασμού και υλοποίησης ενός ευέλικτου και φιλικού στη χρήση περιβάλλοντος μέτρησης της ηχητικής στάθμης, που να μπορεί εύκολα να χρησιμοποιηθεί από μη ειδικούς. Γνώμονας ανάπτυξης αποτέλεσε η επιδίωξη το παραγόμενο λογισμικό να παρέχει παρόμοιες λειτουργίες και ισάξιας πιστότητας μετρήσεις με μια επαγγελματική συσκευή ηχομέτρησης. Παράλληλα, δόθηκε βαρύτητα στην ενσωμάτωση επιπρόσθετων δυνατοτήτων που θα προσφέρουν πολύτιμες ευκολίες στον χρήστη και έχουν να κάνουν με τη διαχείριση των συνεδριών μέτρησης. SPL Meter: Sound Pressure Level Meter software development on a smartphone (iPhone) ABSTRACT This work involves the design, development and evaluation of a software sound level meter application for smartphones (iPhone). The paper investigates the potential of implementing a flexible and user-friendly environment for measuring sound levels, which can easily be used by non-specialists. The resulting software focuses on providing similar functionality and fidelity to a professional SPL Meter. At the same time, emphasis was given to the integration of additional capabilities that will provide valuable amenities to the user, having to do with the management of measurement sessions.

Transcript of SPL Meter: Sound Pressure Level Meter Software Development on a Smartphone

Ακουστική 2012 AK10_XX Ηχόµετρο: Σχεδιασµός και ανάπτυξη λογισµικού περιβάλλοντος ηχοµέτρησης σε έξυπνο τηλέφωνο

(iPhone) Βρύσης Λάζαρος

Διπ. Μηχ., Υπ. Δρ. ΑΠΘ [email protected]

Δηµούλας Χαράλαµπος Δρ. Μηχ., Λέκτορας ΑΠΘ

[email protected]

Καλλίρης Γεώργιος Δρ. Μηχ., Επ. Καθηγητής ΑΠΘ

[email protected]

Παπανικολάου Γεώργιος Δρ. Μηχ. Καθηγητής ΑΠΘ

[email protected]

ΠΕΡΙΛΗΨΗ

Η παρούσα εργασία αφορά στο σχεδιασµό, την ανάπτυξη και την αξιολόγηση µιας

εφαρµογής λογισµικού ηχοµέτρησης για έξυπνα τηλέφωνα (iPhone). Πρόκειται για µια πρόταση σχεδιασµού και υλοποίησης ενός ευέλικτου και φιλικού στη χρήση περιβάλλοντος µέτρησης της ηχητικής στάθµης, που να µπορεί εύκολα να χρησιµοποιηθεί από µη ειδικούς. Γνώµονας ανάπτυξης αποτέλεσε η επιδίωξη το παραγόµενο λογισµικό να παρέχει παρόµοιες λειτουργίες και ισάξιας πιστότητας µετρήσεις µε µια επαγγελµατική συσκευή ηχοµέτρησης. Παράλληλα, δόθηκε βαρύτητα στην ενσωµάτωση επιπρόσθετων δυνατοτήτων που θα προσφέρουν πολύτιµες ευκολίες στον χρήστη και έχουν να κάνουν µε τη διαχείριση των συνεδριών µέτρησης.

SPL Meter: Sound Pressure Level Meter software

development on a smartphone (iPhone)

ABSTRACT This work involves the design, development and evaluation of a software sound

level meter application for smartphones (iPhone). The paper investigates the potential of implementing a flexible and user-friendly environment for measuring sound levels, which can easily be used by non-specialists. The resulting software focuses on providing similar functionality and fidelity to a professional SPL Meter. At the same time, emphasis was given to the integration of additional capabilities that will provide valuable amenities to the user, having to do with the management of measurement sessions.

Ακουστική 2012 AK10_XX 1.! Εισαγωγή Το τεχνολογικό τοπίο τα τελευταία χρόνια παρουσιάζει ραγδαία πρόοδο στον

τοµέα των φορητών ηλεκτρονικών συσκευών και κυρίως των έξυπνων κινητών τηλεφώνων (smartphones). Το υπάρχον υπόβαθρο όσον αφορά το υλικό (hardware) αλλά και το λογισµικό (software) παρέχει ισχυρές δυνατότητες για την ανάπτυξη ποικίλων εφαρµογών και εργαλείων για αυτές τις συσκευές. Ειδικότερα, οι συσκευές τύπου iPhone εξοπλίζονται µε υψηλών τεχνικών προδιαγραφών ηλεκτρονικά υποσυστήµατα ενώ το λειτουργικό σύστηµα που τρέχουν (iOS) αποτελεί µια πρόσφορη πλατφόρµα για τη δηµιουργία εφαρµογών λογισµικού [1]. Τρέχουσες υλοποιήσεις ξεφεύγουν από την λογική της αποκλειστικής συσκευής

ηχοµέτρησης και δοµούνται ψηφιακά, βασιζόµενες σε λογισµικό. Χαρακτηριστικά παραδείγµατα αποτελούν οι εφαρµογές «SPL» [2] και «AudioTool» [3] που είναι διαθέσιµες για τα λειτουργικά συστήµατα iOS και Android αντίστοιχα. Προσφέρουν δυνατότητα µέτρησης σε SPL(A) και SPL(C), ρύθµισης της ταχύτητας σε Γρήγορο και Αργό κατά ANSI καθώς και ρύθµισης (calibration). Στόχος αυτής της εργασίας είναι η ανάπτυξη ενός ελληνικού περιβάλλοντος

λογισµικού που προσφέρει τη χρηστικότητα ενός ηχοµέτρου επικεντρώνοντας στην ακρίβεια των µετρήσεων, στη χρήση του εργαλείου από µη επαγγελµατίες και στην εκτεταµένη παροχή δυνατοτήτων και ευκολιών διαχείρισης µετρήσεων.

2.! Η εφαρµογή «Ηχόµετρο» Η εφαρµογή παρέχει δυνατότητα µετρήσεων µε χρήση διαφορετικών φίλτρων

και επιλογή ταχύτητας απόκρισης, ενώ δύναται να διαχειριστεί πολλαπλές συνεδρίες µέτρησης, να ρυθµιστεί από τον χρήστη αλλά και να χρησιµοποιεί τόσο το εσωτερικό µικρόφωνο της συσκευής όσο και κάποιο εξωτερικό. Η εφαρµογή αναπτύχθηκε αξιοποιώντας το πακέτο ανάπτυξης λογισµικού (Software Development Kit – SDK) iOS και γενικότερα υιοθετώντας το πεντάπτυχο: ανάλυση, σχεδιασµός, ανάπτυξη, εκσφαλµάτωση, αξιολόγηση [4]. Η παρούσα εργασία επικεντρώνεται περισσότερο στην παρουσίαση των παρεχόµενων λειτουργιών και στις πειραµατικές διαδικασίες παραµετροποίησης – αξιολόγησης των ρυθµίσεων, παρέχοντας και τις βασικές πληροφορίες σχετικά µε τις διαδικασίες µηχανικής λογισµικού που υιοθετήθηκαν. Το λογισµικό καταγράφει τον ήχο, κάνοντας χρήση του ενσωµατωµένου

µικροφώνου (ή εξωτερικού) που διαθέτουν τα τηλέφωνα iPhone, και έπειτα από κατάλληλη ανάλυση υπολογίζει τα δεδοµένα εξόδου που προβάλλονται στον χρήστη. Η διαδικασία πραγµατοποιείται σε πραγµατικό χρόνο. Η καταγραφή του ήχου γίνεται µε την χρήση των υπηρεσιών AudioQueues που παρέχονται από το AudioToolbox Framework του iOS SDK. Μέσω των AudioQueues είναι δυνατή η προσπέλαση των δεδοµένων των Buffers που είναι υπεύθυνα για την σύλληψη του ήχου και κατά συνέπεια των δειγµάτων του ηχογραφούµενου ήχου τα οποία αποθηκεύονται προσωρινά και αφού επεξεργαστούν κατάλληλα (σχήµα 2-1), προκύπτει η ηχητική στάθµη µέσω της ενεργού τιµής των φασµατικών δεδοµένων του σήµατος.

Ακουστική 2012 AK10_XX

Σχήµα 2-1 Ροή επεξεργασίας του σήµατος

2.1! Κύρια οθόνη µέτρησης Η κύρια οθόνη της εφαρµογής παρέχει την κατάλληλη λειτουργικότητα για την

πραγµατοποίηση µετρήσεων στάθµης ήχου. Υπάρχουν επιλογείς για τη µεταβολή της ταχύτητας µέτρησης και του φίλτρου που χρησιµοποιείται, όπως και για την έναρξη/τερµατισµό της µέτρησης. Δύο αριθµητικές ετικέτες είναι υπεύθυνες για την προβολή της τρέχουσας στάθµης και της στάθµης κορυφής, ενώ στο κέντρο υπάρχει γραφική απεικόνιση των µεγεθών (σχήµα 2-2).

Σχήµα 2-2 Κεντρική οθόνη µέτρησης

2.2! Ταχύτητα απόκρισης Η ταχύτητα παρακολούθησης των µεταβολών ηχητικής στάθµης καθορίζεται

από το χρονικό παράθυρο ολοκλήρωσης βάσει του οποίου υπολογίζεται η ενεργός τιµή της ακουστικής πίεσης και άρα από τον αριθµό των δειγµάτων του αντίστοιχου παραθύρου ανάλυσης Οι διαθέσιµες επιλογές είναι τρείς και παρουσιάζονται στον παρακάτω πίνακα [5].

Προσωρινή)μνήμη

Φασματική)ανάλυση Ισοστάθμιση Φασματική)

επεξεργασίαΥπολογισμός)

SPL

Ακουστική 2012 AK10_XX

Πίνακας 2-1 Ρυθµίσεις ταχύτητας απόκρισης

Ρύθµιση Χρόνος Κρουστική 35ms Γρήγορη 125ms Αργή 1s

2.3! Φίλτρα µέτρησης Η µέτρηση µπορεί να πραγµατοποιηθεί µε χρήση τεσσάρων φίλτρων A, Β, C και

D. Στα δείγµατα εφαρµόζεται µετασχηµατισµός Fourier, κάνοντας χρήση αλγορίθµου FFT (προεπιλεγµένο µέγεθος fft: 512 iPhone 3GS και 4, 2048 για το ταχύτερο iPhone 4S), προκειµένου o ήχος να αναλυθεί φασµατικά. Το φασµατικό περιεχόµενο τροποποιείται, έτσι ώστε να πετύχουµε την ισοστάθµιση που επιθυµούµε. Πιο συγκεκριµένα το σήµα ισοσταθµίζεται έτσι ώστε να αναιρεθεί η µη επίπεδη συχνοτική απόκριση του µικροφώνου της συσκευής. Η ισοστάθµιση στοχεύει σε εξισωµένους συντελεστές Fourier όταν η εφαρµογή συλλαµβάνει λευκό θόρυβο. Σε επόµενο βήµα, εφαρµόζεται το κατάλληλο φίλτρο (Α, B, C, D) ανάλογα µε

την επιλογή του χρήστη. Η επεξεργασία εκτελείται κάνοντας χρήση συναρτήσεων που ορίζουν τα παρακάτω φίλτρα [6].

R" f = 12200( ∙ f *f ( + 20.6( f ( ∙ 107.7( f ( + 737.9( f ( + 12200(

(3.1)

A f = 2.0 + 20 log56(R" f ) (3.2)

R9 f = 12200( ∙ f :(f ( + 20.6() f ( ∙ 158.2( (f ( + 12200()

(3.3)

B f = 0.17 + 20 log56(R9 f ) (3.4)

R> f = 12200( ∙ f :(f ( + 20.6()(f ( + 12200() (3.5)

C f = 0.06 + 20 log56(R> f ) (3.6)

R@ f = f6.8966888496476 ∙ 10BC

h(f)(f ( + 79919.29)(f ( + 1345600) (3.7)

D f = 20 log56 R@(f) (3.8)

Ακουστική 2012 AK10_XX

h f = (1037918.48 − f()( + 1080768.16f ((9837328 − f()( + 11723776f ( (3.9)

Σχήµα 2-3 Καµπύλες απόκρισης των φίλτρων Α, Β, C και D[6]

2.4! Συνεδρίες µέτρησης H εφαρµογή ενσωµατώνει ένα διαχειριστή συνεδριών µέτρησης που του

επιτρέπει (α) τη δηµιουργία νέας συνεδρίας µέτρησης, (β) τη διαγραφή συνεδρίας µέτρησης, (γ) τη συνέχιση συνεδρίας µέτρησης και (δ) την εύκολη αποστολή των δεδοµένων µιας συνεδρίας µέσω e-mail. Σε κάθε συνεδρία αποθηκεύονται χρήσιµα δεδοµένα µιας µέτρησης όπως (α) η χρονική διάρκεια µέτρησης, (β) η τοποθεσία µέτρησης µε χρήση γεωγραφικών συντεταγµένων µέσω GPS, (γ) η µέγιστη στάθµη ήχου, (δ) η ελάχιστη στάθµη ήχου, (ε) η µέση στάθµη ήχου, (στ) πίνακας µε τις τιµές στάθµης συναρτήσει του χρόνου, (ζ) σχόλια συνεδρίας.

Ακουστική 2012 AK10_XX

Σχήµα 2-4 Διαχείριση συνεδριών µέτρησης και οθόνη ρύθµισης

3.! Ρύθµιση

Η εφαρµογή είναι ρυθµισµένη κατάλληλα για κάθε µοντέλο iPhone (3GS, 4, 4S)

έτσι ώστε να αναιρεί τη µη γραµµική απόκριση του εσωτερικού µικροφώνου και τις διαφορές που υπάρχουν στο κέρδος (gain). Ωστόσο, εάν ο χρήστης επιθυµεί, µπορεί να πραγµατοποιήσει ρύθµιση (calibration) της εφαρµογής (χρήση εξωτερικού µικροφώνου). Η ρύθµιση δίνει τη δυνατότητα µεταβολής του κέρδους σε 8 περιοχές µε βάση τη συχνότητα όπως και του συνολικού. Για τη ρύθµιση, πρέπει σε πρώτο στάδιο να διορθωθεί η ισοστάθµιση και σε δεύτερο το συνολικό κέρδος της µέτρησης. Προκειµένου να επιτευχθεί επίπεδη ισοστάθµιση, και κατά συνέπεια σωστή

ρύθµιση, παράγουµε λευκό θόρυβο από µια πηγή και είτε τροποποιούµε χειροκίνητα το κέρδος σε κάθε συχνοτική περιοχή µε βάση τις ενδείξεις, είτε επιλέγουµε την αυτόµατη ρύθµιση. Για την ρύθµιση του συνολικού κέρδους, είναι απαραίτητη η ύπαρξη ενός

ηχοµέτρου αναφοράς. Στην προκειµένη περίπτωση, η διαδικασία που ακολουθήθηκε και µπορεί να ακολουθηθεί και σε κάθε φάση νέας ρύθµισης είναι η ακόλουθη. Παράγουµε ροζ θόρυβο από µια πηγή και τροποποιούµε το συνολικό κέρδος της εφαρµογής κατάλληλα, έτσι ώστε να πάρουµε ένδειξη ίση µε αυτήν του ηχόµετρου που έχουµε σαν αναφορά. Σηµειώνεται, πως για να πραγµατοποιήσουµε ορθή ρύθµιση, πρέπει οι επιλογές

όσον αφορά το φίλτρο και την ταχύτητα να είναι ίδιες τόσο στην εφαρµογή «Ηχόµετρο» όσο και στο ηχόµετρο που έχουµε σαν αναφορά.

Ακουστική 2012 AK10_XX 4.! Προδιαγραφές µέτρησης - Αξιολόγηση Η ποιότητα του µικροφώνου αλλά και των κυκλωµάτων ήχου που ενσωµατώνει

η συσκευή iPhone δίνει τη δυνατότητα πραγµατοποίησης µετρήσεων µε µικρή απόκλιση από τις πραγµατικές. To µικρόφωνο των συσκευών έχει σχετικά επίπεδη συχνοτική απόκριση στην περιοχή 200Ηz-18000Hz, αλλά όχι τέτοια που να µας επιτρέπει την διεξαγωγή αξιόπιστων µετρήσεων χωρίς ισοστάθµιση. Γι’ αυτό το λόγο η εφαρµογή είναι διαθέσιµη στα τρία τελευταία µοντέλα

iPhone (3GS, 4, 4S) και είναι προ-ισοσταθµισµένη για κάθε µοντέλο έτσι ώστε να παράγει επίπεδη καµπύλη απόκρισης στην περιοχή 125Ηz-16KHz.

Σχήµα 4-1 Συχνοτική απόκριση για διάφορα µοντέλα iPhone συσκευών χωρίς

ισοστάθµιση [8]

Η δυναµική περιοχή µέτρησης βρίσκεται στα 70dB, δίνοντας τη δυνατότητα

µέτρησης στο εύρος 30-100dB SPL(A). Η ρύθµιση των παραµέτρων κέρδους συνολικά αλλά για κάθε συχνοτική ζώνη έγινε µε σύγκριση µε επαγγελµατικό ηχόµετρο. Η απόκλιση των µετρήσεων κυµαίνεται στο +/-1dB για το εύρος συχνοτήτων 125Ηz-16kHz.

5.! Συµπεράσµατα και µελλοντικές εξελίξεις Το γεγονός ότι το «Ηχόµετρο» αποτελεί προϊόν λογισµικού διευκολύνει την

εύκολη και γρήγορη ανάπτυξή και τροποποίησή του. Ένας τοµέας που θα βελτίωνε την αξιοπιστία των µετρήσεων είναι η χρήση διαφορετικού - εξωτερικού µικρόφωνου. Οι συσκευές iPhone φέρουν θύρα jack 3.5mm για σύνδεση µικροφώνου, οπότε υπάρχει η δυνατότητα σύνδεσης εξωτερικού µικροφώνου. Η δυνατότητα ρύθµισης των παραµέτρων µέτρησης υφίσταται, οπότε ο χρήστης µπορεί να χρησιµοποιήσει ένα εξωτερικό µικρόφωνο αφού πραγµατοποιήσει ρύθµιση. Έτσι, για µεγαλύτερη ευχρηστία και ακρίβεια µέτρησης, θα µπορεί να προτείνεται ένα καταλληλότερο εξωτερικό µικρόφωνο για το οποίο η εφαρµογή να

Ακουστική 2012 AK10_XX

φέρει προ-ρυθµισµένη ισοστάθµιση. Ακόµη, δυνατή είναι η προσθήκη γραφικής αναπαράστασης του φασµατικού περιεχοµένου του υπό µέτρηση ήχου όπως και η ενσωµάτωση επιπλέον στατιστικών για τις συνεδρίες µέτρησης όπως η ισοδύναµη συνεχής στάθµη LΕQ, η µέση στάθµη L50, οι στάθµες φόντου L90, κορυφής L10, και γενικότερα LX. Τέλος, σηµαντική εξέλιξη θα αποτελούσε η ανάπτυξη της εφαρµογής και σε άλλες πλατφόρµες λογισµικού, όπως Windows Phone 8 και Android OS.

6.! Αναφορές [1] Βρύσης Λ., Κατσίµπας Φ., «SPL MASTER: Λογισµικό προσοµοίωσης

ηχοµέτρου για iPhone/iPad» εργασία στο µάθηµα Τεχνικές λήψης, επεξεργασίας και διαχείρισης ήχου (Διδάσκοντες Γ. Παπανικολάου, Γ. Καλλίρης, Χ. Δηµούλας), ΔΔΠΜΣ Προηγµένα Συστήµατα Υπολογιστών και Επικοινωνιών, Θεσσαλονίκη, 2011

[2] Studio Six Digital «SPL Meter», http://www.studiosixdigital.com/spl.html (τελ. Προσπέλαση 24/6/2012)

[3] Bofinit Corporation «AudioTool», http://sites.google.com/site/bofinit/ (τελ. Προσπέλαση 22/6/2012

[4] Apple «iOS Developer Library», https://developer.apple.com/library/ios/ (τελ. προσπέλαση 20/7/2012 [5] Malcolm J. Crocker, George S. K. Wong «Handbook of Noise and Vibration Control», Willey (2008)

[6] ANSI Standards S1.4-1983 και S1.42-2001 [7] Lindos «A-weighting in detail», http://www.lindos.co.uk/test_and_

measurement/SOURCE=Articles/SOURCE=Articles|VIEW=full|id=2 (τελ. προσπέλαση 16/6/2012)

[8] Faber Acoustical «iPhone 4 Audio and Frequency Response Limitations», http://blog.faberacoustical.com/2010/ios/iphone/iphone-4-audio-and-frequency-response-limitations/ (τελ. Προσπέλαση 27/7/2012)