6
Το παρακάτω πρόγραμμα αποτελεί κομμάτι μιας μεγαλύτερης κατασκευής και μιας και το τελείωσα είπα να το ανεβάσω μαζί με ένα παράδειγμα στο arduino για να μου πείτε την γνώμη σας και αν υπάρξει κάποιο bug να το διορθώσω τώρα που έχω τον κώδικα φρέσκο στο μυαλό μου.
Το πρόγραμμα είναι γραμμένο σε C# (τώρα αν τρέχει σε XP θα σας γελάσω, δεν έψαξα compatibility, σε 7άρια το έστησα και λογικά τρέχει και στα επόμενα)
Τα αρχεία (πηγαίος και εκτελέσιμο) βρίσκονται εδώ https://github.com/FireFlowController/FireFlow-Oven
Είναι με άδεια GPL που σημαίνει το παίρνετε όλο ή όποιο κομμάτι σας αρέσει και το κάνετε ότι θέλετε αρκεί να είναι ανοιχτού κώδικα το τελικό πρόγραμμα.
Η σύνδεση με μικρο-ελεγκτή γίνεται μέσω εικονικής σειριακής (Com) και υπάρχει ένα απλό instruction set που μπορεί να τοποθετηθεί σε μικρο-ελεγκτή της αρεσκείας σας.
Σαν πρόγραμμα παρέχει φιλικά ονόματα (USB-FTDIBUS κλπ) κατά την διασύνδεση όπως στο device manager (αυτός είναι και ο μόνος λόγος που θέλει δικαιώματα admin γιατί δεν ήθελα να παίζει με το registry και το κάνω με WMI
Εμφανίζει διάγραμμα θερμοκρασίας (ταυτόχρονα τα αποθηκεύει σε Temp αρχείο έτσι ώστε να μην χάνεται τίποτα αν αλλάξει ο χρονικός ορίζοντας)
Διάγραμμα εξόδου του PID
Μπορεί ο χρήστης να αλλάξει τα κέρδη κατά την λειτουργία (+ επιλογή απενεργοποίησης Bumpless αλλαγής την οποία προσφέρει η βιβλιοθήκη PID)
Χρονόμετρο βασισμένο στον υπολογιστή
Και τέλος εξαγωγή είτε σε txt/csv ότι έχει λάβει είτε png/jpg/... ότι απεικονίζει το γράφημα.
Προσπάθησα να το κάνω όσο ποιο πολύ user friendly μπορούσα, πιστεύω σε 2-3 λεπτά μπορεί να το δουλέψει κάποιος.
Έβαλα και help και ένα μικρό manual.
Ότι πρόβλημα βρείτε ή κάτι που δεν σας αρέσει γράψτε το παρακάτω να το κοιτάξω.
Ευχαριστώ
*Το παράδειγμα στο arduino πολύ πιθανό να έχει κάποια λαθάκια, στο πόδι το έγραψα, αν κάποιος θέλει να το δοκιμάσει και μπορεί να διορθώσει προβλήματα τύπου phantom interrupt κλπ θα μπει στις ευχαριστίες, περισσότερο το έγραψα για να δείξω την επεξεργασία εντολών και τις απαντήσεις. (Σύντομα θα υπάρξει μια αλλαγή και σε αυτά γιατί δεν μ' αρέσει που χρησιμοποιεί string σε κάποια στιγμή)