สารบัญ:

นิทานเสียงสำหรับการเดินเรือ: 11 ขั้นตอน
นิทานเสียงสำหรับการเดินเรือ: 11 ขั้นตอน

วีดีโอ: นิทานเสียงสำหรับการเดินเรือ: 11 ขั้นตอน

วีดีโอ: นิทานเสียงสำหรับการเดินเรือ: 11 ขั้นตอน
วีดีโอ: มักกะลีผล บทที่ 11 - 20 เสียงโดยเพ็ญศรี อินทรทัต 2024, กรกฎาคม
Anonim
Image
Image
ฮาร์ดแวร์ปากโป้ง
ฮาร์ดแวร์ปากโป้ง

ปากโป้งเป็นชิ้นส่วนของเชือกที่ใช้ในการแล่นเรือเพื่อระบุว่ามีกระแสน้ำเชี่ยวกรากหรือเป็นชั้น ๆ ข้ามใบเรือหรือไม่ อย่างไรก็ตาม เส้นด้ายสีต่างๆ ที่ติดอยู่ที่ด้านข้างของใบเรือแต่ละข้างเป็นตัวบ่งชี้ที่มองเห็นได้อย่างชัดเจน คำพูดที่ได้ยินเหล่านี้เป็นอุปกรณ์ช่วยเหลือที่มีจุดมุ่งหมายเพื่อสื่อสารข้อมูลภาพในรูปแบบการได้ยินสำหรับลูกเรือทั้งที่มองเห็นและมีความบกพร่องทางสายตาเช่น Pauline

อุปกรณ์ประกอบด้วยระบบอินพุต ซึ่งอ่านการเคลื่อนไหวของปากโป้ง และระบบส่งออก ซึ่งส่งเสียงบี๊บเป็นชุดเพื่อถ่ายทอดข้อมูลการไหลของอากาศ

จำเป็นต้องมีการเข้าถึงอุปกรณ์บัดกรีและเครื่องพิมพ์ 3 มิติในการผลิตอุปกรณ์นี้

ขั้นตอนที่ 1: รายการวัสดุ

BOM พร้อมลิงค์และราคา

หมายเหตุ: คุณจะต้องมี 2 ชุดต่อไปนี้ทั้งหมด

ระบบอินพุต

  • Arduino นาโน
  • Adafruit perma-proto เขียงหั่นขนมครึ่งขนาด PCB
  • โมดูลรับส่งสัญญาณไร้สาย nRF24L01
  • ผู้ขัดขวางรูปภาพ
  • Sparkfun Photo Interrupter กระดานฝ่าวงล้อม
  • ชุดแบตเตอรี่ 9V ที่เข้ากันได้กับ Arduino
  • แบตเตอรี่ 9V
  • ลวด 22 เกจหลายเส้น
  • เส้นด้าย
  • แม่เหล็กนีโอไดเมีย
  • อีพ็อกซี่

ระบบเอาท์พุต

  • Arduino นาโน
  • Adafruit perma-proto เขียงหั่นขนมครึ่งขนาด PCB
  • nRF24L01 โมดูลเครื่องรับส่งสัญญาณไร้สาย
  • ชุดแบตเตอรี่ 9V ที่เข้ากันได้กับ Arduino
  • โพเทนชิโอมิเตอร์ 1K โอห์ม
  • ตัวต้านทาน 120 โอห์ม
  • 2N3904 ทรานซิสเตอร์
  • ตัวเก็บประจุ 0.1 ยูเอฟ
  • ลำโพงที่รองรับ Arduino

ไฟล์ GitHub

  • โค้ดและไฟล์ STL ทั้งหมดที่จำเป็นในการสร้างคำบอกเล่าเหล่านี้มีอยู่ใน repo GitHub นี้
  • คุณจะต้องมีกล่องหุ้มสองชุดและกล่องลำโพงหนึ่งชุด

ขั้นตอนที่ 2: ข้อกำหนดของเครื่องมือ/เครื่องจักร/ซอฟต์แวร์

ในการเขียนโปรแกรม Arduino คุณจะต้องดาวน์โหลด Arduino IDE ลิงค์ดาวน์โหลดสามารถพบได้ที่นี่

ในการตั้งโปรแกรมโมดูล nRF24L01 คุณจะต้องดาวน์โหลดไลบรารีผ่าน Arduino IDE เครื่องมือ > จัดการไลบรารี… > ติดตั้งไลบรารี RF24

ในการประกอบชิ้นส่วนอิเล็กทรอนิกส์จำเป็นต้องเข้าถึงเครื่องมือบัดกรีพื้นฐาน ปั๊ม desoldering อาจมีประโยชน์เช่นกัน แต่ไม่จำเป็น

ในการสร้างกรอบเล่าเรื่องและกล่องลำโพง คุณจะต้องเข้าถึงเครื่องพิมพ์ 3 มิติ

ขั้นตอนที่ 3: ฮาร์ดแวร์ปากโป้ง

ฮาร์ดแวร์ปากโป้ง
ฮาร์ดแวร์ปากโป้ง
ฮาร์ดแวร์ปากโป้ง
ฮาร์ดแวร์ปากโป้ง

ประกอบวงจรตามแผนภาพด้านบน Arduino Nano ควรอยู่ในแนวเดียวกับด้านบนของโปรโตบอร์ด ซึ่งช่วยให้คุณเข้าถึงพอร์ต USB ได้แม้หลังจากต่ออุปกรณ์อิเล็กทรอนิกส์ทั้งหมดแล้ว

เพื่อหลีกเลี่ยงไม่ให้อุปกรณ์อิเล็กทรอนิกส์ลัดวงจร ตรวจสอบให้แน่ใจว่าได้ตัดร่องรอยของโปรโตบอร์ดบนแถวที่ nRF24 จะครอบครองตามที่แสดงในภาพด้านบน

มิฉะนั้น คุณจะต้องใช้สายจัมเปอร์เพื่อเชื่อมต่อ nRF24 กับโปรโตบอร์ด

การเชื่อมต่อตัวต้านทาน, สาย GND และ 5V กับตัวขัดขวางภาพถ่ายจะไม่ถูกแสดง ต่อสายผู้ขัดขวางรูปภาพตามที่ระบุไว้บนกระดานฝ่าวงล้อม รวมรูปภาพของกระดานฝ่าวงล้อม

วงจรสำหรับปากโป้งด้านขวาและด้านซ้ายเหมือนกันทุกประการ

ขั้นตอนที่ 4: ซอฟต์แวร์ปากโป้ง

นี่คือรหัสสำหรับปากโป้งที่ถูกต้อง เชื่อมต่อ nano ของปากโป้งที่ถูกต้องกับคอมพิวเตอร์ของคุณ เปิด Arduino IDE คัดลอกและวางโค้ดนี้ลงในนั้น แล้วอัปโหลดไปยังบอร์ด

/**โปรแกรมที่ใช้โฟโตเกตตรวจสอบการเล่าเรื่อง

*/ #include #include #include #include RF24 วิทยุ(9, 10); // CE, CSN const ไบต์แอดเดรส[6] = "00010"; //---โปรแกรม consts--- //เวลา const int string_check_time = 1; const int flow_check_time = 30; const int base_delay = 5; const int flow_check_delay = 0; ค่าคงที่ GATE_PIN = 6; ค่าคงที่ 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; การตั้งค่าเป็นโมฆะ () { // ในขณะที่ (! Serial); // สำหรับฟลอรา // ล่าช้า (500); num_string_seen = 0; num_loops = 0; โหมดพิน (GATE_PIN, INPUT); โหมดพิน (GATE_PIN_2, INPUT); Serial.begin(115200); // สำหรับการดีบัก radio.begin(); radio.openWritingPipe (ที่อยู่); วิทยุ.setPALevel(RF24_PA_MIN); radio.stopListening(); } void loop() { // ใส่รหัสหลักของคุณที่นี่ เพื่อเรียกใช้ซ้ำ: if(num_loops % string_check_time == 0){ //check string state check_string(); } if (num_loops == flow_check_time) { // ตรวจสอบการไหล //Serial.println (num_string_seen); int flow_num = ตรวจสอบ_flow(); //ส่งค่า send_out(flow_num); // รีเซ็ต vars num_string_seen = 0; num_loops = 0; ล่าช้า (flow_check_delay); } num_loops++; ล่าช้า(base_delay); } /* *วิธีการตรวจสอบว่า string ข้าม gate หรือไม่ */ void check_string(){ int string_state = digitalRead(GATE_PIN); //Serial.println(string_state); //อนุกรม.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("สตริงอยู่ด้านล่าง!"); } //Serial.print("การนับสตริงผ่าน: "); //Serial.println(num_string_seen); //อนุกรม.println(num_string_seen); กลับ; } /* * วิธีวิเคราะห์เศษส่วนของเวลาที่ครอบคลุมประตู */ int ตรวจสอบ_flow(){ double เปอร์เซ็นต์_seen = double(num_string_seen)/max_in_flow; Serial.print("เปอร์เซ็นต์ที่ครอบคลุม: "); printDouble(percent_seen, 100); // ปรับขนาดเป็นขนาดการสื่อสาร int scaled_flow = int (percent_seen * msg_max_val); ถ้า (scaled_flow > msg_max_val) { scaled_flow = msg_max_val; } if(scaled_flow = 0) frac = (val - int(val)) * ความแม่นยำ; อื่น frac = (int(val)- val) * ความแม่นยำ; Serial.println(frac, ธ.ค.); }

นี่คือรหัสสำหรับปากโป้งด้านซ้าย ทำตามขั้นตอนเดียวกับด้านบนสำหรับปากโป้งด้านซ้าย อย่างที่คุณเห็น ข้อแตกต่างเพียงอย่างเดียวคือที่อยู่ที่ผู้ปากโป้งส่งผลลัพธ์

/**โปรแกรมที่ใช้โฟโตเกตตรวจสอบการเล่าเรื่อง

*/ #include #include #include #include RF24 วิทยุ(9, 10); // CE, CSN const ไบต์แอดเดรส[6] = "00001"; //---โปรแกรม consts--- //เวลา const int string_check_time = 1; const int flow_check_time = 30; const int base_delay = 5; const int flow_check_delay = 0; ค่าคงที่ GATE_PIN = 6; ค่าคงที่ 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; การตั้งค่าเป็นโมฆะ () { // ในขณะที่ (! Serial); // สำหรับฟลอรา // ล่าช้า (500); num_string_seen = 0; num_loops = 0;

โหมดพิน (GATE_PIN, INPUT);

โหมดพิน (GATE_PIN_2, INPUT); Serial.begin(115200); // สำหรับการดีบัก radio.begin(); radio.openWritingPipe (ที่อยู่); วิทยุ.setPALevel(RF24_PA_MIN); radio.stopListening(); }void loop() { // ใส่รหัสหลักของคุณที่นี่ เพื่อเรียกใช้ซ้ำ: if(num_loops % string_check_time == 0){ //check string state check_string(); } if (num_loops == flow_check_time) { // ตรวจสอบการไหล //Serial.println (num_string_seen); int flow_num = ตรวจสอบ_flow(); //ส่งค่า send_out(flow_num); // รีเซ็ต vars num_string_seen = 0; num_loops = 0; ล่าช้า (flow_check_delay); } num_loops++; ล่าช้า(base_delay); } /* *วิธีการตรวจสอบว่า string ข้าม gate หรือไม่ */ void check_string(){ int string_state = digitalRead(GATE_PIN); //Serial.println(string_state); //อนุกรม.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("สตริงอยู่ด้านล่าง!"); } //Serial.print("การนับสตริงผ่าน: "); //Serial.println(num_string_seen); //อนุกรม.println(num_string_seen); กลับ; } /* * วิธีวิเคราะห์เศษส่วนของเวลาที่ครอบคลุมประตู */ int ตรวจสอบ_flow(){ double เปอร์เซ็นต์_seen = double(num_string_seen)/max_in_flow; Serial.print("เปอร์เซ็นต์ที่ครอบคลุม: "); printDouble(percent_seen, 100); // ปรับขนาดเป็นขนาดการสื่อสาร int scaled_flow = int (percent_seen * msg_max_val); ถ้า (scaled_flow > msg_max_val) { scaled_flow = msg_max_val; } if(scaled_flow = 0) frac = (val - int(val)) * ความแม่นยำ; อื่น frac = (int(val)- val) * ความแม่นยำ; Serial.println(frac, ธ.ค.); }

ขั้นตอนที่ 5: การประกอบปากโป้ง

การประกอบปากโป้ง
การประกอบปากโป้ง

ชิ้นส่วนส่วนบุคคล

  • กรอบปากโป้ง
  • เส้นด้าย
  • สร้างวงจรปากโป้ง
  • ก้อนแบตเตอรี่
  • เทปพันสายไฟ
  • อีพ็อกซี่หรือกาว

STL สำหรับส่วนประกอบปากโป้งการพิมพ์ 3 มิติ

  • STL สำหรับกรอบปากโป้ง: ซ้าย, ขวา
  • STLs สำหรับกล่องอิเล็กทรอนิกส์: บน, ล่าง

คำแนะนำการชุมนุม

  1. วางแถบแม่เหล็กในช่องของกรอบปากโป้งที่พิมพ์ 3 มิติ ตรวจสอบให้แน่ใจว่าแม่เหล็กเรียงกันอย่างถูกต้องระหว่างกรอบด้านขวาและกรอบด้านซ้าย จากนั้นใช้อีพ็อกซี่ (หรือกาว) เพื่อยึดแม่เหล็กเข้ากับกรอบ ปล่อยให้อีพ็อกซี่ (หรือกาว) เซ็ตตัวให้สนิท
  2. วางตัวขัดขวางรูปภาพในช่องด้านบนและด้านล่างที่ด้านหลังของกรอบ อีพ็อกซี่อย่างระมัดระวัง (หรือกาว) แผงกั้นภาพถ่ายกับกรอบ ปล่อยให้อีพ็อกซี่ (หรือกาว) เซ็ตตัวให้สนิท
  3. ตัดเส้นด้าย ~7 เป็นชิ้น ผูกปลายด้านหนึ่งของเส้นด้ายที่รอยบากของแถบแนวตั้งแรก ตัดเทปไฟฟ้าชิ้นเล็ก ๆ แล้วพันเทปไฟฟ้าไว้เหนือส่วนของเส้นด้ายที่จะอยู่ในบริเวณที่ขัดขวางภาพถ่าย ร้อยเส้นด้ายผ่านกรอบเพื่อให้ผ่านช่องว่างของประตูผู้ขัดขวางภาพถ่าย
  4. วางแถบแม่เหล็กในช่องด้านล่างกล่องอิเล็กทรอนิกส์ที่พิมพ์ 3 มิติ ตรวจสอบให้แน่ใจว่าแม่เหล็กเรียงกันอย่างถูกต้องระหว่างกล่องด้านขวาและกล่องด้านซ้าย จากนั้นใช้อีพ็อกซี่ (หรือกาว) เพื่อยึดแม่เหล็กเข้ากับกรอบ ปล่อยให้อีพ็อกซี่ (หรือกาว) เซ็ตตัวให้สนิท
  5. วางวงจรปากโป้งที่สร้างขึ้นในกล่องอิเล็กทรอนิกส์ โดยจัดส่วนประกอบต่างๆ ให้เข้ากับช่องเสียบ ปิดกล่องด้วยกล่องอิเล็กทรอนิกส์ที่พิมพ์ 3 มิติด้านบน อีพ็อกซี่ (หรือกาว) ก้อนแบตเตอรี่ที่ด้านบนของกล่องเพื่อให้สวิตช์เปิดออก

ขั้นตอนที่ 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 ↔ พินฐานของทรานซิสเตอร์ 2N3904
    3. J6 ↔ ไม่เชื่อมต่อ
  5. สำหรับวงจร "ด้านบน" ควรวางโพเทนชิออมิเตอร์ที่ด้านล่างของบอร์ดโดยหันออกด้านนอก เพื่อให้หมุดอยู่ที่ตำแหน่ง J9, J11 และ J13

    1. J13 ↔ Arduino Nano เอาต์พุตจากพินดิจิตอล 3 (D3)
    2. J11 ↔ พินฐานของทรานซิสเตอร์ 2N3904
    3. J9 ↔ ไม่เชื่อมต่อ

