ዝርዝር ሁኔታ:

ሊጠልቅ የሚችል ተሽከርካሪ - 5 ደረጃዎች
ሊጠልቅ የሚችል ተሽከርካሪ - 5 ደረጃዎች

ቪዲዮ: ሊጠልቅ የሚችል ተሽከርካሪ - 5 ደረጃዎች

ቪዲዮ: ሊጠልቅ የሚችል ተሽከርካሪ - 5 ደረጃዎች
ቪዲዮ: በሎስ አንጀለስ ካሊፎርኒያ አቅራቢያ የሳንታ ካታሊና ደሴት 2024, ህዳር
Anonim
ሊጠልቅ የሚችል ተሽከርካሪ
ሊጠልቅ የሚችል ተሽከርካሪ
ሊጠልቅ የሚችል ተሽከርካሪ
ሊጠልቅ የሚችል ተሽከርካሪ

**************** ይህ መመሪያ አሁንም በሂደት ላይ ያለ ሥራ ነው ****************

ይህ Instructable የተፈጠረው በደቡብ ፍሎሪዳ ዩኒቨርሲቲ (Makemaurse) የፕሮጀክት መስፈርቱን በማሟላት (www.makecourse.com) ነው።

ይህ አስተማሪ በደቡባዊ ፍሎሪዳ ዩኒቨርሲቲ ለሜሴኮርስ ትምህርቴ የሠራሁትን እና የሠራሁትን የውሃ ውስጥ ተሽከርካሪ መፈጠርን በተመለከተ አጭር እይታ ይሆናል። በዚህ መመሪያ ውስጥ የሂሳብ መጠየቂያ ሂሳቦችን ፣ እኔ ለተጠቀምኩበት ለአርዱዲኖ ኡኖ የፈጠርኩትን የቁጥጥር ኮድ ፣ እና የውሃ ውስጥ ጠላቂን እንዴት እንደሚሰበሰብ አጠቃላይ እይታ እሰጣለሁ።

ደረጃ 1: ቁሳቁሶች

ቁሳቁሶች
ቁሳቁሶች
ቁሳቁሶች
ቁሳቁሶች
ቁሳቁሶች
ቁሳቁሶች

ኤሌክትሮኒክስ የት ጥቅም ላይ ውሏል

1x አርዱዲኖ ኡኖ

1x ሞቢየስ የድርጊት ካሜራ

1x ሞቢየስ የድርጊት ካሜራ usb-b ወደ A/V ገመድ

1x የመስክ እይታ 777 ማሳያ ማያ ገጽ

1x turnigy የባህር 50A ESC (የኤሌክትሮኒክ የፍጥነት መቆጣጠሪያ)

1x የባህር ማዞሪያ መርሃ ግብር ካርድ

1x T-Motor Navigator 400kv

1x YEP 20A BEC (የባትሪ ማስወገጃ ወረዳ)

6x የትርፍ ጊዜ ማሳለፊያ ንጉስ HK15139 ውሃ የማይገባባቸው servos

2x ትይዩ ቲ-አያያዥ y መያዣዎች

2x 18 ኢንች servo ቅጥያ ሽቦዎች

6x 6 ኢንች servo ቅጥያ ሽቦዎች

2x 1300mah 3s Lipo ባትሪዎች

2x 2500mah 4s Lipo ባትሪዎች

1x የኃይል ማከፋፈያ ቦርድ በሁለቱም 5v እና 12v ቋሚ ውጤቶች

የግንባታ ቁሳቁሶች የት:

1x 3/16 ኢንች የወረቀት ሰሌዳ

1x 6 ኢንች መታወቂያ ABS የመላኪያ ቱቦ

1x የሲሊኮን ቱቦ

1x ቆርቆሮ ተጣጣፊ ማኅተም

የኤቢኤስ 3 ዲ አታሚ ክር 4x ስፖሎች

1x 24 ኢንች መሳቢያ ተንሸራታች

የሙቀት መቀነስ ቱቦ

1x 10 ጫማ የስኮት ብራንድ ዱራሎክ ቬልክሮ

1x JB Weld ፕላስቲክ ኤፒኮ

1x 6.2 ኢንች ዲያሜትር አክሬሊክስ ደህንነት ካሜራ ጉልላት

2x IP68 የኤተርኔት ማለፊያዎች

2x 24 ኢንች cat6 ኤተርኔት ገመድ

1x 200 ጫማ ድመት 6 ኤተርኔት ገመድ

ጥቅም ላይ የዋለው ሃርድዌር -

24x 1/2 ኢንች የናስ የእንጨት ብሎኖች

24x ------ ብሎኖች (ከ servos ጋር ተካትቷል)

ያገለገሉ መሣሪያዎች;

የፊሊፕስ እና ጠፍጣፋ ጭንቅላት ሾፌሮች

አለን ቁልፍ ስብስብ

የመሸጫ ብረት

የሙቀት ጠመንጃ

3 ዲ አታሚ (የሞኖፕሪስ ሰሪ ይምረጡ ፕላስን እጠቀም ነበር)

ደረጃ 2 - ፕሮግራሚንግ

ፕሮግራሚንግ
ፕሮግራሚንግ
ፕሮግራሚንግ
ፕሮግራሚንግ
ፕሮግራሚንግ
ፕሮግራሚንግ
ፕሮግራሚንግ
ፕሮግራሚንግ

የውሃ ውስጥ ማጥመድን ለመቆጣጠር የተፈጠረው ኮድ ከዚህ በታች ነው። እኔም.ino ፋይልን ማውረድ እንዲችል አያይ haveዋለሁ።

ይህ ኮድ የተፈጠረው ለአርዱዲኖ ኡኖ የአርዲኖን አጠናቃሪ በመጠቀም ነው።

/**********************************************************************************************************************************************************************

ደራሲ - ዮናስ ኃይሎች ቀን - 11/9/2018 ዓላማው - በርቀት ለሚሠራ የውሃ ውስጥ ተሽከርካሪ የመቆጣጠሪያ ኮድ ***************************** *************************************************** *************************************************** ************************************/ #ያካትቱ // Servo Library Servo roll1 ን ጨምሮ; // ጥቅል 1 እንደ servo Servo roll2 መሆንን ማወጅ ፣ // ጥቅል 2 ሰርቪ ሰርቮ elev1 እንዲሆን ማወጅ ፣ // elev1 servo servo elev2 መሆኑን ማወጅ ፣ // elev2 servo servo yaw1 መሆኑን ማወጅ ፣ // yaw1 servo yavo2 መሆኑን ማወጅ ፣ // yaw2 servo Servo esc መሆኑን ማወጅ ፣ // ኤሲሲ አገልጋይ መሆኑን ማወጅ

int pot1 = 0; // ተለዋዋጭ ድስት 1 ን እንደ ኢንቲጀር ማስተዋወቅ እና ከ 0 int pot2 = 1 ጋር እኩል ማቀናበር; // ተለዋዋጭ ድስት 2 ን እንደ ኢንቲጀር ማስተዋወቅ እና ከ 2 int pot3 = 2 ጋር እኩል አድርጎ ማቀናበር; // ተለዋዋጭ ድስት 3 ን እንደ ኢንቲጀር በማስተዋወቅ እና ከ 4 int pot4 = 3 ጋር እኩል አድርጎ ማቀናበር; // ተለዋዋጭ pot4 ን እንደ ኢንቲጀር በማስተዋወቅ እና ከ 5 int val1 ጋር እኩል አድርጎ ማቀናበር; // ተለዋዋጭ ቫል 1 ን እንደ ኢንቲጀር int val2 ማስተዋወቅ; // ተለዋዋጭ ቫል 2 ን እንደ ኢንቲጀር int val3 ማስተዋወቅ; // ተለዋዋጭ ቫል 3 ን እንደ ኢንቲጀር int val4 ማስተዋወቅ; // ተለዋዋጭ ቫል 4 ን እንደ ኢንቲጀር int val5 ማስተዋወቅ; // ተለዋዋጭ ቫል 5 ን እንደ ኢንቲጀር int val6 ማስተዋወቅ; // ተለዋዋጭ ቫል 6 ን እንደ ኢንቲጀር int val7 ማስተዋወቅ; // ተለዋዋጭ ቫል 7 ን እንደ ኢንቲጀር int val8 ማስተዋወቅ; // ተለዋዋጭ val8 ን እንደ ኢንቲጀር int mspeed ማነቃቃት; // ተለዋዋጭ ኢንቲጀር እንደ ኢንቲጀር

