基于AVR和51单片机的机器鱼语音控制系统设计与实现

时间:2012-09-02来源:网络

b.jpg


模块PCB板已经将连接麦克风的引脚接到模块的MIC插座上,所以在连接电路的时候11~19和22~31引脚悬空不用。与51单片机连接时,ICR_P0~ICR_P7(2和33-39引脚)必须连接在单片机的数据总线上,同时需要在P0-P7,以及RDB,MD,INTB,WRB,CSB这些控制管脚上焊接1K /10K的上拉电阻(上拉到3.3V即可),这样可以辅助系统稳定运行。CLK引脚的连接有两种选择:1)直接将51单片机的晶振信号通过导线输入到LD3320的CLK管脚,但是导线不宜过长。2)将正方形有源晶振直接焊接在模块上预留的连接点,此时CLK管脚需要悬空。本文采用的第二种方法。
2.3 AVR控制部分
AVR是鱼体的主控MCU,主要用来控制机器鱼的的动力部分。机器鱼的动力来自舵机,设计关节数为三个,即有三个舵机。每个舵机由十五位的不同占空比的PWM波来控制转动不同的角度,三个舵机需要配合形成鱼体波来控制鱼体摆动。鱼体结构如图3。

f.jpg


鱼体波是利用杆系机器鱼对真实鱼游动形态的拟合,可以认为鱼体波曲线是鱼体波幅包络线和正弦曲线的合成,它开始于鱼体惯性力的中心,延伸至尾柄,其曲线方程可表示为
c.jpg
式中,yboby是鱼体的横向位移(背腹轴),x是鱼体的轴向位侈(头尾轴),c1是鱼体波波幅包络线的一次项系数,c2是鱼体波波幅包络线的二次项系数,k是波长倍数(k=2π/λ),λ是鱼体波的波长,w是鱼体波的频率(w=2πf=2π/T)。
由于计算机控制是一种离散的数字量,鱼体波曲线也需要离散化,所以把时间参数t从鱼体波运动函数yboby(x,t)中分离出来,方程即为
d.jpg
式中,i表示一个摆动周期内的样条曲线序列的第i个变量;N表示鱼体波分辨率,即在一个摆动周期内整个鱼体波被离散的程度,其上限不能大于驱动机构摆动的最高频率。
为了更好地表征鱼体波动的参数,提高鱼体方向控制特别是转弯过程中的灵活性,在方程2的特征参数基础上,增加波长倍数k相对于x的二次增益,修改后的方程如下
e.jpg
通过调整k1和k2的值,根据x的变化可以得到更多的鱼体波曲线。同时,在机器鱼的设计过程中,可通过微调身体波参数来增加运动的机动性和灵活性。

1 2 3 4

关键词: 控制系统 设计 实现 语音 机器 AVR 单片机 基于

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版