
Мазмуну:
- 1 -кадам: Кара куту
- 2 -кадам: Arduino
- 3 -кадам: Blackboxко Arduino тиркөө
- 4 -кадам: Ultrasonic Sensor
- 5 -кадам: Breadboard сенсорунун Arduino менен туташуусу
- 6 -кадам: Motor Shield
- 7 -кадам: Motor Shield'ди Arduino менен туташтыруу
- 8 -кадам: 4 моторду жана батареяны калканга туташтыруу
- 9 -кадам: Роботту программалоо
2025 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2025-01-23 14:51


Роботко жол бербөө үчүн тоскоолдукту кантип куруу керек
1 -кадам: Кара куту

биринчи кадам мен робот үчүн база катары кара кутуну колдонгон.
2 -кадам: Arduino

Arduino бүт системанын мээси жана моторлорубузду оркестрлейт
3 -кадам: Blackboxко Arduino тиркөө

Мен ардуинону ысык клей менен кара кутуга бекиттим
4 -кадам: Ultrasonic Sensor

Өз алдынча кыймылдай ала турган робот жасоо үчүн бизге кандайдыр бир киргизүү, биздин максатка туура келген сенсор керек. УЗИ сенсору - УЗИ толкундарынын жардамы менен объектке чейинки аралыкты өлчөөчү прибор. УЗИ сенсору объекттин жакындыгы тууралуу маалыматты жеткирүүчү УЗИ импульстарын жөнөтүү жана алуу үчүн өзгөрткүчтү колдонот.
5 -кадам: Breadboard сенсорунун Arduino менен туташуусу


Мен зымдарды нан жана ардуинонун ортосундагы байланышты колдонуш үчүн колдончумун.
Пинг сенсорунун башка пин жайгашуусу болушу мүмкүн, бирок анда чыңалуу, жерге туташуу, триггер жана жаңырык пин болушу керек экенине көңүл буруңуз.
6 -кадам: Motor Shield

Arduino такталары DC кыймылдаткычтарын өз алдынча башкара алышпайт, анткени алар жаратып жаткан агымдар өтө төмөн. Бул маселени чечүү үчүн биз мотор калканчтарын колдонобуз. тепкич мотору. … Бул казыктарга кайрылуу менен, сиз баштоо үчүн мотор каналын тандап, мотордун багытын (полярдыкты), мотор ылдамдыгын (PWM) орното аласыз, моторду токтотуп, иштете аласыз жана ар бир каналдын учурдагы сиңирүүсүн көзөмөлдөй аласыз.
7 -кадам: Motor Shield'ди Arduino менен туташтыруу

Жөн эле мотор калканчын сенсор зымдары кысылып ардуиного тиркеңиз
8 -кадам: 4 моторду жана батареяны калканга туташтыруу

Ар бир Motor Shieldдин (жок дегенде) эки каналы бар, бири мотор үчүн, экинчиси кубат булагы үчүн, аларды бири -бирине карата туташтырыңыз
9 -кадам: Роботту программалоо
бул кодду иштетүү
#кошуу #кошуу
NewPing sonar (TRIG_PIN, ECHO_PIN, MAX_DISTANCE);
AF_DCMotor мотор1 (1, MOTOR12_1KHZ); AF_DCMotor мотор2 (2, MOTOR12_1KHZ); AF_DCMotor мотор3 (3, MOTOR34_1KHZ); AF_DCMotor мотор4 (4, MOTOR34_1KHZ); Servo myservo;
#TRIG_PIN A2 аныктоо #ECHO_PIN A3 аныктоо #MAX_DISTANCE 150 аныктоо #MAX_SPEED 100 #аныктоо MAX_SPEED_OFFSET 10
логикалык goForward = false; int расстояние = 80; int speedSet = 0;
жараксыз орнотуу () {
myservo.attach (10); myservo.write (115); кечигүү (2000); аралык = readPing (); кечиктирүү (100); аралык = readPing (); кечиктирүү (100); аралык = readPing (); кечиктирүү (100); аралык = readPing (); кечиктирүү (100); }
void loop () {int distanceR = 0; int расстояние L = 0; кечиктирүү (40); if (расстояние <= 15) {moveStop (); кечиктирүү (50); moveBackward (); кечиктирүү (150); moveStop (); кечиктирүү (100); расR = lookRight (); кечиктирүү (100); расстояние L = lookLeft (); кечиктирүү (100);
if (distanceR> = distanceL) {turnRight (); moveStop (); } else {turnLeft (); moveStop (); }} else {moveForward (); } аралык = readPing (); }
int lookRight () {myservo.write (50); кечигүү (250); int расстояние = readPing (); кечиктирүү (50); myservo.write (100); кайтуу аралыгы; }
int lookLeft () {myservo.write (120); кечигүү (300); int расстояние = readPing (); кечиктирүү (100); myservo.write (115); кайтуу аралыгы; кечиктирүү (100); }
int readPing () {delay (70); int cm = sonar.ping_cm (); эгер (см == 0) {см = 200; } см кайтаруу; }
void moveStop () {motor1.run (RELEASE); motor2.run (ЧЫГАРУУ); motor3.run (ЧЫГАРУУ); motor4.run (ЧЫГАРУУ); } void moveForward () {
if (! goForward) {goForward = true; motor1.run (АЛГА); motor2.run (АЛГА); motor3.run (АЛГА); motor4.run (АЛГА); үчүн (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); кечигүү (5); }}}
void moveBackward () {goForward = false; motor1.run (Артка); motor2.run (Артка); motor3.run (Артка); motor4.run (Артка); үчүн (speedSet = 0; speedSet <MAX_SPEED; speedSet += 2) {motor1.setSpeed (speedSet); motor2.setSpeed (speedSet); motor3.setSpeed (speedSet); motor4.setSpeed (speedSet); кечигүү (5); } боштук turnLeft () {motor1.run (BACKWARD); motor2.run (Артка); motor3.run (АЛГА); motor4.run (АЛГА); кечигүү (500); motor1.run (АЛГА); motor2.run (АЛГА); motor3.run (АЛГА); motor4.run (АЛГА); }
жараксыз turnLeft () {motor1.run (АРТКА); motor2.run (Артка); motor3.run (АЛГА); motor4.run (АЛГА); кечигүү (500); motor1.run (АЛГА); motor2.run (АЛГА); motor3.run (АЛГА); motor4.run (АЛГА); }
Сунушталууда:
LEGO роботуна тоскоолдук кылуу: 8 кадам (сүрөттөр менен)

LEGO роботуна тоскоолдук кылуу: Биз LEGOну жакшы көрөбүз жана Crazy Circuitти жакшы көрөбүз, ошондуктан экөөнү дубалдарга жана башка нерселерге кирип кетүүдөн сактай турган жөнөкөй жана кызыктуу роботко бириктиргибиз келди. Биз сизге өзүбүздүн үйүбүздү кантип курганыбызды көрсөтөбүз жана өзүңүздүн үйүңүздү куруу үчүн керектүү негиздерди сүрөттөп беребиз
Роботту Arduino Nano колдонуу менен тоскоолдук кылуу: 5 кадам

Arduino Nano колдонуу менен роботко тоскоолдук кылуу: Бул көрсөтмөдө мен Arduino аркылуу роботтон качуу үчүн кандай тоскоолдук кылууну сүрөттөйм
Арудино менен калак кайыкка тоскоолдук кылуу: 9 кадам

Арудино менен калак кайыкка тоскоолдук кылуу: Салам достор, бул үйрөткүчтө мен сизге калакты сүзбөөчү тоскоолдукту кантип жасоону көрсөтөм. Мен бул идеяны балык көлмөмдүн жанында эс алып жатканда жана пластикалык чакырык боюнча бир идеяны ойлоп жатканда ойлоп таптым. Мен бул жерде пластик абдан жакшы болорун түшүндүм
Микроконтроллери жок IR сенсорлору бар роботко тоскоолдук кылуу: 6 кадам

Микроконтроллери жок IR сенсорлору бар роботко тоскоолдук кылуу: Ооба, бул долбоор эски долбоор, мен аны 2014 -жылы июль же август айларында жасадым, силер менен бөлүшүүнү ойлодум. IR сенсорлорун колдонгон жана микроконтроллерсиз иштеген роботко жол бербөө үчүн жөнөкөй тоскоолдук. IR сенсорлору opamp IC i колдонот
Роботтон кантип тоскоолдук кылуу керек: 6 кадам

Роботту кантип тоскоолдук кылуу керек: Тоскоолдуктарды болтурбоочу робот - бул жөнөкөй робот, аны ардуино башкарат жана ал эмне кылат, ал жөн эле айланып жүрөт жана тоскоолдуктардан качат. Бул тоскоолдуктарды HC-SR04 ультрадыбыштуу сенсор менен аныктайт, башкача айтканда робот жакын жердеги нерсени сезсе