Мазмуну:

Ардуино менен адам ээрчиген роботту кантип жасоо керек: 3 кадам
Ардуино менен адам ээрчиген роботту кантип жасоо керек: 3 кадам

Video: Ардуино менен адам ээрчиген роботту кантип жасоо керек: 3 кадам

Video: Ардуино менен адам ээрчиген роботту кантип жасоо керек: 3 кадам
Video: Lesson 02 Arduino IDE Software | Robojax Arduino Step By Step Course 2024, Ноябрь
Anonim
Ардуино менен кантип адам ээрчиген робот кылса болот
Ардуино менен кантип адам ээрчиген робот кылса болот

Адам роботту ээрчип, адамды ээрчийт

1 -кадам: Куралдарды алыңыз

Куралдарды алыңыз
Куралдарды алыңыз
Куралдарды алыңыз
Куралдарды алыңыз
Куралдарды алыңыз
Куралдарды алыңыз

Төмөнкү шаймандарды алыңыз: Ultrasonic sensorSensorArduino uno 4 тиштүү мотор дөңгөлөгүServo Батарея жана батарейка корпусу

2 -кадам: туташуу

Туташууда
Туташууда
Туташууда
Туташууда
Туташууда
Туташууда
Туташууда
Туташууда

Ар бир жабдууну мотор айдоочусуна туташтырыңыз. Мотор драйверин arduino менен туташтырыңыз.

3 -кадам: Код

Code
Code

#кошуу#кошуу#кошуу#аныктоо ОҢ А2#аныктоо СОЛ A3#аныктоо ТРИГГЕР_ПИН A1#аныктоо ECHO_PIN A0#аныктоо MAX_DISTANCE 100NewPing sonar (TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); AF_DCMotor Motor1 (1, MOTOR12_1); AF_DCMotor Motor3 (3, MOTOR34_1KHZ); AF_DCMotor Motor4 (4, MOTOR34_1KHZ); Servo myservo; int pos = 0; void setup () {// бул жерде орнотуу кодуңузду бир жолу иштетүү үчүн коюңуз: Serial.begin (9600); myservo.attach (10); {for (pos = 90; pos <= 180; pos += 1) {myservo.write (pos); кечиктирүү (15);} үчүн (pos = 180; pos> = 0; pos- = 1) {myservo.write (pos); кечиктирүү (15);} үчүн (pos = 0; pos <= 90; pos += 1) {myservo.write (pos); delay (15);}} pinMode (RIGHT, INPUT); pinMode (LEFT, INPUT);} void loop () {// кайра иштетүү үчүн негизги кодуңузду бул жерге коюңуз: delay (50); белгисиз int расстояние = sonar.ping_cm (); Serial.print ("расстояние"); Serial.println (расстояние); int Right_Value = digitalRead (ОҢ); int Left_Value = digitalRead (LEFT); Serial.print ("RIGHT"); Serial.println (Right_Value); Serial.print ("LEFT"); Serial.println (Left_Value); if ((Right_Value == 1) && (distance> = 10 && distance <= 30) && (Left_Value == 1))) {Motor1.setSpeed (120); Motor1.run (АЛГА); Motor2.setSpeed (120); Motor2.run (АЛГА); Motor3.setSpeed (120); Motor3.run (АЛГА); Motor4.setSpeed (120); Motor4.run (FORWARD);} else if ((Right_Value == 0) && (Left_Value == 1)) {Motor1.setSpeed (200); Motor1.run (АЛГА); Motor2.setSpeed (200); Motor2.run (АЛГА); Motor3.setSpeed (100); Motor3.run (Артка); Motor4.setSpeed (100); Motor4.run (BACKWARD);} else if ((Right_Value == 1) && (Left_Value == 0)) {Motor1.setSpeed (100); Motor1.run (Артка); Motor2.setSpeed (100); Motor2.run (Артка); Motor3.setSpeed (200); Motor3.run (АЛГА); Motor4.setSpeed (200); Motor4.run (FORWARD);} else if ((Right_Value == 1) && (Left_Value == 1)) {Motor1.setSpeed (0); Motor1.run (ЧЫГАРУУ); Motor2.setSpeed (0); Motor2.run (ЧЫГАРУУ); Motor3.setSpeed (0); Motor3.run (ЧЫГАРУУ); Motor4.setSpeed (0); Motor4.run (ЧЫГАРУУ);} else if (расстояние> 1 && аралыгы <10) {Motor1.setSpeed (0); Motor1.run (ЧЫГАРУУ); Motor2.setSpeed (0); Motor2.run (ЧЫГАРУУ); Motor3.setSpeed (0); Motor3.run (ЧЫГАРУУ); Motor4.setSpeed (0); Motor4.run (ЧЫГАРУУ); }}

Сунушталууда: