ኮድ ይፈልጉ

```html የአርዱኖ ኮድ እና ቪዲዮ ለሻርፕ IR ርቀት ሞጁል ከLCD1602 ማሳያ ጋር ```

```html የአርዱኖ ኮድ እና ቪዲዮ ለሻርፕ IR ርቀት ሞጁል ከLCD1602 ማሳያ ጋር ```

በዚህ ትምህርት ውስጥ፣ የSharp የኢንፍራሬድ ርቀት ሞጁልን ከLCD1602 ማሳያ ጋር በማጣመር ርቀቶችን በትክክል እንዴት መለካት እንደምንችል እንማራለን። የSharp IR ዳሳሽ የተለካውን ርቀት ያወጣል፣ ከዚያም በኤልሲዲ ላይ ይታያል፣ ይህም በቅጽበት ግብረ መልስ እንዲኖር ያስችላል። በዚህ ፕሮጀክት መጨረሻ ላይ፣ ከ4 እስከ 30 ሴንቲሜትር ርቀት የሚለካ የሚሰራ ዝግጅት ይኖርዎታል (በቪዲዮ 00:30 ላይ)።

የSharp አናሎግ ውፅዓት ሞጁሎች፡- 
2 እስከ 15 ሴ.ሜ GP2Y0A51SK0F 
4 እስከ 30 ሴ.ሜ GP2Y0A41SK0F / GP2Y0AF30 ተከታታይ 
10 እስከ 80 ሴ.ሜ GP2Y0A21YK0F 
10 እስከ 150 ሴ.ሜ GP2Y0A60SZLF 
20 እስከ 150 ሴ.ሜ GP2Y0A02YK0F 
100 እስከ 550 ሴ.ሜ GP2Y0A710K0F

Sharpt IR distance sensor

የSharp IR ርቀት ዳሳሽ የሚሰራው የኢንፍራሬድ ብርሃንን በማስወጣት እና ብርሃኑ ወደ ኋላ ለመመለስ የሚፈጀውን ጊዜ በመለካት ነው። ይህ ዳሳሹ በተቀበለው የብርሃን መጠን ላይ በመመስረት ርቀትን እንዲያሰላ ያስችለዋል። የLCD1602 ማሳያ ይህንን መረጃ በሚነበብ ቅርጸት ለማቅረብ ይጠቅማል። ዝግጅቱ የታመቀ ነው፣ ይህም ሮቦቲክስ እና የርቀት መለኪያ ስርዓቶችን ጨምሮ ለተለያዩ አፕሊኬሽኖች ተስማሚ ያደርገዋል።

ሃርድዌር ተብራርቷል

ለዚህ ፕሮጀክት፣ የSharp IR ርቀት ዳሳሽ እና የLCD1602 ማሳያ እንጠቀማለን። የSharp IR ዳሳሽ ሶስት ሽቦዎች አሉት፡ ቀዩ ሽቦ ከ5V ሃይል ጋር ይገናኛል፣ ጥቁሩ ሽቦ ከመሬት ጋር ይገናኛል፣ እና ቢጫው ሽቦ በአርዱኢኖ ላይ ካለው አናሎግ ፒን ጋር የሚገናኝ የውፅዓት ሲግናል ነው። የLCD1602 ማሳያ ለግንኙነት ብዙ ፒኖች ይፈልጋል፣ እነዚህም ከአርዱኢኖ ጋር ይገናኛሉ።

የLCD1602 ማሳያ ወደ እሱ የሚላከውን መረጃ ለማስተዳደር LiquidCrystal ቤተ-መጽሐፍት ይጠቀማል፣ ይህም የማሳያውን ውፅዓት በቀላሉ ለመቆጣጠር ያስችላል። ይህ ቤተ-መጽሐፍት በአርዱኢኖ እና በኤልሲዲ መካከል ያለውን ግንኙነት ያስተዳድራል፣ ይህም ጽሑፍ እና ቁጥሮችን ማተም ቀላል ያደርገዋል።

የዳታሼት ዝርዝሮች

አምራችSharp
የክፍል ቁጥርGP2Y0A41SK0F
የሎጂክ/IO ቮልቴጅ5 ቮ
የአቅርቦት ቮልቴጅ4.5 – 5.5 ቮ
የስራ ርቀት ክልል4 – 30 ሴ.ሜ
የውፅዓት ቮልቴጅ (በ30 ሴ.ሜ)0.4 ቮ
የውፅዓት ቮልቴጅ (በ4 ሴ.ሜ)3 ቮ
የምላሽ ጊዜ30 ሚሴ
ፓኬጅየታመቀ ሞጁል
ማስታወሻዎች / ልዩነቶችለተለያዩ ክልሎች የተለያዩ ሞዴሎች ይገኛሉ

  • ዳሳሹ በትክክል በ5 ቮ ሃይል መሰጠቱን ያረጋግጡ።
  • ለሁሉም ክፍሎች የጋራ መሬት ይጠቀሙ።
  • ከርቀት ጋር የሚለዋወጠውን የውፅዓት ቮልቴጅ ይጠንቀቁ።
  • ንባቦችን ለማረጋጋት ለውፅዓት ሲግናል ማጣሪያ መጠቀምን ያስቡ።
  • ለትክክለኛ መለኪያዎች ዳሳሹን ንጹህ እና ከእንቅፋት ነጻ ያድርጉት።

የሽቦ መገጣጠም መመሪያዎች

Arduino Wiring Diagram of Sharp distance sensor with LCD1602-2
Arduino Wiring Diagram of Sharp distance sensor with LCD1602-2

የSharp IR ርቀት ሞጁሉን ለማገናኘት፣ ቀዩን ሽቦ በአርዱኢኖ ላይ ካለው የ5V ፒን ጋር ያገናኙ። በመቀጠል፣ ጥቁሩን ሽቦ በአርዱኢኖ ላይ ካሉት የመሬት (GND) ፒኖች አንዱ ጋር ያገናኙ። የርቀት መለኪያውን የሚያወጣው ቢጫው ሽቦ፣ በአርዱኢኖ ላይ ካለው አናሎግ ፒን A0 ጋር መገናኘት አለበት። ለLCD1602 ማሳያ፣ ፒኖቹን እንደሚከተለው ያገናኙ፡ rs ወደ ፒን 12፣ en ወደ ፒን 11፣ d4 ወደ ፒን 5፣ d5 ወደ ፒን 4፣ d6 ወደ ፒን 3፣ እና d7 ወደ ፒን 2። የላላ ሽቦ ችግሮችን ለማስወገድ ሁሉም ግንኙነቶች ደህንነታቸው የተጠበቀ መሆናቸውን ያረጋግጡ (በቪዲዮ 02:15 ላይ)።

የኮድ ምሳሌዎች እና ጉዞ

ለዚህ ፕሮጀክት የአርዱኢኖ ኮድ ኤልሲዲውን እና የSharp IR ዳሳሹን ያስጀምራል። ቁልፍ መለያዎች IRን ያካትታሉ፣ እሱም ለSharp IR ውፅዓት ጥቅም ላይ የሚውለው አናሎግ ፒን ተብሎ ይገለጻል፣ እና model፣ እሱም ጥቅም ላይ የሚውለውን የSharp ዳሳሽ አይነት ይገልጻል። በማዋቀር ተግባር ውስጥ፣ ኤልሲዲው ይዘትን ለማሳየት ይጀመራል።

const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

#define IR A0 // የSharp IR ሲግናል ፒንን ይግለጹ
#define model 430 // የIR ሞጁሉ ሞዴል

ይህ ቅንጥብ የLiquidCrystal ቤተ-መጽሐፍት እንዴት እንደሚጀመር እና የIR ዳሳሽ ፒን እና ሞዴል እንዴት እንደሚገለጹ ያሳያል። ሞዴሉ ቤተ-መጽሐፍቱ ከሚጠቀሙት የተወሰነ የዳሳሽ አይነት ጋር በትክክል እንዲሰራ ለማድረግ ወሳኝ ነው።

በሉፕ ተግባር ውስጥ፣ ርቀቱ ያለማቋረጥ ይለካል እና በኤልሲዲ ላይ ይታያል። ተግባሩ SharpIR.distance() ርቀቱን በሴንቲሜትር ያመጣል፣ ከዚያም ወደ ሕብረቁምፊ ተቀርጾ ለኤልሲዲ ይታተማል።

int dis = SharpIR.distance(); // ርቀቱን በሴ.ሜ ያገኛል
String distance = String(dis);
distance = "ርቀት: " + distance + "ሴ.ሜ";
lcd.print(distance);

ይህ የኮድ ቅንጥብ ከዳሳሹ የርቀት ንባብ ያመጣል እና ለማሳያ ይቀርጸዋል። የማሳያው ቀጣይነት ያለው ማዘመን በSharp IR ዳሳሽ በተለካው ርቀት ላይ በቅጽበት ግብረ መልስ ይሰጣል።

ማሳያ / ምን እንደሚጠበቅ

ሽቦውን ከጨረሱ እና ኮዱን ከጫኑ በኋላ፣ ኤልሲዲው በSharp IR ዳሳሽ የተለካውን ርቀት ሲያሳይ ማየት አለብዎት። እንቅፋትን በተለያዩ ርቀቶች በማስቀመጥ ዝግጅቱን መሞከር ይችላሉ። ንባቦቹ በተገለጸው የ4 እስከ 30 ሴንቲሜትር ክልል ውስጥ ትክክለኛ መሆን አለባቸው። በዚህ ክልል ጫፎች ላይ ንባቦች ብዙም አስተማማኝ ላይሆኑ እንደሚችሉ ይወቁ (በቪዲዮ 04:50 ላይ)።

የቪዲዮ የጊዜ ማህተሞች

  • 00:00 መግቢያ
  • 02:15 የሽቦ መገጣጠም መመሪያዎች
  • 04:50 የዝግጅቱ ማሳያ

ምስሎች

Arduino Wiring Diagram of Sharp distance sensor with LCD1602-2
Arduino Wiring Diagram of Sharp distance sensor with LCD1602-2
LCD1602-I2C display module with 4 wires
LCD1602-I2C display module with 4 wires
Sharpt IR distance sensor
Sharpt IR distance sensor GP2Y0A21YK0F
71-This is the Arduino code and video for a Sharp Infrared Sensor Module with LCD1602.
ቋንቋ: C++
/*
 * Sharp IR (infrared) distance measurement module for Arduino
 * Measures the distance in cm and displays it on LCD1602 (without the I2C module)

 * Original library: https://github.com/guillaume-rico/SharpIR
 
 * Watch video instructions for this code: https://youtu.be/NjUOEAoKY7A
 * 
 * Full explanation of this code and wiring diagram is available at
 * my Arduino Course at Udemy.com here: http://robojax.com/L/?id=62

 * Written by Ahmad Shamshiri on Feb 03, 2018 at 07:34
 * in Ajax, Ontario, Canada. www.robojax.com
 * 

 * Get this code and other Arduino codes from Robojax.com
Learn Arduino step by step in a structured course with all material, wiring diagrams, and libraries
all in one place. 

If you found this tutorial helpful, please support me so I can continue creating 
content like this. 

or make a donation using PayPal http://robojax.com/L/?id=64

 *  * This code is "AS IS" without warranty or liability. Free to be used as long as you keep this note intact.* 
 * This code has been downloaded from Robojax.com
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.

*/



// original source https://www.arduino.cc/en/Tutorial/HelloWorld
// include the library code:
#include <LiquidCrystal.h>

// initialize the library by associating any needed LCD interface pin
// with the arduino pin number it is connected to
const int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

///////////////////***** start of Sharp IR
//Sharp IR library source: https://github.com/guillaume-rico/SharpIR
#include <SharpIR.h>

#define IR A0 // define Sharp IR signal pin
#define model 430 // the model of the IR module
// Sharp IR code for Robojax.com
// ir: the pin where your sensor is attached
// model: an int that determines your sensor:
/*
 * GP2Y0A02YK0F --> "20150"
 GP2Y0A21YK --> "1080"
 GP2Y0A710K0F --> "100500"
  GP2YA41SK0F --> "430"
 */
 
 

SharpIR SharpIR(IR, model);
/////////////////////**** end of Sharp IR

void setup() {
  // Robojax LCD1602 Test 
  // set up the LCD's number of columns and rows:
  lcd.begin(16, 2);
  // Print a message to the LCD.
  // Robojax Sharp IR with LCD1602 Test 
}

void loop() {
   lcd.clear();
  // Robojax.com Sharp IR Test 
    lcd.setCursor(0, 0);
    lcd.print("Robojax IR Test");
  // set the cursor to column 0, line 1
  // (note: line 1 is the second row, since counting begins with 0):
  lcd.setCursor(0, 1);
 int dis=SharpIR.distance();// gets the distance in cm
 String distance = String(dis);
 distance ="Distance: "+distance+"cm";
 lcd.print(distance); 



  delay(500);
  // Robojax.com Sharp IR Test  
}

ምንጮች እና ምንጮች

ፋይሎች📁

Arduino ቤተ መዝገቦች (zip)

ፍሪትዚንግ ፋይል