ባዶነት ማዋቀር () {// የአርዱዲኖ የመነሻ ደረጃ Serial.begin (9600); // ተከታታይ ሞኒተር ጥቅልን ማስጀመር 1.attach (2); // servo roll1 ን ወደ ዲጂታል ፒን 2 ጥቅል 2 በማያያዝ (3); // servo roll2 ን ወደ ዲጂታል ፒን 3 elev1.attach (5) በማያያዝ ላይ // servo elev1 ን ከዲጂታል ፒን 5 elev2.attach (6) ጋር ማያያዝ; // servo elev2 ን ወደ ዲጂታል ፒን 6 yaw1.attach (8) በማያያዝ ላይ // servo yaw1 ን ወደ ዲጂታል ፒን 8 yaw2.attach (9) በማያያዝ ላይ // servo yaw2 ን ወደ ዲጂታል ፒን 9 esc.attach (11) ማያያዝ; // servo esc ን ወደ ዲጂታል ፒን 11 ጥቅል ማያያዝ 1. መጻፍ (90); // የ servo roll1 ን ወደ ማዕከላዊ ቦታው ሮል መጻፍ 2. መጻፍ (90); // servo roll2 ን ወደ ማዕከላዊ ቦታው መጻፍ elev1.write (90); // servo elev1 ን ወደ ማዕከላዊ ቦታው መጻፍ elev2.write (90); // servo elev2 ን ወደ ማዕከላዊ ቦታው መጻፍ yaw1.write (90); // servo yaw1 ን ወደ ማዕከላዊ ቦታው መጻፍ yaw2.write (90); // servo yaw2 ን ወደ ማዕከላዊ ቦታው መጻፍ esc.write (180); // servo esc ን ወደ ማዕከላዊ ቦታ መዘግየት (2500) መፃፍ ፣ // በመጠበቅ ላይ 2 ሰከንድ esc.write (90); መዘግየት (5000); }

ባዶነት loop () {// ማለቂያ የሌለው (/analogRead (pot1) <1 && analogRead (pot2) <1 && analogRead (pot3) <1 && analogRead (pot4) = 485 && val1 <= 540) {// “ጆይስቲክ” (ፖታቲሞሜትር) ማእከል roll1.write (90) መሆኑን ለማየት በመፈተሽ ላይ። // የ servo roll1 ን ወደ መሃል አቀማመጥ ሮል መጻፍ 2. መጻፍ (90); // servo roll2 ን ወደ መሃል ቦታ መፃፍ} ሌላ {// “ጆይስቲክ” ማዕከላዊ val1 = ካርታ (ቫል 1 ፣ 0 ፣ 1023 ፣ 10 ፣ 170) ካልሆነ ምን ማድረግ እንዳለበት ፤ // ካርታ ቫል 1 ከ 10 እስከ 170 እና ለ val1 roll1 መመደብ 1 (መጻፍ (val1)); // የ servo roll1 ን በመፃፍ በ val1 roll2. ጻፍ (val1); // በ servoon servo roll2 በመጻፍ በ val1} ተገል definedል

val2 = analogRead (pot2); // pot2 ን (የአናሎግ ፒን 2) ን ያነብቡ እና ዋጋውን እንደ val2 ይቆጥቡ (val2> = 485 && val2 <= 540) {// «ጆይስቲክ» (ፖታቲሞሜትር) ያተኮረ elev1.write (90) ከሆነ ለማየት በመፈተሽ ላይ። // servo elev1 ን ወደ መሃል ቦታ elev2 መጻፍ። ጻፍ (90); // servo elev2 ን ወደ መሃል ቦታ መፃፍ} ሌላ {// “ጆይስቲክ” ማእከል ካልሆነ val3 = ካርታ (val2 ፣ 0 ፣ 1023 ፣ 10 ፣ 170) ፤ // ካርታ ቫል 2 ከ 10 እስከ 170 እና ለ val3 val4 = ካርታ (val2 ፣ 0 ፣ 1023 ፣ 170 ፣ 10) መመደብ; // ካርታ ቫል 2 ከ 170 እስከ 10 እና ለ val4 elev1 መመደብ። መጻፍ (val3); // servo elev1 ን ወደ positon በመፃፍ በ val3 elev2. ጻፍ (val4); // servo elev2 ን ወደ positon በመጻፍ በ val4} ይገለጻል

val5 = analogRead (pot3); // pot3 ን (የአናሎግ ፒን 4) ን ያነቡ እና ዋጋውን እንደ val5 ይቆጥቡ (val5> = 485 && val5 <= 540) {// «ጆይስቲክ» (ፖታቲሞሜትር) ማዕከል yaw1.write (90) ከሆነ ለማየት በመፈተሽ ላይ። // servo yaw1 ን ወደ መሃል ቦታ መፃፍ yaw2.write (90); // servo yaw2 ን ወደ መሃል ቦታ መፃፍ} ሌላ {// ‹ጆይስቲክ› ማእከል ካልሆነ val6 = ካርታ (val5 ፣ 0 ፣ 1023 ፣ 10 ፣ 170)። // ካርታ ቫል 5 ከ 10 እስከ 170 እና ለ val6 val7 val7 = ካርታ (val5 ፣ 0 ፣ 1023 ፣ 170 ፣ 10) መመደብ ፤ // ካርታ ቫል 5 ከ 10 እስከ 170 እና ለ val7 yaw1.write (val6) መመደብ; // servo yaw1 ን ወደ positon መጻፍ በ val6 yaw2.write (val7); // servo yaw2 ን በመፃፍ በ val7} ተገል definedል

val8 = analogRead (pot4); // pot4 ን (የአናሎግ ፒን 5) ን ያንብቡ እና ዋጋውን እንደ val8 ይቆጥቡ ከሆነ (val8> 470 && val8 80 && val8 <80) || (mspeed80)) {// ሞተሩ አቅጣጫውን ሊቀይር መሆኑን ለማየት በመፈተሽ ላይ esc.write () 80); መዘግየት (1000); // 1000 ሚሊሰከንዶች በመጠባበቅ ላይ} esc.write (val8); // servo esc ን በ val8 mspeed = val8 በተገለጸው ፍጥነት መጻፍ // ለማነፃፀር የአሁኑን ፍጥነት ማከማቸት}} Serial.print (“ስሮትል”); // "ስሮትል" የሚለውን ቃል Serial.println (val8) ለማሳየት ተከታታይ ህትመትን መጠቀም ፤ // ስሮትል ወደ Serial.print (“ጥቅል”) የተቀናበረውን እሴት ለማሳየት ተከታታይ ህትመትን መጠቀም ፤ // "ጥቅል" Serial.println (val1) የሚለውን ቃል ለማሳየት ተከታታይ ህትመትን መጠቀም ፤ // ጥቅሉ ወደ Serial.print (“pitch”) የተቀናበረውን እሴት ለማሳየት ተከታታይ ህትመትን መጠቀም ፤ // Serial.println (val3) የሚለውን ቃል ለማሳየት ተከታታይ ህትመትን መጠቀም ፤ // ቅጥነት 1 ወደ Serial.println (val4) የተቀናበረውን እሴት ለማሳየት ተከታታይ ህትመትን መጠቀም ፤ // ቅጥነት 2 ወደ Serial.print (“yaw”) የተቀናበረውን እሴት ለማሳየት ተከታታይ ህትመትን መጠቀም ፤ // "ያው" የሚለውን ቃል Serial.println (val6) የሚለውን ቃል ለማሳየት ተከታታይ ህትመትን መጠቀም ፤ // yaw1 ወደ Serial.println (val7) የተዋቀረውን እሴት ለማሳየት ተከታታይ ህትመትን መጠቀም ፤ // yaw2 የተዋቀረበትን እሴት ለማሳየት ተከታታይ ህትመትን በመጠቀም}

ደረጃ 3 - ወረዳዊ

ውሃ ውስጥ በሚንሳፈፍበት ሰሌዳ ላይ ያለው የወረዳ ፎቶ ተያይachedል።

ሽቦዬን ለማቅለል ለአርዱዲኖ ብጁ ጋሻ ፈጠርኩ። ለጋሻው የንስር መርሃግብር እና የቦርድ ፋይሎችን ሰቅያለሁ። እኔ ሰሌዳውን ለመፍጨት LPKF S63 ን እጠቀም ነበር። ጥቅሉን የሚቆጣጠረው ከፊት ያሉት ሰርቮዎች ወደ አርዱinoኖ ይሰካሉ

የተያያዘው በመቆጣጠሪያው ውስጥ ያለው የወረዳ ፎቶ ነው።

ደረጃ 4: 3 ዲ የታተሙ ክፍሎች

እነዚህን ሁሉ ፋይሎች በሞኖፖሪስ ሰሪ ምረጥ ፕላስ ላይ አተምኋቸው። Esun ABS 1.75mm Filament ን እጠቀም ነበር። የእኔ የህትመት ቅንጅቶች ለህትመት አልጋው የሙቀት መጠን 105 ዲግሪ ሴንቲግሬድ እና ለላኪው ሙቀት 255 ዲግሪ ሴ. የፊት ክንፍ 6 ቅጂዎች ከሚያስፈልጉዎት በስተቀር የእያንዳንዱ ክፍል 1 ብቻ ያስፈልጋል። ልብ ይበሉ እነዚህ ክፍሎች የታተሙት በግድግዳው ውፍረት እስከ 1000 ሚሜ ድረስ ነው። ይህ የተደረገው ክፍሎቹ በአሉታዊ ተንሳፋፊ እንዲሆኑ በ 100% ተሞልተው እንዲታተሙ ነው።

ደረጃ 5 - ስብሰባ

********************************* በቅርብ ቀን *************** *******************

የሚመከር: