• 大小: 15.76MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-08-05
  • 语言: Python
  • 标签:

资源简介

python智能识别垃圾分类种类通过串口发送垃圾种类给arduino,主要功能:运行程序后我们说“ 电脑”
程序会自动识别是“可回收物”,python处理把“可回收物”四个字的UTF-8编码发送给单片机。

资源截图

代码片段和文件信息

‘‘‘
爬取垃圾分类网站,在线查询垃圾分类数据
实现串口发送垃圾数据,实现实时的垃圾分类功能
2019-12-03  更新语音输入名称,识别出垃圾种类


‘‘‘
import requests
import ssl
import urllib3
import text2utf8 as t2u
import txt_op
import txt_operation
import serial
import time
from aip import AipSpeech
from playsound import playsound

urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)  #发送
ssl._create_default_https_context = ssl._create_unverified_context
session = requests.session() # 构造SSL证书可以使我们可以实现对https的get请求
APP_ID = ‘17863328‘
API_KEY = ‘8HhP4Ht3dft4XmnYOBtv0qK4‘
SECRET_KEY = ‘HGtfFviwPmOHFid1PLf2Yae5izEIrZGs‘
client = AipSpeech(APP_ID API_KEY SECRET_KEY)
headers={
        ‘User-Agent‘:‘Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/78.0.3904.108 Safari/537.36‘
    }



def shibei_LaJi():
    str_utf8=t2u.text2utf8()
    url=r‘https://www.smartmll.com/?s=‘
    url = url + str_utf8[1]  # 构造Ulr参数 
    print(url)
    res1 = requests.get(urlheaders=headersverify=False)  

    #print(res1.text)  #  取网页源码 打印出全部网络数据 用于调试
    with open(r“./douban.txt““w“) as f:
            f.write(res1.text)
    txt_op.delblankline(r“./douban.txt“r“./text2.txt“)  #将文本中的空行去掉
    Garbage=txt_operation.web_parsing() #获取垃圾种类
    if Garbage ==‘请输入垃圾‘:
        playsound(‘./test.mp3‘)
    else:
        result  = client.synthesis(str_utf8[0]+“属于“+Garbage ‘zh‘ 1 {‘vol‘: 5‘per‘:4‘spd‘:5})  #调用百度文字转语音
    #识别正确返回语音二进制 错误则返回dict 参照下面错误码
        if not isinstance(result dict):
            with open(‘./auido.mp3‘ ‘wb+‘) as f:
                f.write(result)
        playsound(“auido.mp3“)
    print (Garbage)
    return Garbage
    
def serial_send():
    Garbage_utf8 = shibei_LaJi()
    s_utf8 =  Garbage_utf8.encode(‘UTF-8‘) #垃圾种类的文本转UTF-8格式
    string = str(s_utf8)
    string=string.strip(‘b‘)
    #print(string) #去除头字母 ‘\xe4\xb8\xad\xe5\x9b\xbd
    string = string.strip(r“‘“) #去除字符串中的首尾的1单引号
    string=string.replace(r‘\x‘‘‘) #把字符串中的/x 删除
    #string=string.replace(r‘\x‘‘\000‘) 前一个程序中使用 空字符替换/x 造成在串口读取中出现错误

    string= string.upper()
    
    print(type(string))
    ser.write(bytes(string.encode(“UTF8“)))  #发送识别到的垃圾种类 
    
    time.sleep(2)     #sleep() 与 inWaiting() 最好配对使用
    num=ser.inWaiting()
    uart_data = ser.read(num)
    print(uart_data)
    #ser.close()    
    print(string)
    

if __name__ == “__main__“:
    com = input(“请输入你的COM端口:“)
    ser = serial.Serial(com115200)  #打开串口
    while True:
        #ser = serial.Serial(com115200)  #打开串口
        serial_send()

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-12-15 13:26  爬取垃圾分类数据库\.vscode\
     文件          58  2019-12-02 16:39  爬取垃圾分类数据库\.vscode\settings.json
     目录           0  2019-12-15 13:26  爬取垃圾分类数据库\__pycache__\
     文件        2308  2019-12-15 13:13  爬取垃圾分类数据库\__pycache__\get_main.cpython-37.pyc
     文件         902  2019-12-15 11:42  爬取垃圾分类数据库\__pycache__\test_AI.cpython-37.pyc
     文件         573  2019-12-13 23:27  爬取垃圾分类数据库\__pycache__\text2utf8.cpython-37.pyc
     文件         593  2019-12-02 22:20  爬取垃圾分类数据库\__pycache__\txt_op.cpython-37.pyc
     文件         664  2019-12-14 21:07  爬取垃圾分类数据库\__pycache__\txt_operation.cpython-37.pyc
     文件        2247  2019-12-15 11:42  爬取垃圾分类数据库\__pycache__\YvYin.cpython-37.pyc
     文件      116780  2019-12-15 11:58  爬取垃圾分类数据库\1.wav
     文件       90156  2019-12-06 23:44  爬取垃圾分类数据库\3.wav
     文件        4248  2019-12-15 11:58  爬取垃圾分类数据库\auido.mp3
     目录           0  2019-12-15 13:26  爬取垃圾分类数据库\build\
     目录           0  2019-12-15 13:26  爬取垃圾分类数据库\build\get_main\
     文件       43241  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\Analysis-00.toc
     文件      778332  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\base_library.zip
     文件        7481  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\COLLECT-00.toc
     文件        2383  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\EXE-00.toc
     文件     2289429  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\get_main.exe
     文件        1033  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\get_main.exe.manifest
     文件     2016021  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\PKG-00.pkg
     文件        1349  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\PKG-00.toc
     文件     1998745  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\PYZ-00.pyz
     文件       35091  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\PYZ-00.toc
     文件       10288  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\warn-get_main.txt
     文件      593563  2019-12-15 13:13  爬取垃圾分类数据库\build\get_main\xref-get_main.html
     目录           0  2019-12-15 13:26  爬取垃圾分类数据库\dist\
     目录           0  2019-12-15 13:26  爬取垃圾分类数据库\dist\get_main\
     文件       83456  2019-12-05 14:19  爬取垃圾分类数据库\dist\get_main\_bz2.pyd
     文件      172544  2019-12-05 14:19  爬取垃圾分类数据库\dist\get_main\_cffi_backend.cp37-win_amd64.pyd
     文件       15872  2019-12-05 14:19  爬取垃圾分类数据库\dist\get_main\_contextvars.pyd
............此处省略89个文件信息

评论

共有 条评论