Πίνακας περιεχομένων:

Ρύθμιση από το Scratch a Raspberry Pi για την καταγραφή δεδομένων από το Arduino: 5 βήματα
Ρύθμιση από το Scratch a Raspberry Pi για την καταγραφή δεδομένων από το Arduino: 5 βήματα

Βίντεο: Ρύθμιση από το Scratch a Raspberry Pi για την καταγραφή δεδομένων από το Arduino: 5 βήματα

Βίντεο: Ρύθμιση από το Scratch a Raspberry Pi για την καταγραφή δεδομένων από το Arduino: 5 βήματα
Βίντεο: Course Lesson 10 of 10: Controlling Raspberry Pi Pico 4WD Smart Car Kit with mobile App 2024, Νοέμβριος
Anonim
Ρυθμίστε από το Scratch a Raspberry Pi για να καταγράψετε δεδομένα από το Arduino
Ρυθμίστε από το Scratch a Raspberry Pi για να καταγράψετε δεδομένα από το Arduino

Αυτό το σεμινάριο απευθύνεται σε όσους δεν έχουν εμπειρία με την εγκατάσταση νέου υλικού ή λογισμικού, πόσο μάλλον Python ή Linux.

Ας υποθέσουμε ότι έχετε παραγγείλει στο Raspberry Pi (RPi) με κάρτα SD (τουλάχιστον 8 GB, χρησιμοποίησα 16 GB, τύπου I) και τροφοδοτικό (5V, τουλάχιστον 2,5A). Σήμερα, αποφασίζετε να το ρυθμίσετε και να καταγράψετε δεδομένα από το Arduinos. Ας ξεκινήσουμε λοιπόν!

Το σεμινάριο περιλαμβάνει τη ρύθμιση του Raspberry Pi από την αρχή, συμπεριλαμβανομένου του Desktop Remote, την προετοιμασία ενός Arduino με αισθητήρες θερμοκρασίας 18B20 και την εκτέλεση ενός σεναρίου Python στο Raspberry Pi για τη συλλογή και αποθήκευση των δεδομένων. Ενημέρωσα την ανάρτηση με την προσθήκη samba share για τη μεταφορά του αρχείου μεταξύ του κεντρικού υπολογιστή (του υπολογιστή σας) και του Raspberry Pi

Βήμα 1: Προετοιμάστε το Raspberry Pi

Προετοιμάστε το Raspberry Pi
Προετοιμάστε το Raspberry Pi
Προετοιμάστε το Raspberry Pi
Προετοιμάστε το Raspberry Pi
Προετοιμάστε το Raspberry Pi
Προετοιμάστε το Raspberry Pi
Προετοιμάστε το Raspberry Pi
Προετοιμάστε το Raspberry Pi
  1. Κατεβάστε το λειτουργικό σύστημα για RPi. Προτείνω μια πλήρη έκδοση του Raspbian, όπως αυτή εδώ.
  2. Ας υποθέσουμε ότι έχετε έναν υπολογιστή που λειτουργεί σε Windows, κατεβάστε το λογισμικό Rufus για να γράψετε την εικόνα στην κάρτα SD. Κάντε κύλιση προς τα κάτω και λάβετε rufus 3.0 (Ιούνιος 2018)
  3. Αποσυμπιέστε το αρχείο Raspbian (4,6 GB) και επιλέξτε προσεκτικά την κάρτα SD προορισμού. Χρειάζονται περίπου 3 λεπτά για να ολοκληρωθεί η εγγραφή της εικόνας στην κάρτα.
  4. Τοποθετήστε την κάρτα SD στην υποδοχή, συνδέστε το καλώδιο τροφοδοσίας στη θύρα micro USB, μια οθόνη με καλώδιο HDMI, ένα πληκτρολόγιο, ένα ποντίκι είναι προαιρετικά.
  5. Περιμένετε έως ότου εκκινήσει το RPi και εμφανιστεί η επιφάνεια εργασίας, πατήστε το πλήκτρο Window, μεταβείτε στα Accessories/Terminal και Enter.
  6. Διαμόρφωση RPi ανά τύπο:

sudo raspi-config

7. Αλλάξτε μερικά πράγματα στη διαμόρφωση RPi:

  • Στο 1. Αλλαγή κωδικού πρόσβασης
  • Στο 2. Επιλογή δικτύου: Αλλαγή ονόματος κεντρικού υπολογιστή (κάτι μοναδικό, το δικό μου είναι rpi1001) και wifi SSID και κωδικός πρόσβασης.
  • Στο 4. Επιλογές εντοπισμού: Αλλαγή ζώνης ώρας, Πληκτρολόγιο, τοπική ρύθμιση
  • Στο 5. Επιλογές διασύνδεσης: Ενεργοποίηση SSH (για σύνδεση μέσω γραμμής εντολών), Ενεργοποίηση VNC (για απομακρυσμένο υπολογιστή)
  • Στο 7: Advance Option: Expand Filesystems:
  • Επανεκκίνηση
  • Μετά την εκκίνηση: σημειώστε τη διεύθυνση IP εκτελώντας

sudo ifconfig

Εάν χρησιμοποιείται Ethernet, το IP πρέπει να είναι το πρώτο μπλοκ, εάν χρησιμοποιείται Wifi, το IP βρίσκεται στο τρίτο μπλοκ, κάτι σαν 192.168.1.40, εκτελέστε αυτήν την εντολή για να ενημερώσετε τη διανομή Linux:

sudo apt-get update && sudo apt-get upgrade –y && sudo poweroff

Το τελευταίο θα απενεργοποιήσει το RPi μετά την ολοκλήρωση των ενημερώσεων

8. Εάν ξεχάσατε τη σημείωση, η διεύθυνση IP του RPi ή άλλαξε πρόσφατα, χρησιμοποιήστε το PowerShell (πληκτρολογήστε PowerShell για να κάνετε αναζήτηση στα Windows)

Στο PowerShell για ping στο Rpi: p ing rpi1001.local –4 λάβετε κάτι σαν αυτό 192.168.1.40. Το rpi1001 είναι το όνομα κεντρικού υπολογιστή μου για το Rpi μου.

9. Εγκαταστήστε το VNCViewer, αυτό το λογισμικό λειτουργεί όπως το TeamViewer ή το Desktop Remote στα Windows (μόνο το Win 10 Pro διαθέτει λειτουργία Remote Desktop).

Εγκαταστήστε στο μηχάνημά σας Windows, στο πλαίσιο αναζήτησης στο επάνω μέρος του VNCViewer, πληκτρολογήστε το IP του RPi (192.168.1.40) ή το όνομα κεντρικού υπολογιστή του RPi (το δικό μου είναι rpi1001.local) και Enter. Εισαγάγετε τον κωδικό πρόσβασης του ονόματός σας RPi, επιλέξτε «Να θυμάστε τον κωδικό πρόσβασης», εάν το επιθυμείτε. Εάν όλα πήγαν καλά, θα πρέπει να δείτε την αναδυόμενη επιφάνεια εργασίας Rpi.

10. Για τη μεταφορά αρχείου από ή προς το TeamView, ο απλούστερος τρόπος χρήσης της ενσωματωμένης μεταφοράς αρχείων από το VNCView:

Και αυτό, μπορείτε να χρησιμοποιήσετε ένα Raspberry για να συλλέξετε δεδομένα για εσάς και να συνδεθείτε για να λάβετε δεδομένα όταν χρειάζεται.

Βήμα 2: Προετοιμάστε ένα απλό παράδειγμα για τη συλλογή δεδομένων από το Arduino

Προετοιμάστε ένα απλό παράδειγμα για τη συλλογή δεδομένων από το Arduino
Προετοιμάστε ένα απλό παράδειγμα για τη συλλογή δεδομένων από το Arduino
Προετοιμάστε ένα απλό παράδειγμα για τη συλλογή δεδομένων από το Arduino
Προετοιμάστε ένα απλό παράδειγμα για τη συλλογή δεδομένων από το Arduino

Ας υποθέσουμε ότι θέλετε να συλλέξετε τη θερμοκρασία από 4 αισθητήρες. Σε αυτό το παράδειγμα, χρησιμοποίησα τον 18B20, έναν δημοφιλή αισθητήρα θερμοκρασίας. Άλλες επιλογές είναι η οικογένεια TMP35, 36 ή ένα θερμίστορ.

Η καλωδίωση περιλαμβάνεται παραπάνω. Τα 18B20 μοιράζονται το καλώδιο (ή το δίαυλο) και εδώ είναι ο κωδικός Arduino στο Github. Το συνημμένο στο παρακάτω αρχείο περιέχει επίσης τους κωδικούς και τον χάρτη καλωδίωσης.

Επίσης, εγκαταστήστε το πρόγραμμα οδήγησης USB για το Arduino στα Windows. Τα περισσότερα «κλωνοποιημένα» Arduino χρησιμοποιούν πρόγραμμα οδήγησης USB CH341. Ο οδηγός είναι εδώ.

Εγκαταστήστε το πρόγραμμα οδήγησης, όταν συνδέετε το Arduino στο USB των Windows, θα πρέπει να αναγνωρίζει το πρόγραμμα οδήγησης και να εκχωρεί μια θύρα COM (η δική μου είναι COM4)

Το Serial Monitor πρέπει να εξάγεται όπως η παραπάνω φωτογραφία.

Βήμα 3: Εκκινήστε το RPi με Unplug και συνδέστε το Power to RPi. Εκκινήστε το VNCViewer, συνδεθείτε στο RPi σας

Εκκινήστε το RPi με Unplug και συνδέστε την τροφοδοσία στο RPi. Εκκινήστε το VNCViewer, συνδεθείτε στο RPi σας
Εκκινήστε το RPi με Unplug και συνδέστε την τροφοδοσία στο RPi. Εκκινήστε το VNCViewer, συνδεθείτε στο RPi σας
Εκκινήστε το RPi με Unplug και συνδέστε την τροφοδοσία στο RPi. Εκκινήστε το VNCViewer, συνδεθείτε στο RPi σας
Εκκινήστε το RPi με Unplug και συνδέστε την τροφοδοσία στο RPi. Εκκινήστε το VNCViewer, συνδεθείτε στο RPi σας
Εκκινήστε το RPi με Unplug και συνδέστε την τροφοδοσία στο RPi. Εκκινήστε το VNCViewer, συνδεθείτε στο RPi σας
Εκκινήστε το RPi με Unplug και συνδέστε την τροφοδοσία στο RPi. Εκκινήστε το VNCViewer, συνδεθείτε στο RPi σας
Εκκινήστε το RPi με Unplug και συνδέστε την τροφοδοσία στο RPi. Εκκινήστε το VNCViewer, συνδεθείτε στο RPi σας
Εκκινήστε το RPi με Unplug και συνδέστε την τροφοδοσία στο RPi. Εκκινήστε το VNCViewer, συνδεθείτε στο RPi σας

Μεταφέρετε το σενάριο Python, χρησιμοποιώντας το εργαλείο VNCViewer. Υπάρχει ένα πανό στο επάνω μέρος του VNCViewer, αναζητήστε δύο βέλη. Για να μεταφέρετε δεδομένα από το RPi στα Windows, χρησιμοποιήστε το σύμβολο Μεταφορά αρχείων σε VNC επάνω δεξιά (κοντά στο σύμβολο Wifi) στην επιφάνεια εργασίας του RPi.

Το Raspberry τρέχει σε Linux και τα Python 2 και 3 είναι εγκατεστημένα από προεπιλογή. Χρειάζεται μόνο να εγκαταστήσετε μια βιβλιοθήκη Python που ονομάζεται pyserial για να συλλέξετε δεδομένα που εκτυπώνονται από τη σειριακή γραμμή.

για να εγκαταστήσετε το Python Serial, πληκτρολογήστε αυτήν τη γραμμή στο τερματικό Linux

sudo apt-get install python3-serial

  • στα Windows: πληκτρολογήστε αυτό το PowellShell:
  • pip.exe εγκαταστήστε το pyserlal

Στη συνέχεια, κατεβάστε το σενάριο και αποθηκεύστε το στην επιφάνεια εργασίας του RPi

Για να εκτελέσετε το σενάριο, πρώτα κάντε το εκτελέσιμο από:

sudo chown u+x recordSerial.py

Ανεβάστε τον κωδικό Arduino στην πλακέτα Arduino και, στη συνέχεια, συνδέστε το καλώδιο USB με USB, ελέγξτε τη θύρα με:

  • Στο Linux, πληκτρολογήστε αυτό στο τερματικό: ls /dev /ttyUSB*
  • Στο Wndows: μεταβείτε στη Διαχείριση συσκευών, ελέγξτε COM #

Εάν το σενάριο τροποποιηθεί στα Windows, ίσως χρειαστεί να εκτελέσετε το σενάριο Python στο dos2unix για να καταργήσετε τον παράξενο χαρακτήρα λήξης γραμμής από τα Windows. Εγκαταστήστε το από

sudo apt-get install dos2unix

και μετατρέψτε το σενάριο εκτελώντας αυτό στο τερματικό

dos2unix recordSerial.py

Τροποποιήθηκε η πραγματική θύρα στο σενάριο από έναν επεξεργαστή κειμένου:

sudo nano recordSerial.py

στη συνέχεια εκτελέστε./recordSerial.py yourfilename.txt

Το σενάριο Python θα αποθηκεύει τα δεδομένα από τη μνήμη RAM στο δίσκο για κάθε 10 γραμμές, οι οποίες μπορούν να προσαρμοστούν.

Για να σταματήσετε την εγγραφή, πατήστε Ctrl + C, Το σενάριο μπορεί να εκτελεστεί σε Windows (διπλό κλικ), το όνομα των δεδομένων καταγραφής είναι το προεπιλεγμένο που περιλαμβάνει χρονική σήμανση

Εάν χρησιμοποιείτε το PowerShell, μπορείτε να εισαγάγετε το προσαρμοσμένο όνομα αρχείου σας, python.exe recordSerial.py awesome.txt

Δεν είναι όλα τα 18Β20 ίδια. Δείτε την ανάγνωση!

Έσπρωξα τον κώδικα και στο GitHub.

Ελπίζω ότι αυτό το σεμινάριο είναι χρήσιμο!

Βήμα 4: Εγκαταστήστε το φάκελο Samba to Share Folder

Εγκαταστήστε το φάκελο Samba to Share Folder
Εγκαταστήστε το φάκελο Samba to Share Folder
Εγκαταστήστε το φάκελο Samba to Share Folder
Εγκαταστήστε το φάκελο Samba to Share Folder
Εγκαταστήστε το φάκελο Samba to Share Folder
Εγκαταστήστε το φάκελο Samba to Share Folder

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

Αρχικά, εγκαταστήστε το samba, ένα πρόγραμμα κοινής χρήσης και διαχείρισης φακέλου κοινής χρήσης σε όλο το δίκτυο:

sudo apt-get install samba

δημιουργήστε έναν κοινόχρηστο φάκελο

mkdir ~/Desktop/sambaShare

τροποποιήστε το αρχείο διαμόρφωσης για το samba με:

sudo samba /etc/samba/smb.conf

προσθέστε τις ακόλουθες γραμμές στο τέλος του αρχείου:

[sambaShare] comment = share Folder on Research RPI path =/home/pi/Desktop/sambaShare browseable = ναι μόνο για ανάγνωση = όχι για εγγραφή = ναι δημόσια = να δημιουργήσετε μάσκα = 0777 μάσκα ορθοδόξου = 0777 επισκέπτης εντάξει = ναι

Εάν αντιμετωπίζετε το πρόβλημα με την εγγραφή στα παράθυρα, πιέστε το προσθέτοντας αυτήν τη γραμμή στο τέλος του αρχείου: force user = pi

Στο Linux, μπορεί να χρειαστεί να χρησιμοποιήσετε τον χρήστη root (θα δημοσιεύσω το πρόβλημα μόλις το μάθω)

Στη συνέχεια, προσθέστε έναν χρήστη στη samba και δημιουργήστε επίσης έναν κωδικό πρόσβασης:

sudo smbpasswd -a pi

στη συνέχεια, εισαγάγετε έναν κωδικό πρόσβασης για το samba (μπορεί να είναι ο ίδιος ή διαφορετικός από τον κωδικό πρόσβασης για το χρήστη pi στο σύστημα)

ελέγξτε αν το αρχείο ρυθμίσεων είναι εντάξει

testparm

πατήστε Ctrl+X για αποθήκευση και, στη συνέχεια, επανεκκινήστε την υπηρεσία samba με:

sudo systemctl επανεκκίνηση smbd

Στον κεντρικό υπολογιστή, ας πούμε Linux:

εάν όχι ναι, εγκαταστήστε samba plus sambaclient και cifs για να υποστηρίξετε τη μονάδα κοινής χρήσης, κάντε το εκτελώντας:

sudo apt-get εγκαθιστά samba smbclient cifs-utils

Ελέγξτε εάν ο κοινόχρηστος φάκελος στο RPI είναι έτοιμος από:

sudo smbclient -L yourRPI_IP

εάν βλέπετε τη μονάδα κοινής χρήσης, τότε δημιουργήστε ένα σημείο προσάρτησης στο Linux:

sudo mkdir /mnt /researchRPi

sudo chown χρήστης: usergroup -R /mnt /researchRPI

user, usergroup είναι το όνομα χρήστη και ομάδας Linux σας

στη συνέχεια, τοποθετήστε το μερίδιο κατά:

sudo mount -f cifs -o όνομα χρήστη = pi // your_rpi_IP/sambaShare/mnt/researchRPi

εισαγάγετε τους κωδικούς πρόσβασής σας και δημιουργήστε έναν μαλακό σύνδεσμο προς την επιφάνεια εργασίας σας:

sudo ln -s/mnt/researchRPi ~/Desktop/researchRPi

εάν αντιμετωπίζετε πρόβλημα με την άδεια ανάγνωσης-εγγραφής στο φάκελο κοινής χρήσης, πειραματιστείτε με αδύναμη άδεια:

στο PI:

sudo chmod -R 776 ~/Desktop/sambaShare

Στα Windows, είναι ακόμα πιο εύκολο, Μεταβείτε στο My Computer και χαρτογραφήστε έναν φάκελο και, στη συνέχεια, εισαγάγετε την IP του RPI, θα πρέπει να εμφανιστεί ο κοινόχρηστος φάκελος. Πιστεύω ότι υπάρχει κάτι στο Mac που μπορείτε να περιηγηθείτε στον κοινόχρηστο φάκελο στο δίκτυο.

Βήμα 5: Χρήσιμες αναφορές

Παρακάτω είναι μερικές χρήσιμες αναφορές:

  1. Υπάρχει μια άλλη προσέγγιση εδώ χρησιμοποιώντας πυσεριακές και μουδιασμένες βιβλιοθήκες
  2. Μια ολοκληρωμένη ματιά στην ηλεκτρονική επικοινωνία ξεκινά από την εγκατάσταση του Arduino IDE. Μια καλή αναφορά αν θέλετε μια βαθύτερη κατάδυση.
  3. Μια σύντομη αλλά συγκεκριμένη γραφή. Μια σύντομη και επαρκής επιλογή για εναλλακτικές λύσεις για την καταγραφή των δεδομένων

Συνιστάται: