樹莓派超聲波車牌識別系統

2021-10-25 18:13:04 字數 2649 閱讀 9319

本系統使用樹莓派4b

#!/usr/bin/env python

# -*- coding: utf-8 -*-

from luma.core.inte***ce.serial import i2c, spi

from luma.core.render import canvas

from luma.oled.device import ssd1306, ssd1325, ssd1331, sh1106

from luma.core.virtual import terminal

import os

import time

from pil import imagefont

from aip import aipocr

from picamera import picamera

from time import sleep

#匯入 gpio庫

import rpi.gpio as gpio

import time

#設定 gpio 模式為 bcm

gpio.setmode(gpio.bcm)

#定義 gpio 引腳

gpio_trigger = 27

gpio_echo = 17

#設定 gpio 的工作方式 (in / out)

gpio.setwarnings(false)

gpio.setup(gpio_trigger, gpio.out)

gpio.setup(gpio_echo, gpio.in)

serial = i2c(port=1, address=0x3c)

device = sh1106(serial)

api_key = 'yyy'

secret_key = 'zzz'

def make_font(name, size):

font_path = os.path.abspath(os.path.join(

os.path.dirname(__file__), 'fonts', name))

return imagefont.truetype(font_path, size, encoding="utf-8")

font = make_font("/home/pi/python/1602/msyh.ttc", 20)

def distance():

# 傳送高電平訊號到 trig 引腳

gpio.output(gpio_trigger, true)

# 持續 10 us

time.sleep(0.00001)

gpio.output(gpio_trigger, false)

start_time = time.time()

stop_time = time.time()

# 記錄傳送超聲波的時刻1

while gpio.input(gpio_echo) == 0:

start_time = time.time()

# 記錄接收到返回超聲波的時刻2

while gpio.input(gpio_echo) == 1:

stop_time = time.time()

# 計算超聲波的往返時間 = 時刻2 - 時刻1

time_elapsed = stop_time - start_time

# 聲波的速度為 343m/s, 轉化為 34300cm/s。

distance = (time_elapsed * 34300) / 2

print("距離 = cm".format(distance))

return distance

def i2c_12864_print(x,y,text):

with canvas(device) as draw:

draw.text((x, y), text, fill="white", font=font)

def get_file_content(filepath):

with open(filepath, 'rb') as fp:

return fp.read()

while true:

print("測量長度")

csblength = distance()

if csblength < 200:

print("程式開始,拍攝**")

print("拍攝結束")

樹莓派連線超聲波感測器

你知道蝙蝠是個 瞎子 嗎?那它怎麼看東西呢?好吧,它是通過超聲波來探路的。下面我要介紹的就是超聲波模組,有了它你的樹莓派就再也不用當心會 撞牆 了!該模組會發出超聲波,在聲波碰到障礙物時會立刻返回被該模組接收到。通過超聲波模組來測距的原理就是,計算聲波返回的時間,然後與聲波的傳遞速度相乘,就能得到距...

樹莓派編寫超聲波模組程式

初始化 在程式的開始的時候需要呼叫上面的任意的函式來對wiringpi 進行初始化,否則你的程式不能正常工作。int wiringpisetup void 設定引腳電平 void pinmode int pin,int mode 引數說明 pin 引腳編號 根據wiringpi的引腳說明圖找到各個引...

樹莓派超聲波測距 蜂鳴器(c語言)

前邊我們已經詳細的講解了樹莓派控制超聲波模組測距 和超聲波控制蜂鳴器模組發聲 今天我們就來看看怎麼把兩個模組全都應用起來,做乙個防盜裝置。先來看一下各個引腳的連線方式 需要七根母對母的杜邦線 超聲波模組 1.vcc 接5v電源 接1號引腳 2.trig 輸出埠 接16號引腳 3.echo 輸入埠 接...