15. Single board computer

Ιστότοπος: ΕΛ/ΛΑΚ Moodle
Μάθημα: Υλικό, οργάνωση και εγκατάσταση υπολογιστικών συστημάτων
Βιβλίο: 15. Single board computer
Εκτυπώθηκε από: Guest user
Ημερομηνία: Παρασκευή, 1 Νοεμβρίου 2024, 12:52 AM

Περιγραφή

Τους υπολογιστές μικρών διαστάσεων (μεγέθους παλάμης) τους συναντούμε συχνά σε μία μεγάλη ποικιλία εφαρμογών. Ξεκινώντας από την εκπαίδευση σε κάθε ηλικία, την ψυχαγωγία αλλά και σε καθαρά επαγγελματικές χρήσεις. Ο πιο αντιπροσωπευτικός αντιπρόσωπος της κατηγορίας αυτή είναι ο υπολογιστής μεγέθους παλάμης που ονομάζεται Raspberry Pi.

1. Raspberry Pi. Υπολογιστής μεγέθους παλάμης

Το Raspberry Pi είναι ένας υπολογιστής μικρού μεγέθους αλλά όχι μικρών δυνατοτήτων (SBC ή Single Board Computer). Έχει σχεδιαστεί για να προσφέρει οικονομικά προσιτή υπολογιστική ισχύ στο ευρύ κοινό με φιλοσοφία open source αφού λειτουργεί με διάφορες διανομές του Linux και είναι συμβατό με ένα μεγάλο πλήθος ανοιχτών εφαρμογών λογισμικού αλλά και γλωσσών προγραμματισμού.
Αναπτύχθηκε από το Raspberry Pi Foundation στην αρχή ως εκπαιδευτικό εργαλείο για την ενίσχυση της διδασκαλίας στις εισαγωγικές έννοιες της πληροφορικής, του προγραμματισμού αλλά και σε εφαρμογές φυσικού υπολογισμού (Physical Computing).
Από to 2012 που εκδόθηκε η πρώτη πλακέτα μέχρι σήμερα έχουν πωληθεί περίπου 50 εκατομμύρια συσκευές κατακτώντας έτσι μία ξεχωριστή θέση στην παγκόσμια κοινότητα των μαθητών, των εκπαιδευτικών, των ερασιτεχνών αλλά και των επαγγελματιών της τεχνολογίας.

Συνοπτικά αναφέρονται ορισμένες από τις χρήσεις και τις δυνατότητες εφαρμογών του Raspberry Pi:

  • Εκπαίδευση: Αποτελεί ένα ιδανικό εργαλείο χαμηλού κόστους για την εκμάθηση των αρχών του προγραμματισμού αλλά και της ρομποτικής
  • Επαγγελματικές Εφαρμογές: Χρησιμοποιείται ευρέως σε εφαρμογές αυτοματισμών, παρακολουθήσεων, πειραματικής ανάπτυξης προϊόντων.
  • Εφαρμογές Πληροφορικής: Πολλές χρήσεις σε δικτυακές εφαρμογές και υπηρεσίες, όπως file server, DNS server, DHCP Server, routing, Add blocker, Firewall, Email Server
  • Ψυχαγωγία: Αποτελεί σε αυτή την κατηγορία μία οικονομική και ιδανική λύση για συσκευή αναπαραγωγής πολυμέσων ακόμα και παιχνιδομηχανών


Εκδόσεις του Raspberry Pi

Οι εκδόσεις του Raspberry Pi που έχουν κυκλοφορήσει είναι:
Βασικές Πλακέτες Raspberry Pi

  • Raspberry Pi Model A
  • Raspberry Pi Model B
  • Raspberry Pi Model A+
  • Raspberry Pi Model B+
  • Raspberry Pi 2 Model B
  • Raspberry Pi 3 Model B
  • Raspberry Pi 3 Model A+
  • Raspberry Pi 3 Model B+
  • Raspberry Pi 4 Model B


Μοντέλα Zero

  • Raspberry Pi Zero
  • Raspberry Pi Zero W
  • Raspberry Pi Zero 2 W

Για Ειδικές Εφαρμογές

  • Raspberry Pi Compute Module: Σχεδιασμένο για ενσωματωμένες εφαρμογές και προσαρμογή σε προσαρμοσμένες πλακέτες.

Μοντέλα με Ενσωματωμένα AI και Μηχανική Μάθηση

  • Raspberry Pi 4 Model B με 8GB RAM (για απαιτητικές εφαρμογές)

  • Raspberry Pi 4 Model B με Coral USB Accelerator (για AI εφαρμογές)


Κάθε κατηγορία πλακετών Raspberry Pi έχει τις δικές της ιδιαιτερότητες και εφαρμογές. Επιλέγοντας το κατάλληλο μοντέλο, μπορείτε να ανταποκριθείτε στις ανάγκες σας, ανεξαρτήτως εάν πρόκειται για ένα έργο DIY, έναν διακομιστή, ένα σύστημα ελέγχου, ή άλλες εφαρμογές.

Όλες οι πλακέτες διαθέτουν μία σειρά από 40 ακίδες (pins) στο τμήμα GPIO (General Purpose Input/Output). Αρκετές από αυτές τις ακίδες αυτές μπορούν να ρυθμιστούν είτε ως είσοδοι είτε ως έξοδοι για σύνδεση με εξωτερικούς ψηφιακούς κυρίως αισθητήρες και για τον έλεγχο συσκευών στο φυσικό κόσμο. Έτσι η συσκευή γίνεται κατάλληλη για εφαρμογές physical  computing αφού εκτός από ένα ολοκληρωμένο υπολογιστή διαθέτει και ένα τμήμα μικροελεγκτή. Οι ακίδες αυτές όπως θα δούμε σε ένα απλό παράδειγμα στην πορεία μπορούν να προγραμματιστούν πολύ εύκολα με τη γλώσσα προγραμματισμού Python.

 
Raspberry Pi 4 Model B


Η πλακέτα με την οποία θα ασχοληθούμε περισσότερο σε αυτό το κεφάλαιο είναι η Raspberry Pi 4 Model B που είναι και από τις πιο δημοφιλείς. Οι προδιαγραφές της συγκεκριμένης πλακέτας είναι:

  1. CPU: Broadcom BCM2711 quad-core Cortex-A72 (ARMv8-A) 64-bit SoC συχνότητα λειτουργίας 1.5GHz

  2. GPU: VideoCore VI Graphics processing unit.

  3. ΜΝΗΜΗ: Κυκλοφορεί σε εκδόσεις 2GB, 4GB, ή και 8GB LPDDR4-3200 SDRAM.

  4. ΑΠΟΘΗΚΕΥΣΗ: microSD card slot για το Λειτουργικό Σύστημα και για άλλες χρήσεις

  5. ΕΞΟΔΟΣ ΕΙΚΟΝΑΣ: 2 x micro HDMI θύρες με ανάλυση 4K και συχνότητα στα 60Hz με υποστήριξη - Dual display

  6. ΗΧΟΣ:

    1. 3.5mm analog audio/video jack,

    2. HDMI έξοδος ήχου

  7. ΣΥΝΔΕΣΙΜΟΤΗΤΑ:

    1. Gigabit Ethernet (RJ45)

    2. Dual-band 2.4GHz και 5GHz IEEE 802.11b/g/n/ac ασύρματο LAN (Wi-Fi).

    3. Bluetooth 5.0 BLE (Bluetooth χαμηλής κατανάλωσης)

  8. ΘΥΡΕΣ USB:

    1. 2 × USB 3.0 ports

    2. 2 × USB 2.0 ports

  9. ΜΙΚΡΟΕΛΕΓΚΤΗΣ: 40- ακίδες GPIO για σύνδεση με εξωτερικές συσκευές και αισθητήρες

  10. ΤΡΟΦΟΔΟΣΙΑ: USB-C θύρα με είσοδο (5V/3A)

  11. ΔΙΑΣΤΑΣΕΙΣ: 85.6mm × 56.5mm

  12. ΚΑΤΑΝΑΛΩΣΗ: Μεταβάλλεται από 2.7 – 6.4 Watts

  13. ΨΥΞΗ: Ενσωματωμένη μόνο παθητική ψύξη (για βαριά χρήση απαιτείται επιπλέον ψύξη)

  14. ΔΙΕΠΑΦΕΣ Ι/Ο: CSI θύρα για κάμερες, DSI display port, 4-pole stereo audio και composite video output

  15. ΛΕΙΤΟΥΡΓΙΚΌ ΣΥΣΤΗΜΑ: Διάφορες διανομές LINUX Raspberry Pi OS, Ubuntu, etc


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

2. Λειτουργικό Σύστημα, Raspberry Pi OS

Το ΛΣ Raspberry Pi OS (Rpi OS) είναι το επίσημο ΛΣ που αναπτύσσεται από το Raspberry Pi Foundation για χρήση στις διάφορες εκδόσεις της πλακέτας.

Αποτελεί μία προσαρμοσμένη διανομή του ΛΣ Linux η οποία έχει σχεδιαστεί για να αξιοποιεί σε μεγάλο βαθμό το υλικό και τις δυνατότητες της συσκευής παρέχοντας ταυτόχρονα και ένα φιλικό (GUI) περιβάλλον για τους χρήστες και τους προγραμματιστές της συσκευής. Η διανομή αυτή φυσικά είναι δωρεάν και είναι η προτεινόμενη για εγκατάσταση από το Raspberry Pi Foundation αφού καλύπτει επαρκώς τις ανάγκες των περισσότερων χρηστών αλλά και των προγραμματιστών.

Το ΛΣ RPi- OS περιλαμβάνει:

  • Γραφικό Περιβάλλον Εργασίας: Έτσι καθίσταται κατάλληλο για χρήστες όλων των επιπέδων, από αρχάριους μέχρι προχωρημένους.

  • Εφαρμογές Λογισμικού: φυλλομετρητής Chromium, σουίτα εφαρμογών γραφείου LibreOffice (μπορεί να απαιτηθεί εγκατάσταση), το IDE Thonny για Python, κ.ά.

  • Υποστήριξη Υλικού της συσκευής: Είναι σχεδιασμένο για να αξιοποιεί στο έπακρο το υλικό του Raspberry Pi, συμπεριλαμβανομένων των GPIO ακροδεκτών του μικροελεγκτή του για το ελέγχο του συνδεόμενου υλικού και των αισθητήρων για την ανάπτυξη εφαρμογών physical computing.

  • Ενημερώσεις: Το Raspberry Pi OS λαμβάνει τακτικές ενημερώσεις και διορθώσεις ασφαλείας από το Raspberry Pi Foundation τρέχουσα έκδοση 3/5/2023 – 32 bit

  • Κοινότητα - Υποστήριξη: Διαθέτει μια ενεργή κοινότητα χρηστών και προγραμματιστών που παρέχει υποστήριξη βοήθεια και πληροφορίες στους χρήστες του ΛΣ

Διαδικασία Εγκατάστασης ΛΣ

Για τη διαδικασία εγκατάστασης του ΛΣ πλοηγηθείτε στη δνση Raspberry Pi OS – Raspberry Pi και από εκεί ανάλογα το ΛΣ που διαθέτετε στον κύριο υπολογιστή σας κατεβάστε το λογισμικό Raspberry Pi Imager το οποίο θα αναλάβει να διεκπεραιώσει τη διαδικασία. Θα χρειαστείτε μία Micro SD Card (προτεινόμενη χωρητικότητα >= 8 Gbytes) η οποία θα πρέπει να είναι συνδεδεμένη με τον υπολογιστή σας με τον κατάλληλο προσαρμογέα (adaptor).

Κατεβάστε, εγκαταστήσετε και εκτελέστε το λογισμικό. Θα συναντήσετε στη συνέχεια το αρχικό μενού επιλογών από όπου θα καθορίσετε:

  • Το ΛΣ της επιλογής σας (προτείνεται για αρχή το Raspberry Pi OS)

  • Τη συσκευή που θα εγκατασταθεί (Ο δίσκος που βρίσκεται η Micro SD card στον υπολογιστή σας)

  • Τις διάφορες μικρορυθμίσεις που αφορούν:

    • στο όνομα της συσκευής στο δίκτυο

    • στο όνομα χρήστη και τον κωδικό,

    • στα στοιχεία σύνδεσης σε ασύρματο δίκτυο

    • στις ρυθμίσεις γλώσσας και τοποθεσίας

    • προτείνεται να ενεργοποιήσετε και την επιλογή για SSH (Secure Socket Shell)

  • Τελειώνοντας με τα παραπάνω θα πατήσετε το πλήκτρο write από το μενού για να ξεκινήσει η διαδικασίας κατεβάσματος και εγγραφής του ΛΣ που επιλέξατε στη Micro SD card.

  • Τοποθετείστε την κάρτα τώρα στο Raspberry Pi συνδέστε την τροφοδοσία του και ένα καλώδιο δικτύου εάν δεν έχετε ασύρματη σύνδεση.

Τρόποι χειρισμού του Raspberry Pi

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

ΧΡΗΣΗ ΧΩΡΙΣ ΟΘΟΝΗ (Headless)

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

  • Η πρώτη επιλογή για πιο έμπειρους χρήστες είναι με χρήση του πρωτοκόλλου SSH η οποία περιλαμβάνει τη σύνδεση χωρίς γραφικό περιβάλλον εργασίας με κάποιο πρόγραμμα όπως το putty το οποίο μπορείτε να το βρείτε εδώ. Η σύνδεση στη συσκευή δίνοντας την ip διεύθυνσή της ή το όνομά της στο τοπικό δίκτυο καθώς και το όνομα χρήστη και τον κωδικό όπως ρυθμίστηκε παραπάνω στη διαδικασία προετοιμασίας της Micro SD Card.

  • Η δεύτερη επιλογή περιλαμβάνει τη χρήση χωρίς οθόνη αλλά με γραφικό περιβάλλον επικοινωνίας (προτεινόμενη).

    • Βήμα1 γίνεται εγκατάσταση και σύνδεση με το putty όπως περιγράφηκε προηγουμένως

    • Βήμα2 αφού βρεθούμε στο κέλυφος shell της συσκευής πρέπει να ενεργοποιήσουμε τον ενσωματωμένου VNC server στη συσκευή. Αυτό γίνεται δίνοντας την εντολή sudo raspi-config για να ανοίξει στο κέλυφος το configuration tool της συσκευής από όπου επιλέγουμε:

      • 3. Interfacing Options (Select)

      • P3 VNC Enable/Disable (Select)

      • Enable (Yes)

    • Στη συνέχεια στην κύρια συσκευή σας (αυτή που έχετε ΛΣ, Οθόνη, Πληκτρολόγιο, Ποντίκι), εγκαταστήστε ένα πρόγραμμα VNC Viewer βλ εδώ.

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

ΧΡΗΣΗ ΜΕ ΟΘΟΝΗ

Σε περίπτωση που επιθυμείτε να χρησιμοποιήσετε τη συσκευή με δική της οθόνη (θα χρειαστεί καλώδιο Micro HDMI male σε HDMI male), πληκτρολόγιο και ποντίκι. Συνδέετε τα περιφερειακά σας στις ανάλογες εξόδους της συσκευής (για μία οθόνη χρησιμοποιείστε την έξοδο HDMI-0) και απλά ανοίγετε την τροφοδοσία.

3. Physical Computing με Raspberry Pi

Όπως ήδη αναφέρθηκε το Raspberry Pi με το τμήμα μικροελεγκτή που διαθέτει και τις 40 ακίδες GPIO μπορεί να χρησιμοποιηθεί για εφαρμογές Physical Computing. Τη χαρτογράφηση των λειτουργιών των ακίδων του μπορείτε να τη δείτε δίνοντας από το κέλυφος την εντολή pinout.

Τη λειτουργία των συνδεόμενων led μπορούμε να την ελέγξετε με τη χρήση της κατάλληλης βιβλιοθήκης και εντολές της γλώσσας Python.

Μία απλή εφαρμογή physical computing

Ακολουθεί ένα απλό παράδειγμα για όπου θα συνδεθεί ένα led στην ακίδα GPIO 23 και θα υλοποιηθεί ένα απλό on – off του led με μία χρονική καθυστέρηση, και πλήθος επαναλήψεων που θα καθορίζεται από παραμέτρους της συνάρτησης χρήστη.

  • Ο τρόπος υλοποίησης του κυκλώματος ενός led είναι πολύ απλός και γίνεται με τη χρήση του led και μίας αντίστασης από 180 – 470 Ohm ανάλογα το χρώμα του led και τη φωτεινότητα που επιθυμούμε να εκπέμπει

  • Συνδέετε κατάλληλα στην ακίδα GPIO23 και στην ακίδα γείωσης (ground) το Led με την αντίσταση του διπλανού σχήματος.

  • Στη συνέχεια μέσα από το γραφικό περιβάλλον μπορείτε να ανοίξετε από το μενού Programming, το IDE Thonny για Python και να γράψετε και να εκτελέσετε τον παρακάτω κώδικα ο οποίος δημιουργεί μία συνάρτηση blink στην οποία καθορίζεται κατά την κλήση της το διάστημα αναμονής και το πλήθος επαναλήψεων.