当前位置:首页 > STM32
  • 穿戴式装置大热 意法半导体布局再添利多

      公司进一步强化OTN解决方案组合,填补日益扩大的ASSP和ASIC市场空白   2013年9月25日,中国北京- All Programmable技术和器件的全球领先企业赛灵思公司(Xilinx, Inc. (NASDAQ:XLNX))今天在ECOC 2013上宣布推出全新OTN SmartCORE™ IP,打造高容量以太网、100G OTN交换平台以及分组光传输系统(P-OTS)。赛灵思SmartCORE IP系列的推出,是赛灵思All Programmable解决方案发展蓝图上的一个战略性产品,可用于创建、差异化、发展智能的400G和Nx100G OTN解决方案,以满足客户对高可用性、低时延、低抖动和高服务质量(QoS)要求的OTN交换平台。   赛灵思公司有线通信总监Gilles Garcia指出:“市场对更高、更有效带宽利用的需求推动了基于OTN交换的Smarter Network的发展。然而,传统ASIC和ASSP解决方案在性能和功能上的不足阻碍了创新。随着我们针对OTN交换优化的SmartCORE IP系列的不断扩展,赛灵思正通过积极投资支持更智能P-OTS网络,从而在不影响性能或功能的状态下,帮助客户开发出高度差异化、小型化、低功耗的All Programmable解决方案。”   全新OTN SmartCORE IP模块针对7系列器件进行了优化,内置有一组支持各种环境的综合应用程序接口(API)——可用于抽象化所有常见复杂功能,有助于无缝集成到客户软件中。   · 100G 1阶多路复用器/多路分配器SmartCORE IP– 这是一个超小型的流量聚合器,可支持多达80个通道ODUj流量的任意组合,可多路复用至高阶ODU4,也可从高阶ODU4实现多路分配。   · 符合OIF标准的100G SAR SmartCORE IP– 80通道分段与重组内核,可将ODUjs分组成数据包流,从而让ODU流量通过数据包交换架构实现交换,协助数据包光传输系统。   · 100GODUMonSmartCORE IP – 双向IP模块用于在多达80个ODUj通道上执行开销插入和提取。结合使用赛灵思128ch OTN开销处理器,它能支持PM监控、TCM监控和/或TCM终端与生成,随后行为插入可在每个ODUj通道上支持6级TCM。   供货情况   用于OTN交换的赛灵思SmartCORE OTN IP核将于2013年9月30日开始供货。更多信息,敬请联系您所在地的赛灵思销售代表,或访问以下网址:http://china.xilinx.com/esp/wired/wired_ip_resources.htm

    时间:2020-09-03 关键词: pebble STM32 st公司 智慧手表 穿戴式装置

  • 在变频空调风机中永磁同步电机矢量控制方案的运用

      伺服电机原理   一、交流伺服电动机   交流伺服电动机定子的构造基本上与电容分相式单相异步电动机相似。其定子上装有两个位置互差90°的绕组,一个是励磁绕组Rf,它始终接在交流电压Uf上;另一个是控制绕组L,联接控制信号电压Uc。所以交流伺服电动机又称两个伺服电动机。   交流伺服电动机的转子通常做成鼠笼式,但为了使伺服电动机具有较宽的调速范围、线性的机械特性,无“自转”现象和快速响应的性能,它与普通电动机相比,应具有转子电阻大和转动惯量小这两个特点。目前应用较多的转子结构有两种形式:一种是采用高电阻率的导电材料做成的高电阻率导条的鼠笼转子,为了减小转子的转动惯量,转子做得细长;另一种是采用铝合金制成的空心杯形转子,杯壁很薄,仅0.2-0.3mm,为了减小磁路的磁阻,要在空心杯形转子内放置固定的内定子。空心杯形转子的转动惯量很小,反应迅速,而且运转平稳,因此被广泛采用。   交流伺服电动机在没有控制电压时,定子内只有励磁绕组产生的脉动磁场,转子静止不动。当有控制电压时,定子内便产生一个旋转磁场,转子沿旋转磁场的方向旋转,在负载恒定的情况下,电动机的转速随控制电压的大小而变化,当控制电压的相位相反时,伺服电动机将反转。   交流伺服电动机的工作原理与分相式单相异步电动机虽然相似,但前者的转子电阻比后者大得多,所以伺服电动机与单机异步电动机相比,有三个显著特点:   1、起动转矩大   由于转子电阻大,其转矩特性曲线如图3中曲线1所示,与普通异步电动机的转矩特性曲线2相比,有明显的区别。它可使临界转差率S0>1,这样不仅使转矩特性(机械特性)更接近于线性,而且具有较大的起动转矩。因此,当定子一有控制电压,转子立即转动,即具有起动快、灵敏度高的特点。   2、运行范围较广   3、无自转现象   正常运转的伺服电动机,只要失去控制电压,电机立即停止运转。当伺服电动机失去控制电压后,它处于单相运行状态,由于转子电阻大,定子中两个相反方向旋转的旋转磁场与转子作用所产生的两个转矩特性(T1-S1、T2-S2曲线)以及合成转矩特性(T-S曲线)   交流伺服电动机的输出功率一般是0.1-100W。当电源频率为50Hz,电压有36V、110V、220、380V;当电源频率为400Hz,电压有20V、26V、36V、115V等多种。   交流伺服电动机运行平稳、噪音小。但控制特性是非线性,并且由于转子电阻大,损耗大,效率低,因此与同容量直流伺服电动机相比,体积大、重量重,所以只适用于0.5-100W的小功率控制系统。   交流伺服电动机原理?   伺服电机内部的转子是永磁铁,驱动器控制的U/V/W三相电形成电磁场,转子在此磁场的作用下转动,同时电机自带的编码器反馈信号给驱动器,驱动器根据反馈值与目标值进行比较,调整转子转动的角度。伺服电机的精度决定于编码器的精度(线数)。   伺服电动机在伺服系统中控制机械元件运转的发动机。是一种补助马达间接变速装置。又称执行电动机,在自动控制系统中,用作执行元件,把所收到的电信号转换成电动机轴上的角位移或角速度输出。分为直流和交流伺服电动机两大类,其主要特点是,当信号电压为零时无自转现象,转速随着转矩的增加而匀速下降。   作用:伺服电机,可使控制速度,位置精度非常准确。   直流伺服电机分为有刷和无刷电机。   有刷电机成本低,结构简单,启动转矩大,调速范围宽,控制容易,需要维护,但维护方便(换碳刷),产生电磁干扰,对环境有要求。因此它可以用于对成本敏感的普通工业和民用场合。   无刷电机体积小,重量轻,出力大,响应快,速度高,惯量小,转动平滑,力矩稳定。控制复杂,容易实现智能化,其电子换相方式灵活,可以方波换相或正弦波换相。电机免维护,效率很高,运行温度低,电磁辐射很小,长寿命,可用于各种环境。   交流伺服电机也是无刷电机,分为同步和异步电机,目前运动控制中一般都用同步电机,它的功率范围大,可以做到很大的功率。大惯量,最高转动速度低,且随着功率增大而快速降低。因而适合做低速平稳运行的应用。

    时间:2020-09-02 关键词: 永磁同步电机 变频空调 STM32

  • 集结出发! STM32全国研讨会系列之一:ST智能门铃中国首秀

    一大波新产品、应用演示和技术专家团将随意法半导体2020年STM32全国研讨会一起“拜访”国内城市。作为第14届STM32全国研讨会,此次活动仍将注重于为本地市场和客户创造与ST解决方案面对面的机会。一直以来,ST与国内的教育机构保持合作,参加了诸多本地行业展览会,例如2020年上海慕尼黑电子展,并依托我们强大的中国团队推进重大创新 。自2007年以来, ST风雨无阻,连续14年举办STM32全国研讨会,让我们的创新成果和专业知识走近行业和社区。 2020年STM32全国研讨会将于9月13日至25日依次在14个城市举行。您可以在本文结尾找到全国研讨会城市名单,并在我们的活动页面上报名参展。为了迎接全国研讨会活动的到来,我们将发布一系列文章。今天这篇文章将重点讨论云计算、网络连接以及工业与安全应用。下一篇文章将探讨我们的人工智能和感知技术,以及我们如何将这些创新成果全都整合在一起。 STM32全国研讨会:云计算与网络连接 ST智能门铃亚洲首秀 我们将在此次STM32全国研讨会上为亚洲本地市场带来全新的产品应用。例如,我们将在本地区首次展示一个板载摄像头模块、LED显示屏、外部麦克风、LED灯环的P-NUCLEO-WB55开发板,以及集成VL6180X时间飞行传感器的X-NUCLEO-6180XA1扩展板。这个硬件模组可以模拟智能对讲系统,当接近检测传感器检测到入户门附近有人时,LED灯环将会亮起,同时摄像头和麦克风开始录像录音。 STM32WB MCU可以处理音频信息,然后通过低功耗蓝牙实时发送到手机应用。通过这一系列模组,用户可以设计一个全功能智能门铃。而借助我们MCU的功能特性,将让该系统变得更加高效经济。参会者将有机会了解更多信息,现场向ST代表咨询开发难题并获取软件源代码。 Sub-1G和蜂窝模块物联网软件栈 Sub-1 G和蜂窝网络物联网应用也是本届全国研讨会的一大亮点。例如,我们将展出首个内置Lo-RA收发器的MCU STM32WL 。新开发板利用LoRa网络将信息传到装有STM32F7的网关,随后再将数据推送到myDevices Cayenne服务器。这个演示旨在向工程师证明,随着LoRaWAN热度在中国升温,像STM32WL这样的 MCU可以为开发提供极大的便利。 另外,参观者还可以现场观看STM32 Nucleo开发板插接Quectel 的NB - IoT shield板的功能演示。我们还将展示Quectel和Fibocom开发的LTE Cat 1 shields板卡。这种演示方式非常有意义,I-CUBE-QUECTEL软件扩展包让开发人员能够创建通过NB-IoT发送传感器数据的应用。虽然工程师早已知道ST提供这样的扩展软件,但是在亲自看到软件运行后,会对该解决方案的实用性有更深刻的理解。观众还可以在演示过程中提问, ST代表将帮助他们解决开发难点,从而更快地启动开发项目。 STM32全国研讨会:工业与安全 STM32G4: 用于高精度电机控制的新型MCU 工业与安全是STM32全国研讨会的另一项重要内容。 例如,我们将展示一个P-NUCLEO-IHM03开发套件,组件包括NUCLEO-G431RB MCU开发板、X-NUCLEO-IHM16M1三相无刷直流电动机驱动扩展板和云台无刷电动机。通过现场产品演示,开发人员可以更好地了解这个独一无二的混合信号MCU的高分辨率计时器有哪些实际用途。低于200皮秒的分辨率和灵活的脉冲宽度调制,让这些计时器具有很高的准确度,让MCU能够更精确地控制电动机运转。 STM32G4的定时器还支持正交编码器和霍尔传感器,因此开发人员无需额外的外部组件即可读取角度和方向数据,从而简化了代码和PCB布局。 STM32L5:集安全性、高性能和能效于一体的新产品 我们预测2020年将是物联网安全的关键一年。最近,ST发布了有关STM32安全功能的MOOC。在本届全国研讨会活动上,开发人员会对如何保护自身和客户的知识产权有新的收获,因为这往往比想象的更容易。举例来说,我们将重点介绍新推出的采用TF-M和TrustZone技术的安全旗舰产品STM32L5。它也是首批获得Arm的PSA 2级认证的产品。 在全国研讨会期间ST还将展示L5在字符识别应用中如何处理动态解密(OTFDEC)。该演示将神经网络和软件库存放在外部闪存内。值得注意的是,该演示应用曾经运行在STM32L4上。不过,因为STM32L5性能优异,OTFDEC没有导致应用性能下降。相反,这款新MCU还具有更高的能效。 STM32全国研讨会:教育机会 STM32 Trust让我们更了解STM32的安全性 参会者还将有机会了解STM32Trust计划。该计划将许多安全软件解决方案整合在一起,让它们变得更易用。通过此次STM32全国研讨会,将会有更多用户更详细地了解我们的安全解决方案。工程师们也将有机会广泛且深入地探讨当前火热的安全启动和安全固件更新系统,以及ST在安全固件安装、安全模块安装等方面的最新解决方案。针对物联网安全这一复杂棘手的难题,ST还将推广有助于开发工作的文档和软件扩展包。 STM32和AWS课程让我们更了解物联网和云计算 ST还将推出面向国内大学生的STM32与AWS 物联网课程。通过这些课程,学生将熟悉可以快速启动学校开发项目的硬件、固件和Web服务。该系列课程概述了物联网基础设施,并介绍了如何将我们的解决方案与AWS一起整合使用。该课程系统覆盖面非常广泛,可以创建数据分析、状态监视和预测性维护应用,参会者将可以扫描二维码下载这些课程。 更多关于STM32全国研讨会的资讯,请关注我们的第二篇系列文章。 2020年STM32全国研讨会城市名单 ● 深圳/杭州(9月13日) ● 郑州/长沙(9月15日) ● 南京/珠海(9月17日) ● 厦门/重庆(9月19日) ● 广州/北京(9月21日) ● 西安/青岛(9月23日) ● 沈阳/上海(9月25日) ● STM32全国研讨会注册报名

    时间:2020-09-01 关键词: st 智能门铃 STM32

  • 让安全重新定义物联网产品设计

    让安全重新定义物联网产品设计

      源于物联网(IoT)的高速发展,数据安全性的问题亦日趋凸显。据有关数据显示,现有的连接设备中有将近70%的设备很容易受到网络攻击,从而导致数据丢失或被盗,这个数字无疑让我们感觉恐怖,也让我们把物联网数据安全性问题提上了日程。   物联网暗藏高风险   物联网的伟岸蓝图,就是让地球一切事物变得更聪明,彼此间能相互交流。设想一下,当汽车出现故障时,自动提示你是哪个零部件出现了问题;当建筑自动提示你哪部分需要加固、维修时,世界将是一幅怎样的壮观景象?   而在美好的景象背后,潜伏着安全危机。2011年发生的Stuxnet攻击,最终导致离心机损坏、整个设施的核心处理能力遭到破坏。其中遭受攻击的控制系统使离心机工作稍微偏离了允许参数,但报告显示一切正常,直到离心机损坏之前,没有报告任何故障。   鉴此,物联网对安全性需求的迫切。   物联网感知层WSN安全技术解析   作为物联网不可或缺的系统之一,加强WSN的安全性也是必不可少的任务之一,下面就为大家解析几种WSN安全技术应用。   (1)密钥管理   密钥管理是信息安全技术的核心,更是WSN安全技术的核心。密钥管理主要有4种协议:简单密钥分布协议、动态密钥管理协议、密钥预分布协议、分层密钥管理协议。   在简单密钥分布协议中,所有节点都使用相同的密钥,发送方用这个密钥加密,接收方也用这个密钥解密。这种密钥分布协议占用的内存很少,显而易见它的安全性也是最差的。因而,在WSN技术中,很少采用这一协议。   在动态密钥管理协议中,根据用户需要,周期性地更换节点的密钥,形成动态的密钥管理方式。这种密钥分布协议能够有效保证网络的安全。   在密钥预分布协议中,网络节点在部署前就被分配一组密钥。节点被部署后,传感器节点建立节点共享密钥并再分配密钥。这种密钥分布协议同样能够有效保证网络的安全。   在分层密钥管理协议中,采用LEAP协议,它是一种典型的确定型密钥管理协议,使用多种密钥机制共同维护网络的安全。在每个节点中,分配4个密钥,分别是预分布的基站单独共享的身份密钥、预分布的网内节点共享的密钥组、相邻节点共享的邻居密钥和簇头共享的簇头密钥。这种密钥分布协议的防护措施最高效,也是最安全的。   WSN密钥管理方式可分为对称密钥加密和非对称密钥加密两种。对称密钥加密的特征是通信的双方使用完全相同的密钥,发送方使用这个密钥进行加密,接收方也使用这个密钥进行解密。这种密钥加密技术的密钥长度不长,计算、通信和存储开销相对较小,比较适用于WSN,因而是WSN密钥管理的主流方式。而非对称密钥加密是指节点使用不同的加密和解密密钥,由于对节点的计算、存储、通信等能力要求较高,一直以来被认为不适用于WSN。但是,近期研究表明,非对称密钥加密在优化后能适用于WSN。从信息安全的角度考虑,非对称密钥体制的安全性一定会远远高于对称密钥体制。   为解决WSN节点的物理破坏问题,可以在节点中使用抗窜改设备,为节点保护增加一层保护层。可以增设物理破坏感知机制,对物理破坏提前发出预警。另外,可以采用轻量级的对称加密算法对一些敏感信息进行加密存储,以保护信息的安全。   例如ST推出的STM32W MCU家族,便是基于IEEE 802.15.4的SoC,采用ARM Cortex-M3 24MHz处理器,内建64~128KB快闪记忆体,与8K SRAM.支援ZigBee与6LoWPAN协定,并具备AES-128硬体加密功能,以保障资料传输安全。   锁定8月《无线通信特刊》,助你解决高效低耗设计难题!   

    时间:2020-09-01 关键词: 物联网 wsn STM32

  • 基于STM32和SIM900A的无线通信模块设计

    基于STM32和SIM900A的无线通信模块设计

      设计一个可以实现短信收发与数据无线传输的模块的要求,本文采用了ARM Cortex-M3内核的主流产品STM32作为主控芯片,采用SIMCom公司的SIM900A作为通信芯片。在查阅大量相关文献以及相关芯片的数据手册之后,本文设计了一个远程无线通信模块。该模块在实验室试运行一周后,没有出现掉线的情况,数据收发的速度也很快。该模块具有性能稳定,外形小巧,性价比高等优点。厂方投入使用之后,反应良好。   随着网络和现代通信技术的不断发展,远程无线通信技术经过多年的研究与实际应用,现如今在工业控制领域有了非常重要的地位,并且发挥着越来越大的作用。文中根据厂家的要求,设计的无线通信模块,主要实现了短信与数据收发功能,并且做到了模块的稳定,掉线之后能够自动重连。   1 无线通信模块整体设计方案   模块主要有电源部分、主控部分、通信部分、数据传输部分4个部分组成。通信模块采用SIM900A进行无线通信。主控模块采用STM32作为主控芯片,来控制短信的收发与数据传输的顺利进行。远程终端可以是手机或者上位机的数据中心软件,经过处理之后,储存下来,方便日后的查询。本模块具有低功耗,方便灵活,操作简单并且稳定,掉线之后可以自动连接,运行过程十分稳定,并且成本较低。   2 无线通信模块硬件设计   2.1 功能需求   本文设计的无线通信模块,要求单12V电源输入,模块上电运行后有相应的指示灯来指示模块的运行状态。另外要求模块能够实现短信以及数据透传两大主要功能,在手机发送短信给模块之后,模块能够动作,并给出回应。最后要求在建立TCP链接时,仍然能够收发短信。      图1 无线通信模块结构图   2.2 电源部分   在主电路中,主控芯片STM32的工作电压为2.0~3.6 V,通信芯片SIM900A的工作电压为3.1~4.6 V,为使模块各个部分正常工作,必须对两者进行分别供电,电源供电电路如下:   图中V12外接12 V电源,经过电容滤波后输入到LM2576,实现12 V到4 V的转换,R1、R2在线路中起到分压作用,D2灯亮起时,表示模块已经正常供电。LM2576是美国国家半导体公司生产的3 A电流输出降压开关型集成稳压电路,具有完善的保护电路,比较稳定。      图2 电源模块   2.3 主控芯片   主控模块采用STM32单片机作为微控制器,该芯片能工作于-40~105℃的温度范围,MAX3232芯片用于串行口的电平变换,实现控制器与通信接口之间的通信。串口1与电源电平转换芯片Max3223相连,USART1_TX(输出,所以在配置GPIO时,定义该口的模式为推拉输出,USART1_ RX为输入,定义为悬浮输入模式。串口2与SN65LBC184D通信,实现数据的收发,USART2_RTS、USART2_RX为输入端口,模式定义为悬浮输入模式,USART2_CTS、USART2_TX为输出端口,模式定义为推拉输出。串口3用来控制SIM900A芯片,USART3_RTS、USART3_RX为输入端口,模式定义为悬浮输入,USART3_CTS、USART3_TX为输出端口,模式定义为推拉输出。      图3 主控芯片STM32   2.4 通信芯片   通信芯片采用SIMCom公司的新型紧凑型产品SIM900A,它属于双频GSM/GPRS模块,完全采用SMT封装形式,性能稳定,外观精巧,性价比高,并且能够满足用户的多种需求。在实现断线自动重连功能时,涉及到DCD、RI两个引脚的使用。DCD引脚用来实现模数转换,当模块掉线时,会给DCD引脚一个高电平,当这个电平被DCD引脚检测到之后,模块就是采取相应的动作,来重新连接上线。RI引脚在模块上线之后,就一直保持高电平,在有电话和短信进来的时候,RI管脚就会有一个低电平出现,当RI引脚检测到这个低电平的时候,模块就会采取相应动作,进入到短信或者电话模式。

    时间:2020-09-01 关键词: 无线通信模块 sim900a STM32

  • ST打造智能生活,推出多款提升生活品质的解决方案

      · 完整的开发生态系统,包括开发工具和软件,简化物联网应用开发   · 实现更环保、更安全和更舒适汽车驾驶体验   · 提高家庭、工厂和楼宇的能效、自动化和控制水平   · 加快城市的智能化和网络化发展;提高交通效率和资源控制,加强环境管理,提高安全性   · 使家庭网关能够管理多个客户端的家庭云端系统   中国,2014年12月19日 —— 横跨多重电子应用领域、全球领先的半导体供应商、欧洲最大的半导体供应商意法半导体(STMicroelectronics,简称ST;纽约证券交易所代码:STM)致力于发展智能生活,推出多款能够提高并丰富人们生活品质的解决方案。意法半导体旨在以具有创新性和符合成本效益的方式推广微电子技术 (microelectronics),以解决重大社会问题,同时为人们带来更高品质的生活。   完整的开发生态系统   STM32开放式开发环境是一个开放、灵活、简易、经济的开发解决方案;用户能够在STM32 32位ARM® Cortex®-M微控制器上进行应用创新,快速开发原型设计,并将其转化成最终设计。该开发生态系统包括模块化的STM32 Nucleo开发板、免费的STM32Cube开发工具及软件组件、STM32 Nucleo扩展板和STM32CubeMX图形式配置器,其中STM32 Nucleo扩展板可为目标应用增加感测、通信、电源和模拟信号等功能;STM32CubeMX则是一个个人电脑软件,可按照目标应用的要求快速配置STM32微控制器。   Open.MEMS开发生态系统同样可以加快开发设计的脚步,特别适用于穿戴式装置和物联网创新公司。这一系统提供快速简单的单节点 (single-node) 应用评估授权,可缩短产品研发周期。允许Open.MEMS授权用户免费使用驱动程序、中间件和应用软件。从深受市场欢迎的便携式产品和可穿戴式装置常用的3轴加速度计、3轴陀螺仪和3轴磁强传感器数据融合功能开始,将促进市场广泛使用意法半导体的MEM执行器和传感器。   智能汽车   作为全球最大的汽车半导体供应商,意法半导体的新一代汽车收音机和显示器音频处理器拥有极高的软硬件集成度,主要特性包括媒体解码、音频路由、声音处理和模拟音频输入输出以及独立安全的控制器区域网络 (CAN, Controller Area Network) 微控制器子系统。意法半导体的车与车 (car-to-car) 和车与基础设施 (car-to-infrastructure) 的通信 (connecTIvity) 解决方案,也将加快智能汽车产业的发展。车联网提供了重要驾驶安全信息(车距监测、通过障碍和变换车道监测)和便利性信息(路桥收费站、接近交通信号灯和立交桥的查询)。之前公布的与 Autotalks 合作开发一个面向大众市场需求的车与车及车与基础设施通信系统 (V2X, Vehicle-to-vehicle and Vehicle-to-infrastructure ) 芯片组,计划在2017年前进行大规模部署。意法半导体还可提供卫星定位解决方案和创新的汽车照明解决方案。   工业   作为工业市场上的第二大半导体公司、世界领先的电机控制芯片供应商,意法半导体致力于开发各种工业自动化和电机控制解决方案,让工厂、楼宇以及其内部机床和电器实现更高能效和自动化程度。广泛的产品组合包括先进的功率转换解决方案、智能数字输入 / 输出 (digital input/outputs) 、运动控制解决方案、STM8和STM32微控制器、各种运动传感器、音频传感器、环境传感器、智能电表、LED驱动器以及包括电力线通信 (power-line communicaTIon) 在内的通信接口产品。意法半导体还将推出一系列业界独有的高集成度电机控制芯片,新系列产品兼具功率、保护性能、精密度和智能化,可实现出色的运动分辨率、额定功率 (power raTIng) 和热性能。   智慧城市   意法半导体精心设计的产品组合解决方案,可提高城市的智能化和网络化发展水平。意法半导体的智能路灯解决方案说明了其如何帮助城市节省市政支出,保护市民安全。这一智能路灯解决方案采用意法半导体独有的、荣获殊荣的STLUX通用数字照明控制器和功率转换器、sub-GHz的SPIRIT1射频收发器、嵌入式摄像头和MEMS麦克风。   家庭网关   通过推出优异的Cannes/STIH3和 Monaco/STiH4 系统芯片 (SoCs, Systems on Chips),意法半导体正在为HEVC解决方案的大规模应用铺平道路;具有UHDp60功能的“4K”机顶盒可提升用户的Ultra-HD视觉感受,提供快速且清晰的体育运动画面和更高的色彩保真度,并提供更高的媒体内容分辨率(解析度),使画面色彩更加丰富,带来如临其境的现场感。   关于意法半导体   意法半导体 (STMicroelectronics; ST) 是全球领先的半导体解决方案供应商,为客户提供传感器、功率器件、汽车产品和嵌入式处理器解决方案。从能源管理和节能技术,到数字信任和数据安全,从医疗健身设备,到智能消费电子,从家电、汽车,到办公设备,从工作到娱乐,意法半导体的微电子器件无所不在,在丰富人们的生活方面发挥着积极、创新的作用。意法半导体代表着科技引领智能生活 (life.augmented) 的理念。

    时间:2020-09-01 关键词: st STM32

  • ST 曹锦东:对MCU厂商而言生态系统最关键

    ST 曹锦东:对MCU厂商而言生态系统最关键

      中国是全球MCU最重要的消费市场,而且厂商对成本极度敏感,短频快的风格显著。如何面对风云变幻的市场需求,ST 中国区MCU高级经理 曹锦东在日前的嵌入式系统展上就表示,对MCU厂商而言生态系统最关键!   半导体产业的并购一直在进行中,比如之前的NXP与飞思卡尔的合并对业界的冲击、英特尔将大举进入MCU领域的传闻,对此曹锦东先生很淡定的看待产业并购与新进业者,他认为,一个产品的成功,最基本的条件是产品的设计要有技术上的领先性,除此之外,准确的市场定位同样必不可少,最关键处则在于构建起完善的生态系统。   据曹锦东先生透露,ST作为ARM MCU的主要供应商,2014年 ARM内核MCU出货量超过20亿颗,占据ARM内核MCU绝大多数份额,业绩增长非常显著,特别是在可穿戴设备领域,达到超过一倍的增长率,这些皆归功于ST自2007年开始的生态系统建设。      ARM和ST在MCU领域的合作充分体现了合作共赢的理念,ARM的内核技术和生态系统资源帮助ST更好的推广STM32产品,同时STM32在MCU市场的成功也更丰富了Cortex-M在MCU领域的影响和知名度。对于STM32系列而言,ST获得成功的一个重要因素就是果断选择了ARM的Cortex-M内核并快速推出一系列的产品占据了市场有利的位置。   曹锦东强调,现在的生态系统愈加复杂,已经扩展到芯片设计、软件设计、应用层,是一个非常丰富的系统,而且完善的生态系统不仅要有前端,更要有后端厂商的加入才算完美。STM32的成功离不开众多本土合作伙伴的帮助。这些中国本土的合作伙伴伴随着应用STM32而取得自己的成功,也许他们自己切身的体会最能说明STM32的优势与中国市场成功的原因。   ST从2007年就开始执行生态系统策略,生态系统建设是个复杂的工程,首先你要提供足够多差异化的芯片,其次在编译器、开发板、中间件上形成配套和支持,然后联合各类IDH和设计公司形成不同的应用,还要联合第三方开发不同的算法,这样才形成了多样化的生态系统。   随着物联网和嵌入式智能技术的飞速发展,MCU获得了空前的大发展,为了建设生态系统、培养用户习惯,ST做了大量工作,比如大量提供易于上手的开发板、出版大量STM32的中文学习书籍、开办研讨会等等,聚集了大量熟悉ST MCU的开发者群体。今年,ST还将在二线城市设立FAE团队,支持用户的开发,和用户进行面对面的沟通。      积极应对物联网市场机遇   物联网是新一代信息技术的重要组成部分,目前,除了可穿戴设备之外,物联网在工业制造、智能交通和智能家居等领域的表现同样抢眼,ST亦非常关注IOT市场,看好工业领域、可穿戴设备、航模等市场。   曹锦东表示,目前的可穿戴设备市场还处于初级阶段,很多企业都想做大而全的市场,其实抓住用户痛点才是最重要的,现在是一个百花齐放的时代,而ST生态系统的成果已经开始显现了,目前很多安卓类的手表都是采用ST的方案,还有,几乎有所有旗舰手机内的Sensor Hub也是用的ST的MCU。   物联网市场虽然庞大,挑战和竞争也异常惨烈――这是很多开发商的共同感受。对此曹锦东先生表示,未来32位MCU可以发挥的领域非常广泛,汽车电子、工业应用、医疗保健、物联网等等都是大有前景的领域,所以ST考虑的就是不断推出高性价比MCU。现在32位MCU功能已经非强大,性价比很高,而64位大多应用在服务器上,手机领域也只是刚开始,ST 会坚持技术创新,以抢占IOT市场机遇,但是目前没有计划在未来2--3年内推出64位MCU。    展会现场展示的号称世界首款基于ARM Cortex-M7内核MCU的开发板   比如,ARM公司推出的更高能效比的Cortex-M7内核,而ST是率先推出基于ARM最新Cortex-M7内核的微控制器公司,其STM32 F7系列微控制器性能远超ST之前的32位STM32 F4微控制器,且通过无缝升级路径可将处理性能和DSP性能提高一倍。ST的STM32 F7系列微控制器还有一些自己的独有特点,例如,他们在微控制器中增加了Chrom-ART图形加速功能,这样在进行图形显示的时候,可以大大降低MCU的负荷。   对于蓬勃发展的物联网市场,ST有MCU、传感器等一系列的产品,目前采用分立的模块形式提供,未来随着物联网产品形态的固定,会考虑推出更多集成度更高的单芯片产品。日前,ST就推出了全新的开发套件BlueMicrosystem1 Open.Framework,加快面向Android或iOS Bluetooth®低能耗无线传感器项目的开发速度,以帮助客户更快速简单地实现物联网传感器方案。      BlueMicrosystem1开发框架是温度、湿度、压力和/或运动/位置数据感测、处理、发送功能的整体解决方案,非常适用于开发物联网产品、穿戴式装置等需要高性能、低功耗无线传感器的应用。

    时间:2020-08-31 关键词: 物联网 STM32

  • 抢夺物联网先机芯片厂扎堆LPWAN 准5G部署即将起飞

    抢夺物联网先机芯片厂扎堆LPWAN 准5G部署即将起飞

      2016年,为物联网(IoT)定义、设计、部署低功耗广域网(LPWAN)正成为弥补物联网网络层、M2M连接这一短板的最佳武器。根据各大厂商对蜂窝物联网的计划,加上SigFox、LoRa等商用加速,2016年将成为LPWAN发展的重大里程碑……   当前,无线网络连接方式有广域和局域两种。局域连接方式主要为Wi-Fi、蓝牙、Zigbee等,这也是智能家居、可穿戴设备、智能硬件等终端采用的流行网络技术;在广域连接方面,目前更多是借助电信运营商提供的蜂窝网络连接,3G、4G或正在规划的5G技术等可在一定程度上推进网络层的落地,但这种广泛采用蜂窝网络实现互联的方式可能在传输成本、功耗等方面产生不利影响。   专属技术与4G蜂窝技术抢滩低功耗广域网   目前看来,2016年,为物联网(IoT)定义、设计、部署低功耗广域网(LPWAN)的竞赛还将一路延续,LPWAN正成为弥补物联网网络层、M2M连接这一短板的最佳武器。   物联网领域战略市场情报供应商Machina Research最近的研究表明:截止到2015年年底,低功耗广域网接入设备在全球范围内猛增三倍,直逼2320万个。   以LPWAN技术中最为成熟的LoRa技术为例,它具有高灵敏、低功耗、高穿透性、可靠性强等特点,可以被运用于无线AMR、物联网传感器、烟感、气体检测、交通和门禁等领域。目前,已有至少九家运营商(包括Orange)宣布计划部署LoRa网络。其中,最新的运营商TaTa通信在2015年11月宣布它将在印度全国部署LoRa网络。   LoRa联盟作为首个低功耗广域网络联盟,在成立6个月后联盟成员已达到130家,涵盖芯片、模组、软件开发商、OEM厂商和运营商等。   与此同时,比起半年前所看到的景象,移动行业最近明显表现出更大的紧迫感,纷纷围绕3GPP标准做文章。因为根据Machina Research的报告,当前真正承载在移动通信网络上的物与物的连接仅占连接总数的6%,如此低的比重,是移动通信行业不愿意看到的景象。尽管其中某些细节仍未完全解决,但就目前的情况看来,预计到2016年3月,3GPP对NB-IOT的标准化工作将会冻结。而随着标准化进程完成,NB-IOT技术将走向规模商用。   在今年的MWC2016上,爱立信演示了低功耗广域(LPWA)蜂窝IoT解决方案,包括窄带物联网(NB-IoT)、LTE-M?(Cat?M)和适用于大规模IoT应用的EC-EGPRS/EC-GSM。   华为则希望自己的NB-IoT解决方案不仅能助力运营商的家庭宽带业务数字化转型,实现智慧家庭,而且还为运营商打造一张无处不在的蜂窝物联网,在智能抄表、智能停车、物流跟踪、智慧城市等领域开启全新商业机会。华为海思将于今年9月底推出NB-IoT商用芯片,这将会是业内第一款正式商用的NB-IoT芯片。   不过,来自传统物联网行业的观点则认为,NB-IoT并不适合大部分的物联网使用场景,其机遇是在车联网等需要大网覆盖的应用中,而不是传统的物联网领域。因为大部分物联网场景如智能门锁、数据监测等并不需要实时无线联网,仅需近场通信或者通过有线方式便可完成。另一方面,成本价格、功耗也都会成为NB-IoT发展的阻碍。在成本方面,NB-IoT模组成本未来有望降至5美元之内,但目前支持蓝牙、Thread、ZigBee三种标准的芯片价格仅在2美元左右,仅支持其中一种标准的芯片价格不到1美元,巨大的价格差距无疑将让企业部署NB-IoT产生顾虑。   然而Gartner却对此有不同看法。尽管该公司预测低功耗广域网将成为2017-2018年前十大物联网技术之一,但他们却指出,第一批LPWAN可能仍会根据专属技术(proprietary technologies)打造,但从长远来看,NB-IoT等新崛起的标准将成为这个领域的主流。   半导体芯片厂商已经前进到哪里?   Machina Research首席分析师Aapo Markkanen表示,直到目前,在专用的低功耗广域网领域,大部分的注意力仍集中在Sigfox和LoRa两大技术方向上。2015年12月,意法半导体(ST)和Semtech公司签订了Semtech Lora远距离无线射频通信技术合作协议,准备利用LoRa技术提升STM32微控制器的市场份额,进军移动运营商物联网和大规模专用网络市场。   ST STM32超低功耗和网络微控制器市场经理Hakim Jaafar日前在出席其ARM Cortex-M0+ STM32L0微控制器新品发布会时就表示,过去确实有很多基于Sub-GHz无线载波协议的芯片问世,但绝大多数都难以满足市场需求,原因在于协议栈太大、芯片工艺陈旧、功耗成本太高,难以满足采用电池供电的模块化应用。但LoRa的优势在于一是协议栈做得比较精致,只有32K;二是LoRa供应商比如Semtech采用了更新的工艺,使之成本更好更低;三是传输距离更远。所以ST非常看好LoRa的发展前景,并加大了在该领域的投资。      意法半导体STM32超低功耗和网络微控制器市场经理Hakim Jaafar   但与同行采用集成化SoC方案不同,ST当前采用的是STM32+Semtech RF的分离架构。Hakim Jaafar解释说,SoC产品未来一定会出现在公司的产品路线图内,但不是现在,因为分离方案灵活性更大。“进入一个新兴市场,我们必须首先深入了解客户的真正需求,一开始就贸然定义一颗SoC,风险非常大。”   与ST策略相同的还包括Silicon Labs公司,该公司物联网产品营销副总裁Daniel Cooley日前在为其Wireless Gecko产品系列发布站台时表示,无线开发对很多工程师来说是一个“相当艰难”的过程,天线调整、量产测试、电池使用寿命、无线信号传输距离、免受黑客攻击、在线更新、连接到生态系统等都是需要解决的关键问题。      Silicon Labs物联网产品营销副总裁Daniel Cooley   为了可以通过一站式选择为客户提供多协议IoT连接,Silicon Labs在Wireless Gecko SoC中集成了ARM Cortex-M4内核、节能的Gecko技术、高达19.5dBm输出功率的2.4GHz无线电、先进的硬件加密技术、以及用于简化无线开发、配置、调试和低功耗设计的Simplicity Studio工具。全系产品则包括Blue Gecko系列(Bluetooth Smart连接)、Mighty Gecko系列(ZigBee和Thread连接)、Flex Gecko系列(专有无线协议连接)三大系列。   尽管有大量芯片厂商进入LPWAN领域,但一个显而易见的事实是:未来,任何一个单独的技术都没办法覆盖所有的实用需求,任何一个强大的公司也无法通吃产业链。相比较局域网和蜂窝网,LPWAN的优势在于低功耗和低成本,同时它也有不适用的领域,例如高速率。   尽管在市场上我们所看到的是持续不断的资金投入、众多的生态系统合作伙伴和乐观的新闻报道,但接下来的一两个季度内,真正能验证这个市场成长的,只有更多实质性的发展。

    时间:2020-08-26 关键词: 物联网 5G STM32

  • 八大VR设备主控芯片 中国芯也很给力

      线缆加工技术博览会,威斯康星州密尔沃基市,2016 年 5 月 13 日– Mentor Graphics公司(纳斯达克代码:MENT) 今天宣布,线束和特殊电缆的美国制造商 Sentral Group 通过部署 Mentor Capital® 套件中的生产制造模块,显著改进了线束生产制造设计流程。由此,从设计接收到车间都实现了大量自动化和连续数据流,进而压缩周转时间、最大幅度减少错误并降低工程成本。   Sentral 还使用 Capital 软件对其多个制造设备进行快速评估,以便从中找出能以最低成本进行特殊设计的设备。结合使用这些改进措施,可大幅提升 Sentral 的行业竞争地位,因为在业内,对设计变化的快速响应以及低制造成本都是关键所在。   具体而言,Sentral 已经部署了 Capital 产品,可对线束设计、制造流程计算和成本核算、工装设计和生产工艺卡片的创建提供支持。此软件是集成式套件,还可以将数据导出至其他环境,如企业资源计划 (ERP)、制造机器以及测试设备。   工程部副总裁 Jay Cink 说:“很显然,Mentor 的 Capital 产品研发人员对于本行业的挑战非常熟悉。通过利用 Mentor 的专业知识和能力,我们已经能将报价至生产启动的时间降低了 34%。由此,我们能够超出客户的预期,为其提供出色的服务和响应速度,进而让 Sentral 拥有大量竞争优势。我非常坚信,只要我们能更充分地利用这些强大产品,此优势将越来越显著。”   Capital 产品不仅可以提供标准功能,还能为客户的多样化需求提供定制服务。Oasis 是 Mentor Graphics 的合作伙伴,为 Sentral 提供专业化的服务,其总裁 Ed Lord 指出:“通过利用 Capital 的扩展性技术,我们已帮助 Sentral 安全掌握流程和成本 IP。软件扩展不仅能与 Capital 未来发布的产品兼容,而且可快速适应流程改进,如新设备的引进。这种灵活性具有极大的优势:在获益于标准产品的所有优势的同时,软件还能提供特定输出。”   Mentor Graphics 业务开发总监 Nick Smith 表示:“Sentral 已经稳固了其在行业细分市场的大量先行优势。他们的成功表明 Capital 技术不仅为世界最大的线束制造商提供实际商业利益,也能造福更多的当地供应商。我非常赞赏 Sentral 的远见和专业性。”   关于 Capital   Capital 是一款高级软件套件,可针对从产品定义到电气系统设计、线束制造和车辆维护的复杂电气系统挑战提供支持。   关于 SENTRAL Group   Sentral Group 是一家大型私营企业,总部位于伊利诺伊州林肯郡,生产地分布在伊利诺伊州、堪萨斯州、田纳西州、肯塔基州和墨西哥。该公司专注于在各类市场中高度混合应用:HVAC、工业控制、海运业、越野车、医疗保健设备和航空航天。该公司成立于 1990 年,经过不断发展壮大,已经成为最大的美国线束制造私营公司之一。公司总部地址:595 Bond Street, Lincolnshire, IL,邮编 60069。   关于Mentor Graphics   Mentor Graphics® 是电子设计自动化 (EDA) 领域的全球领导者,提供客户丰富多样的软件和硬件设计解决方案,促使其能更快速且更具成本效益地开发出更出色的电子和机械产品。Mentor Graphics®提供了各种创新的产品和解决方案,工程师可透过借助Mentor Graphics®不断推陈出新的产品及解决方案,应对日趋复杂的电路板及芯片设计领域所面临的挑战。Mentor Graphics 拥有业界最丰富且一流的产品组合,也是全球唯一具备嵌入式软件解决方案的 EDA 公司。   • 上市公司(纳斯达克代码:MENT)   • 创立于 1981 年,总部位于俄勒冈州威尔逊维尔市   • 过去 12 个月报告的营收为11.8亿美元   • 全球各地设有 70 多个分公司或办事处   • 公司网址 - www.mentor.com / www.mentorg.com.cn

    时间:2020-08-26 关键词: rk3399 骁龙820 vr芯片 STM32

  • 一种基于ZigBee和STM32的室内智能照明系统的设计

    一种基于ZigBee和STM32的室内智能照明系统的设计

      在人们的传统意识中,照明系统仅以照明为目的。传统的照明系统中主要的控制方式有手动控制方式和自动控制方式。其中手动控制方式简单、有效,但是过于依赖人工操作,并且控制相对分散,不能有效管理;自动控制方式主要是由时钟元件、光电元件或两者组合的方式来实现对照明设备的控制,这种控制方式减少了对人员的依赖性,管理相   对集中,实现了照明控制的自动化,但却不能对照明系统进行调光控制。   此外,随着生活水平的不断提高,人们对日常生活的无线化、网络化、智能化、节能化的需求越来越强烈,以上两种传统的照明控制系统已经无法满足人们对日常生活品质的需求。基于上述原因提出了一种基于ZigBee和STM32的室内智能照明系统的设计。   1 系统总体设计   本系统主要由终端节点、路由器节点和协调器节点组成。三个节点各司其职,终端节点主要负责消息的传输和允许共它节点通过它接入到网络中;协调器节点则主要负责网络的建立、维持和管理,以及整个网络数据信息的收集、处理和显示等。在这三个节点当中协调器节点是整个网络的核心。系统总体设计框图如图1所示。      本设计主要实现的功能如下:   (1)采用带调光模块的LED灯具,通过程序控制可以实现灯光亮度的自动调节,利用室内灯光与自然光的相互补偿使室内照度保持在一个合适状态;   (2)采用照度采集节点,可以实时地采集并监控室内照度;   (3)加入掉电自锁功能(在突然停电的情况下再次来电所有灯具都处于关闭状态);   (4)加入部分情景模式,在不同的室内环境需求时可以很方便地对灯光环境进行选择(如家人一起看电视时的影院模式,看书写字时的学习模式等)。   除上述主要的功能外,本设计还预留了部分外围接口电路,可以加入一些相应的传感器实现更多的功能(如加入燃气传感器来预防厨房燃气泄漏,加入烟雾传感器防火灾等)   2 系统硬件电路设计   系统硬件电路部分主要由协调器节点电路、系统照度采集节点电路、系统LED调光节点电路以及系统路由器节点电路四部分组成。   2.1 系统照度节点电路设计   照度采集节点由CC2530和光照度传感器(BH1750FVI)组成。本节点主要是对室内的照度进行实时的采集并通过ZigBee模块发送给协调器,协调器再对接收到的照度信息进行整合处理,然后在LCD上实时显示出室内的照度信息,并根据照度信息给LED照明节点发送相应的指令,对LED灯进行相应的亮度调节。   BH1750FVI传感器是一个光电集成传感器,其主要有如下几个特点:1)可以输出对应亮度的数字值;2)广泛的输入光范围(相当于1-65535lx);3)通过降低功率功能,实现低电流化;4)无需其它外围部件;5)光源依赖性弱(白炽灯、荧光灯、卤素灯、白光LED、日光灯)。   照度节点硬件电路图如图2所示。      2. 2 系统LED调光节点电路设计   LED调光节点由CC2530和调光模块组成。调光模块可以根据ZigBee模块接收到的指令实时地对LED灯进行亮度的调节。调光的目的是为了使室内自然光跟LED灯光进行相互的补偿,使室内照度达到一个合适状态。   本节点的调光模块选用LED恒流驱动PWM调光模块。LED调光节点硬件电路图设计如图3所示。      2.3 系统路由器节点电路设计   路由器节点是在CC2530模块上扩展了一个CC2591模块,该模块是一个真正意义上精心设计的带PA+LNA无线收发模块。该节点主要负责接收终端节点信息并转发给协调器,或转发协调器的反馈信息给终端节点。   在开阔的场地上,CC2530的传输距离可达100m,但在室内环境下由于有墙体的遮挡,存在路径损耗问题,实际传输距离大大缩短。在室内中间位置若仅放置一个由CC2530构成的路由节点,很可能造成数据传输错误甚至数据丢失。所以在实际设计电路时,路由器节点采用的是CC2591+CC2530组合的形式。CC2591是一个2.4GHz的射频前端芯片,它可以通过PA提高发射功率,从而延长通信距离。该芯片还可以通过LNA来改善接收机的灵敏度。通过以上两点可以很好地保证该系统数据传输的完整性。CC2591+CC2530硬件电路如图4所示。      2.4 系统协调器节点电路设计   协调器节点由STM32F107、CC2530、12864LCD、矩阵键盘、DS18B20和DS1302模块组成。该节点是整个系统的核心,主要负责网络的组建、维护、控制终端节点的加入和删除,以及整个系统信息的处理和显示等。其中STM32F107是意法半导体推出的全新STM32互联型微控制器,此芯片集成了各种高性能工业标准接口,且STM32不同型号产品在引脚和软件上具有完美的兼容性,可以适应多种应用。此外该芯片还可以嵌入μC/GUI系统,拥有独立的32位指令总线和数据总线,全面支持32位Thumb-2和16位Thumb指令等。   矩阵键盘电路采用2&TImes;4的矩阵键盘,用于时钟的时间调整及不同情景模式的选择;显示电路采用12864 LCD,可以显示4行信息,每行显示16个字符,完全满足显示照度、时间和温度等要求。   协调器节点硬件电路原理图如图5所示。      3 软件部分设计   软件部分主要是完成对整个系统硬件电路的编程设计。其中终端节点程序主要完成信息的采集、上传和控制等。协调器节点程序用于实现整个网络的组建、维护和管理以及相应数据的收集、处理和显示等。3.1 协调器节点软件设计   协调器节点首先判断是否有数据传送,若有,则选定信道建立网络,进行数据扫描和读取,并打包发送数据。由于电源损耗主要集中在无线数据的收发阶段,在没有接收到时钟信号的唤醒命令前,使其处于睡眠状态,以达到延长电池的使用寿命、减少功耗的效果。程序流程图如图6所示。      3.2 终端节点软件设计   终端节点数据采集的软件设计包括两部分,分别为单片机CC2530驱动程序设计和传感器收发数据程序设计。首先进行模块初始化,然后启动定时器,每隔一段时间进行信道扫描,查看是否有入网申请指令,若有,则首先判断启动哪一个传感器端口,然后向端口发送数据采集请求,采集完毕后使单片机处于休眠模式,将采集到的数据发送给CC2530作进一步处理。程序流程图如图7所示。      3.3 路由器节点软件设计   程序中将设备类型设置为网络路由节点,在ZigBee协议栈中只需要更改应用层事件处理函数使其在接收到信息后调用程序把接收到的信息发送出去即可。   4 系统调试   为对系统进行功能的测试,特选择宿舍为实验场所,分别在宿舍的三个卧室各放置3个照明节点和一个照度采集节点,然后对系统的功能进行测试。通过测试,系统能够准确地实现无线控制功能。照度节点能够准确地采集环境的光照度信息,ZigBee模块能够正常地进行数据的相互传输,PWM调光器模块能够准确无误地对LED灯进行相应亮度的调节。此外各种情景模式,如室内温度和时钟信息都可以按照预定指标正常工作。   5 结语   此无线智能照明系统不仅可以用于室内照明的全自动控制,也可根据不同的需求进行手动的调节,这样既可以节约能源又可以使室内光照度达到适合人类活动的最佳状态。本系统具有体积小、功耗低、功能强和可灵活扩展等特点。此外本系统不仅可以用于家庭室内也可应用于学校教室、公司办公区、会议室和KTV等各种不同的场合,只需在运用时对相应模块和程序进行相应的调整即可。本系统在智能照明控制领域具有广阔的应用前景。

    时间:2020-08-25 关键词: Zigbee LED 智能照明 照明系统 STM32

  • 大联大友尚集团推出ST STM32马达控制Nucleo开发工具包,可直接开始运转无刷直流马达

    大联大友尚集团推出ST STM32马达控制Nucleo开发工具包,可直接开始运转无刷直流马达

      2016年6月21日,致力于亚太地区市场的领先半导体元器件分销商---大联大控股宣布,其旗下友尚推出一款ST马达控制入门套件和一个新的免费软件算法,协助马达控制工程人员和爱好者以极短的时间实现高效的马达向量控制,例如无人机、家电、电动自行车(E-bike)、家庭自动化、医疗仪器及工业机器等。   搭配STM32马达控制生态系统的新软件---P-NUCLEO-IHM001马达控制套件---让用户能够直接开始运转(plug and spin)同步马达,无需任何专门的或附加的开发工具。新套件采用一个携带方便的塑料泡壳包装(blister pack),包含STM32 F3 Nucleo微控制器板、基于STSPIN  L6230马达驱动器芯片的插入式(plug-in)48V/1.4A马达驱动板以及一个低压无刷马达。 图示1-大联大友尚推出STM32马达控制Nucleo套装照片   在连接电路板和马达后,用户使用微控制器预装的梯形(6步)或正弦(FOC)向量控制算法范例即可运转马达。在马达运转过程中,用户可以比较并了解马达控制算法,然后,使用MC WORKBENCH配置器及代码生成器,按照自己的需求修改控制器设置(在FOC模式下)。   免费且基于PC的MC WORKBENCH软件工具可简化马达控制韧体库的客制化设置(STSW-STM32100),还能协助用户设置不同的马达或意法半导体马达控制生态系统的其它驱动板。最新版算法数据库(v4.2)导入一个便利的“Motor Profiler”工具,能够自动侦测马达参数,自动配置马达控制算法数据库,无需任何附加设备,一接触即可进行微调(One-Touch Tuning)的方式可在宽速度范围内简化负载和惯性的调整过程。   作为Nucleo马达控制开发工具套件的核心,STM32F302微控制器的算法性能优异,DSP扩展指令集实现出色的回馈回路控制,同时还整合实用的外围设备接口,其中包括马达控制专用定时器、运算放大器和电压比较器。微控制器预先整合的算法范例是意法半导体马达控制数据库的标准韧体和STM32Cube工具,可按照客户的需求修改韧体。像整个马达控制数据库一样,免费的开放式原始码可用于大多数STM32微控制器和各种硬件电路板。   更多的产品及方案信息,请洽大联大友尚集团技术人员:ST.cn@yosungroup.com。或参考大联大官方网站,并欢迎关注大联大官方微博(@大联大)及大联大微信平台:(公众账号中搜索“大联大”或微信号wpg_holdings加关注)。   关于大联大控股:   大联大控股是全球第一,亚太地区市场份额领先的半导体元器件分销商,总部位于台北(TSE:3702),旗下拥有世平、品佳、诠鼎及友尚,员工人数近5,500人,代理产品供应商超过250家,全球约115个分销据点(亚太区约65个),2015年营业额达162.3亿美金。(*市场排名依Gartner公布数据)   大联大控股开创产业控股平台,持续优化前端营销与后勤支持团队,扮演产业供应链专业合作伙伴,提供创造需求(Demand CreaTIon)、交钥匙解决方案(Turnkey SoluTIon)、技术支持、仓储物流与IC电子商务等增值服务,满足原始设备制造商(OEM)、原始设计制造商(ODM)、电子制造服务商(EMS)及中小型企业等不同客户需求。国际化经营规模与本地化销售渠道,长期深耕亚太市场,连年获得专业媒体评选为「亚洲最佳IC分销商」。   为提高大联大的本土化服务质量,满足大中国区服务区域客户的差异化需求,大联大(中国)服务六大领域包括中资(China-Based Manufacturers)、台商(Taiwan-Based Manufacturers)、外商(Electronic Manufacturing Service)、日商(Japan-Based Manufacturers)、韩商(Korea-Based Manufacturers)及港商(HongKong-Based Manufacturers)客户。大联大除提供客户最佳的交钥匙解决方案(Turnkey SoluTIon),并为满足客户小批量器件采购需求,特别成立专责的小批量服务团队(SQS, Small QuanTIty Service)。大联大已分别于内地及香港成立大联大商贸、大联大商贸(深圳)及大联大电子(香港),以「产业首选.通路标杆」为企业愿景,全面推行「团队、诚信、专业、效能」之核心价值观,以专业服务,实现供应商、客户与股东互利共赢。

    时间:2020-08-25 关键词: st Nucleo 马达 大联大 马达控制 STM32

  • 仿人型机器人控制系统设计的几个问题

    仿人型机器人控制系统设计的几个问题

      1 引言   仿人型机器人由于具有类人的基本外形,在实际的生活中,能够代替人完成很多工作,因此对仿人型机器人的研究具有实用价值,各国都在投入巨大的人力物力进行研发。仿人型机器人具有多自由度的机械结构要求,因此需要对机器人的各个关节通过电机来完成转动动作。这对于电机驱动控制提出了很高的性能要求。本文提出了一种基于STM32单片机的仿人型机器人控制系统方案,可以同时对机器人关节所需的16路舵机进行驱动控制。   2 硬件解决方案   本控制系统的硬件部分共分为5个模块,其硬件系统模块图如图1所示。      图1 硬件系统模块框图   主控制器采用STM32F103xB增强型系列单片机,该系列单片机使用了高性能的ARM CortexTM-M3 32位的RISC内核,工作频率为72MHz,内置高速存储器(128K字节的闪存和20K字节的SRAM),增强型I/O端口[2]。这些性能使得 STM32F103系列微控制器非常适合应用于小型仿人型机器人的控制系统。由于仿人型机器人的体型限定,因此我们在设计舵机控制板时采用了 STM32F103系列的小型贴片封装型号STM32F103CBT6。以得到体积较小的舵机控制电路板,如图2所示。      图2 舵机控制板实物图      图3 舵机控制示意图   为了实现对多自由度复杂结构的仿人型机器人进行动作控制,需要较多控制路数的舵机控制板。由于舵机的角度控制是采用PWM波形输出,当单片机IO口的输出脉冲宽度变化时,舵机舵盘角度发生改变,如图3所示[3],因此在舵机控制板电路设计中,充分利用了STM32单片机的IO口数量多且具有PWM输出的技术优势[4]。共设计了16路舵机控制口,可以保证16个机器人关节同时动作。舵机驱动IO接口分布在PCB板的两侧,便于插拔。   在舵机的控制中,有一个容易出现的问题就是舵机抖舵问题。这种问题一般发生在采用普通电池做为机器人系统的主电源的情况下,如采用多节AA型镍镉或镍氢电池串联组成机器人供电主电源。原因是这些电池由于容量和放电能力的局限,无法在其额定电压下提供长时间稳定持续的大电流。在仿人型机器人的多路舵机同时工作时,采用普通电源输出的电压会迅速降低,从而导致舵机的供电不足,最终出现舵盘异常抖动,造成机器人在执行动作时的抖舵现象。      图4 控制信号5V供电电源原理图      图5 6V舵机驱动电源原理图   因此我们设计的仿人型机器人控制电路中采用了型号为格氏25C放电倍率,容量为2200mAh,额定电压为11.1V的锂聚合物航模电池作为主电源。分为 5V控制信号电源和6V舵机驱动电源,如图4所示。为了保证多路舵机同时工作时所需要的大电流,利用锂聚合物电池具有很强的持续放电能力,选用了型号为 120W 12A大功率降压模块[5],将机器人的供电电源稳压在+6V,放电电流峰值为12A,如图5所示。利用光电耦合器隔离单片机IO口控制信号和舵机驱动信号,提高控制信号的抗干扰能力。舵机的IO口电路设计原理图如图6所示。这样解决了多路舵机由于同时工作时,电源电源被拉低引起的舵盘异常抖动问题。      图6 舵机IO口电路原理图   舵机控制板在初始上电时,所有IO口会同时通入无序的PWM信号,造成瞬间出现巨大的电流消耗。经实验测得舵机控制板上电时,单个IO口的峰值电流可以达到1.5A以上。因此在16个舵机同时初始上电通入PWM信号时,其总电流将达到24A以上,这就大大超出了大容量直流降压模块的极限供电电流,导致电源电路进入过流保护,整个舵机控制电路将无法进入正常的工作状态。为了解决这个问题,我们在STM32单片机上电初始化时,首先只让IO口1和2输出PWM 信号,然后同时再让IO口3和4输出初始化PWM信号,以此顺序最后让IO口15和16输出PWM信号。这样就保证IO口初始化时,最多只有两路PWM信号同时通入。在机器人正常动作时,同时动作的舵机数量不超过6个,即6个IO同时输出的峰值电流为9A,低于大功率降压模块的最大输出电流12A,因此整个电路在工作期间的极限电流均小于12A。最终达到了舵机控制板稳定工作的硬件要求。   3 软件部分的设计   仿人型机器人控制系统的软件分为两种模式:调试模式和正常模式。   调试模式:机器人上电默认静止,以响应上位机信号为主。在该模式下,上位机通过RS232串口对机器人进行在线控制,可以对单个舵机的角度进行精确调整,编排好的流程动作单次执行,流程动作的全部执行等,并显示当前机器人对代码解析值。调试模式的工作界面如图7所示。   正常模式:机器人上电即开始执行调试完毕的全套程序动作。      图7 上位机调试模式工作界面   为了实行软件控制,采用了多任务模块的定时轮换机制[6]。共建立了3个模块任务:任务0用来解析送入该任务的软件代码值到PWM输出的转换。任务1用来调用每套动作编码,连续的将得到的软件值发送给任务0。任务2为串口处理任务,通过分析串口发来的数据进行模式的转换和响应。其程序流程图如图8所示。      图8 程序流程图   4 系统调试效果   设计该仿人型机器人的走步步态时,主要考虑了机器人的自重为2.53Kg,身高为42cm,因此机器人的脚和手臂的舵机输出幅度不能太大,否则会导致机器人走步时的重心偏移太大,造成机器人翻倒。因此在设计机器人的脚掌时,适当增大了与地面的接触面积,脚掌的尺寸为8.5&TImes;15cm,同时加快了脚步移动的频率,并在脚部增加了额外的配重,以增强机器人在走步过程中的稳定性,其走步的步态如图9所示。该型机器人的走步步态协调一致,在2012年中国机器人大赛仿人竞速比赛项目中获得二等奖。      图9 12自由度的仿人型机器人   走步动作正面   5 结束语   文中基于STM32微控制器的仿人型机器人控制系统,能够灵活地控制16路大扭力舵机,通过大功率降压电源模块,可以得到16路舵机同时动作时所需要的直流电压,实现了仿人型机器人的走步动作,可作为高校学生进行机器人技术创新时的参考。

    时间:2020-08-21 关键词: 机器人 STM32

  • 这些VR设备“内脏”构造大解剖!绝对有你没见过的

    这些VR设备“内脏”构造大解剖!绝对有你没见过的

    在上一期的VR主流芯片商方案文章中,小编为大家详细介绍了几款全球知名芯片供应及技术支持提供商,在VR头戴显示上运用的VR芯片:高通骁龙820、联发科旗下的X30、以及三星Exynos8890等等。今天,小编同样还是带来几款VR芯片,给大家了解熟知。 一、意法半导体的STM32 MCU 上图为三星Gear VR眼镜 基于ARM Cortex-M4的STM32F4系列MCU采用了意法半导体的NVM工艺和ART加速器,在高达180 MHz的工作频率下通过闪存执行时其处理性能达到225 DMIPS/608 CoreMark,这是迄今所有基于Cortex-M内核的微控制器产品所达到的最高基准测试分数。 由于采用了动态功耗调整功能,通过闪存执行时的电流消耗范围为STM32F410的89 µA/MHz到STM32F439的260 µA/MHz。 STM32F4系列包括八条互相兼容的数字信号控制器(DSC)产品线,是MCU实时控制功能与DSP信号处理功能的完美结合体。 ARM Cortex-M4系列产品线 高级系列: 180 MHz CPU/225 DMIPS,高达2MB的双区闪存,带SDRAM控制器和 Chrom-ART加速器 STM32F469/479 – Quad-SPI接口、LCD-TFT控制器和MPI-DSI接口 STM32F429/439 – LCD-TFT控制器 STM32F427/437 – 串行音频接口,具有更高的性能和更低的静态功耗 基础系列: STM32F446 – 180 MHz/225 DMIPS,高达512 KB的Flash,具有Dual Quad SPI和SDRAM接口 STM32F407/417 – 168 MHz CPU/210 DMIPS,高达1 MB的闪存(Flash),增加了以太网MAC和照相机接口 STM32F405/415 – 168 MHz CPU/210 DMIPS,高达1MB闪存、具有先进互联功能和加密功能 入门型系列: 基于最低成本考虑的 STM32F4系列! 84 MHz CPU/105 DMIPS,尺寸最小、成本最低的解决方案,具有卓越的动态功耗效率 STM32F401 – 尺寸不到3 x 3mm,具有USB OTG2.0FS和SDIO接口 100 MHz CPU/125 DMIPS,具有卓越的动态功 耗效率和批采集模式(BAM,一种新型面向数据批处理的 利用DMA智能优化功耗的模式)。 STM32F410 – 卓越能效的新里程碑(运行模式下89 µA/MHz和停机模式下6 µA),配备硬件随机数发生器、低功耗定时器和DAC。 STM32F411 – 高RAM容量和增强型外设集,如USB OTG2.0FS和最多5个SPI。 STM32F412 – 高RAM和闪存容量,USB接口,增强型外设集,包括灵活的外部静态存储器控制器(高达16位的数据总线,用于LCD和外部存储器控制),双QUAD SPI、CAN、DFSDM和TRNG。 STM32F413/423 - 进一步提升了STM32F412的Flash及RAM容量,配备了更强的外设集,包含10x UART,3x CAN,SAI接口,1x 低功耗定时器,2x DAC,2x DFSDM(多达6个滤波器),STM32F423系列包含AES加密。 据悉,三星Gear VR拆解可以了解到采用的主控芯片,正是意法半导体的M4系列中的微控制器STM32F401 A5009V0 TW 435,也就是STM32F4系列的STM32 32-bit ARM Cortex-M4微控制单元。 三星Gear VR主控芯片采用意法半导体微控制器M4系列STM32F401 二、瑞芯微RK3288芯片移动多媒体解决方案 RK3288开源开发板PopMetal 在2014年香港电子展上,瑞芯微联合ARM公司发布了旗下最新款芯片RK3288解决方案,创下了瑞芯微芯片历史上多个第一的记录,综合性能及评分均比上一代有了实质性的飞跃,被应用于在笔记本市场、智能盒子等市场上。 瑞芯微RK3288 创下了跑分第一、输出画质第一、游戏体验第一等三项第一的好成绩。瑞芯微RK3288采用ARM Cortex-A17架构的处理器,配置Mali-T76X系列GPU,根据官方数据显示 ,RK3288整体较上一代A9提升50%性能,相比于前代Mali-400性能提升了近5倍,功耗更低。 瑞芯微RK3288芯片 && RK3188芯片参数对比 瑞芯微RK3288支持硬解H.265编码以及4K影片,未来用户通过这一芯片方案可以轻松的观看4K影片,传输难,解码的难的问题都迎刃而解。而且支持HDMI2.0接口,能与4K电视机搭配使用,自在的观看4K超高清内容。 在技术上,作为ARM新一代GPU产品,Mali T764 GPU除了拥有16个着色引擎外,另一大特色就是引入了多项内存压缩技术,如ASTC纹理压缩技术、ARM 帧缓冲压缩格式(ARM Frame Buffer Compression)、TransacTIon EliminaTIon智能消除技术。三大技术的运用使RK3288图像性能获得全面提升。 另外,RK3288芯片配备的T764 GPU,首次运用了全新的图像引擎技术,例如Unity中引入的Enlighten全局实时光技术,通常运用在主机游戏之上,比如PS3,PS4,Xbox之内的游戏。RK3288是全球首颗采用全新图像引擎技术的CPU。 RTK3288与其他几款芯片方案对比 三、全志科技H8 / A80 芯片方案 全志H8八核基于台积电最新领先的28纳米制造工艺,采用8个ARM Cortex-A7内核,支持8核心同时2.0GHz高速运行,同时搭配ImaginaTIon 旗下强劲的PowerVR SGX544 图像处理架构, 工作频率可达700M左右。 多媒体方面, H8支持多格式1080p@60fps视频编解码,支持H.265/HEVC视频处理,集成8M ISP图像信号处理架构,可支持800万像素摄像头。 显示方面,H8支持HDMI 1080p@60fps显示,支持HDCP V1.2协议,支持HDMI CEC。此外,H8集成了全志新一代丽色显示技术,图像显示质量进一步提升。事实上,H8芯片最早是应用于电视盒子。 全志VR一体机方案——H8vr 全志科技推出的H8vr视频一体机解决方案的优势正是能实现量产化,并且在延时、功耗以及多媒体方面进行了优化。 据悉,这个方案拥有开放的硬件系统平台,开放H8vr系统SDK,其成品价在千元左右,可实现量产。具体来讲,还方案基于全志VR专用芯片打造,针对底层算法进行优化融合ATW(异步时间扭曲)、FBR(前缓冲渲染)等,并采用了针对Android系统进行深度优化的Nibiru VR一体机系统。 全志H8vr技术规格: CPU:Octa-Core ARM CortexTM-A7 GPU:PowerVR SGX544 内存:32-bit DDR3/DDR3L/LPDDR3/LPDDR2 闪存:Supports 8-bit SLC/MLC/EF NAND with 64-bit ECC 视频处理能力:Supports H.264 4K@30fps panoramic video playback H.265/VP9 1080p@30fps video playback OS:Android 4.4 and above 封装:FCBGA 345 制程工艺:TMSC’s 28nm HPC 全志H8详细参数 全志A80 Octa技术规格: CPU架构:ARM Cortex-A15 R4P0(A15R4P0是A15的2014最新改进版本,性能提升,功耗降低,解决先前版本的固件Bug) & ARM Cortex-A7 with big.LITTLE(HMP架构可以使8个CPU核心同时运行) (注:CPU频率相同、制造工艺相同且优化相同的情况下,性能A15>A17>A12>A9>A7>A5) CPU频率:2016MHz CPU核心:八核心 GPU芯片:ImaginaTIon PowerVR G6230 制造工艺:28纳米 支持内存:DDR3 / LPDDR3(2GB或以上) 封装:1.8cm×1.8cm(约) 无线网络:2.4GHz / 5GHz Wi-Fi 蓝牙:支持,蓝牙4.0 摄像头:最大1600万像素 最大支持分辨率:4K(3显示屏) 视频输出:HDMI 1.4 视频格式:支持H.265等格式 音频解码芯片:AC100 电源管理:CoolFlex 接口:以太网、串口、Camera、USB3.0 OTG、2×USB2.0、HDMI、GPIO等 能够支持的最新系统:Android 4.4.2、Windows RT 8.1、Chrome OS,etc 全志A80详细参数描述 全志H8vr视频一体机解决方案 作为一大亮点,全志H8vr视频一体机解决方案具有“低发热、低功耗、高集成度”特点,且电池更小重量更轻,在减轻的头盔的重量的同时也解决了头盔本身的散热问题。除此以外,该方案还支持最高4K@60fps全景视频,在sensor、GPU、显示到光学镜片,均经过深度的合作优化,支持丰富的交互方式,确保了VR一体机性能及流畅的UI体验。

    时间:2020-08-13 关键词: vr rk3288 STM32

  • 贸泽率先独家备货STMicroelectronics的STM32 LoRaWAN探索板

    贸泽率先独家备货STMicroelectronics的STM32 LoRaWAN探索板

    2017年2月24日 – 最新半导体和电子元件的全球授权分销商贸泽电子(Mouser Electronics) 即日起率先备货STMicroelectronics (ST)的STM32 LoRaWAN™ 探索板。这款新型探索套件与可从贸泽电子订购的Arduino兼容I-NUCLEO-LRWAN1 STM32 LoRa™扩展板一起作为一个平台,用于了解和评估基于LoRa和FSK/OOK 射频 (RF) 通信的解决方案。 贸泽电子独家备货的 ST STM32 LoRaWAN探索套件基于一体化开放式 Murata Type ABZ模块,支持低功率广域网(LPWAN) 和LoRaWAN 远程无线协议。Type ABZ模块包含一个具有192 KB 闪存、20 KB RAM 和 6 KB EEPROM的STM32L072 ARM® Cortex®?M0+ 微控制器。STM32L0超低功率微控制器采用低功率设计,主要面向电池供电的应用和能量采集应用。 ST的?I-NUCLEO-LRWAN1 STM32 LoRa扩展板包含一个基于STM32L052 微控制器的LoRaWAN 模块、一个SMA连接器、一根50Ω的天线和几个兼容Arduino Uno R3板的接头。另外此扩展板还包含三个ST环境传感器:LSM303AGR 加速计和磁力计、HTS221相对湿度和温度传感器以及LPS22HB压力传感器。LoRaWAN探索板和NUCLEO板都附带通过了LoRaWAN A 类认证的I-CUBE-LRWAN嵌入式软件,使设计师能够设置完整的LoRaWAN节点。 有关STM32 LoRaWAN探索板的更多信息,敬请访问http://www.mouser.com/new/stmicroelectronics/stmicro-stm32-lorawan-discovery-board/。要进一步了解兼容I?NUCLEO-LRWAN1 STM32 LoRa Arduino的扩展板,敬请访问http://www.mouser.com/new/stmicroelectronics/stmicro-stm32-lora-extension-board/。

    时间:2020-08-13 关键词: lora 贸泽 STM32

  • 模拟智能家居的环境下的家庭服务机器人系统的设计

    摘要:为解决当前大部分家庭服务机器人不具备行走功能或只具有简单的避障能力等问题,本文设计一种基于STM32的家庭服务机器人系统。整个系统由轮式机器人、XBee协调器、RFID智慧地板和上位机组成。轮式机器人由主板、传感器模块、射频模块、舵机模块、电源模块和机器人金属主体组成,传感器模块包括电子罗盘、红外传感器和RFID读卡器。主板以ARM Cortex-M3内核微处理器STM32F103VCT6为核心进行开发,采集传感器模块数据信息,实现机器人与XBee协调器之间的通信连接。该系统在模拟智能家居的环境下通过自主决策稳定和高效地完成设定任务,能够满足家庭服务机器人的应用要求。 引言 随着人工智能和传感器技术的发展,机器人已从工厂的结构化环境进入人们的日常生活环境,机器人不仅能自主完成工作,还能与人共同协作完成任务或在人的指导下完成任务。家庭服务机器人是智能家居系统的一个重要组成部分,在生活中的作用越来越重要。当前,大部分的家庭服务机器人不具备行走功能或只具有简单的避障能力,机器人的研究很多依赖于仿真实现,但是现实情况和仿真结果可能大相径庭。也有一些研究将问题复杂化,反而走了更多的弯路。 针对当前家庭服务机器人的不足和现代智能服务机器人的要求,本文提出一种基于STM32的家庭服务机器人系统的设计方案。该方案模拟智能家居环境,简化了定位方式,有效地利用了ZigBee技术低成本、低功耗的特点[3],设计出一个合适大小的轮式机器人进行试验,试验结果表明机器人能够实现预期目标并体现出较强的自主决策能力。 1 系统整体设计方案 整个家庭服务机器人系统主要由四部分组成,包括铺满RFID智慧地板的模拟智能家居环境、移动的轮式机器人、XBee协调器以及上位机。 智能家居环境设计长为3.25米,宽为2米,铺满RFID智能地板,分隔成厨房和客厅两个房间,中间的房门宽0.3米。厨房有水槽、搁板、智能冰箱等电器,客厅有餐桌、餐椅等。RFID智能地板的排列信息给机器人提供准确定位。轮式机器人负责往返厨房与客厅之间给服务对象运送物品,是整个系统的核心部分。XBee协调器是基于ZigBee技术的无线传输模块,负责数据快速稳定地传递。上位机主要负责数据的接收、处理和控制指令的下达等。 2 系统工作原理和流程 系统的主要工作流程是:上位机输入任务命令,该命令通过XBee协调器发送给轮式机器人。机器人收到任务命令后从休眠模式启动,读取智能地板RFID定位信息,将该实时位置信息上传到上位机,以显示机器人运动轨迹。机器人通过传感器模块检测自身姿态和周围障碍物情况,自主决策移动至目标位置抓取物品,运送到最终目标位置给服务对象使用。其中,轮式机器人是整个系统设计的重点。 2.1 XBee协调器工作流程 XBee协调器是最先启动的XBee网络节点,主要完成XBee网络的组网功能和数据的收发功能,其中组网功能包括XBee网络的建立和子节点的入网。 首先,在XBee协调器上电复位后对包括硬件和软件的各个模块进行初始化。然后,开始扫描信道、进行能量检测、选择信道以及选择合适的PAN ID。成功之后就广播网络ID、信道,XBee网络就建立了。之后,XBee协调器进入监听状态,等待子节点发送入网请求信号,收到入网请求后协调器允许子节点入网并分配网络短地址给子节点,这就实现了节点的入网功能。最后,XBee协调器将上位机数据发送给子节点射频模块,启动轮式机器人,在收到来自子节点的数据请求后,将接收数据并通过串口线传输给上位机,这就是数据的收发功能。 2.2 轮式机器人工作流程 轮式机器人是任务的执行设备,往返于厨房和客厅两个房间之间,准确和高效地执行用户对象发送的各种命令任务,并发送机器人坐标数据给XBee协调器进行以下工作。 首先,轮式机器人上的XBee模块需要初始化和发送入网请求,实现节点入网。然后,XBee模块接收XBee协调器传输的任务命令数据,主板对各传感器模块初始化。RFID读卡器读取智能地板坐标数据,发送给XBee协调器。电子罗盘获取机器人当前的姿态信息。红外传感器检测机器人所处环境的障碍物距离,主板控制启动由左右两个连续旋转舵机组成的移动轮。机器人通过自主决策规划路径,移动至目标位置,启动机械臂抓取物品,其中机械臂由多个角度舵机组成。在机械臂保持抓取物品的状态下,再次规划路径移动至最终地点,机械臂准确将物品放在目标位置。完成任务后机器人回到起始位置,进入休眠模式。 3 关键环节设计 3.1 机器人硬件结构设计

    时间:2020-08-05 关键词: 传感器 人工智能 STM32

  • 一款基于stm32芯片的智能家居系统的设计

    一款基于stm32芯片的智能家居系统的设计

    科学技术的高速发展大大提高了人们的生活品质,智能家居作为高品质生活的代表产品越来越受到人们的关注。智能家居是以居家环境为平台,融合了建筑、通信、网络、计算机、自动控制等技术形成的,集功能性、服务性、管理性为一体的舒适、安全、便利、环保的居住环境,是高新技术在生活中的典型应用之一。 本文基于Cortex—M3架构的STM32系列芯片,设计开发了一套智能家居系统。本系统以智能家居控制器为核心,包括智能插座、多功能面板、红外转发、电动窗帘、窗户控制模块、光强度及温、湿度计等多种智能家居产品,也可与红外探测器、烟感探测器、门禁控制器、网络摄像机等安防产品组建智能家居的安防系统。智能家居控制器可通过以太网或Wifi与家庭信息互联处理中心通讯;各智能产品通过RS485总线方式与控制器通讯。对系统的控制方式包括:上位机控制、触屏控制,或利用手机、iPAD等移动互联产品进行控制。如图1所示为系统示意图。 1 智能家居控制系统的整体设计 1.1 智能家居控制器 智能家居控制器是智能家居系统的核心处理模块,是整个智能家居系统的关键。本设计中的智能家居控制器基于STM32芯片设计,并根据控制器的功能分为如下几个模块:模拟量采集输入模块、开关量输出模块、RS-485通信模块、ADC转换模块、以太网接口模块、JTAG模块、电源模块、无线通信模块、输入、输出LED显示模块。其硬件结构框图如图2所示。 1.2 智能家居产品 1.2.1 智能插座 智能插座以STM32系列芯片为核心,内含ADE7753电能芯片、液晶屏、继电器等,可计量显示对应家用电器的电量参数,并可设置何时启动该家用电器的电源,可合理分配家中用电负荷,实现智能电网功能,可通过485总线与控制器通讯,也可独立工作。 1.2. 2 多功能面板 多功能面板以STM32系列芯片为核心,包含4路继电器输出,可同时控制4路负载(灯、排气扇等),可通过485总线与控制器通讯,也可独立工作。 1. 2.3 红外多功能转发器 红外转发器是以STM32系列芯片为核心。可学习、存贮、接收和转发电视机、空调及其他电器的遥控器红外信号,可通过485总线与控制器通讯,也可独立工作。 1.2. 4 触摸屏 本设计采用的彩色触摸屏是一套以嵌入式低功耗CPU为核心(主频400MHz)的高性能嵌入式一体化触摸屏。该产品设计采用了7英寸高亮度TFT液晶显示屏(分辨率800&TImes;480),四线电阻式触摸屏,高档塑料结构,工业级低功耗,CPU400MHz,64M内存,64M闪存,1*RS232(隔离接口),1*RS485(隔离接口),1*USB接口(一主一从),24VDC电源输入,功耗小于7W。同时还预装了嵌入式实时多任务操作系统组态软件。可通过485与智能家居控制器通讯,可实现遥控、遥信、遥调及情景模式的设定。 2 智能家居系统的硬件平台设计 智能家居控制器主要涉及到的硬件部分包括STM32F103VET系列芯片、8路达林顿驱动ULN2803、8路双向光耦隔离TLP280-4、2路高速光耦隔离6N137、5路RS485  SN65LBC184、以太网ENC28J60、FLASH存储器SST25VF016B。 2. 1 STM32F103VET系列芯片 STM32F103VET系列芯片使用高性能的ARMCortex-M3   32位的RISC内核,工作频率为72MHz,内置高速存储器(高达512k字节的闪存和64K字节的SRAM)带512k字节闪存的微控制器。包含3个12位的ADC、4个通用16位定时器和2个PWM定时器,还包含标准和先进的通信接口:多达2个I2C接口、3个SPI接口、2个I2S接口、1个SDIO接口、5个USART接口、一个USB接口和一个CAN接口。USB、CAN、11个定时器、3个ADC、13个通信接口。本设计中对STM32F103VET芯片的管脚做了功能划分,如图3所示。 2.2 8路达林顿连接晶体管阵列ULN2803 8路NPN达林顿连接晶体管阵列适用于低逻辑电平数字电路(如TTL、CMOS或PMOS/NMOS)和较高的电流/电压要求之间的接口,广泛应用于计算机、工业用和消费类产品中的灯、继电器、打印锤或其它类似负载中。所有器件具有集电极开路输出和续流箱位二极管,用于抑制跃变。ULN2803的设计与标准TTL系列兼容,采取AP=DIP18,AFW=SOL18封装方式,在本设计中ULN2803用于8路继电器输出的驱动电路。 2.3 双向光耦隔离TLP280-4和高速光耦隔离6N137 TLP280-4是一块超小且超薄的耦合器,适用于贴片安装,常用于PCMCIA传真调制解调器、可编程控制器电路中。6N137光耦合器是一款用于单通道的高速光耦合器,其内部电路由一个850  nm波长AlGaAs   LED和一个集成检测器组成,其检测器由一个光敏二极管、高增益线性运放及一个肖特基钳位的集电极开路的三极管组成。6N137具有温度、电流和电压补偿功能,广泛用于高速数字开关、马达控制系统和A/D转换等电路中。本设计中采用TLP280-4构成控制器的8路光耦隔离输入端电路,采用6N137构成控制器的2路高速光耦隔离输入端电路。 2.4 RS485接口通信芯片SN65LBC184 本设计中前端智能设备和探测器之间通过SN65LBC184进行半双工方式通信。 SN65LBC184工作原理电路如图4所示。由DIR5控制通信方向,当DIR5端为高电平时控制器为接收状态,反之,控制器则为发送状态。 2.5 以太网模块ENC28J60 本设计中各个控制器间可通过以太网口实现与家庭信息互联处理中心的通信。 2.6 FLASH存储器SST25VF016B 在本设计中利用FLASH存储器SST25VF016B存储各设备的IP地址。 2. 7 ADE7553单相电能计量芯片 ADE7553单相电能计量芯片具有高精度、低功耗的特点。有功电能计量误差小于0.1%,具有SPI串口通讯方式和DIDT传感器接口,使用5V直流电源供电。该芯片内部有很多寄存器,在设计中只需通过对其寄存器进行读写操作即可。 2.8 系统供电电路 控制器可提供双路12V/0.5A的电源输出,供与之相连的智能产品或模块使用。电路如图5所示。 3 智能家居系统的软件设计 整个智能家居系统的软件设计主要包括三部分:智能家居上位机管理软件、智能家居产品(控制器、智能插座、多功能面板等)、触摸屏。其中,智能家居上位机管理软件是基于Lab   VIEW开发环境开发的应用软件,是系统的集中管理手段和工具。该软件通过以太网协议和智能家居控制器底层控制协议在应用层面的融合,可实现对家居中安防设备、电气设备的控制,温度、灯光等参量的调节,以及场景设置、定时、远程监控等功能。如图6所示为上位机管理软件界面和客厅灯光程序框图。 智能家居产品的软件设计基于STM32单片机,采用C语言编写完成。包含控制器程序和多个设备的驱动程序。智能模块和控制器间通过RS485接口进行通讯,可以直接使用标准的串口驱动程序。设计驱动程序的大部分工作就是根据硬件结构来“填写”框架中的函数。主要的函数包括open()、read()、write()、ioctl()、release()、module_init()和module_exit()等。 触摸屏通过RS485与智能家居控制器通讯,通过预装的嵌入式实时多任务操作系统组态软件,实现对家居设备的控制和情境模式的设定。如图7所示为触摸屏的界面。 4 结束语 本文设计了一个基于STM32的智能家居系统,包括控制器、智能电度表、智能插座、多功能面板等多个智能家居模块。同时,配合红外探测器、烟感探测器、门禁控制器、网络摄像机等安防产品可组建成完善的智能家居系统。本系统具有控制方式多样灵活、模块功能可扩展性强、设备操作简单易行等优点,适合家庭、教学、实验开发等多个领域。

    时间:2020-08-05 关键词: 智能家居 STM32

  • 基于STM32芯片和TFT-LCD的便携式心电图仪设计

    基于STM32芯片和TFT-LCD的便携式心电图仪设计

    便携式心电图设备的出现使心电信号能够在更多场合进行采集,它既可以实现可移动化,又可以实时的对心电信号进行分析。通过内置大容量存储器件能够对患者进行长时间的实时监护,并记录患者的心电数据,通过USB接口与PC机进行数据传输,以提交到专业医疗机构做进一步分析和诊断。 1、系统整体设计概述 系统原理框图可以用图1表示。心电信号由电极获取,送入心电采集电路,经前置放大、主放大、高低通滤波、电平抬升后,得到符合要求的心电信号,并送入到STM32的ADC进行AD转换。为了更好地抑制干扰信号,在电路中还引入了右腿驱动电路。系统控制芯片采用STM32,TFT-LCD的触摸功能加上少量按键可以建立良好的人机交互环境,可以通过LCD实时显示和回放,采用SD卡可以存储24h的心电数据,数据通过USB可靠地传输到PC机,以便对心电数据做进一步的分析。 图1 心电图仪原理框图 2、系统主要硬件结构及电路 系统主要划分为三大部分:心电采集电路,主要完成心电信号的提取;带通滤波及主放大电路,用于调理采集到的信号,使之符合处理要求;STM32处理电路,完成心电信号的显示、分析、存储和数据传送功能。 2.1、心电采集电路 心电采集电路是整个便携式心电图仪的核心,直接决定整个系统性能的好坏。心电采集电路主要包括:输入缓冲及前置放大、右腿驱动、高低通滤波器、主放大和电平抬升。 体表心电信号的频率主要集中在0.05~100Hz,幅度为10μV~4mV,典型值为1mV,是一种低频率的微弱双极性信号。而STM32的ADC输入端电压范围是0~3.3V,因此需要对心电信号进行放大和电平抬升,总体放大倍数约为1000倍,然后再通过电平抬升电路抬高1V左右。心电测量中,实际的电极不可能完全对称,这样将会引起基线漂移现象,还有无处不在的电源工频干扰(50Hz),肌电干扰等,这些都要求心电前置放大器必须有很高的共模抑制比。一般要求共模抑制比在80dB以上。心电前置放大电路及右腿驱动电路如图2。(未画出放大器的正负电源) 图2  心电前置放大电路及右腿驱动电路 本设计选用INA118仪表放大器作为系统前置放大器,它具有低噪声、低漂移、高共模抑制比、高输入阻抗等特点,它的增益可达1000倍,计算公式为G=1+50k/Rg。电极极化电压最大可达300mV,为了防止前置放大器进入截止或饱和状态,必须限制其放大倍数,这里增益取10,由G=1+50/Rg得出Rg=5.6kΨ,外部电阻Rg选用阻值为5.6kΨ的精密线绕电阻。由于人体的阻抗和心电电极阻抗非常大,所以在前置放大前设计了一级跟随作为信号缓冲。为了更好地抑制50Hz干扰,采用右腿电极经电阻与放大器接地端相连,以降低人体的共模电压。

    时间:2020-08-03 关键词: LCD 心电图 STM32

  • 带有LED警示灯的骑行夜服设计

    带有LED警示灯的骑行夜服设计

    近年来,夜间骑车或跑步遭遇不幸的事件时有发生,这往往是因为在转弯或者高速行驶的过程中,汽车司机受限夜间视场,来不及避让而造成的。传统的夜行服大多采用被动方式,即由反光材料制作而成,在暗光条件下工作的人员广泛使用,由于利用的是反光原理,只有在灯光照射下才能进行反光,而且不同灯光照射产生的反光效果不同,因此大大限制了夜光服的使用场合和使用人群。有些主动发光的LED灯,发光面很小,强度较弱,无法起到好的警示作用。 本文设计了一套带有LED警示功能的骑行夜服,能够在夜晚自主发光,该夜行服可为需要在夜间出行的骑行者或跑步者起到好的保护作用。 1、系统方案总体设计 系统总体框图如图1所示,以STM32单片机为主控制核心,包括LED驱动电路、LED灯泡、控制按键、电量检测电路及低电量声光报警电路等部分。其中主控制器完成整个系统的控制,扫描控制按键的变化情况,输出相应的PWM控制信号给LED驱动电路;电池电量检测电路输入电池电压变化的检测信号给主控制器,主控制器检测该信号后判断当前电池电量是否正常,如果检测到电池电量过低则输出控制信号,开启声光报警电路,同时关闭LED灯。 图1  系统总体设计框图 2、LED布局及驱动电路 2.1、LED布局 设计的LED可依据使用者的喜好,切换白、蓝、红等3种光进行照明,使用的LED灯带为SMD3528/60LED/5V软灯条,以保证穿着的舒适性。LED整体布局如图2所示,设计了左转向、右转向、常亮等3个区域,可满足骑行者转弯和直行时的警示需求。LED灯布置在荧光布上,以增加反光面积、减少LED灯带的使用,从而减轻重量。 图2   LED分布示意图

    时间:2020-08-03 关键词: LED tps61169 STM32

  • 基于STM32,设计出可以戴在手腕上的低功耗穿戴式心率计

    基于STM32,设计出可以戴在手腕上的低功耗穿戴式心率计

    引言 心血管疾病是威胁人类生命健康的严重疾病,且发病年龄呈现年轻化的趋势。随着人们健康意识的增强,自我保健的需求不断增长,医院中精度高但使用不便的心电图仪已不能满足人们对心脏进行日常监护的需求。因此基于光电容积脉搏波(Photo-Plethysmography,简称PPG)技术的可穿戴式心率测量设备被广泛应用于心率监测领域。虽然市面上已有多种便携式心率仪,但大部分不能在人们进行日常活动时应用,只能进行短时间段的监测,不能有效抵抗运动干扰。夹于耳垂或头戴式的测量设备也不利于用户体验。 基于以上考虑,本文以STM32L152CB为控制核心,设计出了一款可以戴在手腕上的低功耗穿戴式心率计,设备体积小、携带方便、抗干扰能力强、测量精度高,可以在不影响使用者日常活动的情况下长时间、实时地测量心率,有助于对心血管疾病的预防和及时发现。 1、系统设计 1.1、硬件设计 硬件电路主要包括6个单元模块:电源系统模块、PPG信号检测传感单元模块、信号放大及滤波电路,加速度传感器、低功耗蓝牙4.0通信模块和微控制器。整个硬件嵌入可通过弹性腕带佩戴在手腕上,通过与上位机(如智能手机等)通信,将测量的数据传送给上位机处理及显示,系统结构如图1所示。 图1  心率计系统结构图 由于穿戴式设备对体积和重量的严格要求,设计的穿戴式心率计采用型号为LIR2450的可充电式锂离子纽扣电池作为电源。红外光源产生及控制电路的作用是提供PPG技术需要的波长稳定且光强可控的红外光源,采用红外光源模块SFH4050,并由微控制器产生的PWM波控制其开通或关闭。PPG信号I/V变换电路将光电传感器BPW34S感应到的微弱电流PPG信号转换成较大的电压信号,为了解决PPG信号中直流分量放大会导致运算放大器饱和的问题,采取将该单元电路的输出经低通数字滤波后反馈到输入端以抵消直流分量的措施。由于经I/V变换电路放大后的PPG信号幅度不足以被以有效精度采集到STM32L152CB中,需要对PPG信号进行二级放大。为了消除直流分量对交流分量放大的影响,采用了差分放大电路结构并同时对PPG信号进行了低频滤波。 1.2、软件设计 穿戴式心率计系统的软件架构如图2所示。初始化配置好ADC、DAC、SPI、I2C、三轴加速度等外设的工作模式后,调整定时器输出的100kHz的PWM波的脉宽,使光源电路电流稳定为20mA,设置一个定时周期10ms的自动重装载模式的定时器并使其中断,然后使微控制器(MCU)进入低功耗睡眠模式。定时器将每隔10ms唤醒一次MCU,随后MCU执行图2中所示10ms定时器的中断程序,完成对PPG信号I/V转换电路输出的低通滤波。为了使PPG信号电压放大电路与I/V转换电路间的信号同步,使用2ms定时器中断唤醒MCU并执行图2所示的2ms定时器中断程序,完成心率的计算并通过蓝牙4.0输出到上位机,随后MCU再次进入低功耗睡眠模式,等待10ms定时器唤醒。 图2 系统软件架构图 1.2.1、消除PPG信号中运动干扰噪声原理 应用自适应滤波器消除PPG信号中运动干扰噪声的原理如图3所示。图中a(t)是三轴加速度计检测到的被测部位t时刻的加速度,将其作为自适应滤波器的输入信号。将含有噪声的PPG信号y(t)与ω赞(t)的差y赞(t)作为误差信号反馈到自适应滤波器,使自适应滤波器不断调整系数以使其输出ω赞(t)更加接近噪声信号ω(t),也相当于是自适应滤波器的结构h赞(t)更加接近物理模型h(t)。即经自适应滤波系统滤波后输出的误差信号y赞(t)可作为相对准确的脉搏波信号用于提取心率值。 图3  自适应滤波法消除PPG信号中运动干扰噪声原理图 1.2.2、变步长LMS自适应滤波算法 在自适应最小均方误差(LeastMeanSquares,LMS)算法中,要使误差信号的最小均方值E[e2(k)]最小,即自适应滤波器输出y(k)越接近期望信号d(k),步长因子μ的选择是一个关键问题。理想的情况是:在自适应过程开始时,在收敛值范围内,取较大的μ,以使系数向量快速向最优解逼近;当系数向量快逼近到最优解时,取较小的μ,减小稳态失调误差[8-9]。可以基于这种改变步长因子大小的思想改进LMS算法。改进的LMS算法如下: 1.3、低功耗设计 本系统的低功耗主要体现在以下几方面:选用超低功耗的STM32L152CB微控制器,动态改变微控制器的时钟及工作模式;根据执行任务的不同,通过内部寄存器设置微控制器和各个外设工作在不同的时钟频率;通过定时器中断自由切换微控制器的工作模式,即高速运行状态和低功耗睡眠模式,有效降低其功耗;采用低功耗蓝牙4.0作为数据收发模块等。

    时间:2020-07-30 关键词: STM32

  • 基于STM32实现孤立词语音识别系统

    基于STM32实现孤立词语音识别系统

    语音识别是机器通过识别和理解过程把人类的语音信号转变为相应文本或命令的技术,其根本目的是研究出一种具有听觉功能的机器。本设计研究孤立词语音识别系统及其在STM32嵌入式平台上的实现。识别流程是:预滤波、ADC、分帧、端点检测、预加重、加窗、特征提取、特征匹配。端点检测(VAD)采用短时幅度和短时过零率相结合。检测出有效语音后,根据人耳听觉感知特性,计算每帧语音的Mel频率倒谱系数(MFCC)。然后采用动态时间弯折(DTW)算法与特征模板相匹配,最终输出识别结果。先用Matlab对上述算法进行仿真,经多次试验得出算法中所需各系数的最优值。然后将算法移植到STM32嵌入式平台,移植过程中根据嵌入式平台存储空间相对较小、计算能力也相对较弱的实际情况,对算法进行优化。最终设计并制作出基于STM32的孤立词语音识别系统。 从技术上讲,语音识别属于多维模式识别和智能接口的范畴。它是一项集声学、语音学、计算机、信息处理、人工智能等于一身的综合技术,可广泛应用在信息处理、通信和电子系统、自动控制等领域。 国际上对语音识别的研究始于20世纪50年代。由于语音识别本身所固有的难度,人们提出了各种条件下的研究任务,并有此产生了不同的研究领域。这些领域包括:针对说话人,可分为特定说话人语音识别和非特定说话人语音识别;针对词汇量,可划分为小词汇量、中词汇量和大词汇量的识别,按说话方式,可分为孤立词识别和连续语音等。最简单的研究领域是特定说话人、小词汇量、孤立词的识别,而最难的研究领域是非特定人、大词汇量、连续语音识别。 在进入新世纪之前,语音识别技术大都只在特定行业或场所中使用或者仅仅停留在实验室,处于探索和试验中。最近十年由于消费电子行业的兴起和移动互联网技术的爆发。越来越多的自动化和自能化产品走进人们的日常生活。语音识别技术也随之进入大众的视线,并开始为更多人所了解和使用。例如语音门禁、智能电视上的语音换台、智能手机上的语音拨号、语音控制等等。语音识别技术正在由过去的实验探索迈入实用化阶段。我们有理由相信会有越来越多的产品用到语音识别技术,它与人工智能能技术的结合将会是一个重要的发展方向。语音识别技术最终会改变人与机器之间的交互方式,使之更加自然、便捷、轻松。 本设计的孤立词语音识别是语音识别技术中较为基本的,算法实现也较简单,适合于在嵌入式平台中实现一些简单的语音控制功能。以往类似系统大都基于ARM9、ARM11、DSP、SOC等。这些平台系统规模较大、开发和维护的难度较大、成本也相对较高。STM32是意法半导体(ST)公司推出的基于ARM Cortex-M3内核的高性能单片机。上市之后,由于其出色的性能、低廉的价格,很快被运用到众多产品中。经测试,STM32F103VET6单片机拥有能够满足本系统孤立词语音识别所需的运算和存储能力。所以在本系统中采用STM32F103VET6作为主控制器,采集并识别语音信号。以低廉的成本,高效的算法完成了孤立词语音识别的设计目标。本系统主要涉及的内容如下述: 语音信号的采集和前端放大、防混叠滤波、模数转换。 语音信号预处理,包括预加重、分帧、加窗。 语音信号端点检测,检测输入信号中有效语音的起始和结束点 语音信号特征提取。提取有效语音中每帧语音信号的Mel频率倒谱系数(MFCC)系数。 模板训练,对每个语音指令采集多个语音样本,根据语音样本获取每个语音指令的特征模板。 特征匹配,使用动态时间规整(DWT)算法计算输入语音信号与各模板的匹配距离。识别输入的语音信号。 系统硬件电路设计,人机界面设计。 第一章 方案论证及选择1.1系统设计任务要求本系统利用单片机设计了一个孤立词语音识别系统,能够识别0~9、 “上”、“下”、“左”、“右”14个汉语语音指令。系统通过触摸式LCD与用户交互。 本设计的主要要求如下: 1.采集外部声音信号,转换为数字信号并存储。 2.在采集到的声音信号中找出有效语音信号的开始和结束点。 3.分析检测到的有效语音,得出语音信号特征。 4.对每个待识别的语音指令,建立特征模版。 5.比较输入语音信号特征与特征模版,识别输入的语音信号 6.显示系统操作界面,并能够接受用户控制。 1.2硬件选择1.2.1 硬件方案总体介绍系统硬件由音频放大模块、MCU、触摸屏、电源四部分组成。音频放大模块完成对外部声音信号的采集和放大。将声音信号转化为电信号,并放大到0~3V。MCU的ADC参考电压为其电源电压3.3V。音频放大模块的输出信号不超出MCU ADC的电压范围,并且能够获得最大的量化精度。MCU对音频放大模块输入的声音信号进行AD转换。然后提取并识别信号特征。另外,MCU还控制触摸屏的显示和读取触摸屏点击位置。触摸屏负责显示操作界面,并接收用户操作。电源为电池供电。 系统硬件结构图如图1.1所示。 图1.1系统硬件总体结构图 1.2.2 MCU选择传统上孤立词语音识别多采用语音识别专用芯片,例如凌阳SPCE061A、LD3320等。此种方案设计简单,开发周期较短,但可拓展性较差,一般只能识别特定的语音,或者识别语音指令的个数有限制。且专用芯片价格一般相对较高,对系统成本控制不利。 STM32F103VET6是意法半导体(ST)推出的高性能32位Cortex-M3内核单片机,带有ADC、DAC、USB、CAN、SDIO、USART、SPI、IIC、FSMC、RTC、TIM、GPIO、DMA等大量片上外设。Cortex-M3内核属于ARM公司推出的最新架构ARMv7中的M系列,侧重于低成本、低功耗、高性能。其最高主频可达72MHz, 1.25 DMIPS/MHz的运算能力,三级流水线另加分支预测,并且还带有单周期乘法器和硬件除法器。相比较ARM7TDMI内核,Cortex-M3在性能上有较大的提升。 STM32F103VET6内置3个一共21通道的12位ADC,采样频率最高可达1MHz。12通道DMA控制器,可访问系统Flash、SRAM、片上外设,能够处理内存到外设、外设到内存的DMA请求。11个16位定时器,其中T1、T2、T3、T4、T5、T8可连接到ADC控制器,在每次定时器捕获/比较事件到来时自动触发ADC开始一次A/D转换。A/D转换完成后可自动触发DMA控制器将转换后的数据依次传送至SRAM的数据缓冲区。因此STM32F103VET6能够进行精确且高效的A/D转换。能够满足音频信号采集的需求。 STM32F103VET6的FSMC(Flexible StaTIc Memory Controller,可变静态存储控制器)能够根据不同的外部存储器类型,发出相应的数据/地址/控制信号类型以匹配信号的速度。FSMC连接至LCD控制器,可将LCD控制器配置为外部NOR Flash。在系统需要访问LCD时,自动生成满足LCD控制器要求的读写时序,能够精确、快速地完成对LCD界面显示的控制。内置3个最高可达18Mbit/s的SPI控制器,与触摸屏控制器相连能够实现触摸屏点击位置检测。 本系统中采集一个汉语语音指令。录音时间长度2s,以8KHz 16bit采样率对语音进行采集,所需存储空间为32KB,另外加上语音处理、特征提取及特征匹配等中间步骤所需RAM空间不会超过64KB。而STM32F103VET6带有512KB Flash和64KB RAM。所以STM32F103VET6在程序空间上能够满足。语音识别中最耗时的部分是特征提取中的快速傅立叶变换换。一般来说,孤立词语音识别中有效语音时间长度小于1s。语音信号一般10~30ms为一帧,本系统中按20ms一帧,帧移(相邻两帧的重叠部分)10ms,这样一个语音指令不超过100帧。在8KHz 16bit的采样率下,20ms为160采样点 。STM32固件库所提供的16位、1024点FFT,在内核以72MHz运行时每次运算仅需2.138ms。完成100帧数据的FFT所需时间为213.8ms,加上其他处理所需时间,识别一个语音指令耗时不会超过0.5s。所以在程序运行时间上STM32F103VET6也能够满足需要,能够进行实时的孤立词语音识别。 基于以上论证,本系统选用STM32F103VET6作为主控MCU。 1.2.3音频信号采集方案选择音频信号采集多采用音频编解码芯片,例如UDA1341、VS1003等。此类芯片能够提供丰富的功能,且系统一致性较好,但它们成本较高。本系统是一个低成本解决方案,并且只需要采集音频信号。因此不宜采用那些专用的音频编解码芯片。 在本系统的音频放大模块中使用小型话筒完成声电信号转换,两个9014三极管构成两级共基极放大电路。在每一级中加电压负反馈,稳定放大倍数。 语音信号的频带为300~3400Hz,根据抽样定理,抽样频率设为8000Hz就足以完成对语音信号的采集。在本系统中TIM1被设置为ADC触发信号源。TIM时钟源为系统时钟72MHz。经100分频,变为720KHz。计数模式为向上递增,自动重载值为90,即计数值从0递增到90再返回0。比较匹配值设为0~90间任意一个数值 ,则每秒可发出8000次比较匹配事件。ADC每秒完成8000次A/D转换,即抽样频率为8KHz。 1.2.4显示及操作界面选择触摸屏作为一种新的输入设备,它是目前最简单、方便、自然的一种人机交互方式。LCD触摸屏是一种可接收触摸点击输入信号的感应式液晶显示装置。当接触或点击屏幕时,触摸控制器可读取触摸点位置,如此可通过屏幕直接接受用户的操作。相比较机械式按钮,触摸屏在操作上更加直观生动。综合考虑,本设计中采用2.5寸240×320分辨率的LCD触摸屏实现界面显示和操作。 1.3算法选择1.3.1软件算法总体介绍对采集到的音频信号进行预处理、端点检测、特征提取、模板训练、特征匹配的一些列处理,最终识别输入语音。 系统软件流程图如下图所示。 1.3.2预处理算法选择语音信号的预处理主要包括: ADC、分帧、数据加窗、预加重。 语音信号的频率范围通常取100Hz~3400Hz,因为这个频段包含绝大部分的语音信息,对语音识别的意义最大。根据采样定律,要不失真地对3400Hz的信号进行采样,需要的最低采样率是6800Hz。为了提高精度,常用的A/D采样率在8kHz到12kHz。 语音信号有一个重要的特性:短时性。由于人在说话中,清音与浊音交替出现,并且每种音通常只延续很短的一段时间。因此,从波形上看,语音信号具有很强的“时变特性”。在浊音段落中它有很强的周期性,在清音段落中又具有噪声特性,而且浊音和清音的特征也在不断变化之中。如图1.4所示,其特性是随时间变化的,所以它是一个非稳态过程。但从另一方面看,由于语音的形成过程是与发音器官的运动密切相关的,这种物理性的运动比起声音振动速度来说是缓慢的(如图1.5所示)。因此在一个短时间范围内,其特性变化很小或保持不变,可以将其看做一个准稳态过程。我们可以用平稳过程的分析处理方法来分析处理语音信号。 图1.4 语音“7”的时域波形 图1.5 语音“7”清音段和浊音段的20ms短时波形 基于以上考虑,对语音信号的分析处理必须采用短时分析法,也就是分帧。语音信号通常在10ms~30ms之间保持相对平稳。在本设计中,每帧取20ms。为了使前后帧之间保持平滑过渡,帧移10ms,即前后帧之间交叠10ms。 为了便于后续语音处理,需对分帧后的信号加窗。加窗方式如式(1-1)。 (1-1) 式中Y(n)是加窗后的信号,y(n)是输入信号,w(n)是窗函数,N是帧长。 窗函数可以选择矩形窗,即 (1-2) 图1.6 矩形窗时域、频域示意图 或其他形式窗函数,如汉明窗 (1-3) 图1.7 汉明窗时域、频域示意图 这些窗函数的频率响应都具有低通特性,但不同的窗函数形状将影响分帧后短时特征的特性。图1.7和图1.8分别给出了160点矩形窗和汉明窗的时域和频域示意图。从图中可以看出汉明窗的带宽大约是同样宽度矩形窗带宽的两倍。同时,在通带外汉明窗的衰减比矩形窗大得多。矩形窗的主瓣较小,旁瓣较高;而汉明窗具有最宽的主瓣宽度和最低的旁瓣高度。 对语音信号分析来说,窗函数的形状是非常重要的,矩形窗的谱平滑性较好,但波形细节易丢失,并且矩形窗会产生泄露现象。而汉明窗可以有效地克服泄露现象,应用范围也最为广泛。基于以上论述,本设计选用汉明窗作为窗函数。图1.9和图1.10分别给出了一帧浊音加矩形窗和汉明窗后的时域和频域效果。 图1.8 加矩形窗 图1.9 加汉明窗 由于人的发声器官的固有特性,语音从嘴唇辐射将有6dB/倍频的衰减。此种效应主要表现在高频信息的损失,对语音信号的特征提取会造成不利的影响。因此,必须对信号进行高频提升,即对信号进行高频的补偿,使得信号频谱平坦化,以便于进行频谱分析或声道参数分析。预加重可以用具有6dB/倍频提升高频特性的预加重数字滤波器实现。预加重滤波器一般是一阶的,其系统函数和差分方程如式(1-4) (1-4) 其中y(n)为提升后的输出值,x(n)和x(n-1)分别为当前时刻和前一时刻的输入值。u接近于1,典型取值在0.94~0.97之间。本设计取0.95。预加重效果如图1.11所示。 图1.10 预加重效果图 1.3.3端点检测算法选择语音端点检测(VAD),也称为语音活动性检测,主要应用在语音处理中的语音编解码,语音识别及单信道语音增强等领域。语音端点检测的基本方法可以用一句话来表达:从输入信号中提取一个或一系列的对比特征参数,然后将其和一个或一系列的门限阀值进行比较(如图3-2)。如果超过门限则表示当前为有音段;否则表示当前为无音段。门限阀值通常是根据无音段时的特征确定的。但是由于语音和环境噪声的不断变化,使得这一判决过程变得非常复杂。通常语音端点检测是在语音帧的基础上进行的,语音帧的长度在10ms~30ms不等。一个好的语音端点检测算法必须具有对各种噪声的鲁棒性,同时要简单、适应性能好、时延小、且易于实时实现。 在高信噪比的情况下,常用的检测方法大体上有以下几种:短时能量、短时过零率。这些方法都是利用了语音和噪声的特征参数,因此判别效果较好。并且它们实现简单,计算量相对较小,因而得到广泛的应用。 短时能量定义如下式: (1-6) 式中N为帧长,E为一帧的短时能量值。 短时能量主要有以下几个方面的应用:首先短时能量可以区分清音和浊音,因为浊音的能量要比清音的大得多;其次可以用短时能量对有声段和无声段进行判定,以及连字分界等。短时能量由于是对信号进行平方运算,因而人为增加了高低信号之间的差距。更重要的的是平方运算的结果很大,容易产生数据溢出。解决这些问题的简单方法是采用短时平均幅度值来表示能量的变化。其定义如下: (1-7) 短时过零率是语音信号时域分析中最简单的一种特征,它指每帧内信号通过零值的次数,定义如下: (1-8) 式中,sgn(x)是符号函数,即 (1-9) 根据以上定义,清音由于类似于白噪声,所以过零率较高。浊音的能量集中于低频段,所以浊音信号的短时过零率较低。噪声的短时过零率较高,这主要是因为语音信号的能量主要集中在较低的频率范围内,而噪声信号的能量主要集中于较高的频段。这样计算的短时过零率容易受到噪声干扰。解决这个问题的方法是对上述定义稍作修改,即设置一个门限T,将过零率的含义修改为跨过正负门限的次数。修改后的定义如下式: (1-10) 这样计算的短时过零率就有一定的抗干扰能力,即使存在随机噪声,只要它不超过正负门限所构成的带,就不会产生虚假过零率。 综合考虑设计需要和系统处理能力,本设计采用短时幅度值和改进后的短时过零率判断语音起始和结束点。分别为短时幅度和短时过零率设置门限值。每次识别前,选定语音段前300ms作为背景噪声,用以确定这两个门限值,实现对背景噪声的自适应。具体的端点检测方法如下。 判断语音起始点,要求能够滤除突发性噪声。突发性噪声可以引起短时能量或过零率的数值很高,但是往往不能维持足够长的时间,如门窗的开关,物体的碰撞等引起的噪声,这些都可以通过设定最短时间门限来判别。超过两门限之一或全部,并且持续时间超过有效语音最短时间门限,返回最开始超过门限的时间点,将其标记为有效语音起始点。判断语音结束点,要求不能丢弃连词中间短暂的有可能被噪声淹没的“寂静段”。这可以通过设定无声段最长时间门限来判别。同时低于两门限,并且持续时间超过无声最长时间门限,返回最开始低于门限的时间点,将其标记为有效语音结束点。 图1.12和图1.13分别给出了上述算法在一般信噪比和低信噪比情况下的端点检测效果。从图中可以看出上述算法能够适应一般的背景噪声。在背景噪声较高时,上述算法无法准确判断语音起始结束点。但经过试验,当信噪比低至图1.13所示时时人耳也很难准确辨识语音。所以上述算法在实际使用中能够满足端点检测的需求。 图1.11 一般信噪比下的端点检测效果 图1.12 低信噪比下的端点检测效果 1.3.4特征提取算法选择在语音识别系统中,模拟语音信号在完成A/D转换后成为数字信号。此时的语音信号为时域的信号,时域的信号难以进行分析和处理,而且数据量庞大。通常的做法是对时域信号进行变换,提取其中某种特定的参数,通过一些更加能反映语音本质特征的参数来进行语音识别。特征提取是识别过程中一个非常重要的环节,选取的特征直接影响到识别的结果。不同的特征对不同语音的敏感度也不一样,优秀的语音特征应该对不同字音距离较大,而相同字音距离较小。 另外,特征值的数目也是一个重要的问题。在满足使用要求的情况下,所使用的特征数应该尽量减少,以减少所涉及的计算量。但是过少的特征有可能无法恰当的描述原始语音,以致识别率下降。语音特征的提取方法是整个语音识别的基础,因此受到了广泛的重视。通过近几十年的发展,目前语音特征的提取方法主要有以下三类: 1.基于线性预测分析的提取方法。这一类的典型代表是线性预测倒谱系数LPCC。 2.基于频谱分析的提取方法。这一类的典型代表是Mel频率倒谱系数MFCC。 3.基于其它数字信号处理技术的特征分析方法。如小波分析、时频分析、人工神经网络分析等。 目前的孤立词语音识别系统大多采用前两种语音特征提取方法。在本文中,借鉴前人对LPCC系数和MFCC系数的总结对比,采用Mel频标倒谱系数MFCC。 人类的耳蜗实质上相当于一个滤波器组,耳蜗的滤波作用在1000Hz以下为线性尺度,而1000Hz以上为对数尺度,这就使得人耳对低频信号的分辨率高于对高频信号的分辨率。根据这一特性,研究者根据心理学实验得到了类似于耳蜗作用的一组滤波器组,这就是Mel频率滤波器组。Mel频率可以用如下公式表示: (1-11) 图1.13 Mel频率与实际频率的对应关系 对频率轴的不均匀划分是MFCC特征区别于普通倒谱特征的最重要特点。将频率按照式(1-11)和图1.13变换到Mel域后,Mel带通滤波器组的中心频率是按照Mel频率刻度均匀排列的。在本设计中,MFCC倒谱系数的计算过程如下述。 1.对语音信号预加重、分帧、加汉明窗处理,然后进行短时傅里叶变换,得出频谱。 2.取频谱平方,得能量谱。并用24个Mel三角带通滤波器进行滤波;由于每个频带的分量在人耳中是叠加的,因此将每个滤波器频带内的能量进行叠加,输出Mel功率谱。 3.对每个滤波器的输出值取对数,得到相应频带的对数功率谱。然后对24个对数功率进行反离散余弦变换得到12个MFCC系数,反离散余弦变换如式(1-12),式中M=24,L=12。 (1-12) 在本设计中采集语音信号的抽样频率是8000Hz,频率范围是0Hz~4000Hz。在此频率范围内的Mel三角带通滤波器组如下图所示: 图1.14 Mel三角滤波器组 与LPCC参数相比,MFCC参数具有以下优点: 1.语音的信息大多集中在低频部分,而高频部分易受环境噪声干扰。MFCC参数将线性频标转化为Mel频标。强调语音的低频信息,从而突出了有利于识别的信息,屏蔽了噪声的干扰。 2.MFCC参数没有任何前提假设,在各种情况下均可使用。而LPCC参数需要假定所处理的信号为AR信号,对于动态特性较强的辅音,这个假设并不是严格成立的。 因此,MFCC参数的抗噪声特性是优于LPCC参数的。在本设计中,采用的语音特征参数均为MFCC参数。 1.3.5特征匹配算法选择要建立一个性能良好的语音识别系统仅有好的语音特征还不够,还要有适当的语音识别的模型和算法。在现阶段,语音识别的过程是根据模式匹配的原则,计算未知语音模式与语音模板库中的每一个模板的距离测度,从而得到最佳的匹配模式。目前,语音识别所应用的模型匹配方法主要有动态时间弯折(DTW:Dynamic Time Warping)、隐马尔可夫模型(HMM:Hidden Markov Model)和人工神经网络(ANN:Artificial Neural Networks)等。当今孤立词识别领域最常用的识别算法是DTW和HMM。 DTW算法是较早的一种模式匹配和模型训练技术,它应用动态规划的方法成功解决了语音信号特征参数序列比较时时长不等的难题,在孤立词语音识别中获得了良好的性能。DTW算法是建立在动态规划(DP:Dynamic Programming)的理论基础上的。动态规划是一个很有效的方法来求取一个问题的最佳解。其中心思想简单的说可以描述为:在一条最佳的路径上,其中任意一条子路径也都必须是相关子问题的最佳路径,否则原路径就不是最佳路径。 HMM算法是数学上一类重要的双重随机模型,用概率统计的方法描述时变语音信号,很好的描述了语音信号的整体非平稳性和局部平稳性。HMM的各状态对应语音信号的各平稳段,各状态之间以一定转移概率相联系,是一种较为理想的语音模型。HMM模型属于统计语音识别,适用于大词汇量、非特定人的语音识别系统。随着现代计算机技术的迅猛发展,计算机的运算速度迅速提高,隐马尔科夫模型分析方法也得到了广泛利用。该算法在识别阶段计算量较少,适应性强,但是需要大量的前期训练工作,对系统资源的要求较多。 用于孤立词识别,DTW算法与HMM算法在相同的环境条件下,识别效果相差不大,但是HMM算法要复杂得多,这主要体现在HMM算法在训练阶段需要提供大量的语音数据,通过反复计算才能得到模型参数,而DTW算法的训练中几乎不需要额外的计算。所以在孤立词语音识别中,DTW算法得到更广泛的应用。 综合比较DTW算法的工作量小,不需要大量的语音数据,而且DTW算法适合孤立词语音识别,且容易实现,节省系统资源,比较方便移植到嵌入式系统中。所以本系统选择DTW算法作为语音识别的核心算法。下面介绍DTW算法及其实现方法。 假设参考模板的特征矢量序列为,输入语音特征矢量序列为 ,输入语音特征矢量序列为 。DTW算法就是要寻找一个最佳的时间规整函数,使待测语音的时间轴j非线性地映射到参考模板的时间轴i上,使总的累积失真量最小。 设时间规整函数为 (1-13) 式中N为匹配路径长度, 表示第n个匹配点是参考模板的第i(n)个特征矢量与待测模板的第j(n)个特征矢量构成。两者之间的距离 称为局部匹配距离。DTW算法就是通过局部优化的方法实现匹配距离总和最小。 一般时间规整函数满足一下约束: 1.单调性,规整函数单调增加。 2.起点终点约束,起点对起点,终点对终点。 3.连续性,不允许跳过任何一点。 4.最大规整量不超过某一极限值。 M为窗宽。规整函数所处的区域位于平行四边形内,本设计中将平行四边形的约束区域端点放宽3点。局部路径约束,用于限制当第n步时,后几步存在几种可能的路径。本设计中DTW规整区域和局部路径如图1.16、图1.17所示。 图1.15 放宽端点限制的DTW规整区域 图1.16 DTW局部路径 本设计中DTW算法计算步骤: 1.初始化。令i(0)=j(0)=0,i(N)=I,j(N)=J,确定一个如图1.16所示的规整约束区域Reg。它由一平行四边形变化而来。此平行四边形有两个位于(1,1)和(I,J)的顶点,相邻两条边的斜率分别为2和1/2。 2.按照如图1.17所示的路径递推求累计匹配距离。第n步匹配距离如下式 (1-14) 3.累计匹配距离除匹配步数,得归一化匹配距离。即输入特征与特征模板之间的匹配距离。计算输入特征与每一特征模板的匹配距离,匹配距离最小的特征模板与输入特征有最大的相似性。 第二章 系统设计2.1硬件设计2.1.1 MCU及其最小系统电路设计经过第一章的论证,选用意法半导体公司的STM32F103VET6单片机。 MCU输入时钟由8MHz晶振提供,经MCU内部PLL倍频至72MHz。在每一个电源引脚上并接0.1uF去耦电容,以提高MCU电源稳定性和抗干扰性。 2.1.2 音频信号采集电路设计音频信号采集电路原理图如下 图2.6 音频信号采集原理图 2.1.3 LCD接口电路设计本设计中显示器件选用2.4英寸TFT LCD显示屏,LCD驱动器是ILI9325 。 Thin Film Transistor (薄膜场效应晶体管),是指液晶显示器上的每一液晶象素点都是由集成在其后的薄膜晶体管来驱动。从而可以做到高速度高亮度高对比度显示屏幕信息。 ILI9325 是一个262144色的单芯片TFT LCD SoC 驱动。 它提供240×320的分辨率, 172,800字节的图形数据RAM ,并且带有内部电源电路。它与控制器的接口可设置为16位并口、8位并口、SPI接口。在本设计中为了提高显示数据的传输速率,采用了STM32F103VET6的FSMC(可变静态存储控制器)的16位并口作为MCU和ILI9325的接口。将ILI9325的数据和控制接口映射为外部存储器。MCU传送控制命令或显示数据时,自动生成相应的时序,避免了传统上采用IO口模拟时序,提高了数据传输效率。 2.2软件设计2.2.1 语音预处理算法设计语音信号预处理包括: 语音信号采集、分帧、数据加窗、预加重。 语音信号采集就是将外部模拟的语音信号,转换为MCU可处理和识别的数字信号的过程。在本设计中,通过MCU内部的定时器、模数转换器以及DMA控制器实现了对音频信号采集模块输入语音信号的数字化。其处理流程如下图所示。 图2.9 语音信号数字化流程图 在程序中,控制语音信号采集的函数如下。 1void record(void) 2{ 3 delay_ms(atap_len_t); //延时,规避点击屏幕发出的噪声 4 TIM_Cmd(TIM1, ENABLE); //开启定时器,开始信号采集 5 GUI_ClrArea(&(Label[G_ctrl])); //显示操作提示 6 7 GUI_DispStr(&(Label[G_ctrl]),“录音中”); 8 delay_ms(atap_len_t); //开始说话之前,录制一小段背景声音,用以实现背景噪声自适应 9 //提示开始说话 10 set_label_backclor(&(Label[G_spk]), spk_clor); 11 //等待缓冲区数据更新完毕 12 while(DMA_GetFlagStatus(DMA1_FLAG_TC1)==RESET); 13 TIM_Cmd(TIM1, DISABLE); //数据采集结束,关闭定时器 14 DMA_ClearFlag(DMA1_FLAG_TC1); //清数据传输完成标志,以备下次使用 15 //提示开始处理采集到的数据 16 set_label_backclor(&(Label[G_spk]), prc_clor); 17} 分帧就是将采集到的语音数据分割成相同长度的片段,以用于短时分析。本设计中取20ms即160点为一帧,帧移10ms即80点。为了适应MCU存储空间有限的实际情况,分帧并没有被单独设计和占用单独的空间,而是在读语音数据缓冲区的时候按照帧长帧移的顺序依次读取。 由于端点检测属于时域分析,并不需要加窗和预加重,所以本设计中,分帧和预加重都加在端点检测之后提取MFCC之前。 2.2.2 端点检测算法设计本设计采用短时幅度和短时过零率相结合的端点检测算法。 首先去缓冲区前300ms作为背景噪声,提取背景噪声参数。用于后续端点检测。背景噪声参数由以下结构体定义。 1typedef struct 2{ 3 u32 mid_val; //语音段中值 相当于有符号的0值 用于短时过零率计算 4 u16 n_thl; //噪声阈值,用于短时过零率计算 5 u16 z_thl; //短时过零率阈值,超过此阈值,视为进入过渡段。 6 u32 s_thl; //短时累加和阈值,超过此阈值,视为进入过渡段。 7}atap_tag; //自适应参数 提取函数为void noise_atap(const u16* noise,u16 n_len,atap_tag* atap),其提取过程如下。 图2.10 背景噪声参数提取流程 然后根据提取到的短时过零率和短时幅度计算有效语音起始和结束点。有效语音端点由以下结构体定义。 1typedef struct 2{ 3 u16 *start; //起始点 4 u16 *end; //结束点 5}valid_tag; //有效语音段 端点检测函数为void VAD(const u16 *vc, u16 buf_len, valid_tag *valid_voice, atap_tag *atap_arg)。其流程图如下。 图2.11 端点检测流程 2.2.3 特征提取算法设计及优化本设计选用12阶MFCC作为语音特征。此步是整个算法流程中最耗时也是优化空间最大的部分。因此,在程序设计中,沿用经典算法的同时做了大量的针对STM32嵌入式平台的优化工作。优化的中心思想是:尽量少使用或不使用浮点运算;使用整型数,其运算结果应尽量大以减少舍入噪声,但必须保证数据不会溢出;空间换时间。 FFT函数是u32* fft(s16* dat_buf, u16 buf_len)。它封装了了ST提供的STM32固件库里的void cr4_fft_1024_stm32(void *pssOUT, void *pssIN, u16 Nbin)函数。cr4_fft_1024_stm32()输入参数是有符号数,包括实数和虚数,但语音数据只包括实数部分,虚数用0填充,fft点数超出输入数据长度时,超过部分用0填充。cr4_fft_1024_stm32()输出数据包括实数和虚数,应该取其绝对值,即平方和的根。 语音特征用如下结构体定义。 1typedef struct 2{ 3 u16 save_sign; //存储标记 用于判断flash中特征模板是否有效 4 u16 frm_num; //帧数 5 s16 mfcc_dat[vv_frm_max*mfcc_num]; //MFCC转换结果 6}v_ftr_tag; 获取MFCC的函数是void get_mfcc(valid_tag *valid, v_ftr_tag *v_ftr, atap_tag *atap_arg)。获取MFCC的一般步骤在上一章已有论述,在此介绍移植到MCU上需做的优化。 预加重的高通滤波系数为0.95,如果直接使用,则需要进行浮点运算,尽量避免,故使用y(n)=x(n)-x(n-1)×95/100。加汉明窗窗函数值如果每次都要重新计算,则需要进行三角函数运算,耗时严重,效率低下。但其数值是一定的,因此事先计算好160点的汉明窗值。存于数组中const u16 hamm[],使用时直接读取。FFT函数直接输入ADC转换过的值-2048~2047,其输出频谱幅值过小,舍入误差较大。数据输入前需作放大处理。vc_temp[ i]=(s16)(temp*hamm[ i]/(hamm_top/10));此句代码在实现加窗的同时,将语音数据放大10倍。Mel三角滤波器的中心频率和数值的计算涉及到对数运算,不宜直接计算,也实现计算好的数值存于Flash中,使用时直接读取。还有其他的优化措施,详见附件代码。 void get_mfcc(valid_tag *valid, v_ftr_tag *v_ftr, atap_tag *atap_arg)函数流程如下。 图2.12 特征提取流程 2.2.4模板训练算法设计 本设计模板训练采用冗余模板算法,即每个语音指令存储4个特征模板,识别时输入特征分别与每个特征模板相比较,匹配距离最小的,就是识别结果。这4个特征模板存储于MCU Flash后端,模板训练时,将模板存于指定的Flash地址。为了保证保存的特征模板不被擦除或被其他代码或数据占用,需设置编译器的地址范围。 2.2.5特征匹配算法设计 本设计特征匹配算法采用 DTW(动态时间弯折)。其原理在上一章已有论述,在此不再赘述。其流程如下。 图2.13 特征匹配流程 2.2.6显示界面设计本设计在触摸式LCD上实现了简单的GUI操作界面。能够显示中英文文本框、按钮。 最基本元素为GUI_Area,定义如下。 1typedef struct 2{ 3 u16 Left; //区域离屏幕左边界的距离 像素 4 u16 Top; //区域离屏幕上边界的距离 像素 5 u16 Width; //区域宽度 像素 6 u16 Height; //区域高度 像素 7 u16 BackColor; //区域背景色 8 u16 ForeColor; //区域前景色 9}GUI_Area; 在此基础上实现了以下函数。 1void wait_touch(void); //等待屏幕点击 2u8 touch_area(GUI_Area *area); //判断是否点击指定区域 3void GUI_HideArea(GUI_Area *Area); //隐藏区域 显示屏幕前景色 4void GUI_ClrArea(GUI_Area *Area); //清除区域 显示区域背景色 5void GUI_DispStr(GUI_Area *Area,const u8 *str); //在区域内显示字符串 6void GUI_printf(GUI_Area *Area,char *fmt, 。。。); //printf函数在区域内的实现 配合显示界面,主函数流程如下。 图2.14 主程序流程 第三章 系统制作及调试结果3.1系统制作与调试本系统的制作调试主要分为Matlab仿真、硬件调试、软件调试。 经过初步的分析设计后,Matlab中仿真算法。调节算法细节,直至能够较好地实现所需功能,再将其移植到MCU平台上。在设计制作硬件电路的同时,调试穿插进行,应用系统的硬件调试和软件调试是分不开的,许多硬件故障是在调试软件时才发现的。但通常是先排除系统中明显的硬件故障后才和软件结合起来调试,如此有利于问题的分析和解决,不会造成问题的积累,从而可以节约大量的调试时间。软件编程中,首先完成单元功能模块的调试,然后进行系统调试,整体上采用硬件调试的调试方法。 3.2制作与调试结果经过制作与调试,实现了系统预设功能。实物图如下。 图3.1 实物图 欢迎界面 图3.2 实物图 模板训练界面 图3.3 实物图 语音识别界面 结 论原理样机经过设计方案论证,设计了相应的硬件电路和系统软件,制作了电路原理样机并进行单机调试,结果表明,所设计的电路和软件能完成基本的测试功能。 采用STM32F103VET6单片机构建语音识别系统,通过此系统对语音信号进行采集、前端放大、AD转换、预处理、MFCC特征提取、模板训练、DTW特征匹配的一系列步骤,完成孤立词语音识别的预期目标。 本设计目前也存在一些不足,例如语音信号采集模块的动态范围不足,当说话声音较大或较小时,会出现无法识别的现象,需加上自动增益控制功能。语音识别时,录音控制不方便,最好能够改进为完全通过语音控制。特征模板仅仅用12阶MFCC略显不足,可添加MFCC一阶差分。 参考文献[1] 韩纪庆、张磊、郑铁然。 语音信号处理。 北京:清华大学出版社[M],2004年9月 [2] 董辰辉、彭雪峰。 MATLAB 2008 全程指南。 北京:电子工业出版社[M],2009年3月 [3] 张雪英。 数字语音处理及MATLAB仿真。 北京:电子工业出版社[M],2011年7月 [4] 赵力。 语音信号处理 第2版。 北京:机械工业出版社[M],2011年6月 [5] 陈程。 机载环境下的语音识别技术及实现[J]。电子科技大学硕士学位论文,2008年5月 [6] 蒋子云。 基于ARM嵌入式孤立词语音识别系统研究与实现[J]。 中南大学硕士学位论文, 2009年5月 [7] 白顺先。 汉语孤立字语音识别技术的研究[J]。 西南交通大学硕士学位论文, 2009年6月 [8] 童红。 孤立词语音识别系统的技术研究[J]。 江苏大学硕士学位论文, 2009年6月 [9] 汪冰。 小词汇非特定人的孤立词语音识别系统的研究与设计[J]。 广东工业大学硕士学位论文, 2008年5月 [10] 黄振华。 孤立词识别中的说话人归一化技术[J]。 上海大学硕士学位论文, 2009年1月 开源 /********* main.C **********/ #include “includes.h” #include “VAD.H” #include “MFCC.H” #include “DTW.H” #include “GUI.H” #include “flash.h” #include “delay.h” u16 VcBuf[VcBuf_Len]; atap_tag atap_arg; valid_tag valid_voice[max_vc_con]; v_ftr_tag ftr; typedef struct { u8 str[3]; }comm_tag; comm_tag commstr[]={“0 ”,“1 ”,“2 ”,“3 ”,“4 ”,“5 ”,“6 ”,“7 ”,“8 ”,“9 ”,“上”,“下”,“前”,“后”,“左”,“右”,“大”,“小”}; #define sel_clor BRED #define dis_sel_clor GRED #define spk_clor BRED #define prc_clor GRED #define save_ok 0 #define VAD_fail 1 #define MFCC_fail 2 #define Flash_fail 3 void disp_comm(u8 comm) { GUI_ClrArea(&(Label[comm])); GUI_DispStr(&(Label[comm]),(u8 *)(commstr[comm-G_comm_fst].str)); } void set_comm_backclor(u8 comm, u16 backclor) { Label[comm].BackColor=backclor; disp_comm(comm); } void set_label_backclor(GUI_Area *Label, u16 backclor) { Label-》BackColor=backclor; GUI_ClrArea(Label); } void disp_home(void) { GUI_ClrArea(&Screen); GUI_ClrArea(&(Label[G_wel])); GUI_DispStr(&(Label[G_wel]),“欢迎使用”); GUI_ClrArea(&(Label[G_neme])); GUI_DispStr(&(Label[G_neme]),“孤立词语音识别测试系统”); GUI_ClrArea(&(Label[G_prc])); GUI_DispStr(&(Label[G_prc]),“模板训练”); GUI_ClrArea(&(Label[G_recg])); GUI_DispStr(&(Label[G_recg]),“语音识别”); GUI_ClrArea(&(Label[G_designer])); GUI_DispStr(&(Label[G_designer]),“设计者:宋健”); } void record(void) { delay_ms(atap_len_t); //延时,避免点击屏幕发出的噪声 TIM_Cmd(TIM1, ENABLE); //开启定时器,开始信号采集 GUI_ClrArea(&(Label[G_ctrl])); //显示操作提示 GUI_DispStr(&(Label[G_ctrl]),“录音中”); //开始说话之前,录制一小段背景声音,用以实现背景噪声自适应 delay_ms(atap_len_t); //提示开始说话 set_label_backclor(&(Label[G_spk]), spk_clor); //等待缓冲区数据更新完毕 while(DMA_GetFlagStatus(DMA1_FLAG_TC1)==RESET); //数据采集结束,关闭定时器 TIM_Cmd(TIM1, DISABLE); //清数据传输完成标志,以备下次使用 DMA_ClearFlag(DMA1_FLAG_TC1); //提示开始处理采集到的数据 set_label_backclor(&(Label[G_spk]), prc_clor); } void disp_mdl_prc(void) { u16 i; GUI_ClrArea(&Screen); set_label_backclor(&(Label[G_cap]), BRED); GUI_DispStr(&(Label[G_cap]),“开始训练”); for(i=G_comm_fst;i《=G_comm_lst;i++) { disp_comm(i); } GUI_ClrArea(&(Label[G_return])); GUI_DispStr(&(Label[G_return]),“返回”); } u8 save_mdl(u16 *v_dat, u32 addr) { noise_atap(v_dat,atap_len,&atap_arg); VAD(v_dat, VcBuf_Len, valid_voice, &atap_arg); if(valid_voice[0].end==((void *)0)) { return VAD_fail; } get_mfcc(&(valid_voice[0]),&ftr,&atap_arg); if(ftr.frm_num==0) { return MFCC_fail; } return save_ftr_mdl(&ftr, addr); } void prc(void) { u32 i; u8 prc_start=0; u8 comm=G_comm_fst; u8 prc_count=0; u32 addr; //v_ftr_tag *sav_ftr; disp_mdl_prc(); set_comm_backclor(comm,sel_clor); while(1) { wait_touch(); if(touch_area(&(Label[G_return]))) { Label[G_cap].BackColor=GREEN; Label[comm].BackColor=dis_sel_clor; disp_home(); return; } else if(touch_area(&(Label[G_cap]))) { delay_ms(150); if(prc_start==0) { GUI_ClrArea(&(Label[G_cap])); GUI_DispStr(&(Label[G_cap]),“停止训练”); prc_start=1; GUI_ClrArea(&(Label[G_ctrl])); GUI_DispStr(&(Label[G_ctrl]),“开始”); GUI_ClrArea(&(Label[G_spk])); GUI_ClrArea(&(Label[G_count])); GUI_DispStr(&(Label[G_count]),“已训练0次”); } else { GUI_ClrArea(&(Label[G_cap])); GUI_DispStr(&(Label[G_cap]),“开始训练”); prc_start=0; prc_count=0; GUI_HideArea(&(Label[G_ctrl])); GUI_HideArea(&(Label[G_spk])); GUI_HideArea(&(Label[G_stus])); GUI_HideArea(&(Label[G_count])); } } else if((touch_area(&(Label[G_ctrl])))&&

    时间:2020-07-29 关键词: 语音识别 STM32

首页  上一页  1 2 3 4 5 6 7 8 9 10 下一页 尾页
发布文章

技术子站

更多

项目外包