Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης
ΤμήμαΗλεκτρολόγων Μηχανικών και Μηχανικών Ηλεκτρονικών
Υπολογιστών
:Φοιτητής
Μουζενίδης Παναγιώτης
: 8362ΑΕΜ
π π :Ε ιβλέ οντες
Αν. Καθηγητής, Ανδρέας Συμεωνίδης
Υπ. Διδάκτορας Χριστόφορος Ζολώτας
Μοντελοποίηση και επέκταση της ρομποτικής
αρχιτεκτονικής R4A προς αυτόματη παραγωγή διεπαφών
και τμημάτων αυτής
Θεσσαλονίκη, Φεβρουάριος 2019
2.
2
Σκοπός διπλωματικής εργασίας
Θεσσαλονίκη,Φεβρουάριος 2019
Επέκταση R4A:
1)Μοντελοποίηση νέων διεπαφών με βάση τις
πληροφορίες που μπορεί να επιστρέψει το API
της R4A.
2)Αυτόματη παραγωγή κώδικα των διεπαφών
έχοντας σαν είσοδο τα χαρακτηριστικά του
συστήματος / ρομπότ που επιθυμεί ο χρήστης.
3.
3
Model Driven Engineering(MDE)
●
Μεθοδολογία ανάπτυξης λογισμικού που βασίζεται σε μοντέλα.
●
Πλεονεκτήματα MDE;
– Αυτόματη παραγωγή κώδικα
– Φθηνό και ποιοτικό λογισμικό
– Συντήρηση
●
Model Driven Architecture (MDA)
– Πρότυπο του MDE
– 3 επίπεδα αφαιρετικότητας
9
Μεθοδολογία – 5(Κατασκευή Sirius editor)
Containers:
C1) UserInterface
C2) Tab
Θεσσαλονίκη, Φεβρουάριος 2019
Nodes:
N1) Sensor
N2) Effector
N3) Algorithm
C1
C2 C2
N1
N3N2
N2N2
N1
N2
Ο Sirius editor αναπαριστά τα
instances των κλάσεων του
metamodel με Nodes και Containers.
10.
10
Μεθοδολογία – 6(Κατασκευή Sirius editor)
• Κωδικοί 1 έως 12 αφορούν τον
έλεγχο για την μοναδικότητα
κάθε στοιχείου. Αποτελούν
σφάλματα.
• Κωδικός 13 αφορά το cut-off του
αισθητήρα απόστασης.
Αποτελεί σφάλμα.
• Κωδικός 14 αφορά τον έλεγχο
των ρυθμών ανανέωσης του κάθε
στοιχείου. Αποτελεί
προειδοποίηση.
Validation Rules
●
Σημαντικό κομμάτι του MDE
●
Στον editor που κατασκευάστηκε υπάρχουν 13 κωδικοί
σφαλμάτων και 1 κωδικός προειδοποίησης
11.
11
Μεθοδολογία – 7(Κατασκευή M2T)
Το Acceleo βασίζεται σε modules.
Κάθε module αποτελείται από templates.
Συνολικά 10 modules, 1100 γραμμές κώδικα
15
Μελλοντική εργασία
●
Η επέκτασητου συγκεκριμένου plugin
για πλήρη υποστήριξη περισσότερων
ρομπότ εκτός του ΝΑΟ.
●
Η επέκταση για δυνατότητα του
χρήστη να προσαρμόζει ανάλογα με
τις ανάγκες του τον τρόπο εμφάνισης
του κάθε στοιχείου στην τελική
διεπαφή.