Κάποια βασικά…

Κάποιες βασικές γνώσεις για να μπορέσουμε να ξεκινήσουμε…

Για να προγραμματίσουμε το raspberry pi θα χρησιμοποιήσουμε τα GPIO pins. Τα GPIO pins είναι ακροδέκτες που μας επιτρέπουν να συνδέσουμε στο Raspberry Pi άλλα κυκλώματα/άλλες συσκευές.

Γαι τη δημιουργία των κυκλωμάτων μας θα χρησιμοποιήσουμε Breadboard. Τι είναι όμως το breadboard ;

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

Μπροστά σας θα πρέπει να έχετε σχεδιάγραμμα των pins

Κίτρινα  είναι τα προγραμματιζόμενα pins, με μαύρο είναι η γείωση, τα πορτοκαλί δίνουν ρεύμα τάσης 3.3V και τέλος τα κόκκινα δίνουν ρεύμα τάσης 5V.

Στα πρώτα φύλλα θα ξεκινήσουμε με led για τα οποία πρέπει να γνωρίζουμε ότι το μακρύ ποδαράκι είναι το pin ρεύματος ενώ το κοντό είναι το pin γείωσης.

Θα χρειαστούμε αντιστάσεις (αντίσταση που παρουσιάζεται στη διέλευση ηλεκτρικού ρεύματος δια μέσου ενός αγωγού).
Για να υπολογίσουμε τα ohm (ω) μιας αντίστασης χρησιμοποιούμε τον παρακάτω χρωματικό πίνακα:

Και τέλος διάφορους αισθητήρες

Χρήσιμες εντολές κονσόλας στο Raspbian

Αν χρειαστεί να κάνουμε login, εισάγουμε όνομα χρήστη: pi και συνθηματικό: raspberry (όταν πληκτρολογούμε το password, δεν φαίνεται κάτι στην οθόνη).

 

<εντολή> – – help ή man <εντολή> Εμφανίζει βοήθεια/πληροφορίες για την εντολή
pwd Εμφανίζει τη διαδρομή του φακέλου στον οποίο βρισκόμαστε
(default: /home/pi)
ls Εμφανίζει τα περιεχόμενα του τρέχοντος φακέλου
mkdir <φάκελος> Δημιουργεί ένα φάκελο με το αναφερόμενο όνομα
cd <όνομα φακέλου ή διαδρομή> Μας μεταφέρει στον αναφερόμενο φάκελο.
Π.χ.: cd videos ή cd /home/pi/videos
cp <αρχείο1> <διαδρομή ή αρχείο2> Αντιγράφει το αρχείο1 στην αναφερόμενη διαδρομή ή φτιάχνει ένα
αντίγραφο με το όνομα αρχείο2.
Π.χ.: cp ex3.py /home/pi/exercises/ ή cp ex1.py ex2.py
nano
nano <όνομα_αρχείου.py>
Συνδυασμός πλήκτρων Ctrl+O
Συνδυασμός πλήκτρων Ctrl+X
Ανοίγει τον επεξεργαστή κειμένου nano
Ανοίγει το αναφερόμενο αρχείο στο nano
Αποθηκεύει το ανοιχτό αρχείο (αποθήκευση ως ?)
Κλείνει το ανοιχτό αρχείο και το nano
python3 <όνομα_αρχείου.py>
Συνδυασμός πλήκτρων Ctrl+C
Εκτελεί το συγκεκριμένο αρχείο στην python 3
Επιβάλλει τον τερματισμό του προγράμματος/script που εκτελείται
sudo <εντολή> Εκτελεί την αναφερόμενη εντολή με δικαιώματα διαχειριστή
sudo reboot Κάνει επανεκκίνηση του Pi
sudo poweroff Τερματίζει τη λειτουργία του Pi
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install <πακέτο>
sudo apt-get upgrade <πακέτο>
Ενημερώνει τη λίστα των πακέτων του Raspbian
Αναβαθμίζει το Raspbian
Εγκαθιστά το αναφερόμενο πακέτο/εφαρμογή
Αναβαθμίζει το αναφερόμενο πακέτο/εφαρμογή
sudo raspi-config Ξεκινάει το κύριο διαχειριστικό εργαλείο του Raspbian (για αλλαγή
password, hostname, προσθήκη γλωσσών, ακόμα και overclocking)
hostname
hostname -I
Εμφανίζει το hostname του Pi
Εμφανίζει την IP διεύθυνση του Pi
geany & Ανοίγει σε ξεχωριστό παράθυρο το πρόγραμμα επεξεργασίας κώδικα
Geany (εφόσον είναι εγκατεστημένο)

Οδηγός αναφοράς στην Python

Πριν από την αναφορά στα αντικείμενα της βιβλιοθήκης gpiozero, γίνεται μια σύντομη ανασκόπηση των εντολών και λειτουργιών της Python που είναι απαραίτητες για την υλοποίηση των συνοδευτικών δραστηριοτήτων.

 

Αριθμητικοί τελεστές +, -, *, /, **, //, %
Συγκριτικοί τελεστές >, >=, <, <= , ==, !=
Λογικοί τελεστές and, or, not
Λογικές τιμές True, False
Εκχώρηση τιμής σε μεταβλητή i = 2 ** 3 # ύψωση σε δύναμη (σχόλιο μιας γραμμής)
Εμφάνιση μηνύματος στην οθόνη print ( “Διάλεξε ένα από τα”, i, “Pi μας!” )
Είσοδος από το πληκτρολόγιο
και απευθείας εκχώρηση
name = input( “Πως σε λένε; “)
b = int ( input( “Ποια χρονιά γεννήθηκες; “) )
Επιλογή με την if if συνθήκη1:
# εντολές1
elif συνθήκη2:
# εντολές2
else:
# εντολές3
# εντολές4 (το τέλος της if ορίζεται μέσω της         στοίχισης)
Επανάληψη με τη while while συνθήκη:
# εντολές
Επανάληψη με τη for for μεταβλητή in range( αρχή, τέλος , βήμα ) :
# εντολές
Παραδείγματα range:
range(10): # 0, 1, ?, 9
range(100, 0, -10): # 100, 90, ?, 10
Λίστες pins = [12, 20, 21, 19, 26] # ορισμός λίστας
pins[0] = 16 # αλλαγή του 1ου στοιχείου
for i in range( len(pins) ): # διάσχιση στοιχείων λίστας
print( pins[i], end=” ” ) # εμφάνιση 16 20 21 19 26
Ορισμός συνάρτησης def myfunction( ):
# εντολές