Мазмуну:

Raspberry Pi Park Sensor: 3 кадам (сүрөттөр менен)
Raspberry Pi Park Sensor: 3 кадам (сүрөттөр менен)

Video: Raspberry Pi Park Sensor: 3 кадам (сүрөттөр менен)

Video: Raspberry Pi Park Sensor: 3 кадам (сүрөттөр менен)
Video: How to use MPU-9250 Gyroscope, Accelerometer, Magnetometer for Arduino 2024, Июль
Anonim
Image
Image
Сизге керектүү нерселер
Сизге керектүү нерселер

Бул көрсөтмөдө биз парк сенсорун курабыз. Бул парк сенсорунун идеясы, унааңызды унаа токтотуучу жайда алдыга жылдырууга көп орун болгондо жашыл түстү көрсөтүү, андан кийин толугу менен алдыга карай жакындаганда саргайып, анан токтогондо кызыл түскө ээ болуу. Биз бул системаны Raspberry Pi менен курабыз жана оңой эле текшере турган кээ бир аралыктарды колдонобуз.

1 -кадам: Сизге керектүү нерселер

Сизге Raspberry Pi орнотуудан башка төмөнкү компоненттер керек болот.

  1. HC-SR04 Ultrasonic Distance Sensor
  2. Led (X3)
  3. 330Ω Резистор (X3)
  4. 10KΩ резистор (x2)
  5. Эркек-Эркек / Эркек-Ургаачы секирүүчү зымдар
  6. Breadboard

2 -кадам: Зымдарды өткөрүңүз

Кабелдерди жасаңыз
Кабелдерди жасаңыз
Кабелдерди жасаңыз
Кабелдерди жасаңыз
Кабелдерди жасаңыз
Кабелдерди жасаңыз
  1. Алыстык сенсорунун иштеши GPIO 4, echo GPIO 18, жашыл жарык 17, сары жарык 27 жана кызыл жарык 22.
  2. 330 омдук резисторлор леддер үчүн жана алар леддердин оң бутуна, анан GPIOго туташууда.
  3. 10K ohm резисторлору аралык сенсорунун жаңырыгы үчүн жана GPIOго туташуу үчүн.

3 -кадам: Код

GPO импорттоо убактысы катары RPi. GPIO импорттоо

GPIO.setwarnings (False)

GPIO.cleanup ()

GPIO.setmode (GPIO. BCM)

TRIG = 4

ЭХО = 18

Жашыл = 17

САРЫ = 27

КЫЗЫЛ = 22

GPIO.setup (TRIG, GPIO. OUT)

GPIO.setup (ECHO, GPIO. IN)

GPIO.setup (GREEN, GPIO. OUT)

GPIO.setup (САРЫ, GPIO. OUT)

GPIO.setup (КЫЗЫЛ, GPIO. OUT)

Def green_light ():

GPIO. чыгаруу (ЖАШЫЛ, GPIO. HIGH)

GPIO.output (САРЫ, GPIO. LOW)

GPIO.output (КЫЗЫЛ, GPIO. LOW)

def yellow_light ():

GPIO.output (GREEN, GPIO. LOW)

GPIO.output (САРЫ, GPIO. HIGH)

GPIO.output (КЫЗЫЛ, GPIO. LOW)

def red_light (): GPIO.output (GREEN, GPIO. LOW)

GPIO.output (САРЫ, GPIO. LOW)

GPIO.output (КЫЗЫЛ, GPIO. HIGH)

def get_distance ():

GPIO.output (TRIG, True)

time.sleep (0.00001)

GPIO.output (TRIG, False)

GPIO.input (ECHO) == False: start = time.time ()

ал эми GPIO.input (ECHO) == True: end = time.time ()

signal_time = аягынын башталышы

аралык = signal_time / 0.000058

кайтуу аралыгы

чын болсо:

аралык = get_distance ()

time.sleep (0.05)

басып чыгаруу (аралык)

эгер аралык> = 25:

жашыл жарык()

элиф 25> аралык> 10:

yellow_light ()

элиф аралыгы <= 5:

Кызыл жарык()

Эгерде аралык 25 смден чоң же барабар болсо, биз жашыл жарык көрсөтөбүз. Эгерде ал 10 менен 25 см ортосунда болсо, анда биз саргарабыз, андан кийин 10 смден аз же ага барабар болуп кызарабыз.

Сунушталууда: