Casharka 20/31: Muujinta masaafada ultrasonic-ka ee LCD1602
Mashruucani wuxuu muujinayaa sida loo isku daro dareereka masaafada ultrasonic-ka ee HC-SR04 iyo shaashadda LCD1602 ee leh I2C si loo abuuro nidaam cabbir masaafo waqti-dhab ah. Markaad dhammayso hagahan, waxaad yeelan doontaa qalab shaqeeya oo si joogto ah u cabbira oo muujinaya masaafada shayga ee sentimitir. Tani waa xirfad aasaasi ah oo ku saabsan elektaroonigga Arduino, maadaama ay isku darka gelinta dareeraha iyo soo saarista muuqaalka.
- Abuurista kaaliye baarkin caqli-gal ah oo kaa caawinaya inaad qiyaasto masaafada gidaarka ama gaari kale.
- Dhisidda kormeere heerka dareere fudud oo loogu talagalay haan adiga oo cabbira masaafada sare ilaa dusha sare.
- Horumarinta qalab iswadaarsade gacanta ah ama qashin-qubka aan la taaban karin oo furma marka shay uu dhow yahay.
- Dhisidda qalab ammaan oo aasaasi ah oo shaqeeya marka qof uu soo galo aag gaar ah.
Qalabka iyo Qaybaha
Si aad u dhisto mashruucan, waxaad u baahan doontaa qaybaha soo socda:- Guddiga Arduino (tusaale, Uno)
- Shaashadda LCD1602 oo leh module interface I2C
- Dareere masaafo ultrasonic-ka HC-SR04
- Fiilooyinka jumper-ka
- Breadboard (ikhtiyaar, si fudud oo lagu xiro)
Fahamka LCD1602 iyo I2C
LCD1602 waa shaashad caan ah oo awood u leh inay muujiso 16 xaraf oo safkiiba ah oo ku yaal laba saf. Module-ka "I2C" ee dhabarkiisa ku yaal waa faa'iido weyn sababtoo ah wuxuu yareeyaa tirada biinanka loo baahan yahay si loo xakameeyo shaashadda laga bilaabo 6 ama in ka badan ilaa 2 oo keliya oo loogu talagalay isgaarsiinta (SDA iyo SCL) iyo 2 oo loogu talagalay korontada (VCC iyo GND). Fududayntani waxay ka dhigaysaa fiilooyinka kuwo nadiifsan oo waxay siidaaysaa biinanno dhijitaal ah oo qiimo leh oo ku yaal Arduino-gaaga si loogu isticmaalo dareerayaal kale, sida kan ultrasonic-ka ee mashruucan lagu isticmaalo. (fiidiyowga 01:30) Module-ka I2C wuxuu kaloo leeyahay potentiometer yar si loo hagaajiyo kala duwanaanshaha shaashadda. Haddii aad shido shaashadda oo aadan waxba arag, isku day inaad leexiso gawaaridan ilaa uu qoraalku muuqdo. (fiidiyowga 02:47)Hagaha Fiilooyinka
LCD1602 I2C Module ilaa Arduino:
- GND ilaa Arduino GND
- VCC ilaa Arduino 5V
- SDA ilaa Arduino A4
- SCL ilaa Arduino A5
Dareere ultrasonic-ka HC-SR04 ilaa Arduino:
- VCC ilaa Arduino 5V
- Trig ilaa biinka dhijitaalka ah ee Arduino 12
- Echo ilaa biinka dhijitaalka ah ee Arduino 11
- GND ilaa Arduino GND
Ku Rakibidda Maktabadaha Loo Baahan Yahay
Mashruucani wuxuu ku tiirsan yahay laba maktabad oo muhiim ah. Midda koowaad,LiquidCrystal_I2C, ayaa loo baahan yahay si loo xakameeyo LCD-ga mana ku jirto Arduino IDE si caadi ah. Waxaad ka soo dejisan kartaa linkiga lagu bixiyay sharaxaadda fiidiyowga ama bogga Robojax. (fiidiyowga 06:16)
Maktabadda labaad, NewPing, waxaa loo isticmaalaa in lala xiriiro dareeraha ultrasonic-ka. Waxay fududaysaa habka dirista ping-ga iyo akhrinta waqtiga echo-ga. Labada maktabadoodba waxaa lagu rakibi karaa Maareeyaha Maktabadda ee Arduino IDE adiga oo aadaya Sketch -> Include Library -> Manage Libraries oo raadinaya magacyadooda.
Sharaxaadda Koodhka
Sketch-kani wuxuu isku darayaa shaqada LCD-ga iyo dareeraha ultrasonic-ka. Koodhku wuxuu u qaabaysan yahay si sahlan loogu habeeyo qaabkaaga gaarka ah. Dusha koodhka, waxaad ka heli doontaa doorsoomayaasha muhiimka ah ee laga yaabo inaad u baahato inaad hagaajiso:// Deji ciwaanka LCD-ga ilaa 0x27 oo loogu talagalay shaashad 16 xaraf iyo 2 saf
LiquidCrystal_I2C lcd(0x27, displayChars, displayRows);
#define TRIGGER_PIN 12 // Biinka Arduino ee ku xiran biinka trigger-ka ee dareeraha ultrasonic-ka.
#define ECHO_PIN 11 // Biinka Arduino ee ku xiran biinka echo-ga ee dareeraha ultrasonic-ka.
#define MAX_DISTANCE 190 // Masaafada ugu badan ee aan rabno inaan ping-ga u dirno (sentimitir).
- Ciwaanka LCD (0x27): Kani waa ciwaanka I2C ee module-ka LCD-gaaga. Inta badan module-yada waxay isticmaalaan
0x27, laakiin qaar ayaa laga yaabaa inay isticmaalaan0x3F. Haddii shaashaddaadu ayan waxba muujin, waxaa laga yaabaa inaad u baahato inaad ku shubto sketch-ka iskaanka I2C si aad u hesho ciwaanka saxda ah oo aad cusboonaysiiso qiimahan. (fiidiyowga 08:11) - TRIGGER_PIN iyo ECHO_PIN: Kuwani waxay qeexayaan biinanka dhijitaalka ah ee Arduino ee ku xiran biinanka Trig iyo Echo ee dareeraha ultrasonic-ka. Haddii aad isticmaasho biinano kala duwan, beddel qeexitaannadan.
- MAX_DISTANCE: Tani waxay dejisaa masaafada ugu badan ee sentimitir ee dareeruhu cabbiri doono. HC-SR04 wuxuu cabbiri karaa ilaa 400-500cm, laakiin dejinta qiime hoose waxay wanaajin kartaa saxnaanta iyo isku halaynta akhrinta, gaar ahaan masaafo gaaban.
loop(), koodhku wuxuu qabtaa tillaabooyinka soo socda:- Waxay isticmaashaa shaqada
sonar.ping_cm()si ay u cabbirto masaafada oo ugu kaydiso doorsoomedistance. - Waxay nadiifisaa LCD-ga oo daabacdaa qoraalka "Robojax.com" ee safka koowaad.
- Kadibna waxay dhigtaa cursor-ka safka labaad oo daabacdaa "Distance: ".
- Ugu dambeyntii, waxay u dhaqaaqdaa cursor-ka booska 10 ee safka labaad si ay u daabacdo qiimaha
distanceee la cabbiray oo ay ku xigto "cm".
delay(200) ee dhamaadka loop-ka ayaa xakameeya inta jeer ee sensor-ku qaado akhrin cusub oo uu cusboonaysiiyo shaashadda.
Muuujinta Koodhka
Marka koodhka lagu shubo Arduino-gaaga, LCD-ga wuxuu iftiimin doonaa oo bilaabi doonaa inuu muujiyo masaafada. Waxaad tijaabin kartaa qaabaynta adigoo gacantaada ama shay ku dhaqaajinaya sensor-ka ultrasonic-ka ee u dhow ama ka fog. Nambarka shaashadda waa inuu ku cusboonaysiimaan waqti-qaar, isagoo muujinaya masaafada sentimitir. (fiidiyowga 38:07)
Mashaariic la xiriira fiidiyowgan
- Casharka 20/31: Isticmaalka LCD1602 ee Arduino si loo muujiyo qoraal | Robojax
- Casharka 20/31: Muujinta heerkulka iyo qoyaanka DHT11 ee shaashadda LCD
- Casharka 20/31: Muujinta danabka ee LCD1602
Cutubyada
- [00:00] Hordhaca LCD1602 iyo Dulmarka Mashruuca
- [01:30] Qalabka LCD1602 iyo Module-ka I2C oo la sharaxay
- [03:14] Pinout-ka LCD iyo Qaabaynta Ciwaanka I2C
- [05:28] Jaantuska Xidhiidhinta ee LCD1602
- [06:16] Rakibidda Maktabadda LCD ee loo baahan yahay
- [07:24] Koodhka Aasaasiga ah ee Daabacaadda Qoraalka ee LCD
- [08:11] Helista Ciwaanka I2C ee LCD-gaaga
- [11:10] Tusaalooyinka LCD: Cursor-ka Hillaacaya iyo Xarfaha Gaarka ah
- [18:51] Tusaalaha LCD: Muujinta Taxanaha iyo Qoraalka Duuban
- [24:36] Muujinta Heerkulka iyo Qoyaanka DHT11 ee LCD
- [33:00] Muujinta Danabka ee Potentiometer-ka ee LCD
- [35:56] Isku-darka Koodhka Sensor-ka Ultrasonic-ka ee LCD
- [38:07] Muujinta Masaafada Ultrasonic-ka ee Shaashadda
921-Lesson 20/31: Displaying distance from ultrasonic sensor on LCD1602
Luqadda: C++
/*
This sketch reads the distance using the ultrasonic sensor and displays on LCD1602
Download and resource page https://robojax.com/RJT878
watch video https://www.youtube.com/watch?v=NXAswOc_2zg
*/
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
const int displayChars =16;
const int displayRows =2;
// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, displayChars, displayRows);
int shomar =0;
#include <NewPing.h>
#define TRIGGER_PIN 12 // Arduino pin tied to trigger pin on the ultrasonic sensor.
#define ECHO_PIN 11 // Arduino pin tied to echo pin on the ultrasonic sensor.
#define MAX_DISTANCE 190 // Maximum distance we want to ping for (in centimeters). Maximum sensor distance is rated at 400-500cm.
int distance;
NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // NewPing setup of pins and maximum distance.
void setup() {
Serial.begin(9600); // Open serial monitor at 9600 baud to see ping results.
// Robojax code for LCD with I2C
// initialize the LCD,
lcd.begin();
// Turn on the blacklight and print a message.
lcd.backlight();
}
void loop() {
distance = sonar.ping_cm();//get the distance in cm
lcd.clear();
lcd.print("Robojax.com");
lcd.setCursor (0,1);//set cursor to char 0 line 2
lcd.print("Distance: ");
lcd.setCursor (10,1);
lcd.print(distance);
lcd.print("cm");
delay(200);
}
Waad u baahan tahay
-
AmaazonSunFounder Arduino Learning Kit on AliExpresss.click.aliexpress.com
-
Amaazon
-
Amaazon
-
Amaazon
-
Amaazon
Kheyraadka & Tixraacyada
-
DukumentiDocumentation for SunFounder 3 in 1 IoT/Smart Car/Learning Kitdocs.sunfounder.com
-
DibeddaPurchase SunFounder's 3-in-1 Smart car learning kitsunfounder.com
Faylasha📁
Arduino Libraries (zip)
-
SunFounder's 3-in-1 Smart Car learning kit source code
3in1-kit-main-v2.zip12.80 MB
Buugga Isticmaalaha
-
SunFounder 3-in-1 Arduino Smart Car assembly manualThis document shows step by step assembly of SunFounder 3-in-1 Arduino Smart Car
SunFounder_car_assembly_manual.pdf1.20 MB