کوډ ولټوئ

لوښي 20/31: د الټراسونیک فاصلې په LCD1602 باندې ښودل

لوښي 20/31: د الټراسونیک فاصلې په LCD1602 باندې ښودل

دا پروژه ښیي چې څنګه د HC-SR04 الټراسونیک واټن سینسر د I2C-وړ LCD1602 ښودنې سره یوځای کړو ترڅو د ریښتیني وخت واټن اندازه کولو سیسټم جوړ کړو. د دې لارښود په پای کې، تاسو به یو فعال وسیله ولرئ چې په دوامداره توګه د یو شي واټن په سانتي مترو کې اندازه او ښیي. دا د Arduino الکترونیک کې یو بنسټیز مهارت دی، ځکه چې دا د سینسر انپټ د بصري آوټ پټ سره یوځای کوي.

سنفونډر 20-LCD1602-الټراسونیک

دا عملي ترتیب په مختلفو ریښتیني نړۍ غوښتنلیکونو کې کارول کیدی شي، په شمول:

  • د سمارټ پارکینګ معاون جوړول چې تاسو سره د دیوال یا بل موټر واټن معلومولو کې مرسته کوي.
  • د ټانک لپاره د ساده مایع کچې څارونکي جوړول د پورتنۍ برخې څخه سطحې ته د واټن اندازه کولو سره.
  • د اتوماتیک لاس-سینیټایزر توزیع کونکي یا د لمس پرته کثافاتو کڅوړې پراختیا چې کله یو شي نږدې وي خلاصیږي.
  • د بنسټیز امنیتي الارم جوړول چې کله یو څوک په ځانګړې سیمه کې ننوځي فعالیږي.

هارډویر او اجزاوې

د دې پروژې د جوړولو لپاره، تاسو به لاندې اجزاوو ته اړتیا ولرئ:

  • Arduino بورډ (د مثال په توګه، Uno)
  • LCD1602 ښودنه د I2C انٹرفیس ماډل سره
  • HC-SR04 الټراسونیک واټن سینسر
  • جمپر تارونه
  • بریډبورډ (اختیاري، د اسانه اړیکو لپاره)

د LCD1602 او I2C پوهیدل

LCD1602 یوه مشهوره ښودنه ده چې کولی شي په هر کرښه کې 16 حروف په دوه کرښو کې وښیي. د هغې په شا باندې "I2C" ماډل یوه لویه ګټه ده ځکه چې دا د ښودنې د کنټرول لپاره اړین پنونو شمیر له 6 یا ډیرو څخه یوازې 2 ته د اړیکو لپاره (SDA او SCL) او 2 د بریښنا لپاره (VCC او GND) کموي. دا ساده کول تارونه ډیر پاک کوي او ستاسو په Arduino باندې ارزښتناکه ډیجیټل پنونه د نورو سینسرونو لپاره خالي کوي، لکه د الټراسونیک په څیر چې په دې پروژه کې کارول کیږي. (په ویډیو کې په 01:30)

د I2C ماډل هم یو کوچنی پوټینټیومیټر لري ترڅو د ښودنې کنټراسټ تنظیم کړي. که تاسو ښودنه بریښنا کړئ او هیڅ ونه ګورئ، هڅه وکړئ دا پیچ وګرځوئ ترڅو متن ښکاره شي. (په ویډیو کې په 02:47)

تارونو لارښود

LCD1602_تارونه_الټراسونیک_bb

اجزاوې نښلول ساده دي. د LCD د I2C ماډل څلور پنونه لري چې باید Arduino سره وصل شي. د الټراسونیک سینسر لپاره، دا هم څلور پنونه لري.

دلته د اړیکو یوه کتنه ده:

LCD1602 I2C ماډل ته Arduino:

  • GND ته Arduino GND
  • VCC ته Arduino 5V
  • SDA ته Arduino A4
  • SCL ته Arduino A5

HC-SR04 الټراسونیک سینسر ته Arduino:

  • VCC ته Arduino 5V
  • Trig ته Arduino ډیجیټل پن 12
  • Echo ته Arduino ډیجیټل پن 11
  • GND ته Arduino GND

د دې پروژې لپاره د تارونو ډیاګرام په ویډیو کې حواله شوی دی.

د اړینو کتابتونونو نصبول

دا پروژه په دوه مهمو کتابتونونو تکیه کوي. لومړی، LiquidCrystal_I2C، د LCD کنټرول لپاره اړین دی او د Arduino IDE سره په ډیفالټ ډول شامل نه دی. تاسو کولی شئ دا د ویډیو توضیحاتو کې چمتو شوي لینک څخه یا د Robojax ویب پاڼې څخه ډاونلوډ کړئ. (په ویډیو کې په 06:16)

دوهم کتابتون، NewPing، د الټراسونیک سینسر سره د انٹرفیس لپاره کارول کیږي. دا د پینګ لیږلو او د ایکو وخت لوستلو پروسه ساده کوي. دواړه کتابتونونه د Arduino IDE د کتابتون مدیر له لارې نصب کیدی شي د Sketch -> Include Library -> Manage Libraries ته لاړ شئ او د دوی نومونه وپلټئ.

د کوډ تشریح

دا سکیچ د LCD او الټراسونیک سینسر فعالیت سره یوځای کوي. کوډ ستاسو د ځانګړي ترتیب لپاره په اسانۍ سره د تنظیم وړ وي.

د کوډ په پورتنۍ برخه کې، تاسو به کلیدي متغیرونه ومومئ چې ممکن تاسو ورته تنظیم ته اړتیا ولرئ:

// د LCD پته 0x27 ته وټاکئ د 16 حروفو او 2 کرښو ښودنې لپاره
LiquidCrystal_I2C lcd(0x27, displayChars, displayRows);

#define TRIGGER_PIN  12  // Arduino پن د الټراسونیک سینسر د ټریګر پن سره تړلی.
#define ECHO_PIN     11  // Arduino پن د الټراسونیک سینسر د ایکو پن سره تړلی.
#define MAX_DISTANCE 190 // اعظمي واټن چې موږ یې پینګ کول غواړو (په سانتي مترو کې).
  • LCD پته (0x27): دا ستاسو د LCD ماډل I2C پته ده. ډیری ماډلونه 0x27 کاروي، مګر ځینې ممکن 0x3F وکاروي. که ستاسو ښودنه هیڅ ونه ښیي، تاسو ممکن د I2C سکینر سکیچ چلولو ته اړتیا ولرئ ترڅو سمه پته ومومئ او دا ارزښت تازه کړئ. (په ویډیو کې په 08:11)
  • TRIGGER_PIN او ECHO_PIN: دا د Arduino ډیجیټل پنونه تعریفوي چې د الټراسونیک سینسر د Trig او Echo پنونو سره وصل دي. که تاسو مختلف پنونه وکاروئ، دا تعریفونه بدل کړئ.
  • MAX_DISTANCE: دا اعظمي واټن په سانتي مترو کې ټاکي چې سینسر به یې اندازه کړي. HC-SR04 کولی شي تر 400-500cm پورې اندازه کړي، مګر د ټیټ ارزښت ټاکل کولی شي د لوستلو دقت او اعتبار ښه کړي، په ځانګړې توګه د لنډو واټنونو لپاره.

په loop() فنکشن کې، کوډ لاندې ګامونه ترسره کوي:

  1. دا د sonar.ping_cm() فنکشن څخه کار اخلي ترڅو واټن اندازه کړي او په distance متغیر کې یې ذخیره کړي.
  2. دا LCD پاکوي او په لومړۍ کرښه کې "Robojax.com" متن چاپوي.
  3. بیا یې کرسر په دوهمه کرښه کې ږدي او "Distance: " چاپوي.
  4. په پای کې، کرسر په دوهمه کرښه کې 10 موقعیت ته انتقالوي ترڅو اندازه شوی distance ارزښت او ورپسې "cm" چاپ کړي.

د لوپ په پای کې delay(200) کنټرول کوي چې سینسر څو ځله نوی لوستل اخلي او نندارې ته تازه معلومات ورکوي.

د کوډ ننداره

یوځل چې کوډ ستاسو Arduino ته پورته شي، LCD به روښانه شي او د واټن ښودل به پیل کړي. تاسو کولی شئ د خپل لاس یا یو شی په الټراسونیک سینسر ته نږدې او لرې کولو سره دا تنظیم ازموئ. په سکرین کې شمېره باید په ریښتیني وخت کې تازه شي، واټن په سانتي مترو کې ښیي. (په ویډیو کې په 38:07)

د دې ویډیو پورې اړوند پروژې

فصلونه

  • [00:00] د LCD1602 پیژندنه او د پروژې عمومي کتنه
  • [01:30] د LCD1602 هارډویر او د I2C ماډل تشریح
  • [03:14] د LCD پن آوټ او د I2C آدرس تنظیم
  • [05:28] د LCD1602 لپاره د تارونو ډیاګرام
  • [06:16] د اړین LCD کتابتون نصبول
  • [07:24] په LCD باندې د متن چاپولو بنسټیز کوډ
  • [08:11] ستاسو د LCD د I2C آدرس موندل
  • [11:10] د LCD مثالونه: ځلېدونکی کرسر او دودیز حروف
  • [18:51] د LCD مثال: سیریل ننداره او سکرول کېدونکی متن
  • [24:36] په LCD باندې د DHT11 تودوخه او رطوبت ښودل
  • [33:00] په LCD باندې د پوټینشیومیټر څخه ولتاژ ښودل
  • [35:56] د الټراسونیک سینسر کوډ د LCD سره یوځای کول
  • [38:07] د الټراسونیک واټن نندارې مظاهره

انځورونه

Sunfounder car assembled
Sunfounder car assembled
Sunfounder 20-LCD1602-ultrasonic
Sunfounder 20-LCD1602-ultrasonic
LCD1602_wiring_ultrasonic_bb
LCD1602_wiring_ultrasonic_bb
921-Lesson 20/31: Displaying distance from ultrasonic sensor on LCD1602
ژبه: C++
This code has not been parsed yet. Please return to the admin panel to parse it.

هغه شیان چې تاسو ورته اړتیا لرئ

سرچینې او حوالې

فایلونه📁

Arduino کتابتونونه (zip)

د کارونکي لارښود