Სარჩევი:

მცურავი ზღაპრები მცურავისთვის: 11 ნაბიჯი
მცურავი ზღაპრები მცურავისთვის: 11 ნაბიჯი

ვიდეო: მცურავი ზღაპრები მცურავისთვის: 11 ნაბიჯი

ვიდეო: მცურავი ზღაპრები მცურავისთვის: 11 ნაბიჯი
ვიდეო: კუ და მორიელი - სულხან-საბა ორბელიანი, იგავარაკი ქართულად პატარებისთვის 2024, ივლისი
Anonim
Image
Image
Telltale აპარატურა
Telltale აპარატურა

ტელტალები ძაფის ნაჭრებია, რომლებიც ნაოსნობაში გამოიყენება იმის დასადგენად, არის თუ არა ტურბულენტური ან ლამინარული ნაკადი აფრის გასწვრივ. ამასთან, იალქნის თითოეულ მხარეს მიმაგრებული ძაფის სხვადასხვა ფერის ნაჭრები არის წმინდა ვიზუალური მაჩვენებლები. ეს მოსასმენი თხზულებები დამხმარე საშუალებაა, რომლის მიზანია ვიზუალური ინფორმაციის აუდიტორული ფორმით გადაცემა როგორც მხედველობით, ასევე მხედველობით დაქვეითებული მეზღვაურებისთვის, როგორიცაა პაულინი.

მოწყობილობა შედგება შეყვანის სისტემისგან, რომელიც კითხულობს თხრობის მოძრაობას და გამომავალ სისტემას, რომელიც გამოსცემს სიგნალების რიგს ჰაერის ნაკადის შესახებ ინფორმაციის გადასაცემად.

შედუღების მოწყობილობებზე და 3D პრინტერზე წვდომა საჭიროა ამ მოწყობილობის წარმოებაში.

ნაბიჯი 1: მასალების შედგენა

BOM ბმულებით და ფასებით

შენიშვნა: თქვენ დაგჭირდებათ ყველა ქვემოთ ჩამოთვლილი 2 კომპლექტი.

შეყვანის სისტემა

  • არდუინო ნანო
  • Adafruit perma-proto ნახევრად ზომის breadboard PCB
  • nRF24L01 უკაბელო გადამცემი მოდული
  • ფოტო interrupter
  • Sparkfun Photo Interrupter Breakout დაფა
  • Arduino თავსებადი 9V ბატარეის პაკეტი
  • 9 ვ ბატარეა
  • 22 სიგრძის მავთულის რამდენიმე სიგრძე
  • ნართი
  • ნეოდიმი მაგნიტები
  • ეპოქსიდური

გამოყვანის სისტემა

  • არდუინო ნანო
  • ადაფრუტის პერმა-პროტო ნახევრად ზომის პურის დაფა
  • nRF24L01 უკაბელო გადამცემი მოდული
  • Arduino თავსებადი 9V ბატარეის პაკეტი
  • 1K Ohm პოტენომეტრი
  • 120 Ohm რეზისტორი
  • 2N3904 ტრანზისტორი
  • 0.1 uF კონდენსატორი
  • Arduino თავსებადი სპიკერი

GitHub ფაილები

  • ყველა კოდი და STL ფაილი, რომელიც საჭიროა ამ თხზულების შესაქმნელად, შეგიძლიათ ნახოთ ამ GitHub რეპოში.
  • თქვენ დაგჭირდებათ ორი კომპლექტი დანართი და ერთი სპიკერის საცხოვრებელი.

ნაბიჯი 2: ინსტრუმენტები/მანქანები/პროგრამული უზრუნველყოფის მოთხოვნები

Arduino– ს დასაპროგრამებლად თქვენ უნდა ჩამოტვირთოთ Arduino IDE. გადმოსაწერი ბმული შეგიძლიათ იხილოთ აქ.

NRF24L01 მოდულის დასაპროგრამებლად, თქვენ უნდა გადმოწეროთ მისი ბიბლიოთეკა Arduino IDE საშუალებით. ინსტრუმენტები> ბიბლიოთეკების მართვა …> დააინსტალირეთ ბიბლიოთეკა RF24

ელექტრონული კომპონენტების ასაწყობად საჭიროა წვდომა შედუღების ძირითად ინსტრუმენტებზე. გამათბობელი ტუმბო ასევე შეიძლება იყოს სასარგებლო, მაგრამ არა აუცილებელი.

მოთხრობის ჩარჩოსა და დინამიკის საქმის შესაქმნელად დაგჭირდებათ 3D პრინტერზე წვდომა.

ნაბიჯი 3: Telltale აპარატურა

Telltale აპარატურა
Telltale აპარატურა
Telltale აპარატურა
Telltale აპარატურა

შეიკრიბეთ წრე ზემოთ დიაგრამების მიხედვით. Arduino Nano უნდა იყოს გასწორებული პროტობორდის ზედა ნაწილთან. ეს საშუალებას გაძლევთ გქონდეთ წვდომა USB პორტზე მაშინაც კი, როდესაც ყველა ელექტრონიკა მიმაგრებულია.

ელექტრონიკის შემცირების თავიდან ასაცილებლად, დარწმუნდით, რომ მოჭერით პროტობორდის კვალი იმ რიგებზე, რომელსაც nRF24 დაიკავებს, როგორც ეს მოცემულია ზემოთ მოცემულ სურათზე.

წინააღმდეგ შემთხვევაში თქვენ დაგჭირდებათ jumper კაბელები nRF24 პროტობორდთან დასაკავშირებლად.

რეზისტორული კავშირი, GND და 5V მავთულები ფოტო ინტერუტერზე არ არის გამოსახული. გააფართოვოს ფოტო interrupter როგორც მითითებულია მის გარღვევის დაფაზე. შესულია ბრეაკოუტ დაფის სურათი.

მარჯვენა და მარცხენა სიგნალების სქემები ზუსტად იგივეა.

ნაბიჯი 4: Telltale პროგრამული უზრუნველყოფა

აქ არის კოდი უფლება თხრობისთვის. შეაერთეთ Right telltale– ის ნანო თქვენს კომპიუტერს, გახსენით Arduino IDE, დააკოპირეთ და ჩასვით ეს კოდი მასში და ატვირთეთ დაფაზე.

/** პროგრამა, რომელიც იყენებს ფოტოგატს ზღაპრის შესასწავლად

*/ #მოიცავს #მოიცავს #მოიცავს #მოიცავს #მოიცავს RF24 რადიოს (9, 10); // CE, CSN const 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 = ნაკადის_ შემოწმების_დრო * 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; #განსაზღვრეთ STRING_THRESH 0.2 // --- პროგრამის ვარდები --- int num_string_seen = 0; int num_loops = 0; void setup () {// ხოლო (! სერიული); // ფლორისთვის // დაყოვნება (500); num_string_seen = 0; num_loops = 0; pinMode (GATE_PIN, INPUT); pinMode (GATE_PIN_2, INPUT); 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); // პარამეტრების გადატვირთვა num_string_seen = 0; num_loops = 0; შეფერხება (ნაკადის_მოწმების_ გადადება); } num_loops ++; დაგვიანება (ბაზის_გვიანება); } / * *მეთოდი იმის შესამოწმებლად, სტრიქონი კვეთს კარიბჭეს * / void check_string () {int string_state = digitalRead (GATE_PIN); //Serial.println(string_state); if (string_state == 0) {num_string_seen ++; //Serial.println("Saw string! "); }

int bot_state = digitalRead (GATE_PIN_2);

თუ (bot_state == 0) {num_string_seen--; //Serial.println("string on bottom! "); } //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); }

აქ არის კოდი Left Telltale. მიჰყევით იმავე ნაბიჯებს, როგორც ზემოთ მარცხენა თხრობისთვის. როგორც ხედავთ, ერთადერთი განსხვავება არის მისამართი, რომელზეც რეკლამა აგზავნის თავის შედეგებს.

/** პროგრამა, რომელიც იყენებს ფოტოგატს ზღაპრის შესასწავლად

*/ #მოიცავს #მოიცავს #მოიცავს #მოიცავს #მოიცავს RF24 რადიოს (9, 10); // CE, CSN const 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 = ნაკადის_ შემოწმების_დრო * 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; #განსაზღვრეთ STRING_THRESH 0.2 // --- პროგრამის ვარდები --- int num_string_seen = 0; int num_loops = 0; void setup () {// ხოლო (! სერიული); // ფლორისთვის // დაყოვნება (500); num_string_seen = 0; num_loops = 0;

pinMode (GATE_PIN, INPUT);

pinMode (GATE_PIN_2, INPUT); 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); // პარამეტრების გადატვირთვა num_string_seen = 0; num_loops = 0; შეფერხება (ნაკადის_მოწმების_ გადადება); } num_loops ++; დაგვიანება (ბაზის_ გადადება); } / * *მეთოდი იმის შესამოწმებლად, სტრიქონი კვეთს კარიბჭეს * / void check_string () {int string_state = digitalRead (GATE_PIN); //Serial.println(string_state); if (string_state == 0) {num_string_seen ++; //Serial.println("Saw string! "); }

int bot_state = digitalRead (GATE_PIN_2);

თუ (bot_state == 0) {num_string_seen--; //Serial.println("string on bottom! "); } //Serial.print(" აღრიცხვის სტრიქონი: "); //Serial.println(num_string_seen); დაბრუნების; }/ * * მეთოდი იმის გასაანალიზებლად, თუ დროის რა მონაკვეთმა დაფარა კარიბჭე */int exam_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: მომხსენებელი ასამბლეა

ტელტალეს ასამბლეა
ტელტალეს ასამბლეა

ინდივიდუალური ნაწილები

  • მომხიბლავი ჩარჩო
  • ნართი
  • აგებულია თხრობის სქემა
  • ბატარეის პაკეტი
  • ელექტრო ფირზე
  • ეპოქსია ან წებო

STLs 3D ბეჭდვის დამადასტურებელი კომპონენტებისთვის

  • STL დამახასიათებელი ჩარჩოსთვის: მარცხნივ, მარჯვნივ
  • STL ელექტრონიკის ყუთისთვის: ზედა, ქვედა

ასამბლეის ინსტრუქციები

  1. მოათავსეთ ბარი მაგნიტები 3D დაბეჭდილი თხრობის ჩარჩოს სლოტებში. დარწმუნდით, რომ მაგნიტები სწორად არის განლაგებული მარჯვენა ჩარჩოსა და მარცხენა ჩარჩოს შორის, შემდეგ გამოიყენეთ ეპოქსია (ან წებო) მაგნიტების ჩარჩოზე დასაფიქსირებლად. მიეცით საშუალება ეპოქსიდური (ან წებოს) სრულად დაყენების მიზნით.
  2. მოათავსეთ ფოტო შეფერხებები ზედა და ქვედა სლოტებში ჩარჩოს უკანა ნაწილში. ფრთხილად ეპოქსიდური (ან წებოვანი) ფოტო ინტერრუპერის დაფები ჩარჩოზე. მიეცით საშუალება ეპოქსიდური (ან წებოს) სრულად დაყენების მიზნით
  3. ძაფის ნაჭრებად გაჭერით ~ 7. მიამაგრეთ ძაფის ერთი ბოლო პირველი ვერტიკალური ბარის ჭრილში. გაჭერით ელექტრული ფირის პატარა ნაჭერი და გადააფარეთ ელექტრული ლენტი ძაფის იმ მონაკვეთზე, რომელიც იქნება ფოტო შეფერხების რეგიონში. ძაფის ძაფის ჩარჩო ისე გადიხართ, რომ მან გაიაროს ფოტო შუალედური კარიბჭის უფსკრული.
  4. მოათავსეთ ბარი მაგნიტები 3D დაბეჭდილი ელექტრონიკის ყუთის ქვედა ნაწილში. დარწმუნდით, რომ მაგნიტები სწორად არის განლაგებული მარჯვენა ყუთსა და მარცხენა ყუთს შორის, შემდეგ გამოიყენეთ ეპოქსია (ან წებო) მაგნიტების ჩარჩოზე დასაფიქსირებლად. მიეცით საშუალება ეპოქსიდური (ან წებოს) სრულად დაყენების მიზნით.
  5. მოათავსეთ აღმნიშვნელი სქემა ელექტრონიკის ყუთში, შეუსაბამეთ სხვადასხვა კომპონენტი მათ სლოტებს. დახურეთ ყუთი 3D ბეჭდვით ელექტრონიკის ყუთის თავზე. ეპოქსიდური (ან წებოვანი) ბატარეის პაკეტი ყუთის თავზე ისე, რომ გადამრთველი გამოაშკარავდეს.

ნაბიჯი 6: სპიკერის აპარატურა

სპიკერი აპარატურა
სპიკერი აპარატურა
სპიკერი აპარატურა
სპიკერი აპარატურა
სპიკერი აპარატურა
სპიკერი აპარატურა

გამომავალი სისტემა შედგება ორი დინამიკის სქემისგან, თითოეული თითო სიგნალისთვის, აღჭურვილი უკაბელო კომუნიკაციით და ხმის რეგულირების ღილაკით. პირველი, მოამზადეთ პროტო დაფები nRF24L01 მოდულებისთვის გამოსაყენებლად, როგორც ეს გავაკეთეთ გამაგრილებელი სქემებისათვის, სადენების გაყოფით, რომლებიც გამოყოფენ ქინძისთავების ორ რიგს, სადაც დაფა განთავსდება.

შემდეგ, შეკრიბეთ სქემა, როგორც ნაჩვენებია ზემოთ დიაგრამაში, ხოლო მითითებული სქემების ფოტოებს.

საბჭოს ასამბლეის ინსტრუქციები

იმისათვის, რომ დაალაგოთ დაფები დინამიკის დანართში, ძირითადი კომპონენტები უნდა განთავსდეს დაფის გარკვეულ უბნებში. მომდევნო ინსტრუქციებში მე ვიხსენებ კოორდინატთა სისტემას, რომელიც გამოიყენება ადაფრუტის პროტო დაფაზე რიგების და სვეტების აღსანიშნავად:

  1. Arduino Nano უნდა განთავსდეს დაფის ზედა კიდეზე ცენტრში ისე, რომ Vin pin განთავსდეს G16- ზე. ეს საშუალებას მისცემს არდუინო ნანოს ადვილად გადაპროგრამებას სქემის შეკრების შემდეგ.
  2. NRF24L01 დაფა უნდა განთავსდეს დაფის ქვედა მარჯვენა კუთხეში, რომელიც მოიცავს რვა პოზიციას C1- დან D5- მდე. ეს დატოვებს nRF24L01 პროტობორდის ჩამოკიდებას, რათა უზრუნველყოს უკეთესი უკაბელო კომუნიკაცია.
  3. ბატარეის პაკეტი დინამიკის სისტემისთვის არის ორივე პროტოპორდი, ასე რომ დარწმუნდით, რომ დაუკავშირეთ Arduino Nano- ს ორი GND რელსები/ქინძისთავები და 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, დააკოპირეთ და ჩასვით ეს კოდი მასში და ატვირთეთ დაფაზე.

#ჩართეთ

#ჩართეთ #ჩართეთ RF24 რადიო (7, 8); // CE, CSN // მარცხენა რეკლამა, ზედა დინამიკის დაფა const byte მისამართი [6] = "00001"; const int მოედანი = 2000; const int pitch_duration = 200; const int სპიკერი = 3; const int delay_gain = 100; int სტატუსი = 0; int cur_delay = 0; char წაკითხვა [2]; void setup () {pinMode (სპიკერი, OUTPUT); Serial.begin (115200); Serial.println ("უკაბელო კომუნიკაციის დაწყება …"); რადიო.დაწყება (); 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*სტატუსი; } if (cur_delay) {ტონი (სპიკერი, მოედანზე, სიმაღლის ხანგრძლივობა); შეფერხება (cur_delay + pitch_duration); Serial.println ("ბიპი!"); }}

აქ არის სპიკერის კოდი, რომელიც კომუნიკაციას უწევს სწორ ამბავს. დააკავშირეთ Arduino Nano ზედა დინამიკის დაფაზე თქვენს კომპიუტერთან, გახსენით Arduino IDE, დააკოპირეთ და ჩასვით ეს კოდი მასში და ატვირთეთ დაფაზე.

#ჩართეთ

#ჩართეთ #ჩართეთ RF24 რადიო (7, 8); // CE, CSN // right telltale, bottom speaker board const byte address [6] = "00010"; const int მოედანი = 1500; const int pitch_duration = 200; const int სპიკერი = 3; const int delay_gain = 100; int სტატუსი = 0; int cur_delay = 0; char წაიკითხეთ [2]; void setup () {pinMode (სპიკერი, OUTPUT); Serial.begin (115200); Serial.println ("უკაბელო კომუნიკაციის დაწყება …"); რადიო.დაწყება (); 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*სტატუსი; } if (cur_delay) {ტონი (სპიკერი, მოედანი, სიმაღლის ხანგრძლივობა); შეფერხება (cur_delay+pitch_duration); Serial.println ("ბიპი!"); }}

ნაბიჯი 8: სპიკერების ასამბლეა

ინდივიდუალური ნაწილები

  • 2 აშენებული დინამიკის სქემა
  • 2 დინამიკი
  • 1 ბატარეის პაკეტი

STLs 3D ბეჭდვისთვის

  • ყუთის ზედა
  • ყუთის ქვედა

ფიზიკური შეკრების ინსტრუქცია

  1. ფრთხილად მოათავსეთ დინამიკის სქემები ყუთის ქვედა ნაწილში, ერთი დაფა მეორეზე ისე, რომ ხმის ღილაკები ერთმანეთის გვერდით იყოს და ჩააგდოთ ხვრელებში. საკომუნიკაციო ჩიპები უნდა იყოს გამოფენილი ყუთის უკანა ნაწილში.
  2. მოათავსეთ დინამიკები მიკროსქემის დაფის მარცხენა და მარჯვენა მხარეს, დარწმუნდით, რომ დინამიკები შეესაბამება რეკლამის სწორ მხარეებს. გაასწორეთ დინამიკები ყუთის გვერდებზე მდებარე სლოტებზე.
  3. მიეცით ბატარეის მავთულები ყუთის უკანა მხარეს მდებარე პატარა ხვრელში. ეპოქსიდური (ან წებოვანი) ბატარეის პაკეტი ყუთის უკანა მხარეს ისე, რომ გადამრთველი იყოს გამოვლენილი.
  4. მოათავსეთ 3D დაბეჭდილი ყუთი თავზე ყუთის ქვედა ნაწილში, რომ შეიცავდეს ყველაფერს.

ნაბიჯი 9: დაყენება/მონტაჟი

დაყენება/მონტაჟი
დაყენება/მონტაჟი
  1. ჩართეთ სიგნალები ბატარეის პაკეტებზე გადამრთველების გადართვით "ON" პოზიციაზე. იგივე გააკეთეთ დინამიკების შეკრებისთვის, რათა ჩართოთ გამომავალი სისტემა.
  2. ხმოვანი თხზულების დამონტაჟება ყველაზე მარტივად ხდება ორ ადამიანთან ერთად, მაგრამ შეიძლება გაკეთდეს ერთთან ერთად. არასამთავრობო დასაძრახ ჯიბზე დასადგმელად, თხელები ყველაზე მარტივად ჩაიცვამდნენ აფრების ამოსვლამდე.
  3. იმისათვის, რომ დარწმუნდეთ, რომ ზღაპრის ჩარჩო სწორად არის ორიენტირებული, შეხედეთ ხვრელს ერთ ვერტიკალურ ზოლზე. ჩარჩოს თავდაყირა დაჭერისას, დონე უნდა იყოს ზედა ნაწილისკენ. ჩარჩოს გვერდი იმ ზოლით ასევე უნდა იყოს მიმართული ნავის წინა მხარეს.
  4. მოათავსეთ ერთ -ერთი ზღაპარი სასურველ სიმაღლეზე და პოზიცია აფრზე. ის უნდა განთავსდეს ისე, რომ ნართი იყოს იმავე ადგილას, როგორც ეს იქნებოდა ტრადიციული მოთხრობის ნაწილი.
  5. ერთხელ თქვენ გაქვთ ერთი ზღაპარი სასურველ პოზიციაში. მოათავსეთ სხვა ზღაპარი იალქნის მეორე მხარეს, ზუსტად იმ მოპირდაპირედ, რომელიც თქვენ მოათავსეთ, ისე რომ მაგნიტები გაფორმდეს. მას შემდეგ რაც მაგნიტები დაამყარებენ კავშირს მათ უნდა დაიჭირონ ჩარჩო უსაფრთხოდ აფრებისკენ. დაალაგეთ ელექტრონული გარსების მაგნიტები, თითოეული ზღაპრისთვის აფრების ორივე მხარეს, ისე რომ ისინიც ერთმანეთთან იყოს დაკავშირებული.
  6. თუ შეამჩნევთ, რომ როდესაც სტრიქონი პირდაპირ უკან მიედინება, ის არ გადაკვეთს ზედა კარიბჭის წინ, გადაატრიალეთ ზღაპრის ჩარჩო ისე, რომ ჩარჩოს უკანა ნახევარი ქვევით მიემართოს. გადაატრიალეთ ჩარჩო მანამ, სანამ სტრიქონი არ გაივლის ფოტოების ზედა ნაწილში, როდესაც ძაფები პირდაპირ უკან მიედინება.

ნაბიჯი 10: პრობლემების მოგვარება

კოდის ყველა ნაწილს აქვს გამოსწორების ამობეჭდვის განცხადება, რომ მიუთითოს, რომ ისინი აგზავნიან, იღებენ და ამუშავებენ მონაცემებს. გახსენით COM პორტი Arduino IDE გამოყენებით Arduino Nano ქვესისტემით კომპიუტერში ჩართული საშუალებას მოგცემთ ნახოთ ეს სტატუსის შეტყობინებები.

თუ სისტემა არ მუშაობს სწორად, გადართეთ გადამრთველები ყველა კომპონენტზე.

ნაბიჯი 11: შესაძლო შემდეგი ნაბიჯები

  • ჰიდროიზოლაცია
  • უფრო გრძელი კომუნიკაცია. WiFi იქნება პერსპექტიული ვარიანტი.
  • ჩვენი ამჟამინდელი კონფიგურაცია ამჟამად იყენებს 2 ფოტო შეფერხებას თითო მოთხრობაში. სისტემაში უფრო მეტი ფოტო შეფერხების დამატება შეიძლება საინტერესო იყოს.

გირჩევთ: