Мазмұны:

TA-ZON-BOT (жолды жалғастырушы): 3 қадам (суреттермен)
TA-ZON-BOT (жолды жалғастырушы): 3 қадам (суреттермен)

Бейне: TA-ZON-BOT (жолды жалғастырушы): 3 қадам (суреттермен)

Бейне: TA-ZON-BOT (жолды жалғастырушы): 3 қадам (суреттермен)
Бейне: Er kannte die Bärenschlucht nicht - Rennradtour in die Fränkische Schweiz 🇩🇪 2024, Қараша
Anonim
TA-ZON-BOT (жол ізбасары)
TA-ZON-BOT (жол ізбасары)
TA-ZON-BOT (жол ізбасары)
TA-ZON-BOT (жол ізбасары)

TA-ZON-BOT

El tazón siguelineas

Hemos realizado este robot роботтары оқушылардан, (кіші графиктерден).

Қарапайым қатысушылар OSHWDEN A Coruña қатысушысы болып табылады.

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

google сайты

TA-ZON-BOT

Тостаған келесі жолмен жүреді

Біз бұл роботты біздің студенттердің көмегімен сіздің артыңыздан жасадық (минимэйкерлерге рахмет).

Бұл A Coruña OSHWDEN -ге қатысу үшін экспресс жоба болды.

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

Google аудармашысы

1 -қадам: 1 -қадам: Компоненттер

1 -қадам: компоненттер
1 -қадам: компоненттер
1 -қадам: компоненттер
1 -қадам: компоненттер
1 -қадам: компоненттер
1 -қадам: компоненттер

Ең маңызды компоненттер

han sido los siguientes.

Метакрилаттың бір түрі. (Podéis utilizar cualquier ауруы, негізгі құрал -саймандар).

1 Тапсырма (роботы бойынша роботы бойынша).

Жүктеудің 2 нұсқасы.

2 motor con las siguientes especificaciones:

Ерекшеліктер (6V -параграф):

Өлшемдері: 26 x 10 x 12 мм

Редукция коэффициенті: 30: 1

Диаметрі: 3 мм (контура блогы)

Номиналды сыйымдылық: 6Vcc (3 -тен 9Vcc -ге дейін)

Жүру жылдамдығы: 1000 айн / мин

Тұтыну кернеуі: 120mA (1600mA con carga)

Момент: 0,6кг/см (максимум)

Песо: 10 грамм

Интернетке қосылыңыз:

1 орын Arduino UNO (reciglada de un proyecto antiguo)

Adafruit v2.3 моторлы 1 қалқан:

AAA -дан 8 пилатқа дейін (2 қолданба жоқ).

6 торниллион - бұл өте маңызды элементтер

bridas para los motores, a un a goma elástica para port a pila pa las de uno lamina de plásticos para la del del porta pilas.

QTR-8RC con las siguientes características сенсорларының 1 жиыны;

QTR-8x рефлексиялық сенсор массивінің спецификациясы • Өлшемдері: 2,95 «х 0,5» • Жұмыс кернеуі: 3,3-5,0 В • Қоректену тогы: 100 мА • QTR-8A үшін шығыс форматы: 0 В-тан бастап берілетін кернеуге дейінгі 8 аналогты кернеу. • QTR-8RC үшін шығыс форматы: уақытша жоғары импульс ретінде оқуға болатын 8 цифрлық енгізу-шығару үйлесімді сигналдары • Оңтайлы сезу қашықтығы: 0,125 дюйм (3 мм) • QTR-8A үшін максималды ұсынылатын сезу қашықтығы: 0,25 « (6 мм) • QTR-8RC үшін максималды ұсынылатын сезу қашықтығы: 0,375 дюйм (9,5 мм) • Жоғарғы түйреуішсіз салмағы: 0,11 унция (3,1 г)

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

Ансамбльдік тапсырмалар… próximamente un vídeo más detallado…

Біз қолданған компоненттер келесідей болды.

Метакрилаттың дөңгелек бөлігі. (Сіз кез келген дизайнды қолдана аласыз, біздің негіз шараны ыдысты төңкеріп қоюға жеткілікті).

1 таңғы ас (роботты желіге шоғырландыру үшін қолданылады).

Қайта өңделген ойыншықтың 2 дөңгелегі.

Келесі сипаттамалары бар 2 қозғалтқыш:

Ерекшеліктер (6В үшін): Өлшемдері: 26 x 10 x 12 мм Редуктордың қатынасы: 30: 1 Біліктің диаметрі: 3 мм (бекітетін ойықпен) Номиналды кернеу: 6 Вдц (3 -тен 9 Вдц аралығында жұмыс істей алады) Жүктемесіз айналу жылдамдығы: 1000 айн / мин жүктемесіз: 120мА (жүктеме кезінде 1600мА) Момент: 0,6кг / см (максимум) Салмағы: 10 грамм

Интернет-дүкеннің сілтемесі:

1 Arduino UNO тақтасы (ескі жобадан өңделген)

Adafruit v2.3 қозғалтқыштары үшін 1 қалқан:

1 8 AAA батареясы бар батарея ұстағышы (біз 2 қуат көзін пайдаланбаймыз).

Суретте көрсетілгендей элементтерді біріктіру үшін 6 бұранда мен гайка

қозғалтқыштарға арналған фланецтер, батарея ұстағышын ұстауға арналған серпімді резеңке және батарея ұстағышының негізі үшін пластмассадан жасалған парақ.

Келесі сипаттамалары бар QTR-8RC датчиктерінің 1 массиві;

QTR-8x рефлексиялық сенсор массивінің спецификациясы • Өлшемдері: 2,95 «х 0,5» • Жұмыс кернеуі: 3,3-5,0 В • Қоректену тогы: 100 мА • QTR-8A үшін шығыс форматы: 0 В-тан бастап берілетін кернеуге дейінгі 8 аналогты кернеу. • QTR-8RC үшін шығыс форматы: уақытша жоғары импульс ретінде оқуға болатын 8 цифрлық енгізу-шығару үйлесімді сигналдары • Оңтайлы сезу қашықтығы: 0,125 дюйм (3 мм) • QTR-8A үшін максималды ұсынылатын сезу қашықтығы: 0,25 « (6 мм) • QTR-8RC үшін максималды ұсынылатын сезу қашықтығы: 0,375 дюйм (9,5 мм) • Бағаналы түйреуішсіз салмағы: 0,11 унция (3,1 г) Сіз оны мына жерден таба аласыз:

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

Барлығын жинаңыз … жақын арада толығырақ бейне…

2 -қадам: 2 -қадам: Inspiración

Проблемалық функцияларды орындаңыз

www.programarfacil.com блогының блогы

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

Ескертпе, бұл қалқанша моторлы машиналар.

QTR-8RC калибрлік сенсоры оқулықтан тұрады

Y un ultimo enlace que os puede ayudar es este нұсқаулығы;

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

Қозғалтқыштардың жұмысын тексеру үшін біз www.programarfacil.com блогын қолдаймыз

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

Бұл қалқан басқаратын әртүрлі қозғалтқыштардың қысқаша мазмұны.

QTR-8RC датчигін калибрлеу үшін оқулықты орындауға болады

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

Сізге көмектесе алатын соңғы сілтеме - бұл нұсқаулық;

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

3 -қадам: 3 -қадам: Код

Image
Image

las conexiones entre el array de

y las placas las hicimos de la siguiente manera сенсорлары:

El Led ON және al pin цифрлық 12

Los 8 сенсоры

түйін 1 түйреуіш 8

2 түйреуіш 9

3 түйреуіш 2

түйін 4 түйреуіш 3

түйін 5 түйреуіш 4

6 түйреуіш 5

7 нүктесі 6

8 түйреуіш 7

El código va sin repasarlo (aceptan sugerencias)

#қосу

#қосу

#қосу

#қосу

// Қозғалтқыш экраны объектісін әдепкі I2C адресімен жасаңыз

Adafruit_MotorShield AFMS = Adafruit_MotorShield ();

// Немесе оны басқа I2C адресімен жасаңыз (қабаттастыру үшін айтыңыз)

// Adafruit_MotorShield AFMS = Adafruit_MotorShield (0x61);

// M1, M2, M3 немесе M4 қай портты таңдаңыз. Бұл жағдайда M1

Adafruit_DCMotor *мотор1 = AFMS.getMotor (1);

// Сіз басқа моторды M2 портында жасай аласыз

Adafruit_DCMotor *мотор2 = AFMS.getMotor (2);

// Төмендегі мәндерді роботтың қозғалтқышына, салмағына, дөңгелектің түріне және т.б.

#анықтаңыз КП.2

#анықтаңыз KD 5

50

50

70

70

#MIDDLE_SENSOR анықтаңыз 4

#анықтау NUM_SENSORS 8 // қолданылатын датчиктер санын

#define TIMEOUT 2500 // сенсор шығысы төмендегенше 2500 бізді күтеді

#define EMITTER_PIN 12 // эмитент 2 цифрлық пин арқылы басқарылады

#define DEBUG 0 // сериялық отладтау шығысы қажет болса, 1 мәніне орнатыңыз

QTRSensorsRC qtrrc ((белгісіз char ) {8, 9, 2, 3, 4, 5, 6, 7}, NUM_SENSORS, TIMEOUT, EMITTER_PIN);

қол қойылмаған int sensorValues [NUM_SENSORS];

жарамсыз орнату ()

{

кешіктіру (1000);

manual_calibration ();

set_motors (0, 0);

}

int lastError = 0;

int last_proportional = 0;

int интеграл = 0;

бос цикл ()

{

Serial.begin (9600); // Сериялық кітапхананы 9600 бит/ с жылдамдықпен орнатыңыз

Serial.println («Adafruit Motorshield v2 - DC қозғалтқышының сынағы!»);

AFMS.begin (); // әдепкі 1.6 кГц жиілікте құру

//AFMS.begin(1000); // НЕМЕСЕ басқа жиілікпен, мысалы 1КГц

// Жылдамдықты 0 -ден 255 -ке (максималды жылдамдық) бастау үшін орнатыңыз.

motor1-> setSpeed (70);

motor1-> жүгіру (АЛҒА);

// моторды қосыңыз

motor1-> жүгіру (РЕЛИЗ);

motor2-> setSpeed (70);

motor2-> жүгіру (АЛҒА);

// моторды қосыңыз

motor2-> іске қосу (РЕЛИЗ);

қол қойылмаған int сенсорлары [5];

int position = qtrrc.readLine (сенсорлар);

int қате = позиция - 2000;

int motorSpeed = KP * қате + KD * (қате - lastError);

lastError = қате;

int leftMotorSpeed = M1_DEFAULT_SPEED + motorSpeed;

int rightMotorSpeed = M2_DEFAULT_SPEED - motorSpeed;

// жоғарыдағы екі қозғалтқыш жылдамдығының көмегімен қозғалтқыш жылдамдығын орнатыңыз

set_motors (leftMotorSpeed, rightMotorSpeed);

}

void set_motors (int motor1speed, int motor2speed)

{

if (motor1speed> M1_MAX_SPEED) motor1speed = M1_MAX_SPEED; // максималды жылдамдықты шектеу

егер (motor2speed> M2_MAX_SPEED) motor2speed = M2_MAX_SPEED; // максималды жылдамдықты шектеу

if (motor1speed <0) motor1speed = 0; // моторды 0 -ден жоғары ұстаңыз

if (motor2speed <0) motor2speed = 0; // қозғалтқыш жылдамдығын 0 -ден жоғары ұстаңыз

motor1-> setSpeed (мотор1 жылдамдығы); // қозғалтқыш жылдамдығын орнату

motor2-> setSpeed (motor2speed); // қозғалтқыш жылдамдығын орнату

motor1-> жүгіру (АЛҒА);

motor2-> жүгіру (АЛҒА);

}

жарамсыз manual_calibration () {

int i;

үшін (i = 0; i <250; i ++) // калибрлеу бірнеше секундқа созылады

{

qtrrc.calibrate (QTR_EMITTERS_ON);

кешіктіру (20);

}

if (DEBUG) {// егер шын болса, сериялық шығыс арқылы сенсорлық даталарды жасаңыз

Serial.begin (9600);

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

{

Serial.print (qtrrc.calibratedMinimumOn );

Serial.print ('');

}

Serial.println ();

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

{

Serial.print (qtrrc.calibratedMaximumOn );

Serial.print ('');

}

Serial.println ();

Serial.println ();

}

}

OSHWDEM -де «экспресс» деген сөз бар.

Ұсынылған: