Πίνακας περιεχομένων:

Audible Telltales for Sailing: 11 Steps
Audible Telltales for Sailing: 11 Steps

Βίντεο: Audible Telltales for Sailing: 11 Steps

Βίντεο: Audible Telltales for Sailing: 11 Steps
Βίντεο: How to Use Luff Telltales for Power 2024, Νοέμβριος
Anonim
Image
Image
Υλικό Telltale
Υλικό Telltale

Τα Telltales είναι κομμάτια χορδών που χρησιμοποιούνται στην ιστιοπλοΐα για να δείξουν εάν υπάρχει τυρβώδης ή στρωτή ροή στο πανί. Ωστόσο, τα διαφορετικά χρώματα κομμάτια νήματος που συνδέονται σε κάθε πλευρά του πανιού είναι καθαρά οπτικοί δείκτες. Αυτά τα ακουστικά ενδεικτικά είναι μια βοηθητική συσκευή που στοχεύει στην επικοινωνία των οπτικών πληροφοριών σε ακουστική μορφή τόσο για ναυτικούς με προβλήματα όρασης όσο και για άτομα με προβλήματα όρασης, όπως η Pauline.

Η συσκευή αποτελείται από ένα σύστημα εισόδου, το οποίο διαβάζει την κίνηση της ενδεικτικής λυχνίας και ένα σύστημα εξόδου, το οποίο εκπέμπει μια σειρά από μπιπ που μεταφέρουν πληροφορίες ροής αέρα.

Για την κατασκευή αυτής της συσκευής απαιτείται πρόσβαση σε εξοπλισμό συγκόλλησης και έναν εκτυπωτή 3D.

Βήμα 1: Λογαριασμός Υλικών

BOM με συνδέσμους και τιμές

Σημείωση: θα χρειαστείτε 2 σετ από όλα τα παρακάτω.

Σύστημα εισόδου

  • Arduino Nano
  • Adafruit perma-proto ημι-μεγέθους PCB ψωμιού
  • nRF24L01 Ασύρματη μονάδα πομποδέκτη
  • Διακόπτης φωτογραφιών
  • Sparkfun Photo Interrupter Breakout Board
  • Μπαταρία συμβατή με Arduino 9V
  • Μπαταρία 9V
  • Πολλά μήκη σύρματος 22 Gauge
  • Νήμα
  • Μαγνήτες νεοδυμίου
  • Εποξειδικό

Σύστημα εξόδου

  • Arduino Nano
  • Adafruit perma-proto ημι-μεγέθους PCB breadboard
  • nRF24L01 Ασύρματη μονάδα πομποδέκτη
  • Μπαταρία συμβατή με Arduino 9V
  • Ποτενσιόμετρο 1K Ohm
  • Αντίσταση 120 Ohm
  • Τρανζίστορ 2N3904
  • Πυκνωτής 0,1 uF
  • Συμβατό με ηχείο Arduino

Αρχεία GitHub

  • Όλα τα αρχεία κώδικα και STL που απαιτούνται για την κατασκευή αυτών των ενδεικτικών μπορούν να βρεθούν σε αυτό το repo του GitHub.
  • Θα χρειαστείτε δύο σετ περιβλήματος και ένα από το περίβλημα του ηχείου.

Βήμα 2: Απαιτήσεις εργαλείων/μηχανών/λογισμικού

Για να προγραμματίσετε το Arduino θα πρέπει να κατεβάσετε το Arduino IDE. Ο σύνδεσμος λήψης μπορεί να βρεθεί εδώ.

Για να προγραμματίσετε τη μονάδα nRF24L01, θα χρειαστεί να κάνετε λήψη της βιβλιοθήκης της μέσω του Arduino IDE. Εργαλεία> Διαχείριση βιβλιοθηκών …> εγκατάσταση βιβλιοθήκης RF24

Για τη συναρμολόγηση των ηλεκτρονικών εξαρτημάτων απαιτείται πρόσβαση σε βασικά εργαλεία συγκόλλησης. Μια αντλία αποκόλλησης μπορεί επίσης να είναι χρήσιμη αλλά δεν είναι απαραίτητη.

Για την κατασκευή του πλαισίου και της θήκης των ηχείων θα χρειαστείτε πρόσβαση σε έναν εκτυπωτή 3D.

Βήμα 3: Υλικό Telltale

Υλικό Telltale
Υλικό Telltale
Υλικό Telltale
Υλικό Telltale

Συναρμολογήστε το κύκλωμα σύμφωνα με τα παραπάνω διαγράμματα. Το Arduino Nano θα πρέπει να ευθυγραμμιστεί με την κορυφή του πρωτοπόρου. Αυτό σας επιτρέπει να έχετε πρόσβαση στη θύρα USB ακόμη και μετά τη σύνδεση όλων των ηλεκτρονικών.

Για να αποφύγετε βραχυκύκλωμα των ηλεκτρονικών, φροντίστε να κόψετε τα ίχνη του πρωτοπόρου στις σειρές που θα καταλάβει το nRF24 όπως φαίνεται στην παραπάνω εικόνα.

Διαφορετικά, θα χρειαστείτε καλώδια jumper για να συνδέσετε το nRF24 με το protoboard.

Η σύνδεση αντίστασης, τα καλώδια GND και 5V στο διακόπτη φωτογραφίας δεν απεικονίζονται. Συνδέστε το διακόπτη φωτογραφιών, όπως υποδεικνύεται στον πίνακα διάσπασης. Περιλαμβάνεται μια εικόνα του πίνακα breakout.

Τα κυκλώματα για τα δεξιά και τα αριστερά ενδεικτικά είναι ακριβώς τα ίδια.

Βήμα 4: Λογισμικό Telltale

Εδώ είναι ο κώδικας για το Right telltale. Συνδέστε το νανο του Right telltale στον υπολογιστή σας, ανοίξτε το Arduino IDE, αντιγράψτε και επικολλήστε αυτόν τον κώδικα σε αυτόν και ανεβάστε τον στον πίνακα.

/** Πρόγραμμα που χρησιμοποιεί photogate για να εξετάσει το αφήγημα

*/ #include #include #include #include RF24 radio (9, 10). // CE, CSN διεύθυνση byte [6] = "00010"; // --- πρόγραμμα consts --- // time const int string_check_time = 1; const int flow_check_time = 30; const int base_delay = 5; const int flow_check_delay = 0; const int GATE_PIN = 6; const int GATE_PIN_2 = 7; const int max_when_testing = flow_check_time * 0,6; // ορίστε το var παραπάνω με βάση τις δικές σας πειραματικές δοκιμές const int max_in_flow = min (max_when_testing, int (flow_check_time/string_check_time)); const int msg_max_val = 9; // const int string_thresh = 20; #define STRING_THRESH 0.2 // --- πρόγραμμα vars --- int num_string_seen = 0; int num_loops = 0; void setup () {// while (! Serial); // για τη χλωρίδα // καθυστέρηση (500); num_string_seen = 0; num_loops = 0; pinMode (GATE_PIN, INPUT); pinMode (GATE_PIN_2, ΕΙΣΟΔΟΣ); Serial.begin (115200); // για εντοπισμό σφαλμάτων radio.begin (); radio.openWritingPipe (διεύθυνση); radio.setPALevel (RF24_PA_MIN); radio.stopListening (); } void loop () {// βάλτε τον κύριο κωδικό σας εδώ, για να εκτελείται επανειλημμένα: if (num_loops % string_check_time == 0) {// ελέγξτε την κατάσταση συμβολοσειράς check_string (); } if (num_loops == flow_check_time) {// εξετάστε τη ροή //Serial.println(num_string_seen); int flow_num = εξετάστε τη ροή (); // αποστολή τιμών send_out (flow_num); // επαναφορά vars num_string_seen = 0; num_loops = 0; καθυστέρηση (flow_check_delay)? } num_loops ++; καθυστέρηση (βασική_ καθυστέρηση)? } / * *Μέθοδος ελέγχου εάν η συμβολοσειρά διασχίζει την πύλη * / void check_string () {int string_state = digitalRead (GATE_PIN); //Serial.println(string_state); εάν (string_state == 0) {num_string_seen ++; //Serial.println("Πριόχορτο! "); }

