Προγραμματισμός με Python στο Raspberry Pi. LED και PWMLED. για το Code Club Απρίλιος Σύλλογος Εκπαιδευτικών Πληροφορικής Χίου

Σχετικά έγγραφα
Button & MotionSensor

Αντικειμενοστρεφής Προγραμματισμός -Python. Κ.Π. Γιαλούρης

4 ο Εργαστήριο Τυχαίοι Αριθμοί, Μεταβλητές Συστήματος

Ενότητα: Δυαδική Αναζήτηση Σχέδιο Δραστηριότητας: Παιχνίδι: Βρες τον αριθμό

Εφαρμογές Σειριακής Επικοινωνίας

Φύλλο εργασίας 3 - Χριστουγεννιάτικα φωτάκια (σταδιακή αύξηση και μείωση φωτεινότητας ενός LED) Το κύκλωμα σε breadboard

3. Γράψτε μία εντολή που να εμφανίζει π.χ. «Πόσα είναι τα κορίτσια του;» και μία που να εμφανίζει: «Τα κορίτσια του Τζειμς Μποντ είναι 4»

ΕΙΣΑΓΩΓΗ ΣΤΟΥΣ Η/Υ (ΟΜΑΔΑ ΘΕΜΑΤΩΝ A)

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Θέματα Προγραμματισμού Η/Υ

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Προγραμματισμός Υπολογιστών & Εφαρμογές Python. Κ.Π. Γιαλούρης

2ο Γυμνάσιο Καβάλας. Κατασκευές και προγραμματισμός με το scratch for Arduino (s4a)

Θέματα Προγραμματισμού Η/Υ

Πληροφορική ΙΙ Θεματική Ενότητα 9

Πληροφορική ΙΙ Θεματική Ενότητα 8

Πληροφορική ΙΙ Θεματική Ενότητα 3

Ηλεκτρονικοί Υπολογιστές

Διαδικασιακός Προγραμματισμός

Θέματα Προγραμματισμού Η/Υ

Προγραμματισμός Ι. Χαρακτήρες. Πανεπιστήμιο Πελοποννήσου Τμήμα Πληροφορικής & Τηλεπικοινωνιών

Γλώσσα προγραμματισμού python

Φύλλο Εργασίας 3. Μια γρήγορη επανάληψη από τα προηγούμενα

Εισαγωγή στον Προγ/μό Υπολογιστών

Απλή Δομή Επιλογής. Ο κώδικας. //με χρήση μεταβλητών. delay (3000);

Εκπαιδευτική Ρομποτική με ARDUINO. για εκπαιδευτικούς και μαθητές. 1o Μέρος: Απλά Κυκλώματα

Εισαγωγή στους Υπολογιστές

Προγραμματισμός Υπολογιστών Τάξη Γ Αθανασιάδης Χρήστος ΠΕ19 ΑΡΧΗ 1ΗΣ ΣΕΛΙΔΑΣ

Γράψτε ένα πρόγραμμα που θα προσομοιώνει τη ρίψη ενός νομίσματος και θα εμφανίζει στην οθόνη Κορώνα» ή «Γράμματα».

Βασικές Ασκήσεις από τα Εργαστήρια της PYTHON (εβδομάδα 5)

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

ΣΤΟΙΧΕΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ ARDUINO

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 2 USB και Σειριακή Επικοι- νωνία Σ Σειριακή Επικοινωνία

Πληροφορική ΙΙ Θεματική Ενότητα 6

Σημειωματάριο Δευτέρας 9 Οκτ. 2017

Μάντεψε τον Αριθμό. Έχω Ένα Μυστικό. Το Βρήκα;

Εισαγωγή στους Υπολογιστές

Πληροφορική ΙΙ Θεματική Ενότητα 7

ΑΡΧΗ 1ΗΣ ΣΕΛΙ ΑΣ Γ ΤΑΞΗΣ ΗΜΕΡΗΣΙΩΝ & ΤΑΞΗΣ ΕΣΠΕΡΙΝΩΝ

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Θέματα Προγραμματισμού Η/Υ

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Εξοικείωση με το πρόγραμμα DEV C++ Επικοινωνία Χρήστη - Υπολογιστή

ΘΕΜΑΤΑ ΚΑΙ ΛΥΣΕΙΣ. 1) Έστω η λογική συνάρτηση F = A' + Β'. D + B. C' + C. D' (όπου οι τόνοι δηλώνουν συμπληρώματα).

Mπαρμπούτι. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Τυχαιότητα

