Sadržaj:
- Korak 1: Materijali
- Korak 2: Programiranje
- Korak 3: Strujna kola
- Korak 4: 3D štampani dijelovi
- Korak 5: Montaža
Video: Potopno vozilo: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:07
**************** OVO UPUTSTVO JE JOŠ RAD U NAPREDU ****************
Ovaj Instructable nastao je u skladu sa projektnim zahtjevima Makecourse -a na Univerzitetu Južne Floride (www.makecourse.com).
Ovaj Instructable će biti kratak pregled stvaranja potopnog vozila koje sam dizajnirao i izgradio za svoj predmet Makecourse na Univerzitetu Južna Florida. U ovom Instructableu ću vam dostaviti opis materijala, kontrolni kod koji sam stvorio za Arduino Uno koji sam koristio i pregled načina sastavljanja podmornice.
Korak 1: Materijali
Elektronika koja se koristi gdje:
1x Arduino Uno
1x mobius akciona kamera
1x mobius akcijska kamera usb-b na A/V kabel
1x prikaz polja 777 sa prikazom polja
1x rečni brod 50A ESC (elektronička kontrola brzine)
1x pomorska kartica za programiranje
1x T-Motor Navigator 400kv
1x YEP 20A BEC (krug za uklanjanje baterije)
6x vodootporni servo upravljači za hobije king HK15139
2x paralelni T-priključak y uprtača
2x 18 -inčne servo produžne žice
6x 6 inčne servo produžne žice
2x 1300mah 3s Lipo baterije
2x 2500mah 4s Lipo baterije
1x razvodna ploča sa fiksnim izlazima 5v i 12v
Građevinski materijali gdje:
1x list šperploče 3/16 inča
1x transportna cijev ID ABS od 6 inča
1x silikonska cijev
1x limenka fleksibilne brtve
4x kalemovi niti od ABS 3D štampača
1x klizač za fioke od 24 inča
Termoskupljajuća cijev
1x 10 stopa čička marke duraloc marke scotch
1x JB Zavariti plastični epoksid
1x akrilna kupola sigurnosne kamere promjera 6,2 inča
2x IP68 Ethernet prolaza
2x 24 -inčni kabel cat6 Ethernet
1x Ethernet kabel cat6 od 200 stopa
Korišteni hardver je:
24x 1/2 inča mesingani vijci za drvo
24x ------ vijci (uključeni sa servo motorima)
Alati koji se koriste:
Filipovi i odvijači s ravnom glavom
Šesterokutni ključ je postavljen
Lemilica
Toplinski pištolj
3D štampač (koristio sam Monoprice Maker Select Plus)
Korak 2: Programiranje
Ispod je kôd koji je kreiran za kontrolu podmornice. Priložio sam i.ino datoteku tako da se može preuzeti.
Ovaj kod je kreiran za Arduino Uno pomoću Arduino kompajlera.
/**********************************************************************************************************************************************************************
Autor: Jonah Powers Datum: 9.11.2018 Svrha: Kontrolni kôd za podvodno vozilo na daljinsko upravljanje **************************** ************************************************ ************************************************ ************************************/#include // Uključujući Servo biblioteku Servo roll1; // proglašavanje roll1 servo servo role2; // proglašavanje roll2 servo servo elev1; // proglašavanje elev1 za servo servo elev2; // proglašavanje elev2 za servo servo yaw1; // proglašavanje yaw1 servo servo yaw2; // proglašavanje yaw2 za servo servo esc; // Deklariranje esc kao servo
int pot1 = 0; // Inicijalizacija varijable pot1 kao cijeli broj i njeno postavljanje na 0 int pot2 = 1; // Inicijalizacija varijable pot2 kao cijeli broj i njeno postavljanje na 2 int pot3 = 2; // Inicijalizacija varijable pot3 kao cijeli broj i njeno postavljanje na 4 int pot4 = 3; // Inicijalizacija varijable pot4 kao cijeli broj i njeno postavljanje na 5 int val1; // Inicijalizacija varijable val1 kao cijeli broj int val2; // Inicijalizacija varijable val2 kao cijeli broj int val3; // Inicijalizacija varijable val3 kao cijeli broj int val4; // Inicijalizacija varijable val4 kao cijeli broj int val5; // Inicijalizacija varijable val5 kao cjelobrojnog int val6; // Inicijalizacija varijable val6 kao cijeli broj int val7; // Inicijalizacija varijable val7 kao cijeli broj int val8; // Inicijalizacija varijable val8 kao cijeli broj int mspeed; // Inicijalizacija varijable mspeed kao cijeli broj
void setup () {// Arduino faza inicijalizacije Serial.begin (9600); // Pokretanje serijskog monitora roll1.attach (2); // Pričvršćivanje servo role 1 na digitalni pin 2 roll2.attach (3); // Pričvršćivanje servo roleta2 na digitalni pin 3 elev1.attach (5); // Priključivanje servo elev1 na digitalni pin 5 elev2.attach (6); // Priključivanje servo elev2 na digitalni pin 6 yaw1.attach (8); // Priključivanje servo yaw1 na digitalni pin 8 yaw2.attach (9); // Priključivanje servo yaw2 na digitalni pin 9 esc.attach (11); // Priključivanje servo esc -a na digitalni pin 11 roll1.write (90); // Zapisivanje servo role1 u centriranu poziciju roll2.write (90); // Zapisivanje servo role2 u centrirani položaj elev1.write (90); // Zapisivanje servo elev1 u centrirani položaj elev2.write (90); // Zapisivanje servo elev2 u centrirani položaj yaw1.write (90); // Zapisivanje servo yaw1 u njegov centrirani položaj yaw2.write (90); // Zapisivanje servo yaw2 u njegov centrirani položaj esc.write (180); // Zapisivanje servo esc -a u kašnjenje centriranog položaja (2500); // Čekanje 2 sekunde esc.write (90); kašnjenje (5000); }
void loop () {// Glavni kod za beskonačnu petlju if (analogRead (pot1) <1 && analogRead (pot2) <1 && analogRead (pot3) <1 && analogRead (pot4) = 485 && val1 <= 540) {// Provjera je li "Joystick" (potenciometar) centriran roll1.write (90); // Zapisivanje servo role1 u središnji položaj roll2.write (90); // Zapisivanje servo role2 u središnji položaj} else {// Što učiniti ako "Joystick" nije centriran val1 = map (val1, 0, 1023, 10, 170); // Mapiranje val1 od 10 do 170 i dodjeljivanje val1 roll1.write (val1); // Zapisivanje servo role1 na poziciju definiranu val1 roll2.write (val1); // Zapisivanje servo role2 na poziciju definiranu val1}
val2 = analogRead (pot2); // Očitavanje pot2 (analogni pin 2) i spremanje vrijednosti kao val2 if (val2> = 485 && val2 <= 540) {// Provjera je li "Joystick" (potenciometar) centriran elev1.write (90); // Zapisivanje servo elev1 u središnji položaj elev2.write (90); // Zapisivanje servo elev2 u poziciju centra} else {// Šta učiniti ako "Joystick" nije centriran val3 = map (val2, 0, 1023, 10, 170); // Mapiranje val2 od 10 do 170 i dodjeljivanje val3 val4 = mapa (val2, 0, 1023, 170, 10); // Mapiranje val2 sa 170 na 10 i dodjeljivanje val4 elev1.write (val3); // Zapisivanje servo elev1 na poziciju definiranu val3 elev2.write (val4); // Zapisivanje servo elev2 na poziciju definiranu val4}
val5 = analogRead (pot3); // Očitavanje pot3 (analogni pin 4) i spremanje vrijednosti kao val5 if (val5> = 485 && val5 <= 540) {// Provjera je li "Joystick" (potenciometar) centriran yaw1.write (90); // Zapisivanje servo yaw1 u središnji položaj yaw2.write (90); // Zapisivanje servo yaw2 u središnju poziciju} else {// Šta učiniti ako "Joystick" nije centriran val6 = map (val5, 0, 1023, 10, 170); // Mapiranje val5 od 10 do 170 i dodjeljivanje val6 val7 = mapa (val5, 0, 1023, 170, 10); // Mapiranje val5 od 10 do 170 i dodjeljivanje val7 yaw1.write (val6); // Zapisivanje servo yaw1 na poziciju definiranu val6 yaw2.write (val7); // Zapisivanje servo yaw2 na poziciju definiranu val7}
val8 = analogRead (pot4); // Očitavanje pot4 (analogni pin 5) i spremanje vrijednosti kao val8 if (val8> 470 && val8 80 && val8 <80) || (mspeed80)) {// Provjera da li će motor promijeniti smjer esc.write (80); kašnjenje (1000); // Čekanje 1000 milisekundi} esc.write (val8); // Zapisivanje servo esc na brzinu definiranu val8 mspeed = val8; // Pohranjivanje trenutne brzine radi usporedbe}} Serial.print ("throttle"); // Korištenje serijskog ispisa za prikaz riječi "Throttle" Serial.println (val8); // Korištenje serijskog ispisa za prikaz vrijednosti koje je prigušivač postavljen na Serial.print ("roll"); // Korištenje serijskog ispisa za prikaz riječi "Roll" Serial.println (val1); // Korištenje serijskog ispisa za prikaz vrijednosti koje je roll postavljen na Serial.print ("pitch"); // Korištenje serijskog ispisa za prikaz riječi "Pitch" Serial.println (val3); // Korištenje serijskog ispisa za prikaz vrijednosti koje je pitch1 postavljeno na Serial.println (val4); // Korištenje serijskog ispisa za prikaz vrijednosti koje je pitch2 postavljeno na Serial.print ("zavijanje"); // Korištenje serijskog ispisa za prikaz riječi "Yaw" Serial.println (val6); // Korištenje serijskog ispisa za prikaz vrijednosti koja je yaw1 postavljena na Serial.println (val7); // Korištenje serijskog ispisa za prikaz vrijednosti na kojoj je yaw2 postavljen}
Korak 3: Strujna kola
U prilogu je fotografija kruga na ploči podvodnog.
Napravio sam prilagođeni štit za Arduino kako bih pojednostavio ožičenje. Učitao sam datoteke Eagle Schematic & Board za štit. Koristio sam LPKF S63 za glodanje ploče. Servosi na prednjoj strani tog kontrolnog valjka bit će priključeni na Arduino
u prilogu je fotografija kruga unutar kontrolera.
Korak 4: 3D štampani dijelovi
Odštampao sam sve ove datoteke na svom uređaju Monoprice Maker Select Plus. Koristio sam Esun ABS filament od 1,75 mm. Moje postavke za štampanje su bile 105 stepeni C za temperaturu ležišta za štampanje i i 255 stepeni C za temperaturu ekstrudera. Potreban je samo 1 dio svakog dijela, osim što će vam trebati 6 primjeraka prednjeg krila. Imajte na umu da su ovi dijelovi štampani sa debljinom zida postavljenom na 1000 mm. To je učinjeno kako bi se dijelovi odštampali sa 100% ispunom kako bi bili negativno žilavi.
Korak 5: Montaža
********************************* USKORO DOLAZI *************** *******************
Preporučuje se:
Super FAST RC Ground Effect vozilo (Ekranoplan): 5 koraka (sa slikama)
Super BRZO RC vozilo sa efektom zemlje (Ekranoplan): Znate kako, prilikom slijetanja, avioni lebde nekoliko metara iznad zemlje neko vrijeme prije nego što im točkovi zaista padnu na pistu? Ovo ne samo da omogućuje putnicima glatko slijetanje, već je to i prirodni rezultat efekta tla, u kojem
Igračke sa prekidačem: WolVol vatrogasno vozilo dostupno!: 7 koraka
Igračke sa prilagodbom: WolVol vatrogasni kamion dostupan!: Adaptacija igračaka otvara nove načine i prilagođena rješenja koja omogućuju djeci s ograničenim motoričkim sposobnostima ili smetnjama u razvoju da samostalno komuniciraju s igračkama. U mnogim slučajevima djeca kojima su potrebne prilagođene igračke nisu u mogućnosti
Kid's Quad hakiranje u vozilo koje se samostalno vozi, prati liniju i otkriva prepreke: 4 koraka
Kid's Quad hakiranje u vozilo koje se samostalno vozi, prati liniju i otkriva prepreke. U današnjem Instructable -u pretvorit ćemo električni dječji quad od 1000 W (da, znam da je puno!) U vozilo koje se samostalno vozi, prati liniju i izbjegava prepreke! Demo video: https: //youtu.be/bVIsolkEP1kZa ovaj projekt trebat će nam sljedeći materijali
Samohodno robotsko vozilo za početnike sa izbjegavanjem sudara: 7 koraka
Samohodno robotsko vozilo za početnike sa izbjegavanjem sudara: Zdravo! Dobro došli u moje uputstvo za početnike o tome kako napraviti vlastito robotsko vozilo sa automatskim upravljanjem sa izbjegavanjem sudara i GPS navigacijom. Iznad je YouTube video koji prikazuje robota. To je model koji pokazuje kako je prava autonomija
Napravio sam četverocilindrično vozilo: 3 koraka
Napravio sam svoj četverocilindrični helikopter: Napravio sam svoj četvorocilindrični helikopter samo iz znatiželje, mogu li to učiniti? može li letjeti? Prije mnogo godina igrao sam se s RC avionima i helikopterima, znao sam da može letjeti, ali nije laka igra, mnogo se ruši, obnavlja i pokušava ponovo. Danas držim svoj daljinski upravljač, sav m