Innehållsförteckning:
Video: Dränkbart fordon: 5 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:45
***************** DETTA INSTRUKTABEL ÄR STADIGT ETT ARBETE PÅGÅNG *****************
Denna instruerbara skapades för att uppfylla projektkravet för Makecourse vid University of South Florida (www.makecourse.com).
Denna instruktionsbok kommer att ge en kort översikt över skapandet av det dränkbara fordonet som jag konstruerade och byggde för min Makecourse -klass vid University of South Florida. I denna instruktionsbok kommer jag att tillhandahålla en faktura, kontrollkoden som jag skapade för Arduino Uno jag använde och en översikt över hur du monterar dränkbar.
Steg 1: Material
Elektroniken som används där:
1x Arduino Uno
1x mobius actionkamera
1x mobius actionkamera usb-b till A/V-kabel
1x fältvy 777 skärm
1x turnigy marine 50A ESC (elektronisk hastighetskontroll)
1x turnigy marint programmeringskort
1x T-Motor Navigator 400kv
1x YEP 20A BEC (eliminationskrets för batterier)
6x hobby king HK15139 vattentäta servon
2x parallella T-kontakt y sele
2x 18 tums servoförlängningskablar
6x 6 tum servoförlängningskablar
2x 1300mah 3s Lipo -batterier
2x 2500mah 4s Lipo -batterier
1x kraftfördelningskort med både 5v och 12v fasta utgångar
Byggmaterialen där:
1x 3/16 tum plywoodskiva
1x 6 tums ID ABS leveransrör
1x silikonrör
1x burk flex tätning
4x spolar 3D -filament av ABS -skrivare
1x 24 tums lådglas
Krympslang
1x 10 fot scotch duraloc kardborre
1x JB svetsad plast epoxi
1x 6,2 tum diameter akryl säkerhetskamera kupol
2x IP68 ethernet -genombrott
2x 24 tum cat6 ethernet -kabel
1x 200 fot cat6 ethernet -kabel
Hårdvaran som användes var:
24x 1/2 tum träskruvar i mässing
24x ------ skruvar (ingår i servon)
Verktygen som används:
Philip's och Flat head skruvdragare
Insexnyckelsats
Lödkolv
Värmepistol
3D -skrivare (jag använde en Monoprice Maker Select Plus)
Steg 2: Programmering
Nedan är koden som skapades för att styra dränkbar. Jag har också bifogat.ino -filen så att den kan laddas ner.
Denna kod skapades för Arduino Uno med Arduino -kompilatorn.
/**********************************************************************************************************************************************************************
Författare: Jonah Powers Datum: 2018-11-11 Syfte: Kontrollkod för fjärrstyrt dränkbart fordon ****************************** ************************************************** ************************************************** ***********************************/#include // Inklusive servobibliotek Servo roll1; // Deklarera rulle1 för att vara en servoservorulle2; // Förklarar roll2 för att vara en servo Servo elev1; // Förklarar elev1 för att vara en servo Servo elev2; // Förklarar elev2 för att vara en servo Servo yaw1; // Förklarar yaw1 för att vara en servo Servo yaw2; // Förklarar yaw2 vara en servo Servo esc; // Förklarar esc för att vara en servo
int pot1 = 0; // Intitialiserar variabel pot1 som ett heltal och ställer det lika med 0 int pot2 = 1; // Intitialiserar variabel pot2 som ett heltal och ställer det lika med 2 int pot3 = 2; // Intitialiserar variabel pot3 som ett heltal och ställer in det lika med 4 int pot4 = 3; // Intitialiserar variabel pot4 som ett heltal och ställer det lika med 5 int val1; // Intitialiserande variabel val1 som ett heltal int val2; // Intitialiserande variabel val2 som ett heltal int val3; // Intitialiserande variabel val3 som ett heltal int val4; // Intitialiserande variabel val4 som ett heltal int val5; // Intitialiserande variabel val5 som ett heltal int val6; // Intitialiserande variabel val6 som ett heltal int val7; // Intitialiserande variabel val7 som ett heltal int val8; // Intitialiserande variabel val8 som ett heltal int mspeed; // Intitialiserande variabel mspeed som ett heltal
void setup () {// Arduino initialization stage Serial.begin (9600); // Initierar seriell moniteringsrulle1.attach (2); // Fäst servorulle1 till digital stift 2 rulle2. Fäst (3); // Fäst servorulle2 till digital stift 3 elev1. Fäst (5); // Fäst servo elev1 till digital stift 5 elev2. Fäst (6); // Fäst servo elev2 på digital stift 6 yaw1. Fäst (8); // Fäst servo yaw1 till digital stift 8 yaw2. Fäst (9); // Fäst servo yaw2 på digital stift 9 esc.attach (11); // Fäst servo esc till digital pin 11 roll1.write (90); // Skriva servorulle1 till dess centrerade position roll2.write (90); // Skriva servorulle2 till sitt centrerade läge elev1.write (90); // Skriva servo elev1 till sitt centrerade läge elev2.write (90); // Skriva servo elev2 till sitt centrerade läge yaw1.write (90); // Skriva servo yaw1 till dess centrerade position yaw2.write (90); // Skriva servo yaw2 till dess centrerade position esc.write (180); // Skriva servo esc till dess centrerade positionsfördröjning (2500); // Väntar 2 sekunder esc.write (90); fördröjning (5000); }
void loop () {// Huvudkod för loop loop oändligt om (analogRead (pot1) <1 && analogRead (pot2) <1 && analogRead (pot3) <1 && analogRead (pot4) = 485 && val1 <= 540) {// Kontrollerar om "Joystick" (potentiometer) är centrerad roll1.write (90); // Skriva servorulle1 till mittläge roll2.write (90); // Skriva servorull2 till mittläge} annat {// Vad ska jag göra om "joystick" inte är centrerad val1 = map (val1, 0, 1023, 10, 170); // Kartlägga val1 från 10 till 170 och tilldela till val1 roll1.write (val1); // Skriva servo roll1 till positon definierat av val1 roll2.write (val1); // Skriva servo roll2 till positon definierad av val1}
val2 = analogRead (pot2); // Läs pot2 (analog pin 2) och spara värde som val2 if (val2> = 485 && val2 <= 540) {// Kontrollerar om "Joystick" (potentiometer) är centrerad elev1.write (90); // Skriva servo elev1 till mittläge elev2.write (90); // Skriva servo elev2 till mittläge} annat {// Vad ska jag göra om "Joystick" inte är centrerad val3 = map (val2, 0, 1023, 10, 170); // Kartlägga val2 från 10 till 170 och tilldela till val3 val4 = map (val2, 0, 1023, 170, 10); // Kartlägga val2 från 170 till 10 och tilldela till val4 elev1.write (val3); // Skriva servo elev1 till positon definierad av val3 elev2.write (val4); // Skriva servo elev2 till positon definierat av val4}
val5 = analogRead (pot3); // Läs pot3 (analog pin 4) och spara värde som val5 if (val5> = 485 && val5 <= 540) {// Kontrollerar om "Joystick" (potentiometer) är centrerad yaw1.write (90); // Skriva servo yaw1 till mittläge yaw2.write (90); // Skriva servo yaw2 till mittläge} annat {// Vad ska jag göra om "Joystick" inte är centrerad val6 = map (val5, 0, 1023, 10, 170); // Kartlägga val5 från 10 till 170 och tilldela till val6 val7 = map (val5, 0, 1023, 170, 10); // Kartlägga val5 från 10 till 170 och tilldela till val7 yaw1.write (val6); // Skriva servo yaw1 till positon definierat av val6 yaw2.write (val7); // Skriva servo yaw2 till positon definierat av val7}
val8 = analogRead (pot4); // Läs pot4 (analog pin 5) och spara värde som val8 if (val8> 470 && val8 80 && val8 <80) || (mspeed80)) {// Kontrollerar om motorn ska ändra riktning esc.write (80); fördröjning (1000); // Väntar 1000 millisekunder} esc.write (val8); // Skriva servo esc till hastighet definierad av val8 mspeed = val8; // Lagra aktuell hastighet för jämförelse}} Serial.print ("gas"); // Använda Serial Print för att visa ordet "Throttle" Serial.println (val8); // Använda Serial Print för att visa värdet som gasreglaget är inställt på Serial.print ("roll"); // Använda Serial Print för att visa ordet "Roll" Serial.println (val1); // Använda Serial Print för att visa det värde som rullen är inställd på Serial.print ("pitch"); // Använda Serial Print för att visa ordet "Pitch" Serial.println (val3); // Använda Serial Print för att visa värdet som pitch1 är inställt på Serial.println (val4); // Använda Serial Print för att visa värdet som pitch2 är inställt på Serial.print ("yaw"); // Använda Serial Print för att visa ordet "Yaw" Serial.println (val6); // Använda Serial Print för att visa värdet som yaw1 är inställt på Serial.println (val7); // Använda seriell utskrift för att visa värdet som yaw2 är inställt på}
Steg 3: Kretsar
Bifogat är ett foto av kretsen ombord på dränkaren.
Jag skapade en anpassad sköld för Arduino för att förenkla mina ledningar. Jag har laddat upp Eagle Schematic & Board -filerna för skölden. Jag använde en LPKF S63 för att fräsa brädet. Servos på framsidan som kontrollrullen kommer att anslutas till Arduino
bifogad är ett foto av kretsen inuti styrenheten.
Steg 4: 3D -tryckta delar
Jag skrev ut alla dessa filer på min Monoprice Maker Select Plus. Jag använde Esun ABS 1,75 mm filament. Mina utskriftsinställningar var 105 grader C för tryckbäddens temperatur och 255 grader C för extruderns temperatur. Endast 1 av varje del behövs förutom att du behöver 6 kopior av främre vingen. Observera att dessa delar trycktes med väggtjocklek inställd på 1000 mm. Detta gjordes för att delarna skulle tryckas med 100% fyllning så att de skulle vara negativt flytande.
Steg 5: Montering
********************************* KOMMER SNART *************** ********************
Rekommenderad:
Kid's Quad Hacking in a Self Driving, Line Following and Obstacle Detecting Fordon: 4 steg
Kid's Quad Hacking Into a Self Driving, Line Following and Obstacle Detecting Vehicle .: I dagens instruktionsprogram kommer vi att förvandla en 1000Watt (Ja jag vet mycket!) Electric Kid's quad till ett självkörande, linjeföljande och hinderundvikande fordon! Demovideo: https: //youtu.be/bVIsolkEP1kFör detta projekt behöver vi följande material
Motortemperatursensor/mätare med trådlös sond för klassiska fordon: 7 steg
Motortemperatursensor/mätare med trådlös sond för klassiska fordon: Jag gjorde denna sond för min underbara Çipitak. En fiat 126 -bil med en 2 -cylindrig luftkyld motor under motorhuven bak. Çipitak har ingen temperaturmätare som visar hur varm motorn är så jag trodde att en sensor skulle vara till hjälp. Ville också att sensorn skulle vara tråd
Ett enkelt sätt att få data från ditt fordon: 4 steg
Ett enkelt sätt att hämta data från ditt fordon: Här introducerar vi ett enkelt sätt att få data från ditt fordons OBD-II-kontakt samt GPS-data. OBD-II, den andra omborddiagnostiken, är en bilterm som hänvisar till ett fordons självdiagnostik och rapporteringsförmåga. OBD -system ger
Impact Recorder för fordon: 18 steg (med bilder)
Impact Recorder för fordon: Impact Recorder är utformad för att registrera påverkan som drabbas av fordonet under körning eller stillastående. Effekterna lagras i databasen i form av avläsningar såväl som video/bild. Vid påverkan kan fjärranvändare verifieras i realtid och fjärr
Styr ett fordon med handen: 8 steg
Styr ett fordon med din hand: Detta projekt var för 'Creative Electronics', en BEng Electronics Engineering 4: e årsmodul vid University of Málaga, School of Telecommunications (uma.es/etsi-de-telecomunicac//In denna instruktiva kommer vi att se hur man skapar ett armband