Εισαγωγή στην Επιστήμη Υπολογιστών. Εισαγωγή στην Python

Mπαρμπούτι. Φύλλο Εργασίας. Τυχαιότητα

ΔΡΑΣΤΗΡΙΟΤΗΤΑ ΕΙΣΑΓΩΓΗ ΣΤΟ ARDUINO- 01a

ΟΜΟΣΠΟΝΔΙΑ ΕΚΠΑΙΔΕΥΤΙΚΩΝ ΦΡΟΝΤΙΣΤΩΝ ΕΛΛΑΔΟΣ (Ο.Ε.Φ.Ε.) ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ ΕΠΑΝΑΛΗΠΤΙΚΑ ΘΕΜΑΤΑ 2018 Β ΦΑΣΗ

ΣΤΗΛΗ Β ΑΠΟΤΕΛΕΣΜΑ 1. float(10) α pow(2,3) β abs(-10) γ int(5.6) δ. 10 ε. 5.6 Μονάδες 8 ΣΤΗΛΗ Α ΣΥΝΑΡΤΗΣΗ

Τυχαίοι αριθμοί ρίξε μια «ζαριά»

Εισαγωγή στους Η/Υ και τις Εφαρμογές Ενότητα 5: Επεξεργασία δεδομένων με τη γλώσσα προγραμματισμού python Υπο-ενότητα 5.2: Συμβολοσειρές-Έλεγχος Ροής

Σημειωματάριο Τετάρτης 25 Οκτ. 2017

Python - Δομή επανάληψης

Σύντομες εισαγωγικές σημειώσεις για την. Matlab

Η Απάντηση. Φύλλο Εργασίας. Μηνύματα

Δομημένος Προγραμματισμός

ΘΕΜΑ : «Από την ΜicroWorlds Pro στην Python. Μια Βιωματική Διδακτική Πρόταση.»

ΕΞΕΤΑΖΟΜΕΝΟ ΜΑΘΗΜΑ: ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ ΣΥΝΟΛΟ ΣΕΛΙΔΩΝ: ΕΞΙ (6)

Η Απάντηση. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Μηνύματα. 1. Πληκτρολογήστε την εντολή:

Εισαγωγή στους Υπολογιστές

Διάλεξη 2. Μεταβλητές - Δομές Δεδομένων - Eίσοδος δεδομένων - Έξοδος: Μορφοποίηση - Συναρτήσεις. Διοργάνωση : ΚΕΛ ΣΑΤΜ

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Διορθώσεις σελ

Μπαρμπούτι 2. Τα Κόκκαλα Στον Μάστορα

Θέματα Προγραμματισμού Η/Υ

Υπολογισμός - Εντολές Επανάληψης

Πληροφορική ΙΙ Θεματική Ενότητα 12

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΠΡΟΣΟΜΟΙΩΣΗΣ ΠΑΝΕΛΛΑΔΙΚΩΝ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

Σημειωματάριο Δευτέρας 20 Νοε. 2017

Κωνσταντίνος Γκαλονάκης. Arduino: Προγραμματισμός στην πράξη

ΥΠΟΛΟΓΙΣΤΕΣ ΙI. Άδειες Χρήσης. Τύποι δεδομένων, μεταβλητές, πράξεις. Διδάσκοντες: Αν. Καθ. Δ. Παπαγεωργίου, Αν. Καθ. Ε. Λοιδωρίκης

Προγραμματισμός Η/Υ. Ενότητα 4: Εντολές Επιλογής

ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΥΠΡΟΥ ΕΠΛ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΕΘΟΔΩΝ ΕΠΙΛΥΣΗΣ ΠΡΟΒΛΗΜΑΤΩΝ

Οντοκεντρικός Προγραμματισμός

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

Κεφάλαιο 4: Μεταβλητές και εκφράσεις

Εισαγωγή στον Προγραμματισμό

ΠΑΡΑΡΤΗΜΑ IV. ΔΙΔΑΚΤΙΚΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΠΑΡΑΡΤΗΜΑ IV Ασκήσεις για το Robolab

Be.Be.Be.Be. ήχος, ραδιόφωνο ( FM / AM )

Σκοπός. Προγραμματίζοντας τον Arduino ΙΙ Εντολή Εκχώρησης & Εντολές. Συλλογή & Επεξεργασία Δεδομένων. Πρόγραμμα. Εντολές Επεξεργασίας Δεδομένων

Model: ED-CS5000. Ηλεκτρονικός πίνακας ελέγχου για συρόμενες και ανοιγόμενες μονόφυλλες πόρτες.

Εφαρμογές αναλογικών / Ψηφιακών

ΑΣΚΗΣΗ ΜHΧΑΤΡΟΝΙΚΗΣ. Τέλος όταν εισάγετε ένας σωστός συνδυασμός η ένδειξη του display να μηδενίζετε.

ΠΛΗΡΟΦΟΡΙΚΗ Ι Ενότητα 1: Εισαγωγή

Κεφάλαιο 1: Κίνηση και γεωμετρικά σχήματα

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος

Μάντεψε τον Αριθμό. Ενδεικτικές Απαντήσεις Φύλλου Εργασίας. Οδηγίες

ΘΕΜΑ Α. 1. Η δυαδική αναζήτηση χρησιμοποιείται μόνο σε ταξινομημένες συλλογές δεδομένων.

Γραφικά υπολογιστών Εργαστήριο 2 Παιχνίδια μαντεύματος με τυχαίους αριθμούς και loops

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.

Σημειώσεις του εργαστηριακού μαθήματος Πληροφορική ΙΙ. Εισαγωγή στην γλώσσα προγραμματισμού

Προγραμματισμός Υπολογιστών & Υπολογιστική Φυσική

A A A B A ΦΥΛΛΑ ΙΟ ΘΕΜΑΤΩΝ 1/2. Μέϱος A. Πολλαπλές επιλογές (20%) Σειριακός αριθµός : 100 Πληροφορική Ι Εξέταση Φεβρουαρίου 2019

Διαδικαστικός Προγραμματισμός

Εισαγωγή στους Η/Υ και τις Εφαρμογές Ενότητα 5: Επεξεργασία δεδομένων με τη γλώσσα προγραμματισμού python Υπο-ενότητα 5.5: Συναρτήσεις-Γραφικές

ΓΕΝΙΚΕΣ ΛΕΙΤΟΥΡΓΙΕΣ ΙΑ120 - SWEEX UNIVERSAL REMOTE CONTROL 6IN1 TOUCHSCREEN. Φωτάκι LED

Transcript:

Προγραμματισμός με Python στο Raspberry Pi LED και PWMLED για το Code Club Απρίλιος 0 Σύλλογος Εκπαιδευτικών Πληροφορικής Χίου

LED και PWMLED: Ομοιότητες και διαφορές LED Δυο δυνατές καταστάσεις για το led: ή θα ανάβει πλήρως ή θα είναι σβηστό. Μόνο led.on() και led.off() PWMLED Ορίζουμε τη φωτεινότητα του led σε οποιαδήποτε τιμή μεταξύ 0 και. Όχι μόνο led.on() και led.off(), αλλά και led.value = 0 from gpiozero import LED, PWMLED led = LED() led = PWMLED() led.on() led.on() sleep() led.value = 0. sleep() led.off() led.value = 0

Δ.

Δ. Γράψτε ένα πρόγραμμα που θα αναβοσβήνει ένα LED, αφού πρώτα ρωτήσει το χρήστη: α) πόσες φορές και β) με τι διάρκεια θα ανάβει και θα σβήνει. from gpiozero import LED led = LED() while True: led.on() sleep(0.) led.off() sleep(0.) # Για πάντα (μέχρι να πατηθεί Ctrl+C ή να βρεθεί κάποια break). # Περίμενε 0. sec. # Περίμενε 0. sec. βοήθεια

Δ. β) για πόση διάρκεια θα ανάβει και θα σβήνει. 0 from gpiozero import LED led = LED() print ("Δώσε διάρκεια:") t = float ( input() ) while True: led.on() sleep(t) led.off() sleep(t) # Μετατροπή του κειμένου σε αριθμό # και μάλιστα float για να δέχεται και # πραγματικές τιμές. # Περίμενε t δευτερόλεπτα. # Περίμενε t δευτερόλεπτα. βοήθεια

Δ. α) πόσες φορές θα ανάβει και θα σβήνει. 0 from gpiozero import LED led = LED() print ("Δώσε διάρκεια:") t = float ( input() ) print ("Τέλος") # Ρώτα το χρήστη τον αριθμό που επιθυμεί # και εκχώρησέ τον σε μια μεταβλητή, π.χ. n. # Επανάλαβε n φορές τις εντολές # για το άναψε-σβήσε του led. βοήθεια

Δ.

Δ. Κάντε ένα LED να μοιάζει με ένα κερί που τρεμοπαίζει (το led ανάβει σε τυχαία ένταση και για τυχαίο χρονικό διάστημα). 0 from gpiozero import PWMLED led = PWMLED() while True: led.value = 0. sleep(0.) led.value = 0. sleep(0.) led.value = sleep(0.) # Η ιδιότητα value ενός PWMLED μας επιτρέπει # να ορίσουμε τη φωτεινότητά του (0 μέχρι ). from random import randint z = randint(, ) print (z) # Η randint παράγει έναν ακέραιο αριθμό # στο διάστημα που της καθορίζουμε. # Εδώ, στο κλειστό διάστημα [,]. βοήθεια

Δ.

Δ. 0 Kάντε ένα led να αναβοσβήνει αργά, ώστε να μοιάζει σαν να αναπνέει. from gpiozero import PWMLED led = PWMLED() # Για πάντα: # Ξεκίνα από φωτεινότητα μηδέν και αύξησε σταδιακά τη φωτεινότητα # με μια πολύ μικρή καθυστέρηση (~0.0 sec) σε κάθε αλλαγή. # Όταν φτάσεις στη φωτεινότητα ένα, περίμενε λίγο (~0. sec). # Τώρα, ξεκίνα από φωτεινότητα ένα και μείωσε σταδιακά τη φωτεινότητα # με μια πολύ μικρή καθυστέρηση σε κάθε αλλαγή, μέχρι αυτή να γίνει μηδέν. # Όταν το led έχει σβήσει, περίμενε λίγο (~0. sec). 0 βοήθεια

Παράρτημα Ενδεικτικές λύσεις

Δ. Γράψτε ένα πρόγραμμα που θα αναβοσβήνει ένα LED, αφού πρώτα ρωτήσει το χρήστη: α) πόσες φορές και β) με τι διάρκεια θα ανάβει και θα σβήνει. 0 from gpiozero import LED led = LED() print ("Δώσε διάρκεια:") t = float ( input() ) print ("Πόσες φορές;") n = int ( input() ) while n > 0: led.on() sleep(t) led.off() sleep(t) n = n - print ("Τέλος") d..blink.py

Δ. Εναλλακτική λύση της Δ. με τη χρήση συνάρτησης. 0 from gpiozero import LED led = LED() def blink (diarkeia, fores): while fores > 0: led.on() sleep(diarkeia) led.off() sleep(diarkeia) fores = fores - t = float ( input("δώσε διάρκεια: ") ) n = int ( input("πόσες φορές; ") ) blink (t, n) print ("Τέλος") d..blink_function.py

Δ. Κάντε ένα LED να μοιάζει με ένα κερί που τρεμοπαίζει (το led ανάβει σε τυχαία ένταση και για τυχαίο χρονικό διάστημα). 0 from gpiozero import PWMLED from random import randint led = PWMLED() while True: brightness = randint(0, 00) / 00 time = randint(0, 0) / 00 led.value = brightness sleep(time) d..candle.py

Δ. Kάντε ένα led να αναβοσβήνει αργά, ώστε να μοιάζει σαν να αναπνέει. from gpiozero import PWMLED led = PWMLED() t = 0.0 t = 0. # Ο χρόνος για κάθε αλλαγή φωτεινότητας # Ο χρόνος ανάμεσα στις αναπνοές 0 while True: i= 0 while i <= 00: led.value = i/00 i = i + sleep(t) sleep(t) i = while i >= 0: led.value = i i = i - 0.0 sleep(t) sleep(t) print ("Αναπνοή...") d..breath.py

Δ. ένα ακόμα led να αναβοσβήνει αντίστροφα από το άλλο. 0 from gpiozero import PWMLED l = PWMLED() l = PWMLED() t = 0.0 t = 0. while True: i= 0 while i <= 00: l.value = i/00 l.value = - l.value i = i + sleep(t) sleep(t) 0 i = while i >= 0: l.value = i l.value = - l.value i = i - 0.0 sleep(t) sleep(t) print ("Αναπνοή...") d..breath.py

Το υλικό αυτό διατίθεται με άδεια Creative Commons Αναφορά Δημιουργού - Παρόμοια Διανομή.0. http://creativecommons.org/licenses/by-sa/.0/gr/ Η αναφορά σε αυτό θα πρέπει να γίνεται ως εξής: Προγραμματισμός με Python στο Raspberry Pi. Γιώργος Χατζηνικολάκης, Σύλλογος Εκπαιδευτικών Πληροφορικής Χίου, Απρίλιος 0.