Orodha ya maudhui:

TA-ZON-BOT (Mfuasi wa Mstari): Hatua 3 (na Picha)
TA-ZON-BOT (Mfuasi wa Mstari): Hatua 3 (na Picha)

Video: TA-ZON-BOT (Mfuasi wa Mstari): Hatua 3 (na Picha)

Video: TA-ZON-BOT (Mfuasi wa Mstari): Hatua 3 (na Picha)
Video: НЕЗАКОННЫЕ Эксперименты c БОКСИ БУ из ПОППИ ПЛЕЙТАЙМ и ХАГИ ВАГИ в VR! 2024, Novemba
Anonim
TA-ZON-BOT (Mfuasi wa Mstari)
TA-ZON-BOT (Mfuasi wa Mstari)
TA-ZON-BOT (Mfuasi wa Mstari)
TA-ZON-BOT (Mfuasi wa Mstari)

TA-ZON-BOT

El tazón siguelineas

Hemos realizado este robot siguelineas con la ayuda de los nuestros alumnos, (gracias minimakers).

Unaweza kupata maoni yako kwa kushiriki katika OSHWDEN de A Coruña.

oshwdem.org/2017/06/oshwdem-2017/

google muuzaji

TA-ZON-BOT

Bakuli ifuatavyo mstari

Tumefanya roboti hii kukufuata kwa msaada wa wanafunzi wetu, (wapunguzaji wa shukrani).

Imekuwa mradi wa wazi kushiriki katika OSHWDEN ya A Coruña.

oshwdem.org/2017/06/oshwdem-2017/

Mtafsiri wa Google

Hatua ya 1: Hatua ya 1: Vipengele

Hatua ya 1: Vipengele
Hatua ya 1: Vipengele
Hatua ya 1: Vipengele
Hatua ya 1: Vipengele
Hatua ya 1: Vipengele
Hatua ya 1: Vipengele

Vipengele vya Los que hemos utilizados

han sido los siguientes.

Una pieza redonda de metacrilato. (Podéis utilizar cualquier diseño, nuestra base mide lo justo para colocar el tazón bocabajo).

1 Tazón de desayuno (que sirve para concentrar al robot en la linea).

2 ruedas de un juguete reciclado.

2 motores con las siguientes especificaciones:

Especificaciones (Para 6V):

Vipimo: 26 x 10 x 12 mm

Uwiano wa la reductora: 30: 1

Diámetro del eje: 3mm (kiunganisho cha bloqueo)

Jina la Voltaje: 6Vcc (puede funcionar entre 3 a 9Vcc)

Velocidad de giro sin carga: 1000rpm

Consumo sin carga: 120mA (1600mA con carga)

Wakati: 0.6kg / cm (max)

Peso: gramu 10

Enlace de tienda mkondoni: https://tienda.bricogeek.com/motores-dc/1007-motor …….

1 placa Arduino UNO (reciclada de un proyecto antiguo)

1 ngao kwa motores Adafruit v2.3:

1 Un porta pilas de 8 pilas AAA (no utilizamos 2 fuentes de alimentación).

6 tornillos y tuercas para unir los elementos como se ve en la picha

bridas para los motores, una goma elástica para sujetar el porta pilas na un trozo de una lamina de plásticos para la base del porta pilas.

Safu 1 ya sensores QTR-8RC con las siguientes características;

Vipimo vya Mpangilio wa Sensore ya Tafakari ya QTR-8x • Umbizo la pato la QTR-8RC: ishara 8 zinazoambatana na I / O za dijiti ambazo zinaweza kusomwa kama mapigo ya juu ya muda uliopangwa • Umbali unaofaa wa kuhisi: 0.125 "(3 mm) • Upeo uliopendekezwa wa kuhisi umbali wa QTR-8A: 0.25" (6 mm) • Kiwango cha juu kinachopendekezwa cha kuhisi kwa QTR-8RC: 0.375 "(9.5 mm) • Uzito bila pini za kichwa: 0.11 oz (3.1 g) Lo podéis encontrar en:

tienda.bricogeek.com/componentes/257-array-…

Kutumia sheria… unaweza kutumia…

Vipengele ambavyo tumetumia vimekuwa vifuatavyo.

Kipande cha pande zote cha methacrylate. (Unaweza kutumia muundo wowote, hatua zetu za msingi zinatosha kuweka bakuli chini).

1 Bakuli la kiamsha kinywa (linalotumika kukazia robot kwenye laini).

Magurudumu 2 ya toy iliyosindika.

Injini 2 zilizo na maelezo yafuatayo:

Maelezo (Kwa 6V): Vipimo: 26 x 10 x 12 mm Uwiano wa kipunguzaji: 30: 1 kipenyo cha Shaft: 3mm (na gombo la kufuli) Voltage ya jina: 6Vdc (inaweza kufanya kazi kati ya 3 hadi 9Vdc) Kasi ya kugeuza bila mzigo: Matumizi ya 1000rpm bila mzigo: 120mA (1600mA na mzigo) Torque: 0.6kg / cm (max) Uzito: gramu 10

Kiungo cha duka mkondoni:

Bodi 1 ya Arduino UNO (iliyosindikwa kutoka kwa mradi wa zamani)

Ngao 1 ya injini za Adafruit v2.3:

Mmiliki wa betri ya betri 8 za AAA (hatutumii umeme 2).

Screws 6 na karanga kujiunga na vitu kama inavyoonekana kwenye picha

flanges kwa motors, mpira wa kushikilia kushikilia mmiliki wa betri na kipande cha karatasi ya plastiki kwa msingi wa mmiliki wa betri.

Safu 1 ya sensorer za QTR-8RC zilizo na sifa zifuatazo;

Vipimo vya Mpangilio wa Sensore ya Tafakari ya QTR-8x • Umbizo la pato la QTR-8RC: ishara 8 zinazoambatana na I / O za dijiti ambazo zinaweza kusomwa kama mapigo ya juu ya muda uliopangwa • Umbali unaofaa wa kuhisi: 0.125 "(3 mm) • Upeo uliopendekezwa wa kuhisi umbali wa QTR-8A: 0.25" (6 mm) • Kiwango cha juu kinachopendekezwa cha kuhisi kwa QTR-8RC: 0.375 "(9.5 mm) • Uzito bila pini za kichwa: 0.11 oz (3.1 g) Unaweza kuipata katika:

tienda.bricogeek.com/componentes/257-array-de-sensores-infrarojos-qtr-8rc-digital.html

Kusanya kila kitu… video ya kina zaidi …

Hatua ya 2: Hatua ya 2: Uvuvio

Para probar el funcionamiento del los

Motores hemos inaweza kusababisha blogi hii www.programarfacil.com

programarfacil.com/blog/arduino-blog/adafr…

Endelea kusoma ikiwa ni pamoja na njia tofauti za kudhibiti moto kwa ngao hii.

Para calibrar el sensor QTR-8RC podcast ni alama ya mafunzo ya

Wakati mwingine tunastahili kuelimishwa kwa sababu ya kufundishwa;

www.instructables.com/id/Arduino-based-lin…

Ili kujaribu utendaji wa injini tumefuata msaada huu wa blogi www.programarfacil.com

programarfacil.com/blog/arduino-blog/adafruit-motor-shield-arduino/

Ni muhtasari mzuri sana wa injini tofauti ambazo ngao hii inadhibiti.

Ili kurekebisha sensorer ya QTR-8RC unaweza kufuata mafunzo ya

www.youtube.com/watch?v=_ZeybIDd80s&list=PLlNY7ygeCIzCuq0jSjPD8_LfcAsPKUcGL&index=6

Na kiunga kimoja cha mwisho ambacho kinaweza kukusaidia ni hiki kinachoweza kufundishwa;

www.instructables.com/id/Arduino-based-line-follower-using-Pololu-QTR-8RC-l/

Hatua ya 3: Hatua ya 3: Kanuni

Image
Image

las conexiones entre el safu de

sensores y las placas las hicimos de la siguiente watu:

El Led ON va al pin digital 12

Los 8 sensores van desde el

neromero 1 al pini 8

neromero 2 al pini 9

neromero 3 al pin 2

neromero 4 al pin 3

neromero 5 al pin 4

neromero 6 al pin 5

neromero 7 al pin 6

neromero 8 al pin 7

El código va sin repasarlo (se aceptan sugerencias)

# pamoja

# pamoja

# pamoja

# pamoja

// Unda kitu cha ngao ya gari na anwani chaguomsingi ya I2C

Adafruit_MotorShield AFMS = Adafruit_MotorShield ();

// Au, tengeneza kwa anwani tofauti ya I2C (sema kwa stacking)

// Adafruit_MotorShield AFMS = Adafruit_MotorShield (0x61);

// Chagua ni 'bandari' gani M1, M2, M3 au M4. Katika kesi hii, M1

Adafruit_DCMotor * motor1 = AFMS.getMotor (1);

// Unaweza pia kutengeneza motor nyingine kwenye bandari M2

Adafruit_DCMotor * motor2 = AFMS.getMotor (2);

// Badilisha maadili hapa chini ili kukidhi motors za robot yako, uzito, aina ya gurudumu, n.k.

#fafanua KP.2

#fafanua KD 5

#fafanua M1_DEFAULT_SPEED 50

#fafanua M2_DEFAULT_SPEED 50

#fafanua M1_MAX_SPEED 70

#fafanua M2_MAX_SPEED 70

#fafanua MIDDLE_SENSOR 4

#fafanua NUM_SENSORS 8 // idadi ya sensorer zilizotumiwa

#fafanua TIMEOUT 2500 // inasubiri 2500 sisi kwa matokeo ya sensa kwenda chini

#fafanua EMITTER_PIN 12 // emitter inadhibitiwa na pini ya dijiti 2

#fafanua DEBUG 0 // imewekwa kwa 1 ikiwa pato la utatuzi wa serial linahitajika

QTRSensorsRC qtrrc ((unsigned char ) {8, 9, 2, 3, 4, 5, 6, 7}, NUM_SENSORS, TIMEOUT, EMITTER_PIN);

sensa ya int iliyosainiwa [Maadili [NUM_SENSORS];

kuanzisha batili ()

{

kuchelewesha (1000);

mwongozo_calibration ();

seti_motors (0, 0);

}

int lastError = 0;

int last_proportional = 0;

ujumuishaji = 0;

kitanzi batili ()

{

Serial. Kuanza (9600); // kuanzisha maktaba ya serial kwa 9600 bps

Serial.println ("Adafruit Motorshield v2 - DC Motor mtihani!");

Kuanza kwa AFMS (); // tengeneza na frequency default 1.6KHz

//AFMS.anza (1000); // AU na masafa tofauti, sema 1KHz

// Weka kasi kuanza, kutoka 0 (mbali) hadi 255 (kasi kubwa)

motor1-> setSpeed (70);

motor1-> kukimbia (MBELE);

// washa motor

motor1-> kukimbia (KUACHA);

motor2-> setSpeed (70);

motor2-> kukimbia (MBELE);

// washa motor

motor2-> kukimbia (KUACHA);

sensorer ambazo hazijasainiwa [5];

msimamo = qtrrc.readLine (sensorer);

kosa la int = msimamo - 2000;

int motorSpeed = KP * kosa + KD * (kosa - kosa la mwisho);

kosa la mwisho = kosa;

int leftMotorSpeed = M1_DEFAULT_SPEED + Mwendo wa gari;

int rightMotorSpeed = M2_DEFAULT_SPEED - Mwendo wa gari;

// weka mwendo wa gari kwa kutumia vigeuzi viwili vya kasi ya gari hapo juu

seti_motors (kushotoMotorSpeed, kuliaMotorSpeed);

}

batili set_motors (int motor1speed, int motor2speed)

{

ikiwa (motor1speed> M1_MAX_SPEED) motor1speed = M1_MAX_SPEED; // punguza kasi ya juu

ikiwa (motor2speed> M2_MAX_SPEED) motor2speed = M2_MAX_SPEED; // punguza kasi ya juu

ikiwa (motor1speed <0) motor1speed = 0; // kuweka motor juu ya 0

ikiwa (motor2speed <0) motor2speed = 0; // kuweka kasi ya gari juu ya 0

motor1-> setSpeed (motor1speed); // kuweka kasi ya gari

motor2-> setSpeed (motor2speed); // kuweka kasi ya gari

motor1-> kukimbia (MBELE);

motor2-> kukimbia (MBELE);

}

mwongozo batili_calibration () {

int i;

kwa (i = 0; i <250; i ++) // hesabu itachukua sekunde chache

{

qtrrc.calibrate (QTR_EMITTERS_ON);

kuchelewesha (20);

}

ikiwa (DEBUG) {// ikiwa ni kweli, tengeneza nambari za sensorer kupitia pato la serial

Serial. Kuanza (9600);

kwa (int i = 0; i <NUM_SENSORS; i ++)

{

Serial.print (qtrrc.calibratedMinimumOn );

Serial.print ( );

}

Serial.println ();

kwa (int i = 0; i <NUM_SENSORS; i ++)

{

Serial.print (qtrrc.calibratedMaximumOn );

Serial.print ( );

}

Serial.println ();

Serial.println ();

}

}

Bueno ni moja kwa moja kwa sababu ya kufanya hivyo "kuelezea" kwa mashindano ya OSHWDEM.

Ilipendekeza: