Page 37

Μαθηματικά

Οι μαθηματικές συναρτήσεις που διατίθενται στο προγραμματιστικό περιβάλλον του Arduino έχουν σχέση με την μικρότερη και μεγαλύτερη τιμή μεταξύ δύο τιμών με χρήση των συναρτήσεων min() και max(), την απόλυτη τιμή ενός αριθμού με την abs(), της τετραγωνικής ρίζας με την sqrt() και την ύψωση σε δύναμη ενός αριθμού βάσης pow(). Επιπλέον διατίθενται δύο συναρτήσεις που χρησιμοποιούνται αρκετά συχνά στον έλεγχο των τιμών των αισθητήρων, ώστε να περιορίσουμε την τιμή που διαβάζεται από έναν αισθητήρα σε κάποιο αποδεκτό διάστημα τιμών με τη constrain() και να υπολογίσουμε μια τιμή σε διαφορετική κλίμακα απ’ ότι χρησιμοποιούμε με την map().

min(x,y)

Υπολογίζει τον μικρότερο από δυο αριθμούς. Η σύνταξη της συνάρτησης είναι: min(x,y)

όπου, x είναι ο πρώτος αριθμός, οποιουδήποτε τύπου δεδομένων και y είναι ο δεύτερος αριθμός, οποιουδήποτε τύπου και αυτός.

Η min(x,y) επιστρέφει τον μικρότερο από τους δυο αριθμούς. Παράδειγμα sensVal = min(sensVal, 100); // // // // //

εκχωρεί στη sensVal τη μικρότερη τιμή από τις sensVal και 100 διασφαλίζοντας ότι ποτέ δε θα πάρει τιμή μεγαλύτερη από 100

Σημείωση

Η min() χρησιμοποιείται για να περιορίσει το ανώτερο άκρο του φάσματος τιμών που επιτρέπεται σε μια εφαρμογή. Προειδοποίηση

Λόγω του τρόπου που υλοποιείται η συνάρτηση min(), αποφύγετε τη χρήση άλλων λειτουργιών μέσα στην παρένθεση, γιατί μπορεί να οδηγήσει σε λανθασμένα αποτελέσματα. min(a++, 100); // αποφύγετέ το γιατί μπορεί να οδηγήσει // σε λανθασμένα αποτελέσματα a++; min(a, 100);

// χρησιμοποιήσετε αυτό, κρατώντας τα // μαθηματικά έξω από τη συνάρτηση

43

Σημειώσεις arduino kales  
Σημειώσεις arduino kales  
Advertisement