Φτιάχνουμε ένα θερμόμετρο με Arduino, αισθητήρα θερμοκρασίας DS18B20, και ένα module οθόνης 3 ψηφίων
Είχα ένα περισσευούμενο Arduino UNO και έναν αισθητήρα θερμοκρασίας DS18B20 και αποφάσισα να φτιάξω ένα θερμόμετρο ακριβείας (κάτι που ήθελα να κάνω εδώ και πολύ καιρό). Μιας και ήθελα να είναι φορητό συμπεριέλαβα και μία μπαταρία 9V για να τροφοδοτήσω το Arduino. Για να εμφανίσω τη θερμοκρασία χρησιμοποίησα ένα module 7-segment 3 ψηφίων το οποίο διαθέτει ενσωματωμένους 3 74HC595 shift registers και μπορείς να το χειριστείς μόνο με 3 αγωγούς. Σας συστίνω να χρησιμοποιήσετε το module και όχι 3 αυτόνομους shift registers για να γλυτώσετε τις κολήσεις (θα πρέπει να γίνουν πάρα πολλές συνδέσεις). Χρησιμοποιώ 1 δεκαδικό ψηφίο για την εμφάνιση της θερμοκρασίας σε βαθμούς Κελσίου εκτός για θερμοκρασίες κάτω των -9.9 βαθμών (γιατί θα χρειαζόμουν ακόμα ένα ψηφίο). Συνεπώς η οθόνη εμφανίζει θερμοκρασίες από -99 έως -10, κατόπιν από -9.9 έως 0.0 και τέλος, έως 99.0. Όσον αφορά στην εμφάνιση ήθελα να μοιάζει λίγο "άγριο" και "χύμα", και κατέληξα σε ένα στυλ γουόκι-τόκι (κάποιος θα έλεγε ότι μοιάζει με βόμβα). Προσωπικά μου αρέσει πολύ.
Επικοινωνία I2C στο Raspberry Pi 5 με PCF8574 και Python.
On Raspberry Pi 4 I was using the Python library pcf8574-io for I2C communication using the PCF8574 chip. However this library does not work on the newer Raspberry Pi 5. To be accurate, you can install it in RPi 5 using pip3 in a virtual environment (venv), however in my case I wanted my script to run as a service in global scope. So a virtual environment was not a choice. Most of the PCF8574 related code I found on the internet was outdated for Rpi4. After some search I found a Python library from jhaubrich on github which actually works. In this article I will give you a how-to guide for having I2C communication with PCF8574 chip and Python on Raspberry Pi 5. I access Raspberry from a terminal window using SSH (use PuTTY or other client).
