background image

Σχεδιασμός και υλοποίηση συστήματος IoT ασύρματου ελέγχου και μέτρησης ενέργειας 

 

50 

 

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

 

Εικόνα 23 : Συνάρτηση αρχικοποίησης WiFi 

 

 

Το βασικότερο ίσως τμήμα του κώδικα που πρέπει να αναφερθεί, είναι εκείνο που 

είναι υπεύθυνο για την επικοινωνία με το μετρητή μέσω του πρωτοκόλλου Modbus. Για 
το σκοπό αυτό χρησιμοποιήθηκε η βιβλιοθήκη SDM, η οποία καθιστά την επικοινωνία με 
μετρητές  κατανάλωσης  μέσω  Modbus  απλή  και  εύκολη.  Στην  Εικόνα  24,  φαίνεται  ο 

κώδικας για την αρχικοποίηση της επικοινωνίας με το μετρητή SDM120M.  

 

Εικόνα 24 : Κώδικας αρχικοποίησης επικοινωνίας με το μετρητή κατανάλωσης 

 

Η πρώτη παράμετρος ορίζει την σειριακή διεπαφή που θα χρησιμοποιηθεί για την 

επικοινωνία, η οποία είναι η Serial1. Θα μπορούσε να χρησιμοποιηθεί οποιαδήποτε από 
τις  τρείς  σειριακές  διεπαφές  που  διαθέτει  ο  μικροελεγκτής  εκτός  από  την  Serial0  που 
χρησιμοποιείται για την εμφάνιση μηνυμάτων σχετικά με την κατάσταση της συσκευής 

στο εργαλείο Serial Monitor του Arduino IDE. Οι παράμετροι 2, 5 και 6 ορίζονται σε ένα 
αρχείο ρυθμίσεων της βιβλιοθήκης ως σταθερές και  αφορούν το ρυθμό επικοινωνίας 
Baud  (Baud  Rate)  το  οποίο  στην  περίπτωση  της  εργασίας  αυτής  είναι  2400,  και  οι 

παράμετροι 5 και 6 αντιπροσωπεύουν τις επαφές 16 και 17 του μικροελεγκτή ESP-32. Η 
παράμετρος 3 αφορά την επαφή γενικής χρήσης (GPIO Pin), που είναι υπεύθυνη για την 
εναλλαγή  της  επικοινωνίας  από  αποστολή  σε  λήψη  και  το  αντίστροφο.  Τέλος,  η 

παράμετρος  4  αποτελεί  σταθερά  του  συστήματος  και  ορίζει  την  επικοινωνία  σε  8  bit, 
χωρίς bit ισοτιμίας (parity bit) και με 1 bit τέλους (stop bit). Αφού γίνει αρχικοποίηση της 
επικοινωνίας, η μέτρηση των Watt μπορεί να ληφθεί με την γραμμή κώδικα που φαίνεται 
στην Εικόνα 25. Εδώ απαιτούνται δύο παράμετροι. Η πρώτη είναι η διεύθυνση μνήμης 

που θα αναγνωστεί και η δεύτερη είναι το αναγνωριστικό του μετρητή κατανάλωσης.  

 

Εικόνα 25 : Κώδικας λήψης της μέτρησης κατανάλωσης