1. 功能說明
本實驗使用的樣機為R026a樣機小型平行履帶底盤。在樣機前方安裝1個 超聲波傳感器,如果遇到障礙,機器人后退、轉向,否則機器人前進,實現機器人避障的效果。
2. 電子硬件
在這個示例中,我們采用了以下硬件,請大家參考:
主控板 | Basra(兼容Arduino Uno) |
擴展版 | Bigfish2.1 |
傳感器 | 超聲波傳感器 |
兩個直流電機連在D5,D6以及D9,D10接口上;超聲波傳感器連在A4接口上。
3. 示例程序
編程環境:Arduino 1.8.19
編寫并燒錄以下程序(text.ino),該程序將實現超聲避障的動作
/*------------------------------------------------------------------------------------ 版權說明:Copyright 2023 Robottime(Beijing) Technology Co., Ltd. All Rights Reserved. Distributed under MIT license.See file LICENSE for detail or copy at by 機器譜 2023-02-10 ------------------------------------------------------------------------------------*/ int _ABVAR_1_i = 0 ; int ardublockUltrasonicSensorCodeAutoGeneratedReturnCM(int trigPin, int echoPin) { long duration; pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); digitalWrite(trigPin, LOW); delayMicroseconds(2); digitalWrite(trigPin, HIGH); delayMicroseconds(20); digitalWrite(trigPin, LOW); duration = pulseIn(echoPin, HIGH); duration = duration / 59; if ((duration < 2) || (duration > 300)) return false; return duration; } void turnLeft(); void forward(); void back(); void setup() { pinMode( 10, OUTPUT); pinMode( 6, OUTPUT); pinMode( 5, OUTPUT); pinMode( 9, OUTPUT); digitalWrite( 19 , LOW ); } void loop() { _ABVAR_1_i = ardublockUltrasonicSensorCodeAutoGeneratedReturnCM( 19 , 18 ) ; if (( ( ( _ABVAR_1_i ) <= ( 5 ) ) && ( ( _ABVAR_1_i ) > ( 0 ) ) )) { back(); delay( 1000 ); turnLeft(); delay( 1500 ); } else { forward(); } } void forward() { analogWrite(5 , 0); analogWrite(6 , 165); analogWrite(9 , 0); analogWrite(10 , 165); } void back() { analogWrite(5 , 165); analogWrite(6 , 0); analogWrite(9 , 165); analogWrite(10 , 0); } void turnLeft() { analogWrite(5 , 165); analogWrite(6 , 0); analogWrite(9 , 0); analogWrite(10 , 165); }審核編輯黃宇
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
傳感器
+關注
關注
2552文章
51383瀏覽量
756323 -
機器人
+關注
關注
211文章
28632瀏覽量
208275
發布評論請先 登錄
相關推薦
基于超聲波傳感器的AGV避障模塊設計與實現
提示功能、CAN總線技術,針對包含多個超聲波傳感器的AGV避障模塊進行硬件和軟件上的開發。CAN總線技術的應用使AGV避
發表于 12-08 11:37
?42次下載
評論