APP下载

基于飞思卡尔单片机的声音导引系统设计

2018-01-09张茂云陈风龙唐晨

科技视界 2017年28期

张茂云 陈风龙 唐晨

【摘 要】声音导引系统可以由声音实现对机器的智能控制,在产业、民用等领域有着广阔的应用空间。本文基于飞思卡尔单片机,设计了声音引导系统,由主控系统和移动声源系统两部分组成。系统采用C语言集成开发环境编写人性化的操作界面,利用高效简洁的算法优化运动轨迹,实现了智能控制。系统低功耗,性价比高,经调试和测试,系统各项性能运行稳定,可以有效的实现声音导引系统的精确控制。

【关键词】声音导引;无线收发;飞思卡尔;DG128 Atmega8

1 系统设计方案论证

1.1 设计方案简介

AB与AC垂直,Ox是AB的中垂线,O'y是AC的中垂线,W是Ox和O'y的交点。若移动声源与A、B、C的间距较小,会加大误差。为保证数据有效,声源可运动的范围应保持在ox右侧。当可移动声源到达ox后,应该有灯光和声音信号提示超过最有效的运动范围。在其运动过程中如若进入ox左侧区域,超出范围应尽量保持在2cm以内,以保证数据有效。声源向ox运动且到达ox停止停止后得到声源与ox间距,ox与声源的间距即为定位误差。定位误差范围应保持在1cm以内。对于声源,应该确保发出周期性音频脉冲信号,音频信号频率、脉冲周期根据下文分析选定位正常声波,频率在20Hz-20000Hz之间,周期在5×10-5-5×10-2之间。

平均速度=■(1)

响应的平均速度计算方法由公式(1)明确给出,响应时间即为声源发出音频信号等待反馈信号,在接收到反馈信号后开始产生位移,在到达ox所在位置时停止运动,此次整体运动过程所花费的时间。将其得到的值利用公式(1)计算得出结果。

1.2 系统设计方案

声源的声波选择可以选用超声波、正常声波、次声波。超声波易检测,且处理简单控制精度高,但由于是不符合要求的音频信号,因此排除在外。正常声源定位,声波符合音频信号范围。但是由于其频率低,易于受到外界干扰而不利于处理芯片采集,因此在电路设计时应先将音频信号采集出来,然后经过选频滤波电路处理,得到易于处理器分析的正确频率信号。综合以上内容及电路设计,最终本文介绍利用正常声源定位。

2 系统模块设计

该系统中有涵盖了智能控制系统、发声系统、动力与转向控制系统、电源管理系统四大模块的移动声源系统模块和包含接收器和主要智能控制系统的接收器主机系统模块。这两大模块是整個系统的核心部分,基本涵盖了所有的功能。

2.1 移动声源部分

(1)智能控制系统

ATmega8是以增强的AVR RISC结构为基础的低功耗8位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行时间, ATmega8 的数据吞吐率高达 1MIPS/MHz,可以减缓系统在功耗和处理速度之间的矛盾。将 8 位 RISC CPU 与系统内可编程的 Flash 集成在一个芯片内为核心的最小系统板为移动声源发声、无线通信提供了灵活而低成本的解决方案。另外, ATmega8具有三通道PWM,此工能可以方便地控制舵机、驱动电机。

需要注意的是,由于机器需要长时间工作,尽量避免频繁更换电池,所以必须是低功耗、节能设计。Atmega8在4Mhz且工作电压为3.3V(25°C)时的工作电流为3.6mA,空闲模式电流为1.0mA,最大程度上减少功耗。

(2)发声系统

本设计采用直流供电电压6V~24V的SFM-27连续型有源蜂鸣器,产生频率为3KHZ的音频信号,与声源接收系统组成整个引导体系的发送与接收,从而使机器移动。

(3)动力与转向控制系统

由上文中提到的响应的平均速度计算方式可以计算出响应速度的均值,在平均速度大于10cm/s的前提下,想要不影响数据的准确性,动力系统响应速度也是非常重要的环节。

本文中采用的是Lm298芯片作为驱动器,这是一款高压、大电流双全桥式的驱动器,它的可以接受标准TTL逻辑电平信号和驱动电感负载,且为使电子元件不受输入信号影响该芯片应用两抑制输入来避免。Lm298芯片还能通过软件开发得方式简化和减轻主控芯片的负担。另外通过光电耦合可极大地减小对主控芯片的干扰。通过ATmega8的I/O口驱动,能够方便地操控步进电机实现精确移动和转向。

(4)电源管理系统

系统硬件设计中不可或缺的管理单元即为电源管理单元,它在整个电源系统中扮演着重要的角色。系统采用12V电源供电。系统各个单元正常工作状态下所需电压不同,大致需要3.3V、5V、12V三种电压,所以电源系统需将电压值分为三个段位输出。三个电压档的具体实现如下: LM1117是一个低压差电压调节器系列,LM1117-3.3可将输出电压固定在3.3V。本系统选用LM1117是因为它能够为系统限制电流同时有热保护功能并且具有1个齐纳调节的带隙参考电压以达到为系统供给电压的精度控制在±1%。

2.2 接收器主机部分

(1)接收器

系统设计由3个接收器实现定位,接收器由微音器与放大电路组成,并通过主机供电,接收器之间为有线连接。微音器的接收范围为300~3400HZ,放大器采用LM386。

根据声音传输时的衰减因数和接收端对信号的幅度要求,以及后续音频处理芯片的处理能力,预计将音频信号放大4000倍。放大器通过LC串联谐振选频电路得到中心频率为3K的音频信号,再经两片LM386级联的放大的级联电路放大,其中一级放大倍数为200,二级放大倍数为20倍,这可以让信号快速进入饱和区。

(2)接收主机智能芯片

接收主机采用飞思卡尔单片机。该系统的核心控制采用飞思卡尔半导体公司的16位HCSl2系列单片机MC9S12DGl28。其主要特点是高度的功能集成,易于扩展,低电压检测复位功能,看门狗计数器,低电压低功耗,自带输入捕捉功能可以用来检测声音信号。

3 系统算法设计

3.1 误差信号产生

误差信号的产生是由于声源发出的信号频率很低,接收端受到外界音频信号干扰较大,滤波网络难以对声音提纯。其次音频信号的放大器搭载了两级lm386,对噪声也进行了放大作用。同时在软件编程上还存在一定的误差。通过优化算法设计可以尽量减小误差。

3.2 控制量设计计算

控制量是通过产生的误差信号产生的,假设可移动声源在允许范围内任一点放置。将移动声源与A的误差信号设为Tas, 将移动声源与B的误差信号设为Tbs,将移动声源与C的误差信号设为Tcs。

首先使移动源到达Ox线,当Tas>Tbs时移动声源位于Ox线右侧;当Tas

其次使移动源到达W点,当Tas>Tcs时移动声源位于W点上方;当Tas

4 测试结果分析

分别用计时器、米尺测量出移动声源运动过程中的各项参数,确定起始位到OX线距离,确定定位误差、响应时间、左偏移量并算出可移动声源的平均速度。

测试结果分析可知在不同起始位置出发时,小车的平均速度均几乎可达10cm/s,满足指标要求,同时定位误差及偏移误差均达到题目要求标准。在声源旋转180度后仍可达到上述指标。本声源引导系统是完全符合指标的声源控制系统。

5 结论

根据多次测试结果显示该声音引导系统工作性能、稳定性良好,经过多次测试证明还系统具定位精度高,相应时间短,测量误差低等特点。实验的同时还发现算法还具有较大的改进空间,其一、可以在移动端增加反馈系统来实现变速运动、降低相应时间;其二可以在移动端增加转动系统实现360度的定位。另外,该系统功耗低,性价比高,具有的潜在开发价值。