int bot_state = digitalRead (GATE_PIN_2);

εάν (bot_state == 0) {num_string_seen--; //Serial.println("string στο κάτω μέρος! "); } //Serial.print("Προσφορά συμβολοσειράς: "); //Serial.println(num_string_seen); ΕΠΙΣΤΡΟΦΗ; }/ * * Μέθοδος ανάλυσης του κλάσματος της χρονικής συμβολοσειράς που κάλυψε την πύλη */int exam_flow () {double percent_seen = double (num_string_seen)/max_in_flow; Serial.print ("Το ποσοστό καλύπτεται:"); printDouble (ποσοστιαία_προβολή, 100); // κλιμάκωση της τιμής στην κλίμακα επικοινωνίας int scaled_flow = int (ποσοστιαία προβολή * msg_max_val); if (scaled_flow> msg_max_val) {scaled_flow = msg_max_val? } if (scaled_flow = 0) frac = (val - int (val)) * ακρίβεια; else frac = (int (val)- val) * ακρίβεια? Serial.println (frac, DEC); }

Εδώ είναι ο κώδικας για το αριστερό ενδεικτικό. Ακολουθήστε τα ίδια βήματα όπως παραπάνω για το αριστερό ενδεικτικό. Όπως μπορείτε να δείτε, η μόνη διαφορά είναι η διεύθυνση στην οποία αποστέλλει τα αποτελέσματά του το ενδεικτικό.

/** Πρόγραμμα που χρησιμοποιεί photogate για να εξετάσει το αφήγημα

*/ #include #include #include #include RF24 radio (9, 10). // CE, CSN διεύθυνση byte [6] = "00001"; // --- πρόγραμμα consts --- // time const int string_check_time = 1; const int flow_check_time = 30; const int base_delay = 5; const int flow_check_delay = 0; const int GATE_PIN = 6; const int GATE_PIN_2 = 7; const int max_when_testing = flow_check_time * 0,6; // ορίστε το var παραπάνω με βάση τις δικές σας πειραματικές δοκιμές const int max_in_flow = min (max_when_testing, int (flow_check_time/string_check_time)); const int msg_max_val = 9; // const int string_thresh = 20; #define STRING_THRESH 0.2 // --- πρόγραμμα vars --- int num_string_seen = 0; int num_loops = 0; void setup () {// while (! Serial); // για τη χλωρίδα // καθυστέρηση (500); num_string_seen = 0; num_loops = 0;

pinMode (GATE_PIN, INPUT);

pinMode (GATE_PIN_2, ΕΙΣΟΔΟΣ); Serial.begin (115200); // για τον εντοπισμό σφαλμάτων radio.begin (); radio.openWritingPipe (διεύθυνση); radio.setPALevel (RF24_PA_MIN); radio.stopListening (); } void loop () {// βάλτε τον κύριο κωδικό σας εδώ, για να εκτελείται επανειλημμένα: if (num_loops % string_check_time == 0) {// ελέγξτε την κατάσταση συμβολοσειράς check_string (); } if (num_loops == flow_check_time) {// εξετάστε τη ροή //Serial.println(num_string_seen); int flow_num = εξετάστε τη ροή (); // αποστολή τιμών send_out (flow_num); // επαναφορά vars num_string_seen = 0; num_loops = 0; καθυστέρηση (flow_check_delay)? } num_loops ++; καθυστέρηση (βασική_ καθυστέρηση)? } / * *Μέθοδος ελέγχου εάν η συμβολοσειρά διασχίζει την πύλη * / void check_string () {int string_state = digitalRead (GATE_PIN); //Serial.println(string_state); εάν (string_state == 0) {num_string_seen ++; //Serial.println("Πριόχορτο! "); }

int bot_state = digitalRead (GATE_PIN_2);

εάν (bot_state == 0) {num_string_seen--; //Serial.println("string στο κάτω μέρος! "); } //Serial.print("Προσφορά συμβολοσειράς: "); //Serial.println(num_string_seen); ΕΠΙΣΤΡΟΦΗ; }/ * * Μέθοδος ανάλυσης του κλάσματος της χρονικής συμβολοσειράς που κάλυψε την πύλη */int exam_flow () {double percent_seen = double (num_string_seen)/max_in_flow; Serial.print ("Το ποσοστό καλύπτεται:"); printDouble (ποσοστιαία_προβολή, 100); // κλιμακώστε την τιμή σε κλίμακα επικοινωνίας int scaled_flow = int (ποσοστιαία προβολή * msg_max_val); if (scaled_flow> msg_max_val) {scaled_flow = msg_max_val? } if (scaled_flow = 0) frac = (val - int (val)) * ακρίβεια; else frac = (int (val)- val) * ακρίβεια; Serial.println (frac, DEC); }

Βήμα 5: Συνέλευση Telltale

Συνέλευση Telltale
Συνέλευση Telltale

Ατομικά μέρη

  • Πλαίσιο αφήγησης
  • Νήμα
  • Κατασκευασμένο κύκλωμα αφήγησης
  • Μπαταρία
  • Ηλεκτρική ταινία
  • Εποξειδική ή κόλλα

STL για τρισδιάστατη εκτύπωση προειδοποιητικών στοιχείων

  • STL για ενδεικτικό πλαίσιο: αριστερά, δεξιά
  • STL για κουτί ηλεκτρονικών: επάνω, κάτω

Οδηγίες συναρμολόγησης

  1. Τοποθετήστε μαγνήτες ράβδων στις υποδοχές του τρισδιάστατου τυπωμένου πλαισίου αφήγησης. Βεβαιωθείτε ότι οι μαγνήτες ευθυγραμμίζονται σωστά μεταξύ του δεξιού πλαισίου και του αριστερού πλαισίου και, στη συνέχεια, χρησιμοποιήστε εποξειδική (ή κόλλα) για να στερεώσετε τους μαγνήτες στο πλαίσιο. Αφήστε την εποξική (ή την κόλλα) να σταθεροποιηθεί εντελώς.
  2. Τοποθετήστε τους διακόπτες φωτογραφιών στην επάνω και κάτω υποδοχή στο πίσω μέρος του πλαισίου. Εποξειδώστε (ή κολλήστε) προσεκτικά τους πίνακες διακόπτη φωτογραφιών στο πλαίσιο. Αφήστε την εποξική (ή την κόλλα) να σταθεροποιηθεί εντελώς
  3. Κόψτε ένα ~ 7 σε κομμάτι νήματος. Δέστε το ένα άκρο του νήματος στην εγκοπή της πρώτης κάθετης ράβδου. Κόψτε ένα μικρό κομμάτι ηλεκτρικής ταινίας και τυλίξτε την ηλεκτρική ταινία στο τμήμα του νήματος που θα βρίσκεται στην περιοχή των διακοπτών φωτογραφίας. Περάστε το νήμα μέσα από το πλαίσιο έτσι ώστε να περάσει από το κενό της πύλης διακόπτη φωτογραφιών.
  4. Τοποθετήστε μαγνήτες ράβδων στις υποδοχές του τρισδιάστατου τυπωμένου ηλεκτρονικού κουτιού στο κάτω μέρος. Βεβαιωθείτε ότι οι μαγνήτες ευθυγραμμίζονται σωστά μεταξύ του δεξιού και του αριστερού κουτιού και, στη συνέχεια, χρησιμοποιήστε εποξειδική (ή κόλλα) για να στερεώσετε τους μαγνήτες στο πλαίσιο. Αφήστε την εποξική (ή την κόλλα) να σταθεροποιηθεί εντελώς.
  5. Τοποθετήστε το κατασκευασμένο κύκλωμα ενδείξεων στο κιβώτιο ηλεκτρονικών, ευθυγραμμίζοντας τα διαφορετικά εξαρτήματα στις υποδοχές τους. Κλείστε το κουτί με την τρισδιάστατη εκτυπωμένη ηλεκτρονική κορυφή του κουτιού. Εποξείστε (ή κολλήστε) τη μπαταρία στο επάνω μέρος του κουτιού, έτσι ώστε ο διακόπτης να είναι εκτεθειμένος.

Βήμα 6: Υλικό ηχείων

Υλικό ηχείων
Υλικό ηχείων
Υλικό ηχείων
Υλικό ηχείων
Υλικό ηχείων
Υλικό ηχείων

Το σύστημα εξόδου αποτελείται από δύο κυκλώματα ηχείων, ένα για κάθε ενδεικτικό, εξοπλισμένο με ασύρματη επικοινωνία και κουμπί ρύθμισης της έντασης. Αρχικά, προετοιμάστε τα πρωτόκολλα για χρήση με τις μονάδες nRF24L01 όπως κάναμε για τα κυκλώματα ενδεικτικών κοπών, κόβοντας τους αγωγούς διαχωρίζοντας τις δύο σειρές ακίδων όπου θα τοποθετηθεί ο πίνακας.

Στη συνέχεια, συναρμολογήστε το κύκλωμα όπως φαίνεται στο παραπάνω διάγραμμα ενώ αναφέρεστε στις φωτογραφίες των ολοκληρωμένων κυκλωμάτων.

Οδηγίες συναρμολόγησης του Διοικητικού Συμβουλίου

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

  1. Το Arduino Nano πρέπει να τοποθετηθεί στο επάνω άκρο της σανίδας στο κέντρο, έτσι ώστε ο πείρος Vin να είναι τοποθετημένος στο G16. Αυτό θα επιτρέψει τον εύκολο επαναπρογραμματισμό του Arduino Nano μετά τη συναρμολόγηση του κυκλώματος.
  2. Ο πίνακας nRF24L01 πρέπει να τοποθετηθεί στην κάτω δεξιά γωνία του πίνακα που εκτείνεται στις οκτώ θέσεις από C1 έως D5. Αυτό θα αφήσει το nRF24L01 να κρέμεται από το πρωτόκολλο για καλύτερη ασύρματη επικοινωνία.
  3. Το πακέτο μπαταριών για το σύστημα ηχείων τροφοδοτεί και τα δύο πρωτοσκόπια, οπότε φροντίστε να συνδέσετε τις δύο ράγες/καρφίτσες GND του Arduino Nano και τις καρφίτσες Vin στο τροφοδοτικό.
  4. Για το κύκλωμα «κάτω», το ποτενσιόμετρο θα πρέπει να τοποθετηθεί στην κορυφή της σανίδας προς τα έξω, έτσι ώστε οι ακίδες του να τοποθετούνται στις θέσεις J2, J4 και J6

    1. Έξοδος J2 ↔ Arduino Nano από ψηφιακή ακίδα 3 (D3)
    2. Πείρος βάσης J4 trans του τρανζίστορ 2N3904
    3. J6 ↔ χωρίς σύνδεση
  5. Για το κύκλωμα «πάνω», το ποτενσιόμετρο πρέπει να τοποθετηθεί στο κάτω μέρος της σανίδας προς τα έξω, έτσι ώστε οι ακίδες του να τοποθετούνται στις θέσεις J9, J11 και J13

    1. J13 ↔ Arduino Nano έξοδος από την ψηφιακή ακίδα 3 (D3)
    2. J11 pin ακίδα βάσης του τρανζίστορ 2N3904
    3. J9 ↔ χωρίς σύνδεση

Βήμα 7: Λογισμικό ηχείων

Ακολουθεί ο κωδικός για το ηχείο που επικοινωνεί με το αριστερό ενδεικτικό. Συνδέστε το Arduino Nano στην κάτω πλακέτα ηχείων στον υπολογιστή σας, ανοίξτε το Arduino IDE, αντιγράψτε και επικολλήστε αυτόν τον κώδικα και ανεβάστε τον στον πίνακα.

#περιλαμβάνω

#include #include RF24 radio (7, 8)? // CE, CSN // αριστερή προειδοποίηση, κορυφαία πλακέτα ηχείων const byte διεύθυνση [6] = "00001"; const int pitch = 2000; const int pitch_duration = 200; const int ηχείο = 3; const int delay_gain = 100; int κατάσταση = 0; int cur_delay = 0; char read [2]; void setup () {pinMode (ηχείο, OUTPUT); Serial.begin (115200); Serial.println ("Έναρξη ασύρματης επικοινωνίας …"); radio.begin (); radio.openReadingPipe (0, διεύθυνση); radio.setPALevel (RF24_PA_MIN); radio.startListening (); } void loop () {if (radio.available ()) {radio.read (& read, sizeof (read)); κατάσταση = (int) (διαβάστε [0]-'0'); Serial.print ("Λάβετε:"); Serial.println (κατάσταση); cur_delay = delay_gain*status? } if (cur_delay) {tone (ηχείο, βήμα, βήμα pitch_duration); καθυστέρηση (cur_delay + pitch_duration)? Serial.println ("Μπιπ!"); }}

Ακολουθεί ο κώδικας για το ηχείο που επικοινωνεί με το σωστό ενδεικτικό. Συνδέστε το Arduino Nano στην επάνω πλακέτα ηχείων στον υπολογιστή σας, ανοίξτε το Arduino IDE, αντιγράψτε και επικολλήστε αυτόν τον κώδικα και ανεβάστε τον στον πίνακα.

#περιλαμβάνω

#include #include RF24 radio (7, 8)? // CE, CSN // δεξιό ενδεικτικό, κάτω πίνακα ηχείων const byte διεύθυνση [6] = "00010"; const int pitch = 1500; const int pitch_duration = 200; const int ηχείο = 3; const int delay_gain = 100; int κατάσταση = 0; int cur_delay = 0; char read [2]; void setup () {pinMode (ηχείο, OUTPUT); Serial.begin (115200); Serial.println ("Έναρξη ασύρματης επικοινωνίας …"); radio.begin (); radio.openReadingPipe (0, διεύθυνση); radio.setPALevel (RF24_PA_MIN); radio.startListening (); } void loop () {if (radio.available ()) {radio.read (& read, sizeof (read)); κατάσταση = (int) (διαβάστε [0]-'0'); Serial.print ("Λάβετε:"); Serial.println (κατάσταση); cur_delay = delay_gain*status? } if (cur_delay) {tone (ηχείο, βήμα, βήμα pitch_duration); καθυστέρηση (cur_delay+pitch_duration)? Serial.println ("Μπιπ!"); }}

Βήμα 8: Συνέλευση ομιλητών

Ατομικά μέρη

  • 2 κατασκευασμένα κυκλώματα ηχείων
  • 2 ηχεία
  • 1 μπαταρία

STL για τρισδιάστατη εκτύπωση

  • Κορυφή κουτιού
  • Κάτω κουτί

Οδηγίες φυσικής συναρμολόγησης

  1. Τοποθετήστε προσεκτικά τα κυκλώματα των ηχείων στο κάτω μέρος του κιβωτίου, η μία πλακέτα πάνω στην άλλη, έτσι ώστε τα κουμπιά έντασης να είναι το ένα δίπλα στο άλλο και να γλιστρούν στις οπές. Τα τσιπ επικοινωνίας πρέπει να εκτίθενται στο πίσω μέρος του κουτιού.
  2. Τοποθετήστε τα ηχεία αριστερά και δεξιά της πλακέτας κυκλώματος, βεβαιωθείτε ότι τα ηχεία αντιστοιχούν στις σωστές πλευρικές ενδείξεις. Ευθυγραμμίστε τα ηχεία στις υποδοχές στις πλευρές του κουτιού.
  3. Τροφοδοτήστε τα καλώδια της μπαταρίας μέσω της μικρής οπής στο πίσω μέρος του κουτιού. Εποξειδικά (ή κολλήστε) την μπαταρία στο πίσω μέρος του κουτιού έτσι ώστε ο διακόπτης να είναι εκτεθειμένος.
  4. Τοποθετήστε το τρισδιάστατο εκτυπωμένο κουτί πάνω από το κάτω μέρος του κουτιού για να περιέχει τα πάντα.

Βήμα 9: Ρύθμιση/τοποθέτηση

Ρύθμιση/τοποθέτηση
Ρύθμιση/τοποθέτηση
  1. Ενεργοποιήστε τις ενδεικτικές λυχνίες γυρίζοντας τους διακόπτες στις μπαταρίες στη θέση "ON". Κάντε το ίδιο για τη διάταξη ηχείων για να ενεργοποιήσετε το σύστημα εξόδου.
  2. Η τοποθέτηση ηχητικών εντύπων γίνεται πιο εύκολα με δύο άτομα, αλλά μπορεί να γίνει με ένα. Για τοποθέτηση σε ένα τζάμπα που δεν στριφογυρίζει, τα πλεκτά θα φορούνταν πολύ πιο εύκολα πριν σηκώσουν το πανί.
  3. Για να βεβαιωθείτε ότι το πλαίσιο αφήγησης είναι σωστά προσανατολισμένο, κοιτάξτε την εγκοπή σε μία από τις κάθετες ράβδους. Όταν κρατάτε το πλαίσιο όρθιο, η εγκοπή πρέπει να είναι προς την κορυφή. Η πλευρά του πλαισίου με αυτήν τη ράβδο πρέπει επίσης να βλέπει προς το μπροστινό μέρος του σκάφους.
  4. Τοποθετήστε ένα από τα παραμύθια στο επιθυμητό ύψος και θέση στο πανί. Θα πρέπει να τοποθετηθεί έτσι ώστε το νήμα να βρίσκεται στην ίδια θέση που θα ήταν αν ήταν μέρος ενός παραδοσιακού παραμυθιού.
  5. Μόλις έχετε ένα παραμύθι στην επιθυμητή θέση. Τοποθετήστε το άλλο παραμύθι στην άλλη πλευρά του πανιού, ακριβώς απέναντι από το πρώτο που τοποθετήσατε, έτσι ώστε οι μαγνήτες να ευθυγραμμιστούν. Μόλις οι μαγνήτες κάνουν μια σύνδεση θα πρέπει να συγκρατούν το πλαίσιο με ασφάλεια στο πανί. Ευθυγραμμίστε τους μαγνήτες των ηλεκτρονικών περιβλημάτων, για κάθε παραμύθι εκατέρωθεν του πανιού, έτσι ώστε να συνδέονται επίσης.
  6. Εάν παρατηρήσετε ότι όταν η χορδή ρέει ευθεία προς τα πίσω δεν διασχίζει μπροστά από την επάνω πύλη, περιστρέψτε το πλαίσιο παραμυθιού έτσι ώστε το πίσω μισό του πλαισίου να κατευθύνεται προς τα κάτω. Περιστρέψτε το πλαίσιο έως ότου η συμβολοσειρά περάσει από τον επάνω διακόπτη φωτογραφιών όταν το νήμα ρέει ευθεία προς τα πίσω.

Βήμα 10: Αντιμετώπιση προβλημάτων

Όλα τα κομμάτια κώδικα έχουν εντολές εκτύπωσης εντοπισμού σφαλμάτων για να δηλώσουν ότι στέλνουν, λαμβάνουν και επεξεργάζονται δεδομένα. Το άνοιγμα της θύρας COM χρησιμοποιώντας το Arduino IDE με ένα από τα υποσυστήματα Arduino Nano συνδεδεμένο σε έναν υπολογιστή θα σας επιτρέψει να δείτε αυτά τα μηνύματα κατάστασης.

Εάν το σύστημα δεν λειτουργεί σωστά, αλλάξτε τους διακόπτες σε όλα τα εξαρτήματα.

Βήμα 11: Πιθανά επόμενα βήματα

  • Στεγανοποίηση
  • Μεγαλύτερη εμβέλεια επικοινωνίας. Το WiFi είναι μια πολλά υποσχόμενη επιλογή.
  • Η τρέχουσα ρύθμιση χρησιμοποιεί επί του παρόντος 2 διακόπτες φωτογραφιών ανά ενδεικτικό. Η προσθήκη περισσότερων διακοπτών φωτογραφιών στο σύστημα θα μπορούσε να είναι ενδιαφέρουσα.

Συνιστάται: