Course Outline
Εβδομάδα 01
Ημέρα 01
Εισαγωγή
- Τι κάνει ένα ρομπότ έξυπνο;
Φυσικά εναντίον εικονικών ρομπότ
- Smart Robots, Smart Machines, Senentent Machines και Robotic Process Automation (RPA), κ.λπ.
Ο ρόλος του Artificial Intelligence (AI) στο Robotics
- Πέρα από το «αν-τότε-άλλο» και τη μηχανή εκμάθησης
- Οι αλγόριθμοι πίσω από την τεχνητή νοημοσύνη
- Μηχανική μάθηση, όραση υπολογιστή, επεξεργασία φυσικής γλώσσας (NLP) κ.λπ.
- Γνωστική ρομποτική
Ημέρα 02
Ο ρόλος του Big Data στο Robotics
- Λήψη αποφάσεων με βάση δεδομένα και πρότυπα
Το σύννεφο και Robotics
- Σύνδεση της ρομποτικής με την πληροφορική
- Δημιουργία πιο λειτουργικών ρομπότ που έχουν πρόσβαση σε περισσότερες πληροφορίες και συνεργάζονται
Μελέτη περίπτωσης: Βιομηχανικά ρομπότ
- Μηχανικά Ρομπότ
- Μπάξτερ
- Ρομπότ σε πυρηνικές εγκαταστάσεις
- Ανίχνευση ακτινοβολίας και προστασία
- Robots in Nuclear Reactors
- Ανίχνευση ακτινοβολίας και προστασία
Ημέρα 03
Εξαρτήματα υλικού ενός ρομπότ
- Κινητήρες, αισθητήρες, μικροελεγκτές, κάμερες κ.λπ.
Κοινά Element ρομπότ
- Μηχανική όραση, αναγνώριση φωνής, σύνθεση ομιλίας, αίσθηση εγγύτητας, αίσθηση πίεσης κ.λπ.
Ημέρα 04
Πλαίσια Ανάπτυξης για Programming ένα ρομπότ
- Ανοιχτού κώδικα και εμπορικά πλαίσια
- Λειτουργικό σύστημα ρομπότ (ROS)
- Αρχιτεκτονική: χώρος εργασίας, θέματα, μηνύματα, υπηρεσίες, κόμβοι, actionlibs, εργαλεία κ.λπ.
Languages για Programming ένα ρομπότ
- C++ για έλεγχο χαμηλού επιπέδου
- Python για ενορχήστρωση
- Programming ROS κόμβοι σε Python και C ++
- Άλλες γλώσσες
Ημέρα 05
Εργαλεία για την προσομοίωση ενός φυσικού ρομπότ
- Εμπορικό και ανοιχτού κώδικα λογισμικό τρισδιάστατης προσομοίωσης και απεικόνισης
Εργαλεία για τον σχεδιασμό των φυσικών χαρακτηριστικών ενός ρομπότ
- Εμπορικό λογισμικό και λογισμικό ανοιχτού κώδικα CAD
Μελέτη περίπτωσης: Μηχανικά ρομπότ
- Ρομπότ στον τομέα της πυρηνικής τεχνολογίας
- Ρομπότ σε περιβαλλοντικά συστήματα
Εβδομάδα 02
Ημέρα 06
Crash Course σε Python
- Εγκατάσταση και εγκατάσταση λογισμικού
- Χρήσιμα πακέτα και βοηθητικά προγράμματα
- Εργασία με Python δομές δεδομένων, τελεστές, βρόχους, προϋποθέσεις, συναρτήσεις, μεθόδους κ.λπ.
- Σύνταξη δείγματος προγράμματος
- Ομαδικό έργο
Ημέρα 07
Προετοιμασία για την ανάπτυξη ρομπότ
- Ρύθμιση του περιβάλλοντος ανάπτυξης (π.χ., Arduino IDE)
- Εξερεύνηση της σύνταξης της γλώσσας Arduino (C/C++).
- Κωδικοποίηση, μεταγλώττιση και αποστολή στον μικροελεγκτή
- Συναρμολόγηση των στοιχείων υλικού ενός Arduino ρομπότ
Ημέρα 08
Εργασία με Arduino εξαρτήματα
- Αναλογικοί αισθητήρες
- Ψηφιακούς αισθητήρες
Εργασία με ενότητες Arduino Communication
- Μονάδες Bluetooth
- Μονάδες Wi-Fi
- Μονάδες RFID
- I2C και SPI
- Διαδίκτυο για κινητά
Ημέρα 09
Κατασκευή ρομπότ
- Σχεδιασμός των χαρακτηριστικών και των χαρακτηριστικών ενός ρομπότ
- Εφαρμογή κίνησης ρομπότ
Ομαδικό έργο
- Συζήτηση και κριτική
Ημέρα 10
Έλεγχος του ρομπότ
- Εφαρμογή του ελεγκτή
- Σύνδεση με το ρομπότ (ενσύρματα και ασύρματα)
Team Project
- Συζήτηση και κριτική
Εβδομάδα 03
Ημέρα 11
Programming το Ρομπότ
- Προσομοίωση ρομπότ με Gazebo / ROS
- Κατανόηση του κόμβου ROS
- Programming ένας κόμβος σε Python και C ++
- Μηνύματα και θέματα στο ROS
- Παράδειγμα δημοσίευσης / συνδρομής
Team Project
- Bump & Go με πραγματικό ρομπότ
- Συζήτηση και κριτική
Ημέρα 12
Programming το ρομπότ (συνέχεια...)
- Πλαίσια στο ROS και αλλαγές αναφοράς
- 2D επεξεργασία πληροφοριών καμερών με OpenCV
- Επεξεργασία πληροφοριών ενός λέιζερ
Team Project
- Ασφαλής παρακολούθηση αντικειμένων ανά χρώμα
- Συζήτηση και κριτική
Ημέρα 13
Δοκιμάζοντας το ρομπότ
- Εργαλεία για τη δοκιμή του κωδικού σας
- Δοκιμή μονάδας
- Δημιουργία δοκιμαστικής σουίτας
- Αυτοματοποίηση των δοκιμών σας
- Αντιμετώπιση προβλημάτων
Team Project
- Ασφαλής παρακολούθηση αντικειμένων ανά χρώμα
- Συζήτηση και κριτική
Ημέρα 14
Programming το ρομπότ (Συνέχεια...)
- Υπηρεσίες σε ROS
- Τρισδιάστατη επεξεργασία πληροφοριών αισθητήρων RGB-D με PCL
- Χάρτες και πλοήγηση με ROS
Ημέρα 15
Programming το ρομπότ (Συνέχεια...)
- Ολοκλήρωση εργασιών με το ActionLib
Team Project
- Αναζήτηση αντικειμένων στο περιβάλλον
Εβδομάδα 04
Ημέρα 16
Programming το ρομπότ (Συνέχεια...)
- Ολοκλήρωση εργασιών με το ActionLib
Ημέρα 17
Programming το ρομπότ (Συνέχεια...)
- Speech Recognition και Speech Generation
- Αντιμετώπιση προβλημάτων
Team Project
- Έλεγχος ρομπότ χρησιμοποιώντας φωνή
Ημέρα 18
Programming το ρομπότ (Συνέχεια...)
- Έλεγχος ρομποτικών βραχιόνων με το MoveIt!
- Έλεγχος ρομποτικού λαιμού για ενεργή όραση
- Αντιμετώπιση προβλημάτων
Team Project
- Αναζήτηση και συλλογή αντικειμένων
Ημέρα 19
Ανάπτυξη του ρομπότ
- Ανάπτυξη του ρομπότ στον φυσικό κόσμο
- Παρακολούθηση και εξυπηρέτηση ρομπότ στο πεδίο
- Χρησιμοποιώντας μια εφαρμογή για κινητά για τον έλεγχο ενός ρομπότ
Ασφάλιση του ρομπότ
- Αποτροπή μη εξουσιοδοτημένης παραβίασης
- Αποτροπή χάκερ από την προβολή και την κλοπή ευαίσθητων δεδομένων
Ημέρα 20
Αναλύσεις δεδομένων
- Συλλογή και οργάνωση δεδομένων που δημιουργούνται από το ρομπότ
- Να κατανοήσουν τα δεδομένα μέσω εργαλείων και διαδικασιών οπτικοποίησης
Κατασκευάζοντας ένα ρομπότ από κοινού
- Κατασκευάζοντας ένα ρομπότ στο σύννεφο
- Δημιουργία εφαρμογής για κινητά για αλληλεπίδραση με το ρομπότ σας
- Συμμετοχή στην κοινότητα της ρομποτικής
Μέλλον Outlook για τα ρομπότ στον τομέα της επιστήμης και της ενέργειας
Περίληψη και Συμπέρασμα
Requirements
- Programming εμπειρία σε C ή C++
- Programming εμπειρία στο Python (χρήσιμο αλλά όχι απαραίτητο, μπορεί να διδαχθεί ως μέρος φυσικά)
- Εμπειρία με τη γραμμή εντολών Linux
Ακροατήριο
- προγραμματιστές
- Μηχανικοί
- Επιστήμονες
- Τεχνικοί
Testimonials (1)
I feel I get the core skills I need to understand how the ROS fits together, and how to structure projects in it.