ΕΛ/ΛΑΚ | creativecommons.gr | mycontent.ellak.gr |
freedom

Πετώντας στον Άρη με λογισμικό ανοιχτού κώδικα

Ένα μικρό θαύμα συνέβη τη Δευτέρα το πρωί. Το Ingenuity, ένα μικρό ελικόπτερο της NASA, έγινε το πρώτο μηχανοκίνητο αεροσκάφος που πετά σε έναν άλλο πλανήτη, τον Άρη. Αυτό το μηχανολογικό επίτευγμα πραγματοιήθηκε με Linux, λογισμικό ανοιχτού κώδικα και ένα πρόγραμμα που δημιουργήθηκε από τη NASA με βάση το πλαίσιο ανοιχτού κώδικα J ‘ Propulsion Laboratory (JPL) F’ (προφέρεται F prime).

Σε απόσταση 11-λεπτών φωτός από τη Γη, δεν υπήρχε τίποτα εύκολο σε αυτό. Είναι αλήθεια ότι ο Άρης έχει μόνο το ένα τρίτο της βαρύτητας της Γης, αλλά η ατμόσφαιρα του Άρη έχει μόνο το ένα εκατοστό της πυκνότητας του αέρα της Γης. 

Πράγματι, το Ingenuity είναι καθαρά μια τεχνολογική επίδειξη. Δεν έχει σχεδιαστεί για να υποστηρίζει την αποστολή Perseverance, η οποία αναζητά σημάδια αρχαίας ζωής και συλλέγει δείγματα βράχων και χώματος για μεταγενέστερες αποστολές για επιστροφή στη Γη. Η αποστολή του είναι να δείξει ότι είναι πιθανό να πετάξει στον Άρη χρησιμοποιώντας καθημερινά υλικά off-the-shelf (COTS) και λογισμικό ανοιχτού κώδικα. 

Ο Διευθύνων Σύμβουλος του GitHub Nat Friedman και η ομάδα του και το πλήρωμα JPL Ingenuity εξέτασαν τον κώδικα του ελικοπτέρου και διαπίστωσαν ότι “σχεδόν 12.000 προγραμματιστές στο GitHub συνέβαλαν στο λογισμικό της Ingenuity μέσω ανοιχτού κώδικα. Ωστόσο οι περισσότεροι από αυτούς τους προγραμματιστές δεν γνωρίζουν καν ότι βοήθησαν να καταστεί δυνατή η πρώτη πτήση με ελικόπτερο του Άρη“.  

Ο Friedman έγραψε: “Σήμερα, θέλουμε να κάνουμε το αόρατο ορατό. Έτσι, συνεργαστήκαμε με την JPL για να τοποθετήσουμε ένα νέο σήμα Mars 2020 Helicopter Mission στο προφίλ GitHub σε κάθε προγραμματιστή που συνέβαλε στις συγκεκριμένες εκδόσεις οποιωνδήποτε έργων ανοιχτού κώδικα και βιβλιοθηκών που χρησιμοποιούνται από την Ingenuity. ” 

Η λίστα προγραμματιστών δημιουργήθηκε από την JPL παρέχοντας στο GitHub μια ολοκληρωμένη λίστα με κάθε έκδοση κάθε έργου ανοιχτού κώδικα που χρησιμοποιεί το Ingenuity. Το GitHub θα μπορούσε τότε να προσδιορίσει όλους τους συνεισφέροντες που έκαναν αυτά τα έργα και τις εξαρτήσεις τους

Μερικοί από αυτούς που τιμήθηκαν, όπως ο δημιουργός του Linux Linus Torvalds, είναι διάσημοι προγραμματιστές. Πολλοί άλλοι εργάζονται σε αφάνεια – αλλά τώρα αναγνωρίζεται το έργο τους. Όπως εξήγησε ο διευθυντής των σχέσεων προγραμματιστών του GitHub, Martin Woodward: “Πολλοί από τους ανθρώπους που πήραν ένα σήμα πιθανώς δεν έχουν ιδέα ότι το λογισμικό τους χρησιμοποιείται για να πετάξει ένα ελικόπτερο σε έναν άλλο πλανήτη

Ο Woodward συνέχισε: “Αυτό που βρίσκουμε είναι ότι υπάρχει μια ιεραρχία εξαρτήσεων. Ένα μεμονωμένο έργο μπορεί να έχει 10 ή λιγότερες εξαρτήσεις, αλλά κάθε εξάρτηση βασίζεται σε κάτι άλλο. Και με αυτόν τον τρόπο ένας απίστευτα μεγάλο αριθμός ατόμων έχουν συνεισφέρει σε ένα έργο.”

Ενώ το αποτέλεσμα, σε αυτήν την περίπτωση, είναι εξαιρετικό, σχεδόν όλο το λογισμικό αποστολής σήμερα βασίζεται σε εξαρτήματα ανοιχτού κώδικα. Ο Carol Willing, βασικός συντελεστής της Python, πρόσθεσε: “Μοιάζει πολύ με την πτώση ενός βότσαλου σε μια λίμνη, η μικρή συνεισφορά σας στη συνέχεια κυματίζει για να έχει πολύ μεγαλύτερο αντίκτυπο. Αυτή είναι μια από τις ομορφιές του ανοιχτού κώδικα, κάποιος άλλος μπορεί να πάρει την καλή δουλειά σας και να το κάνουμε ακόμα πιο δυνατό και νόημα.”

Για πολλούς συνεισφέροντες, είναι υπέροχο να βλέπουν το αφηρημένο έργο τους να μετατρέπεται σε κάτι τόσο απτό όσο ένα μικρό ελικόπτερο που πετά στον Άρη. “Αφού ξοδεύουμε πολύ χρόνο για διορθώσεις σφαλμάτων και συντήρηση, είναι αναζωογονητικό να ακούμε για όλα τα ωραία πράγματα που επιτρέπει η Python”, λέει ο Benjamin Peterson, ένας άλλος βασικός συντηρητής της Python και ο δημιουργός της βιβλιοθήκης Six της Python .

Οι προγραμματιστές JPL έχουν από καιρό χρησιμοποιήσει και συνεισφέρουν σε έργα ανοιχτού κώδικα. Όμως, με το F ‘, για πρώτη φορά, η JPL ξεκίνησε το δικό της έργο ανοιχτού κώδικα. Αυτό συμβαίνει επειδή, σύμφωνα με τον Jeff Levison, επιβλέποντα της JPL της ομάδας λογισμικού πτήσης μικρής κλίμακας, υπήρχαν λίγες εφαρμογές για το λογισμικό πτήσης της JPL εκτός της NASA. “Δεν είχε νόημα στο παρελθόν, επειδή το λογισμικό μας συνδυάζονταν με πολύ συγκεκριμένο και προσαρμοσμένο υλικό”, εξηγεί ο Levison. “Δεν υπήρχε πραγματική ανάγκη ή όφελος στην κυκλοφορία του στο κοινό.”

Αυτό δεν συμβαίνει, ωστόσο, με το Ingenuity. Ο Timothy Canham, ένας μηχανικός λογισμικού πτήσης JPL, εξήγησε ότι το πρόγραμμα του ελικοπτέρου τροφοδοτείται από ένα Qualcomm Snapdragon 801 που λειτουργεί στα 2.2GHz. 

Παρόλο που αυτό μπορεί να ακούγεται οδυνηρά αργό και παλιό, είναι πολύ πιο γρήγορο από τους επεξεργαστές του Mars Perseverance. Αυτό συμβαίνει επειδή οι επεξεργαστές και τα τσιπ της NASA πρέπει να πληρούν τα πρότυπα ακτινοβολίας Spaceflight Computing (HPSC) της NASA. Αυτοί οι προσαρμοσμένοι επεξεργαστές χρειάζονται χρόνια σχεδιαστικής εργασίας και δοκιμών προτού πιστοποιηθούν για διαστημικές πτήσεις. Για παράδειγμα, ο νεότερος επεξεργαστής γενικής χρήσης της NASA είναι μια παραλλαγή ARM A53 που μπορεί να γνωρίζετε από το Raspberry Pi 3. Το Ingenuity, ωστόσο, καθώς ένα έργο επίδειξης μπορεί να χρησιμοποιήσει μια πιο συνηθισμένη και επομένως μια πιο σύγχρονη CPU.

Σήμερα, όλα αυτά τα έργα επέτρεψαν στο Ingenuity να πετάξει στον λεπτό ροζ ουρανό του Άρη. Αλλά όταν το πρώτο ρομποτικό Starship του Elon Musk, Heart of Gold, θα πετάξει στον Άρη αργότερα αυτή τη δεκαετία, θα καθοδηγείται επίσης από το Linux και το λογισμικό θα είναι ανοιχτού κώδικα.

Πηγή άρθρου: https://www.zdnet.com/

Leave a Comment

Social Media Auto Publish Powered By : XYZScripts.com