Αν παρακολουθείτε το elkosmas.gr εδώ και λίγο καιρό, έχω αρχίσει να γράφω για ανοιχτό hardware. Ένας από τους αναγνώστες, με την ευκαιρία της ενασχόλησής μου με το ανοιχτό hardware, επικοινώνησε μαζί μου για να με ενημερώσει για το FreeCAD.
Ο Κώστας (γνωστός και ως logari81 σε online κοινότητες όπως το ubuntu-gr), λίγο αφού άρχισε να ασχολείται με τον χώρο του ελεύθερου λογισμικού, διαπίστωσε την απουσία ενός σοβαρού ελεύθερου και ανοιχτού προγράμματος για 3D CAD. Μετά από αρκετό ψάξιμο κατέληξε ότι το FreeCAD είναι αρκετά αξιόλογο ώστε να ασχοληθεί με την ανάπτυξή του. Βλέπετε, η ύπαρξη ενός ανοιχτού κώδικα προγράμματος τρισδιάστατου CAD είναι ιδιαίτερα σημαντική για την ανάπτυξη hardware που χρειάζεται μηχανολογικό σχεδιασμό — όσο σημαντικό είναι το GCC για το ελεύθερο λογισμικό, όπως πολύ ωραία το έθεσε ο Κώστας.
Τι το ιδιαίτερο όμως έχει το FreeCAD; Είναι σχεδιασμένο με κύριο στόχο τη μηχανολογική ανάπτυξη και το βιομηχανικό σχέδιο, αλλά λόγω του αρθρωτού σχεδιασμού του είναι αρκετά παραμετροποιήσιμο ώστε να χρησιμοποιηθεί και σε άλλες εφαρμογές. Καθώς είναι γραμμένο με τη βιβλιοθήκη Qt, λειτουργεί με τον ίδιο τρόπο σε Windows, Linux και Mac OS X.
Μια από τις πλέον ενδιαφέρουσες λειτουργίες του είναι ότι ο χρήστης μπορεί να προσθέσει χρήσιμα scripts χρησιμοποιώντας Python, ή να καταγράψει πολύπλοκες διαδικασίες μέσω macros. Αν είστε άνετοι με την Qt, μπορείτε να προσθέσετε νέους διαλόγους με το Qt designer, και —αυτό που με ενθουσίασε κυριολεκτικά— μπορείτε να χρησιμοποιήσετε ολόκληρο το FreeCAD GUI ως ένα Python Module μέσα σε ένα άλλο πρόγραμμα.
Σύμφωνα με τον Κώστα, το FreeCAD έχει πολύ δρόμο ακόμη. Τι έχουν στα σκαριά;
- Ένα module δημιουργίας δισδιάστατων σχεδίων από τρισδιάστατα.
- Module εξομοίωσης βιομηχανικών robot για τον σχεδιασμό και την εξαγωγή των κινήσεων ενός ρομπότ.
- Module για την εμφάνιση 3D επιφανειών με χρήση εξωτερικού renderer (προς το παρόν POV-Ray).
- Module για αρχιτεκτονικές λειτουργίες.
Μπορεί το FreeCAD να γίνει εργαλείο δουλειάς; Η αλήθεια είναι πως όχι ακόμη — όχι γιατί τα θεμέλιά του είναι σαθρά (κάθε άλλο), αλλά γιατί το βάρος της ανάπτυξης πέφτει σε 4-5 άτομα. Τι χρειάζεται λοιπόν; Developers… developers… developers, όπως λέει και ο κύριος Ballmer. Ο ιδανικός developer για το FreeCAD θα ξέρει καλή C++ και Python, θα ξέρει Qt, και θα αφιερώσει χρόνο για να μάθει OpenCascade και Coin3d. Αν δεν είστε developer, μπορείτε πάντα να δείτε το how to help.
Ενδεικτικό βίντεο (όχι το αρχικό): παρουσίαση του FreeCAD σε δράση από τον βασικό προγραμματιστή Yorik van Havre.
Ο Lasersaur ελέγχεται από Arduino Uno με το firmware LasaurGrbl και την εφαρμογή host LasaurApp — όλα ανοιχτού κώδικα.
