아두이노 + L298N + HC-SR04 +장애물피하는 자율주행로봇 만들기

In order to create an automatic driving robot that avoids obstacles using the Aduino L298N motor driver and HC-SR04 ultrasonic sensor, the internal gears of two DC motors that failed due to lack of DC motors of the same RPM were removed.

In order to create an automatic driving robot that avoids obstacles using the Aduino L298N motor driver and HC-SR04 ultrasonic sensor, the internal gears of two DC motors that failed due to lack of DC motors of the same RPM were removed.

the whole story

the flank

the lower part

the lower part

the lower part

The following example shows how to use the NewPing ping_timer method to obtain the // ping time using a Timer 2 interrupt: The advantage of using this method over the // standard ping method is that it allows more // event-driven sketches and allows two // event-driven sketches to be executed simultaneously. For example, if there is a possibility of a collision, you can ping the ultrasonic sensor and navigate at the same time. This allows you to multi-task well-created sketches. Note that the // ping_timer method uses Timer 2, so other features and libraries using // Timer 2 are affected. // For example, PWM functions and Tone libraries for ArduinoUno (Pins 9 and 11 of ArduinoMega). ピンのPWM//機能だけが失われることに注意してください(Timer2を使用してPWMを実行するため)。///////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 나와 //구동 프로그램을 만들기 복잡해진다.//Timer2 interrupt를 사용한 NewPingEventTimer예제를 활용하면//보다 손쉽게 프로그램을 완성할 수 있다.//이 예제는 Timer2 interrupt를 사용하여 ping time을 얻는//NewPing’s ping_timer 방법을 어떻게 사용하는지 보여준다.//standard ping method보다 이 방법을 사용하는 장점은//두가지 일을 한번에 처리할 수 있는 이벤트 주도의//( 미리 정해진 길을 가는 것이 아니라,//어떤 일에 대한 반응으로 행동이 일어나는 구조를 일컬음)//스케치를 작성할 수 있다는 것이다.//일예로 길을 찾는 동안 초음파 센서를 이용하여//충돌가능여부의 신호를 보낼 수 있다.//이 방식은 멀티테스킹을 하는 스케치를 제대로 작성할수 있게 해준다.// —————————————————————————//NewPing.h 라이브러리를 사용한 초음파센서(HC-SR04) 코드 #include <NewPing.h>#defineTRIGGER_PIN2//Arduinoピンをpingセンサーのトリガーピンに結び付けます。I tied the PIN3//Arduino pin that defines #ECHO_ to the echo pin of the ping sensor.# The maximum distance to ping defineMAX_DISTANCE200// is //(cm). The maximum sensor distance is 400 to 500 cm.新しいPingソナー(TRIGGER_PIN、ECHO_)PIN,MAX_DISTANCE);//ピンと最大距離.unsignedintPingSpeed=50;//PINGを送信する頻度(ミリ秒単位)。 //50msは20回/秒.unsignedlongpingTimer;//次のping時間を保持します。//L298N터드라이mot////モーター右コンストモーターPin1=9;//IN1_L298n=>D9コンストモーターPin2=10;//IN2_L298n=>D10//モーター左コンストモーターPin3=5;//IN3_L298n=>D5コンストモーター6//L294//L294=L294; ●●モーター:モーターピン3、モーターピン4voidsetup(){//ピンを出力シリアルに設Yes, begin (9600); // serial output pinMode (motorPin1, OUTPUT); // 9pinMode (motorPin2, OUTPUT); // 10pinMode (motorPin3, OUTPUT); // 5pinMode (motorPin4, OUTPUT); // 6 pingTimer=millis(); // Be careful not to delay this sketch.While pinging, you can perform other actions: {// PingSpeed Set another ping.pingTimer+=pingSpeed;// The next ping time after milliseconds of the last ping.Send sonar.ping_timer(echoCheck); // ping and call the “echoCheck” function every 24uS.You can check the status of the ping here.}// Do something else here, really. multi-tasking.intDistance=(sonar.ping_result/US_ROUNDTRIP_CM); if(Distance<=20){stopm(); if(random(200); if(random(500);left();}if(random(200);}if(random(200); if(random(24);vandom(24){ichohe}Serial.print(“Ping:”); serial.print(sonar.ping_result/US_ROUNDTRIP_CM); // ping returns, US is ping_result, and US_ROUNDTRIP_CM converts to cm.Serial.println(“cm”);} // Do nothing here!(} voidstopm() { // stop 수analogWrite(motorPin1,0);analogWrite(motorPin2,0);analogWrite(motorPin3,0);analogWrite(motorPin4,0);analogWrite(motorPin4,0);analog.println(11f도V속 //(Storfward(11){ //VorwardPin4,0); // 6 leftSerial.println(“Forward”);} voidbackward(//backward(){//backwardalrPin4,100); // 6 leftSerial.println(“Backward”);} voidright() {//rightturn=analogWrite(motorPin1,0); // 9thorlight(/lightPinPinPin); // 2slight(/)rite(motorPin4,100);//6右向きSerial.println(“Left”);}/*11.1V전원이 공급되므로 속도를 100 이하로 사용속도가 100일경우 모터에 공급되는 전압은 약 4.6V이다.속도를 250으로 올리면 모터에 공급되는 전압은 약 11.1V이다.5V 모터를 사용 하기 때문

error: Content is protected !!