APP下载

基于STM32的工业机器人语音控制系统

2019-10-30王立钢耿金良

科技创新与应用 2019年27期
关键词:工业机器人

王立钢 耿金良

摘  要:文章设计了一款基于STM32平台的语音控制系统,该系统除具备一些基本的IO控制功能外,还可以方便集成语音交互控制等各类智能化功能,将该系统应用于工业机器人自动化生产系统中,可以提高工业机器人的智能化,满足一些特殊的应用场景。

关键词:STM32;语音控制;工业机器人

中图分类号:TP242         文献标志码:A         文章编号:2095-2945(2019)27-0021-02

Abstract: In this paper, a voice control system based on STM32 platform is designed. In addition to some basic IO control functions, the system can also easily integrate all kinds of intelligent functions such as voice interactive control. When the system is applied to the automatic production system of industrial robot, the intelligence of industrial robot can be improved and some special application scenarios can be satisfied.

Keywords: STM32; speech control; industrial robot

1 概述

随着德国工业4.0与中国制造2025 计划的提出,传统制造业的产业改造升级需求变得日益迫切。工业机器人作为智能制造的重要部分,目前已经深入应用于很多传统的制造业[1]。工业机器人作为自动化生产系统中的一部分,经常将其控制器与可编程控制器(PLC)配合,构成一个完整的自动化生产线的控制系统。

本论文尝试将电子领域常用的嵌入式系统技术替代传统的工业用PLC,使用STM32平台开发控制系统。该平台采用模块化的设计方式,除具备一些基本I/O功能、触摸屏功能外,还可以方便的增加各种智能化功能,如语音交互等。从而实现通过语音交互控制工业机器人,提高工业机器人的智能化,满足一些特殊的应用场景。

2 系统硬件设计

2.1 系统整体硬件设计

系统硬件设计的整体框图如图1所示,STM32控制系统的核心处理器采用STM32平台M3系列芯片,通过连接相应的外围模块,包括各类开关、传感器,触摸屏,继电器模块,语音识别和语音合成模块构成整个控制系统。STM32控制系统与工业机器人之间通过RS485总线进行数据传输,以此来控制工业机器人做相应的动作。

2.2 系统重要模块硬件设计

本系统的核心控制器采用STM32F103xC[2]处理器,该处理器使用高性能的ARM  CortexTM-M3 32位的RISC内核,工作频率为72MHz,内置高速存储器(高达512K字节的闪存和64K字节的SRAM),丰富的增强I/O端口。包含3个12位的ADC、4个通用16位定时器和2个PWM定时器,还包含标准和先进的通信接口:多达2个I2C接口、3个SPI接口、2个I2S接口、1个SDIO接口、5个USART接口、一个USB接口和一个CAN接口。

系统中的语音交互模块使用的芯片为LD3320[3]语音芯片,LD3320基于非特定人语音识别技术,不需要用户进行录音训练,同时芯片集成了高精度的A/D和D/A接口,不再需要外接辅助的Flash和RAM,使用起来非常方便。该语音交互模块与STM32控制器之间的通信方式可以采用并行口通信或者SPI通信的方式,本系统中采用了并行通信的方式控制该语音交互模块,该模块与STM32控制器的接口电路原理图如图2所示。

3 系统软件设计

本系统软件设计分为STM32控制系统程序和工业机器人程序两部分,STM32控制系统程序采用C语言以及KEIL开发软件进行开发,工业机器人程序使用工业机器人专用编程语言进行开发,STM32控制系统与工业机器人之间的通信通过串口通信的方式实现。

3.1 STM32控制系统软件设计

STM32控制系统上电首先进行初始化工作,将系统控制的各个模块进行初始化,包括语音交互模块、触摸屏模块以及串口通信的软件初始化。初始化结束后必须按下启动按钮系统才可正常进行工作,正常工作情况下,如有语音信号输入,语音交互模块进行关键词识别,系统便会根据不同的关键词对应控制工业机器人实现不同的动作,LD3320语音芯片最大支持50种关键词识别,可以定义50项不同工作,本文只实验性的测试了两种不同的动作控制,后期可以根据实际项目需要继续添加。系统主程序流程图如图3所示。

3.2 工业机器人软件设计

本文采用的工业机器人为ABB六轴工业机器人,型号为IRB120,ABB工业机器人使用RAPID语言进行编程,系统启动后首先进行初始化,主要为串口通信的软件初始化,初始化结束后,机器人等待STM32发送的串口数据,若收到动作1数据,则机器人相应执行动作1,不用的数据可以控制机器人执行相应不同的动作。具体程序流程图如图4所示。

4 结束语

本文设计应用于工业机器人自动化生产线的STM32控制系统,从功能上可以替代传统的自动化系统中的可编程控制器(PLC),同时加入语音交互控制的功能,满足一些特殊的工业机器人应用场景,由于嵌入式系统的可扩展性非常强,后期还可以增加更多智能化的功能,如自动化流水线数据上传云端、电脑端、手机端远程控制[4]等,满足各类智能化制造场景的需要。

参考文献:

[1]王田苗,陶永.我国工业机器人技术现状与产业化发展战略[J].机械工程学报,2014,5(9):1-13.

[2]STM32F103Xc数据手册[EB/OL].https://www.st.com/resource/en/datasheet/cd00191185.pdf.

[3]LD3320數据手册[EB/OL]. https://wenku.baidu.com/view/0b800d

5bbe23482fb4da4c5f.html.

[4]李涛,马殷元.基于STM32的GPRS远程监测终端设计[J].电子世界,2012,6:126-127.

猜你喜欢

工业机器人
浅谈工业机器人的安全生产
基于力传感器的工业机器人力控试验系统的研制
基于虚拟样机的工业机器人末端液压夹持器的设计
工业机器人模拟仿真技术在职业教育中的应用浅析
工业机器人现场编程工学结合课程开发
基于SolidWorks的工业机器人离线仿真系统分析