一种垃圾分类语音系统的设计

2018-01-13 23:56薛小晶
读与写·教育教学版 2018年1期
关键词:垃圾分类

摘 要:本文介绍了设计一种垃圾分类语音系统,主要由安装在垃圾桶把手处的压力传感器,检测放大器,中央处理器,语音识别器,语音输出端,语音测试端以及供电电源组成;以实现语音提示,垃圾桶自动开合,垃圾自动分类等主要功能。

关键词:语音提示 自动开合 垃圾分类

中图分类号:G642 文献标识码:A 文章编号:1672-1578(2018)01-0054-02

1 引言

随着垃圾产量日益增长。其引发的环境问题日益突出。面对垃圾泛滥成灾的局面,世界各国的视线已经不停留在如何控制和销毁垃圾的问题上,而是采取积极的态度和有利的措施进行科学的处理,回收利用垃圾,实现资源的重复利用。欧美、日本等发达国家已实行垃圾分类政策多年,但垃圾分类主要依靠于人工分拣,分类过程繁琐。2015年4月,国家发改委、住建部、财政部、环保部、商务部联合印发通知,确定南通、南京、苏州等26个城市(区)为第一批生活垃圾分类示范城市(区)。“十二五”期间,市委、市政府决定,在南通市区范围内率先启动生活垃圾分类试点,将生活垃圾分类管理列为生态文明建设重点范围,力求通过开展生活垃圾分类管理,提高垃圾资源化处置管理水平,促进循环经济发展。因此生活垃圾分类,势在必行。

因此如何通过垃圾分类管理,最大限度地实现垃圾资源的利用,减少垃圾处置量,改善人类生存环境质量,是当前世界公共关注的问题。本文所设计的垃圾分类语音系统,通过设置语音系统能够有效提高垃圾分类的准确性,还能起到智能开启垃圾桶的效果。

2 总体设计

本文设计的垃圾分类语音系统能够实现语音提示以及垃圾分类,防止垃圾誤放的能力,包括安装在垃圾桶把手处的压力传感器,检测放大器,中央处理器,语音识别器,语音输出端,语音测试端以及供电电源;供电电源将电源电压转换成各个部件所需要的电压并给各部件供电,压力传感器与检测放大器电连接,检测放大器与所述中央处理器电连接,中央处理器与所述语音识别器电连接,中央处理器用于根据压力传感器信号判别垃圾桶是否打开,通过串口通讯给语音识别器发出播放相应语音命令;语音识别器分别与语音输出端及语音测试端电连接,语音输出端将语音识别器播放的语音段电信号转换成声波,语音测试端利用按键测试语音识别器是否工作正常。

当用户手握把手并打开垃圾桶盖时,传感器模块感应打开垃圾桶盖的压力或振动,并将压力或振动信号转换成电信号,经放大滤波比较等,然后将处理后信号送入CPU模块,通过程序控制与判断,得出垃圾桶盖打开,然后通过串口发出命令给语音模块播放相应语音,告知用户投放哪种类型的垃圾,以便起到更好的垃圾分类效果。总体设计框图如图l所示。

3 控制部分硬件电路设计

样机采用典型sTC89C51型单片机,控制电机运转,实现垃圾桶自动开合、检测分类、语音提示等主要功能。控制电路原理图如图2所示。从功能模块的角度,可以将垃圾分类语音系统分为五个主要模块。各模块具体功能如下:

(1)电源模块:电源是保证机器人稳定、可靠运行的关键部件,它直接影响着机器人性能的好坏。将电源电压转换成各个部件所需要的电压并给各部件供电。电机电源采用稳压电源模块,通过电源稳压芯片如7805等,转换成系统要求的5V直流,并整流滤波使电压稳定。

(2)语音模块:语音识别器分别与语音输出端及语音测试端电连接,语音输出端将语音识别器播放的语音段电信号转换成声波,语音测试端利用按键测试语音识别器是否工作正常。

(3)压力传感器模块:压力传感器通过感应打开垃圾桶盖时触摸产生的压力与振动,并将压力与振动信号转成成电信号,送给检测放大器。

(4)检测放大器模块:检测放大器将压力传感器输出信号进行滤波放大整形,使之符合CPU模块识别要求。

(5)CPU模块:中央处理器用于根据压力传感器信号判别垃圾桶是否打开,通过串口通讯给语音识别器发出播放相应语音命令。

4 软件程序设计

本设计在keil环境中采用C语言编程:

//c语言源程序

#include

typedef unsigned char uint8;

sbit KEY1=P1^7;

uint8 First[]={0x7E,0x04,0x03,0x00,0X01,0xEF};

/*UART初始化 波特率:9600*/

void UART_init(void)

{

SCON = 0x40; // 10位uart,允许串行接受

TMOD = 0x20; // 定时器1工作在方式2(自动重装)

TH1 = 0xFD;

TL1 = 0xFD; //设置波特率为9600

TR1 = 1;

}

/*外中断0下降沿触发,并打开总开关、分开关*/

void int0_init(void)

{

IT0 = 1;

EA = 1;

EX0 = 1;

}

/*UART 发送一字节 入口参数uint8的数据类型 即要发送的数据*/

void UART_send_byte(uint8 dat)

{

SBUF = dat;

while (TI == 0);

TI = 0;

}

/* UART 发送字符串

第一个参数要发送字符串或数据的首地址

第二个参数是要发送的数据或字符串的长度*/

void UART_send_string(uint8 *buf,uint8 len)

{ uint8 i;

for(i=0;i

UART_send_byte(*buf++);

}

void delay(void)

{

unsigned int j;

for(j=0;j<10000;j++);

}

void my_int0() interrupt 0

{

EX0 = 0;

UART_init();

UART_send_string(First,6);

KEY1 = 0;

delay();

KEY1 = 1;

EX0 = 1;

}

main()

{

int0_init();

}

;匯编语言源程序

ORG 0000H

LJMP MAIN

ORG 0003H

LJMP MY_INT0

ORG 0100H

MAIN: SETB IT0 ;下降沿触发中断0

SETB EA

SETB EX0

SJMP $

MY_INT0: CLR EX0

LCALL FASONG

CLR P1.7 ;亮灯示意指令发送完毕

LCALL DELAY

SETB P1.7

SETB EX0

RETI

FASONG: MOV SCON, #40H ;串口为工作方式1

MOV PCON, #00H ;SMOD=0,波特率不倍增

MOV TMOD, #20H ;定时器1工作模式2

MOV TH1, #0FDH

MOV TL1, #0FDH ;11.052MHz,9600bps

SETB TR1

CLR A

MOV R7, #06H

MOV DPTR, #TABLE

LOOP: MOVC A,@A+DPTR

MOV SBUF, A

JNB TI, $ ;等待发送完毕

CLR A

CLR TI

INC DPTR

DJNZ R7, LOOP

CLR TR1

RET

DELAY: MOV R6, #01H

L0: MOV R5, #0FFH

L1: MOV R4, #0FFH

DJNZ R4, $

DJNZ R5, L1

DJNZ R6, L0

RET

TABLE: DB 7EH, 04H, 03H, 00H, 01H, 0EFH ;播放第一首歌

END

5 结语

本设计通过设置语音系统能够有效提高垃圾分类的准确性。有助于树立正确的垃圾分类的观念,起到很好的引导和管理作用,并且系统的智能化程度高,并有助于节能环保。

参考文献:

[1] 樊纲.低碳城市在行动[M].北京:中国经济出版社,2011.

[2] 王子彦.中国城市垃圾分类回收的问题及对策[J].生态经济,2009.

[3] 徐金龙.城市生活垃圾管理的国际经验[J].生态经济,2012.

作者简介:薛小晶(1982-),女,南通科技职业学院讲师,主要从事机电专业教学研究。

猜你喜欢
垃圾分类
专业运营垃圾分类回收模式推动呼和浩特市居民分类行为转变研究报告
不是后G20时代杭州市垃圾分类管理对策研究
成都市生活垃圾分类现状及建议
小学校本课程《垃圾分类》智慧教育案例研究
日本城市垃圾分类的做法
高校环境教育非课堂教学模式的探索
新型城市生活垃圾分类回收体系