Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Στο παρόν θέμα θα προσπαθήσω να γράψω έναν οδηγό για την κατασκευή ενός ασύρματου μετρητή πετρελαίου, που μέσω MQTT μας στέλνει την μέτρηση στο Home Assistant με κατανάλωση 1.3 watt.

Θα χαρώ να διαβάσω αν κάποιος άλλος το έχει φτιάξει και τι διαφορετικό έκανε.

Θοδωρής

Υλικά που θα χρειαστούμε

  1. NodeMcu ESP-8266 Board 4€
  2. Ultrasonic Module HC-SR04 2€
  3. Φορτιστή 220V --> Micro USB

Συνδέσεις HC-SR04 προς το Arduino

  • Vin-->3.3v 
  • Gnd-->Gnd
  • Trigger-->D1
  • Echo-->D2

Κώδικας για Nodemcu

RemainingPetrol.ino (επισυναπτόμενος)

έχω αρκετά σχόλια μέσα για να καταλάβει κάποιος πως δουλεύει. μερικά έξτρα σχόλια.

  • #11-15 βάζουμε τα στοιχεία μας
  • #65 βάζουμε τα μέγιστα εκατοστά που μπορεί να μετρήσει ο σενσορας μας από εκεί που το τοποθετήσαμε (πάνω κάτω το βάθος της δεξαμενής)
  • #84 Πάμε εδώ http://alloiltank.com/tank-volume-calculator/ και υπολογίζουμε το κάθε εκατοστό πετρελαίου σε πόσα λίτρα αντιστοιχεί και το βάζουμε στην θέση του "15"

Hassio Config

Πάμε στο configuration.yaml Και προσθέτουμε το εξής (προσοχή στο YAML syntax):

sensor:
  - platform: mqtt
    name: liter
    state_topic: sensor/heater
    qos: 0
    unit_of_measurement: Liter

Hassio Lovelace Config

Screenshot_2.jpg.44170a17c95dc99b8f79b3c06fefa295.jpg

 

Bonus Εικόνες

IMG_20190217_170549.jpg.da14bb759f46de28cae9ec5861cd993a.jpgIMG_20190217_170609.jpg.db178556b0d26caf8bfa903029e059fe.jpgIMG_20190217_170616.jpg.786da26785fe17ddf0f5e8d4afc7dc70.jpgIMG_20190217_170620.jpg.d0c135bf05bc17aa47db985bab038fd7.jpg

 

 

 

RemainingPetrol.ino

  • Like 11
  • Thanks 4
Δημοσ.

Φίλε πολύ ωραία σκέψη! Δυστυχώς δεν έχω επιλέξει home assistant και δε δουλεύω καθόλου Arduino. Πάντως εύγε για την εξαιρετικί ιδέα και φυσικά για την υλοποίηση.

  • Like 1
Δημοσ. (επεξεργασμένο)
Στις 17/2/2019 στις 6:11 ΜΜ, karaLRS είπε

Κώδικας για Nodemcu

RemainingPetrol.ino (επισυναπτόμενος)

έχω αρκετά σχόλια μέσα για να καταλάβει κάποιος πως δουλεύει. μερικά έξτρα σχόλια.

  • #11-15 βάζουμε τα στοιχεία μας
  • #65 βάζουμε τα μέγιστα εκατοστά που μπορεί να μετρήσει ο σενσορας μας από εκεί που το τοποθετήσαμε (πάνω κάτω το βάθος της δεξαμενής)
  • #84 Πάμε εδώ http://alloiltank.com/tank-volume-calculator/ και υπολογίζουμε το κάθε εκατοστό πετρελαίου σε πόσα λίτρα αντιστοιχεί και το βάζουμε στην θέση του "15"

Hassio Config

Πάμε στο configuration.yaml Και προσθέτουμε το εξής (προσοχή στο YAML syntax):

sensor:
  - platform: mqtt
    name: liter
    state_topic: sensor/heater
    qos: 0
    unit_of_measurement: Liter

Hassio Lovelace Config

Screenshot_2.jpg.44170a17c95dc99b8f79b3c06fefa295.jpg

Bonus Εικόνες

IMG_20190217_170549.jpg.da14bb759f46de28cae9ec5861cd993a.jpgIMG_20190217_170609.jpg.db178556b0d26caf8bfa903029e059fe.jpgIMG_20190217_170616.jpg.786da26785fe17ddf0f5e8d4afc7dc70.jpgIMG_20190217_170620.jpg.d0c135bf05bc17aa47db985bab038fd7.jpg

RemainingPetrol.ino

Καλημέρα. Εξαιρετική η ιδέα σου. Μπορείς να το ανεβάσεις και εδώ  https://www.hlektronika.gr/forum/forumdisplay.php?f=307

Επεξ/σία από pavloa
  • 2 εβδομάδες αργότερα...
Δημοσ.

καλημερα και από μένα,

έχω φτιάξει κάτι αντίστοιχο με μόνο επιπλέον μια μικρή oled.

Αυτό που παρατηρώ είναι ότι όσο μεγαλύτερη είναι η απόσταση του αισθητήρα από την επιφάνεια του υγρού, τόσο μεγαλύτερα τα λάθη μετρήσεων. Φυσικά σου δίνει μια αίσθηση του level αλλά με πολλά errors.

Έχεις παρατηρήσει κάτι αντίστοιχο??????

oled.jpg

graph.jpg

Δημοσ.
Στις 5/3/2019 στις 10:52 ΠΜ, theibanez είπε

καλημερα και από μένα,

έχω φτιάξει κάτι αντίστοιχο με μόνο επιπλέον μια μικρή oled.

Αυτό που παρατηρώ είναι ότι όσο μεγαλύτερη είναι η απόσταση του αισθητήρα από την επιφάνεια του υγρού, τόσο μεγαλύτερα τα λάθη μετρήσεων. Φυσικά σου δίνει μια αίσθηση του level αλλά με πολλά errors.

Έχεις παρατηρήσει κάτι αντίστοιχο??????

oled.jpg

graph.jpg

Καλησπέρα.

πολύ ωραία κατασκευή. 

πόσες μετρήσεις κάνεις στον κώδικα σου πριν στείλεις την μέτρηση;

πχ εγώ κάνω κάπου 30 και από αυτές αφαιρώ την min και max τιμή ( συνήθως spikes) και μετά βγάζω μέσο όρο. 

η διακύμανση που έχω είναι 5-10 λίτρα  στην διάρκεια της ημέρας χωρίς κατανάλωση.(ίσως παίζει και η θερμοκρασία ρόλο για τον όγκο)

  • 2 εβδομάδες αργότερα...
Δημοσ.
Στις 8/3/2019 στις 5:46 ΜΜ, karaLRS είπε

Καλησπέρα.

πολύ ωραία κατασκευή. 

πόσες μετρήσεις κάνεις στον κώδικα σου πριν στείλεις την μέτρηση;

πχ εγώ κάνω κάπου 30 και από αυτές αφαιρώ την min και max τιμή ( συνήθως spikes) και μετά βγάζω μέσο όρο. 

η διακύμανση που έχω είναι 5-10 λίτρα  στην διάρκεια της ημέρας χωρίς κατανάλωση.(ίσως παίζει και η θερμοκρασία ρόλο για τον όγκο)

Πρεπει να ακολουθήσω τη συμβουλή σου.

Προς το παρόν χρησιμοποιώ την ετοιμη βιβλιοθήκη newping με 30 μετρήσεις. Δεν αφαιρεί max & min αλλά βγάζει το median από τις 30.

Δημοσ.
6 ώρες πριν, theibanez είπε

Πρεπει να ακολουθήσω τη συμβουλή σου.

Προς το παρόν χρησιμοποιώ την ετοιμη βιβλιοθήκη newping με 30 μετρήσεις. Δεν αφαιρεί max & min αλλά βγάζει το median από τις 30.

όπως βλέπω το γράφημα σου νομίζω ότι τα Peaks δημιουργούν το πρόβλημα.

  • 1 χρόνο αργότερα...
Δημοσ. (επεξεργασμένο)

Καλησπέρα,

καταρχάς συγχαρητήρια για την πολύ καλή ιδέα. Ήθελα να σε ρωτήσω να έχεις δοκιμάσει να το τροφοδοτήσεις με μπαταρίες και πώς το έκανες και επίσης κάποιες οδηγίες για το Home Assistant. 

Ευχαριστώ

Επεξ/σία από hasan
Δημοσ.
13 ώρες πριν, hasan είπε

Καλησπέρα,

καταρχάς συγχαρητήρια για την πολύ καλή ιδέα. Ήθελα να σε ρωτήσω να έχεις δοκιμάσει να το τροφοδοτήσεις με μπαταρίες και πώς το έκανες και επίσης κάποιες οδηγίες για το Home Assistant. 

Ευχαριστώ

Καλημέρα

με μπαταρίες δεν έχω δοκιμάσει παρόλα αυτά με κάποιες μετατροπές στον κώδικα είχα υπολογίσει γύρω στους 2 μήνες με μια μπαταρία 18650 με 24 μετρήσεις την ημέρα.

για το Homeassistant Πρέπει να έχεις MQTT broker. το έχεις κάνει αυτό;

Δημοσ.

Ευχαριστώ για την απάντηση. Όχι δεν το έχω κάνει ακόμα, είμαι σε αρχική φάση. Θα το ψάξω λιγάκι μόνος μου πρώτα και θα σου πω.

  • 3 εβδομάδες αργότερα...
Δημοσ.
Στις 17/2/2019 στις 6:11 ΜΜ, karaLRS είπε

Hassio Lovelace Config

Καλημέρα,

κατάφερα να στήσω MQTT broker και HomeAssistant και λαμβάνω δεδομένα κανονικά από το NodeMcu. Έχω όμως ένα βασικό πρόβλημα στο οποίο θα ήθελα τα φώτα σου. Ο αισθητήρας επιστρέφει πάντα απόσταση μηδέν. Τυπώνοντας μάλιστα το χρόνο που επιστρέφει το pulseIn βλέπω ότι επιστρέφει πάντα την τιμή 3. Είχες ανάλογο πρόβλημα; Κάπου διάβαζα ότι ο HC-SR04 χρειάζεται 5V για να λειτουργήσει σωστά και όχι 3.3.  Εκτός και αν είναι προβληματικός ο αισθητήρας. Καμία ιδέα;

Ευχαριστώ

Δημοσ.
6 ώρες πριν, hasan είπε

Καλημέρα,

κατάφερα να στήσω MQTT broker και HomeAssistant και λαμβάνω δεδομένα κανονικά από το NodeMcu. Έχω όμως ένα βασικό πρόβλημα στο οποίο θα ήθελα τα φώτα σου. Ο αισθητήρας επιστρέφει πάντα απόσταση μηδέν. Τυπώνοντας μάλιστα το χρόνο που επιστρέφει το pulseIn βλέπω ότι επιστρέφει πάντα την τιμή 3. Είχες ανάλογο πρόβλημα; Κάπου διάβαζα ότι ο HC-SR04 χρειάζεται 5V για να λειτουργήσει σωστά και όχι 3.3.  Εκτός και αν είναι προβληματικός ο αισθητήρας. Καμία ιδέα;

Ευχαριστώ

Καλησπέρα 

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

Δημοσ.

Τελικά τη βρήκα την άκρη. Τροφοδότησα τον αισθητήρα με 5V και λειτουργεί σωστά. Από ότι διάβασα υπάρχουν 2 τύποι του αισθητήρα ultrasound:  HC-SR04 και  HC-SR04P. Ο δεύτερος δέχεται 3-5V ενώ ο πρώτος που έχω εγώ μόνο 5V. Το NodeMcu όταν τροφοδοτείται από usb βγάζει 5V έξοδο στο pin Vin. Οπότε συνέδεσα το Vin με το Vcc του αισθητήρα, πήρε 5V και δούλεψε. Ο κώδικας είναι περίπου ίδιος με το δικό σου απλά έβγαλα το for που έχεις στη συνάρτηση loop() καθώς με το for που υπάρχει στη liter() συνολικά έκανε 30*30 επαναλήψεις. Όλα καλά. Ευχαριστώ και πάλι για την ιδέα και τις πληροφορίες. Οι προβληματισμοί μου για τη συνέχεια είναι:

1. Η τροφοδοσία: Αν θα το τροφοδοτήσω με AC ή μπαταρίες. Είδα επίσης μια λύση που χρησιμοποιούν ηλιακή power bank.

2. Το δίκτυο: Επειδή δεν είμαι πολύ υπέρ της μόνιμης χρήσης του wifi στο σπίτι, σκέφτομαι κάποια λύση τύπου powerline. https://forum.arduino.cc/index.php?topic=382590.0 ή https://www.banggood.com/KQ-130F-Power-Line-Carrier-Module-220VAC-Power-Line-Long-Distance-Data-Communication-Data-Transceiver-Module-p-1428375.html?cur_warehouse=CN ή εμπορικού powerline  που ανεβάζει όμως πολύ το κόστος.

3. Ως server για mqtt και homeassistant μάλλον προσανατολίζομαι σε κάποιο raspberry που έχει μικρή κατανάλωση. 

Εσύ τι έχεις επιλέξει;

Δημοσ.
9 ώρες πριν, hasan είπε

 

Ωραία! 

Οι 30 επαναλήψεις είναι για καλύτερο μέσο όρο στις μετρήσεις. 

Εγώ του δίνω ρεύμα από κλασικό φορτιστή 5v και usb μέσω πρίζας του πίνακα του λέβητα. 

Για το wifi νομίζω είσαι υπερβολικός για κάτι που θα στέλνει 3byte ανά μια ώρα. 

Τέλος για το HomeAssistant έχω rpi 2 και τρέχει 2 χρόνια χωρίς πρόβλημα. 

Δημοσ.

Καλησπέρα και απ’ εμένα. Ενδιαφέρουσα κατασκευή και θα προσπαθήσω στο κοντινό μέλλον να την υλοποιήσω.

Θα ήθελα να κάνω κι εγώ κάποιες ερωτήσεις πάνω στο θέμα.

Στον κώδικα στην γραμμή 63 (ελάχιστη τιμή δεξαμενής) και 65 (το βάθος της δεξαμενής) έχεις ορίσει τιμή 72.  Δηλαδή σε μια δεξαμενή με ύψους 1,30m ορίζουμε και στα δύο το 130;

Στην γραμμή 99 έχουμε remaining < 1000. Ορίζουμε δεξαμενή με μέγιστο όριο τα 1000 lt;

Για να υπολογίσουμε το κάθε εκατοστό πετρελαίου σε πόσα λίτρα αντιστοιχεί  σύμφωνα με το site θα συμπληρώσουμε το liguid Height (optional) σε cm σαν 01;

Ευχαριστώ για τον χρόνο σας

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...