ขั้นตอนที่ 7: ซอฟต์แวร์ลำโพง

นี่คือรหัสสำหรับผู้พูดที่สื่อสารกับปากโป้งด้านซ้าย เชื่อมต่อ Arduino Nano บนบอร์ดลำโพงด้านล่างกับคอมพิวเตอร์ เปิด Arduino IDE คัดลอกและวางโค้ดนี้ลงในนั้น แล้วอัปโหลดไปยังบอร์ด

#รวม

#include #include RF24 วิทยุ(7, 8); // CE, CSN // ปากโป้งซ้าย, ที่อยู่ไบต์ const ของบอร์ดลำโพงด้านบน[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; ถ่านอ่าน[2]; การตั้งค่าเป็นโมฆะ () { pinMode (ลำโพง, เอาต์พุต); Serial.begin(115200); Serial.println("กำลังเริ่มการสื่อสารไร้สาย…"); radio.begin(); radio.openReadingPipe(0, ที่อยู่); วิทยุ.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*; } if (cur_delay) { tone (ผู้พูด ระดับเสียง pitch_duration); ล่าช้า(cur_delay + pitch_duration); Serial.println("บี๊บ!"); } }

นี่คือรหัสสำหรับผู้พูดที่สื่อสารกับปากโป้งที่ถูกต้อง เชื่อมต่อ Arduino Nano บนบอร์ดลำโพงด้านบนกับคอมพิวเตอร์ของคุณ เปิด Arduino IDE คัดลอกและวางโค้ดนี้ลงไป แล้วอัปโหลดไปยังบอร์ด

#รวม

#include #include RF24 วิทยุ(7, 8); // CE, CSN // ปากโป้งด้านขวา, ที่อยู่ไบต์ const ของบอร์ดลำโพงด้านล่าง[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; ถ่านอ่าน[2]; การตั้งค่าเป็นโมฆะ () { pinMode (ลำโพง, เอาต์พุต); Serial.begin(115200); Serial.println("กำลังเริ่มการสื่อสารแบบไร้สาย…"); radio.begin(); radio.openReadingPipe(0, ที่อยู่); วิทยุ.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*; } if (cur_delay) { tone (ผู้พูด ระดับเสียง pitch_duration); ดีเลย์(cur_delay+pitch_duration); Serial.println("บี๊บ!"); } }

ขั้นตอนที่ 8: การประกอบลำโพง

ชิ้นส่วนส่วนบุคคล

  • 2 สร้างวงจรลำโพง
  • ลำโพง 2 ตัว
  • แบตเตอรี่ 1 ก้อน

STL สำหรับการพิมพ์ 3 มิติ

  • กล่องด้านบน
  • ก้นกล่อง

คำแนะนำการประกอบทางกายภาพ

  1. วางวงจรลำโพงไว้ด้านล่างของกล่องอย่างระมัดระวัง โดยให้แผงหนึ่งอยู่ด้านบนของอีกบอร์ดหนึ่ง โดยให้ปุ่มปรับระดับเสียงอยู่ติดกันและสอดเข้าไปในรู ควรเปิดชิปสื่อสารไว้ที่ด้านหลังกล่อง
  2. วางลำโพงไว้ทางด้านซ้ายและด้านขวาของแผงวงจร ตรวจสอบให้แน่ใจว่าลำโพงตรงกับด้านปากโป้งที่ถูกต้อง จัดตำแหน่งลำโพงให้ตรงกับช่องที่ด้านข้างของกล่อง
  3. ป้อนสายไฟของชุดแบตเตอรี่ผ่านรูเล็กๆ ที่ด้านหลังกล่อง อีพ็อกซี่ (หรือกาว) ก้อนแบตเตอรี่ที่ด้านหลังของกล่องเพื่อให้สวิตช์เปิดออก
  4. วางกล่องที่พิมพ์ 3 มิติไว้ด้านบนด้านล่างของกล่องเพื่อบรรจุทุกอย่าง

ขั้นตอนที่ 9: ตั้งค่า/ติดตั้ง

ตั้งค่า/ติดตั้ง
ตั้งค่า/ติดตั้ง
  1. เปิดปากโป้งโดยพลิกสวิตช์บนก้อนแบตเตอรี่ไปที่ตำแหน่ง 'เปิด' ทำเช่นเดียวกันกับชุดลำโพงเพื่อเปิดระบบเอาต์พุต
  2. การติดตั้งปากโป้งที่ได้ยินทำได้ง่ายที่สุดกับคนสองคน แต่สามารถทำได้ด้วยคนเดียว สำหรับการติดตั้งบนแขนจับที่ไม่บิดงอ จะสวมปากโปงได้ง่ายที่สุดก่อนที่จะยกใบเรือ
  3. เพื่อให้แน่ใจว่ากรอบการเล่าเรื่องอยู่ในแนวที่ถูกต้อง ให้ดูที่รอยบากบนแถบแนวตั้งอันใดอันหนึ่ง เมื่อตั้งโครงให้ตั้งตรง รอยบากควรอยู่ด้านบน ด้านข้างของโครงที่มีแถบนั้นควรหันไปทางด้านหน้าของเรือด้วย
  4. วางนิทานไว้ที่ความสูงและตำแหน่งที่ต้องการบนใบเรือ ควรจัดวางเส้นด้ายให้อยู่ในที่เดียวกันหากเป็นส่วนหนึ่งของนิทานพื้นบ้าน
  5. เมื่อคุณมีเรื่องเล่าในตำแหน่งที่ต้องการแล้ว วางเรื่องเล่าอีกด้านไว้อีกด้านหนึ่งของใบเรือ ตรงข้ามกับอันแรกที่คุณวางไว้ โดยให้แม่เหล็กเรียงกัน เมื่อแม่เหล็กทำการเชื่อมต่อแล้ว ก็ควรยึดโครงไว้กับใบเรืออย่างแน่นหนา จัดเรียงแม่เหล็กของกล่องหุ้มอุปกรณ์อิเล็กทรอนิกส์ สำหรับแต่ละเรื่องเล่าที่ด้านใดด้านหนึ่งของใบเรือ ให้เชื่อมต่อด้วย
  6. หากคุณสังเกตเห็นว่าเมื่อเชือกไหลตรงไปข้างหลัง เชือกนั้นไม่ตัดผ่านหน้าประตูด้านบน ให้หมุนกรอบเล่าเรื่องโดยให้ครึ่งหลังของกรอบก้มลง หมุนกรอบจนกว่าเชือกจะผ่านตัวขัดขวางภาพด้านบนเมื่อเส้นด้ายไหลย้อนกลับ

ขั้นตอนที่ 10: การแก้ไขปัญหา

โค้ดทุกชิ้นมีข้อความสั่งพิมพ์ดีบักเพื่อระบุว่ากำลังส่ง รับ และประมวลผลข้อมูล การเปิดพอร์ต COM โดยใช้ Arduino IDE โดยระบบย่อย Arduino Nano ตัวใดตัวหนึ่งที่เสียบอยู่ในคอมพิวเตอร์จะทำให้คุณสามารถดูข้อความสถานะเหล่านี้ได้

หากระบบทำงานไม่ถูกต้อง ให้สลับสวิตช์บนส่วนประกอบทั้งหมด

ขั้นตอนที่ 11: ขั้นตอนถัดไปที่เป็นไปได้

  • กันซึม
  • การสื่อสารช่วงที่ยาวขึ้น WiFi เป็นตัวเลือกที่น่าสนใจ
  • การตั้งค่าปัจจุบันของเราในปัจจุบันใช้ตัวขัดขวางภาพ 2 ภาพต่อปากโป้ง การเพิ่มตัวขัดขวางรูปภาพในระบบอาจน่าสนใจที่จะลอง

แนะนำ: