Cuprins:

MARIO KART: 5 pași
MARIO KART: 5 pași

Video: MARIO KART: 5 pași

Video: MARIO KART: 5 pași
Video: Mario Kart 8 Deluxe (Nintendo Switch) #5 2024, Iulie
Anonim
MARIO KART
MARIO KART
MARIO KART
MARIO KART

Subiectele laboratorului instrumental pentru mecatronică și laboratorul de electronică sunt ambele subiecte concepute pentru a învăța cum să lucreze cu controlul energiei electrice, producând lucrări reale sau semnale prin utilizarea conceptelor văzute anterior la alte subiecte. Concursul de kart Mario este un proiect pentru elevi de a dezvolta abilități precum munca în echipă, abilități de programare, proiectarea și creșterea creativității fiecărui participant pentru a face cea mai funcțională mașină pentru mișcare, putere (în armă) și design estetic. Competiția are loc în interiorul instalațiilor ITESM Chihuahua. Instituția va oferi studenților tot materialul necesar, dar sunt liberi să adauge lucruri pentru a obține o performanță mai bună.

Pasul 1: Explicație generală a proiectului

Explicația generală a proiectului
Explicația generală a proiectului

Mario kart este un proiect conceput pentru a dezvolta anumite abilități pentru ca elevii să învețe despre electronică, implementând un micro controler arduino. Competiția este în esență mașini proiectate de studenți, mașinile trebuie să aibă o armă pentru a sparge baloane, fiecare mașină are trei baloane și supraviețuitorul final va câștiga.

Două subiecte sunt implicate în competiție, Laboratorul instrumental de mecatronică și laboratorul de electronică, studenții ambelor grupuri se vor lupta pentru a fi cei mai buni în concursul de kart Mario.

A avut loc în timpul producătorului ITESM CUU în semestrul Agu-Dec 2016.

Fiecare mașină trebuie să aibă o armă și trei baloane, de îndată ce toate baloanele din mașină sunt distruse, veți fi în afara competiției, ultimul în picioare va fi câștigătorul concursului. Controlul mașinii trebuie să fie fără fir, printr-un telefon mobil, computer sau orice alt dispozitiv capabil să trimită semnale către motorul de control al scutului arduino.

Pasul 2: Materiale

Materiale
Materiale
Materiale
Materiale
Materiale
Materiale

Arduino UNO. Este o platformă open-source de prototipare bazată pe hardware și software ușor de utilizat. Arduino oferă un instrument de programare open-source și ușor de utilizat, pentru scrierea codului și încărcarea acestuia pe placa dvs.

Motoare cu angrenaje. Este un motor cu arbori de 5 cm lungime, cu o intrare de 12 volți și o putere maximă de ieșire de 1,55 wați, o greutate de 65 de grame și un cuplu maxim de 0,071 Nm.

Scut motor Adafruit pentru arduino. Este scutul folosit pentru a controla motoarele. În loc să folosim un zăvor și pinii PWM ai Arduino, avem la bord un cip de driver PWM dedicat complet. Acest cip gestionează toate comenzile motorului și ale vitezei peste I2C

SparkFun bluetooth mate argintiu. Bluetooth Mate este foarte similar cu modemul nostru BlueSMiRF, dar este conceput special pentru a fi utilizat cu Arduino Prosand LilyPad Arduinos. Aceste modemuri funcționează ca o conductă serială (RX / TX) și sunt un înlocuitor excelent pentru cablurile seriale. Orice flux serial de la 2400 la 115200bps poate fi transmis fără probleme de la computer la țintă.

Modul Bluetooth HC-06. Ca modul slave este un instrument simplu și util pentru proiecte mici în care căutați o comunicare ușoară între telefonul dvs. mobil și Arduino sau alte micro-controlere.

Baterie reîncărcabilă de 12v. Această sursă de energie este utilizată pentru a alimenta motoarele, arduino și modulul bluetooth, în timp ce se utilizează încă 4 baterii de 1,5 v pentru a alimenta arma.

Armă. Practic este o rezistență la căldură, printr-un cablu, încălzim un fir care este situat pe marginea bețivelor de lemn.

Echipament.

Mașină de tăiat cu laser

Cautin weller

Laptop

Software.

AutoCad

Corel Draw

Pasul 3: Proiectare și asamblare

Proiectare și asamblare
Proiectare și asamblare

Pentru design am folosit AutoCad disponibil pe centrul de calcul, designul era o mașină clasică simplă în formă pătrată, cu 4 coloane care susțineau acoperișul mașinii. Am desenat șasiul, care constă dintr-o bucată de jos, 3 pereți și un acoperiș, am lăsat o parte goală pentru a manipula arduino-ul din interiorul mașinii. Imprimarea pieselor a fost făcută în mașina de tăiat cu laser disponibilă în laborator.

Pentru a exporta fișierul din autocad într-un port USB, formatul desenului trebuie să fie într-un format Corel Draw, astfel încât mașina de tăiat cu laser să îl poată citi și scoate.

Asamblarea a constat în lipirea tuturor părților pe care le-am desenat pe software, de asemenea am lipit motoarele de șasiu și printr-o gaură din mijlocul părții de jos am trecut firele conectate la motoare.

Arma și baloanele erau situate deasupra acoperișului, unul în fața celuilalt, respectiv.

Designul armei a fost schimbat în mai multe ocazii, dar designul final a fost realizat cu două bețe de lemn separate de 3 cm și un fir de-a lungul bețelor și un cablu înscris în două șuruburi situate pe margine, cablul se va încălzi și va sparge baloanele.

Arma a fost alimentată cu 4 baterii de 1,5 volți fiecare și conectate în serie.

Pentru a trimite semnalul, am folosit un telefon sistem Android, am realizat interfața pentru a comunica telefonul mobil cu modulul bluetooth și a trimite informațiile către placa arduino apoi prin ieșire, a trimite curentul necesar pentru ca motoarele să funcționeze.

Pasul 4: Cod

Codul pe care l-am folosit era în limbajul C din programul de computer al arduino. Liniile codului au fost următoarele:

#include #include #include "utility / Adafruit_MS_PWMServoDriver.h" #include int bluetoothTx = 51; // PIN-ul TX-O al bluetooth mate, Arduino D2 int bluetoothRx = 50; // RX-I pin al bluetooth mate, Arduino D3 int i, ia, vDI, vDD, vTI, vTD, DI, DD; Software Serial bluetooth (bluetoothTx, bluetoothRx); Adafruit_MotorShield AFMS = Adafruit_MotorShield (); Adafruit_DCMotor * MotorDI = AFMS.getMotor (1); Adafruit_DCMotor * MotorDD = AFMS.getMotor (2); Adafruit_DCMotor * MotorTI = AFMS.getMotor (3); Adafruit_DCMotor * MotorTD = AFMS.getMotor (4); void setup () {Serial.begin (9600); // Începeți monitorul serial la 9600bps bluetooth.begin (115200); // Bluetooth Mate este implicit la 115200bps bluetooth.print („$”); // Imprimați de trei ori individual bluetooth.print ("$"); bluetooth.print („$”); // Introduceți întârzierea modului de comandă (100); // Întârziere scurtă, așteptați ca Mate să trimită înapoi CMD bluetooth.println ("U, 9600, N"); // Schimbați temporar viteza de transmisie la 9600, fără paritate // 115200 poate fi uneori prea rapid pentru ca NewSoftSerial să retransmită datele în mod fiabil bluetooth.begin (9600); // Porniți serialul bluetooth la 9600 AFMS.begin (); MotorDI-> setSpeed (150); MotorDI-> run (FORWARD); MotorDI-> run (RELEASE); MotorDD-> setSpeed (150); MotorDD-> run (FORWARD); MotorDD-> run (RELEASE); MotorTI-> setSpeed (150); MotorTI-> run (FORWARD); MotorTI-> run (RELEASE); MotorTD-> setSpeed (150); MotorTD-> run (FORWARD); MotorTD-> run (RELEASE); } void loop () {if (bluetooth.available ()) // Dacă bluetooth a trimis caractere {i = bluetooth.read (); } if (Serial.available ()) // Dacă lucrurile au fost tastate în monitorul serial {// Trimiteți orice caractere monitorul serial imprimă pe bluetooth bluetooth.print ((char) Serial.read ()); } if (ia! = i) {switch (i) {case 119: bluetooth.println ("w"); vDI = 250; vDD = 250; vTI = 250; vTD = 250; DI = 1; DD = 1; pauză; cazul 101: bluetooth.println ("e"); vDI = 220; vDD = 50; vTI = 220; vTD = 50; DI = 1; DD = 1; pauză; cazul 100: bluetooth.println ("d"); vDI = 250; vDD = 250; vTI = 250; vTD = 250; DI = 1; DD = 2; pauză; cazul 115: bluetooth.println ("s"); vDI = 0; vDD = 0; vTI = 0; vTD = 0; DI = 1; DD = 1; pauză; cazul 97: bluetooth.println ("a"); vDD = 250; vDI = 250; vTD = 250; vTI = 250; DI = 2; DD = 1; pauză; cazul 113: bluetooth.println ("q"); vDD = 250; vDI = 50; vTD = 250; vTI = 50; DI = 1; DD = 1; pauză; cazul 120: bluetooth.println ("x"); vDI = 220; vDD = 220; vTI = 220; vTD = 220; DI = 2; DD = 2; pauză; } MotorDI-> setSpeed (vDI); MotorDI-> run (DI); MotorDD-> setSpeed (vDD); MotorDD-> run (DD); MotorTI-> setSpeed (vTI); MotorTI-> run (DI); MotorTD-> setSpeed (vTD); MotorTD-> run (DD); ia = i; }}

Pasul 5: Concurență

Competiția a fost despre spargerea altor baloane, așa cum sa explicat în introducere. Iată un videoclip al concursului. Mașina pătrată roz este cea pe care am făcut-o. Eram CAMPIONII.

Recomandat: