Taula de continguts:
Vídeo: Vehicle submergible: 5 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:14
**************** AQUEST INSTRUCTABLE ÉS AIXÍ UNA OBRA EN PROGRÉS ****************
Aquest instructable es va crear per complir els requisits del projecte del Makecourse de la Universitat del Sud de Florida (www.makecourse.com).
Aquest instructiu serà una breu visió general de la creació del vehicle submergible que vaig dissenyar i construir per a la meva classe Makecourse a la Universitat del sud de Florida. En aquest instructiu proporcionaré una llista de materials, el codi de control que he creat per a l’Arduino Uno que he utilitzat i una visió general de com muntar el submergible.
Pas 1: materials
L'electrònica utilitzada on:
1x Arduino Uno
1x càmera d'acció mobius
1x càmera d'acció mobius usb-b a cable A / V
1x pantalla de visualització de camp 777
1x turnigy marine 50A ESC (control electrònic de velocitat)
1x targeta de programació turnigy marine
1x T-Motor Navigator 400kv
1x YEP 20A BEC (circuit d’eliminació de bateries)
6x servos impermeables hobby king HK15139
2x connectors en paral·lel i arnesos
2 cables d'extensió de servo de 18 polzades
Cables d'extensió de servo de 6x 6 polzades
2x bateries Lipo de 1300 mah 3s
2x bateries Lipo de 2500 mah 4s
1x placa de distribució de potència amb sortides fixes tant de 5v com de 12v
Els materials de construcció on:
1x full de fusta contraxapada de 3/16 polzades
1x tub d’enviament d’ID ABS de 6 polzades
1x tub de silicona
1x llauna de segellat flexible
4x bobines de filament d’impressora 3D ABS
1x portaobjectes de 24 polzades
Tub de contracció de calor
1x 10 peus de velcro duraloc de la marca scotch
1x epoxi de plàstic soldat JB
Càmera de seguretat acrílica 1x 6,2 polzades de diàmetre
2 passos Ethernet IP68
Cable ethernet de 2x 24 polzades cat6
1 cable Ethernet cat6 de 200 peus
El maquinari utilitzat va ser:
Cargols de fusta de llautó de 24x 1/2 polzada
24x ------ cargols (inclosos amb servos)
Les eines utilitzades:
Tornavisos de capçalera Philip i Flat
Joc de claus Allen
Soldador
Pistola de calor
Impressora 3D (he utilitzat un Monoprice Maker Select Plus)
Pas 2: programació
A continuació es mostra el codi que es va crear per controlar el submergible. També he adjuntat el fitxer.ino perquè es pugui descarregar.
Aquest codi es va crear per a l'Arduino Uno mitjançant el compilador Arduino.
/**********************************************************************************************************************************************************************
Autor: Jonah Powers Data: 9/11/2018 Finalitat: Codi de control per a un vehicle submergible operat a distància ****************************** *************************************************** *************************************************** ************************************ / #include // Inclou Servo Library Servo roll1; // Declarar roll1 com a servo Servo roll2; // Declarar roll2 com a servo Servo elev1; // Declarar elev1 com a servo Servo elev2; // Declarar elev2 com a servo servo yaw1; // Declarar Yaw1 com a servo Servo Yaw2; // Declarar yaw2 com a servo Servo esc; // Declarar esc com a servo
int pot1 = 0; // Inicialitzant la variable pot1 com a enter i establint-la igual a 0 int pot2 = 1; // Inicialitzant la variable pot2 com a enter i establint-la igual a 2 int pot3 = 2; // Inicialitzant la variable pot3 com a enter i establint-la en 4 int pot4 = 3; // Inicialitzant la variable pot4 com a enter i establint-la igual a 5 int val1; // Variable inicialitzadora val1 com a enter int val2; // Variable inicialitzadora val2 com a enter int val3; // Variable inicialitzadora val3 com a enter int val4; // Variable inicialitzadora val4 com a enter int val5; // Variable inicialitzadora val5 com a enter int val6; // Variable inicialitzadora val6 com a enter int val7; // Variable inicialitzadora val7 com a enter int val8; // Inicialitzant la variable val8 com un enter int mspeed; // Variable inicialitzant mspeed com a enter
void setup () {// Etapa d'inicialització d'Arduino Serial.begin (9600); // Inicialització de la monitora sèrie roll1.attach (2); // Col·locació del servo roll1 al pin digital 2 roll2.attach (3); // Fixació del servo roll2 al pin digital 3 elev1.attach (5); // Fixació del servo elev1 al pin digital 5 elev2.attach (6); // Fixació del servo elev2 al pin digital 6 yaw1.attach (8); // Fixació del servo yaw1 al pin digital 8 yaw2.attach (9); // Fixació del servo yaw2 al pin digital 9 esc.attach (11); // Fixació del servo esc al pin digital 11 roll1.write (90); // Escrivint el rotlle servo1 a la seva posició central roll2.write (90); // Servo roll2 d’escriptura a la seva posició centrada elev1.write (90); // Escrivint el servo elev1 a la seva posició centrada elev2.write (90); // Escrivint el servo elev2 a la seva posició central yaw1.write (90); // Escrivint servo yaw1 a la seva posició central yaw2.write (90); // Escrivint el servo yaw2 a la seva posició central esc.write (180); // Escriure servo esc a la seva posició de retard centrada (2500); // Esperant 2 segons esc.write (90); retard (5000); }
void loop () {// Codi principal per fer un bucle infinitament si (analogRead (pot1) <1 && analogRead (pot2) <1 && analogRead (pot3) <1 && analogRead (pot4) = 485 && val1 <= 540) {// Comprovant si el "Joystick" (potenciòmetre) està centrat roll1.write (90); // Escriptura del servo roll1 a la posició central roll2.write (90); // Escriptura del servo roll2 a la posició central} else {// Què cal fer si el "Joystick" no està centrat val1 = mapa (val1, 0, 1023, 10, 170); // Assignació de val1 de 10 a 170 i assignació a val1 roll1.write (val1); // Escriptura del servo roll1 al positó definit per val1 roll2.write (val1); // Escriptura del servo roll2 al positó definit per val1}
val2 = analogRead (pot2); // Llegint pot2 (pin analògic 2) i deseu el valor com val2 if (val2> = 485 && val2 <= 540) {// Comprovant si el "Joystick" (potenciòmetre) està centrat elev1.write (90); // Escrivint el servo elev1 a la posició central elev2.write (90); // Escriure el servo elev2 a la posició central} else {// Què cal fer si el "Joystick" no està centrat val3 = mapa (val2, 0, 1023, 10, 170); // Assignació de val2 de 10 a 170 i assignació a val3 val4 = mapa (val2, 0, 1023, 170, 10); // Assignació de val2 de 170 a 10 i assignació a val4 elev1.write (val3); // Servo d'escriptura elev1 a positó definit per val3 elev2.write (val4); // Escriptura del servo elev2 al positó definit per val4}
val5 = analogRead (pot3); // Llegint pot3 (pin analògic 4) i deseu el valor com val5 if (val5> = 485 && val5 <= 540) {// Comprovant si el "Joystick" (potenciòmetre) està centrat yaw1.write (90); // Escrivint servo yaw1 a la posició central yaw2.write (90); // Escriure el servo yaw2 a la posició central} else {// Què cal fer si el "Joystick" no està centrat val6 = mapa (val5, 0, 1023, 10, 170); // Assignació de val5 de 10 a 170 i assignació a val6 val7 = mapa (val5, 0, 1023, 170, 10); // Assignació de val5 de 10 a 170 i assignació a val7 yaw1.write (val6); // Escrivint servo yaw1 a positó definit per val6 yaw2.write (val7); // Servo d'escriptura yaw2 al positó definit per val7}
val8 = analogRead (pot4); // Llegint pot4 (pin analògic 5) i deseu el valor com val8 if (val8> 470 && val8 80 && val8 <80) || (mspeed80)) {// Comprovar si el motor està a punt de canviar de direcció esc.write (80); retard (1000); // Esperant 1000 mil·lisegons} esc.write (val8); // Escriure servo esc a la velocitat definida per val8 mspeed = val8; // Emmagatzematge de la velocitat actual per a la comparació}} Serial.print ("accelerador"); // Utilitzant Serial Print per mostrar la paraula "Throttle" Serial.println (val8); // Utilitzant Serial Print per mostrar el valor que l’accelerador s’estableix en Serial.print ("roll"); // Utilitzant Serial Print per mostrar la paraula "Roll" Serial.println (val1); // Utilitzant Serial Print per mostrar el valor que el rodatge està definit en Serial.print ("pitch"); // Utilitzant Serial Print per mostrar la paraula "Pitch" Serial.println (val3); // Utilitzant Serial Print per mostrar el valor que pitch1 està definit a Serial.println (val4); // Utilitzant Serial Print per mostrar el valor que pitch2 està definit a Serial.print ("yaw"); // Utilitzant Serial Print per mostrar la paraula "Yaw" Serial.println (val6); // Utilitzant Serial Print per mostrar el valor que yaw1 s'estableix en Serial.println (val7); // Utilització de la impressió en sèrie per mostrar el valor que es defineix a yaw2}
Pas 3: Circuit
Adjunta una foto del circuit a bord del submergible.
Vaig crear un blindatge personalitzat per a l’Arduino per simplificar el cablejat. He penjat els fitxers Eagle Schematic & Board per a l'escut. Vaig utilitzar un LPKF S63 per fresar la placa. els Servos de la part davantera que controlen el rotllo es connectaran a Arduino
s'adjunta una foto del circuit a l'interior del controlador.
Pas 4: peces impreses en 3D
He imprès tots aquests fitxers al meu Monoprice Maker Select Plus. He utilitzat filament Esun ABS 1,75 mm. La meva configuració d'impressió era de 105 graus C per a la temperatura del llit d'impressió i de 255 graus C per a la temperatura de l'extrusora. Només es necessita 1 de cada part, tret que necessiteu 6 còpies de l’ala frontal. Tingueu en compte que aquestes peces es van imprimir amb un gruix de paret ajustat a 1000 mm. Això es va fer de manera que les peces s’imprimissin amb un 100% de farciment de manera que fossin negatives.
Pas 5: Muntatge
********************************* PRÒXIMAMENT *************** *******************
Recomanat:
OMeJI - Equip 15 SubBob Squarepants Submergible: 37 passos
OMeJI - Equip 15 SubBob Squarepants submergible: es tracta d'un vehicle submergible / de control remot de PVC basat en la planificació 40 de 1/2 polzada. Va ser dissenyat per recollir dues banderes a la part inferior d’una piscina de nou peus amb els seus ganxos dobles. Les banderes formaven part d'una competició organitzada per l'Academy High School
Submergible 2017: 95 passos
Submergible 2017: submergible 2017
ROV submergible de bricolatge: 8 passos (amb imatges)
ROV submergible de bricolatge: què tan difícil pot ser? Resulta que hi havia diversos desafiaments a l’hora de fer un ROV submergible. Però va ser un projecte divertit i crec que va tenir força èxit. El meu objectiu era que no costés una fortuna, que fos fàcil de conduir i que tingués una càmera
BTS - 33 - Submergible: 11 passos
BTS - 33 - Submergible: aquest instructiu us ensenyarà a fer un submergible amb un control de 3 interruptors
BTS - Equip 28 (R2-DTimbs) Submergible / submarí: 17 passos
BTS - Team 28 (R2-DTimbs) Submergible / submarí: tutorial per construir un submergible a partir de materials que es poden trobar a la ferreteria local. El submergible final podrà avançar, endarrere, girar, pujar i moure’s cap avall per tota l'aigua