基于 DSP+FPGA 的排爆机器人控制系统设计与实现

Posted 信迈科技DSP+ARM+FPGA

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于 DSP+FPGA 的排爆机器人控制系统设计与实现相关的知识,希望对你有一定的参考价值。

目前,排爆机器人在全球日趋严峻的恐怖袭击事件中扮演着重要的角色,大大降低 了人员伤亡,因此,对排爆机器人的研究具有重要的社会意义,而市场上排爆机器人的 价格居高不下,不利于大范围地推广使用。本文从实际应用的角度出发,提出了一种基 DSP+FPGA 的排爆机器人控制系统设计方案,完成了排爆机器人控制系统的硬件平 台搭建和软件编写,并通过实验进行验证。 排爆机器人控制系统的硬件平台以 DSP FPGA 为核心,系统采用模块化思想独 立设计了各个子模块,主要分为运动控制模块、电源模块、数据通讯模块和视频采集模 块。运动控制模块采用 FPGA 进行开发,通过 DSP 的外部接口 (XINTF) 来实现 FPGA DSP 之间的数据交互,根据 DSP 传送的数据来产生电机的控制信号,利用 FPGA 的并 行处理能力来实现 8 组直流无刷电机的驱动与控制。电源模块采用锂电池供电,通过多 DC-DC 模块为控制系统各个模块提供所需电源。数据通讯模块采用了无线数传模块, 实现了机器人的远程遥控。视频采集模块是以 Zedboard 开发板和无线路由为核心,通 过搭建一个无线局域网实现视频传输,在 PC 端通过 WIFI 接入无线局域网实现排爆机 器人的视频监控。此外,通过对机械手数学模型的建立,利用机器人逆运动学的理论知 识,设计了基于 DSP ePWM 模块的两种控制模式来控制机械手的运动。 2.1 排爆机器人系统总体设计分析 目前国内外的排爆机器人通常采用上位机和下位机结合控制的方式,通过遥控来完 成和实现操作人员的命令 [9] ,这样做可以使机器人在复杂的环境中有效地运作,通过人 的参与,完成整个系统闭环控制。本文主要是围绕排爆机器人本体设计一个排爆机器人 控制系统,实现排爆机器人的远程遥控、平地移动、翻越障碍、抓取危险物等基本功能。 操作人员通过上位机发出机器人的控制命令,另一方面根据下位机反馈给上位机的视频 和传感器信息,经过人的大脑思考后,对机器人做出下一个动作命令。上位机和下位机 之间通过无线的通讯方式来传递机器人的控制命令和传感器信息。下位机就是机器人的 控制器,负责完成机器人的运动控制,在整个控制系统处于核心的地位,不仅要处理上 位机发送来的命令,还要向上位机反馈传感器信息,以达到精确控制机器人运动的目标。 排爆机器人控制结构图如图 2-1 所示。 2-2 排爆机器人本体结构图 2.3 排爆机器人控制系统整体方案设计 排爆机器人控制系统需要完成对多路传感器信号的采集处理、电源转换、无线通信、 8 路直流无刷电机的调速、机械手控制等基本功能,考虑到以后的升级扩展,这里采用 典型硬件平台 DSP+FPGA 作为主控方案, DSP TI 公司的 C2000 系列的一款浮点型 DSP FPGA Altera 公司 Cyclone III 系列中的一款性价比较高的 FPGA TI 公司的 C2000 系列的 DSP 芯片广泛应用于运动控制领域, FPGA 的灵活性特点可以使得系统的扩展性 得到很大的提升。本课题中上位机发出控制命令 ( 包括运动控制命令和机械手控制命令 ) DSP 将接收的数据进行解析,并与 FPGA 一起完成整个系统的电机控制和机械手控制。 2-3 为本课题的排爆机器人控制系统整体结构图。整个控制系统主要分为上位机监控 部分、运动控制部分、机械手控制、视频采集等四个部分。各个部分在后续的章节中进 行详细讨论

上位机监控部分:上位机监控主要包括机器人控制界面和机器人远程监控两部分。 机器人控制界面主要完成采集显示传感器实时信息、显示机器人当前状态、发出机器人 运动命令、控制机械手位置等功能。操作者根据传感器实时信息和采集到的视频信息可 以掌握当前机器人本体信息和外界信息,从而合理地操作排爆机器人。由于上位机和运 动控制部分之间的通讯数据量不是很大,上位机和运动控制部分的通讯方式采用 RS232 通讯,这样可以降低开发的成本和难度,也能很好地满足实际项目的需要。机器人远程 监控主要是机器人视频采集部分。采用的是 WIFI 接入的方式, PC 机通过 WIFI 接入 Zedborad 开发板和无线路由组建的无线局域网,获取 Zedboard 开发板采集到的视频信 息,这样操作人员就能看到机器人周围的视频信息。 运动控制部分:这部分完成的是机器人运动控制,主要负责接收上位机命令,并将 这些命令解析并转换成相应的电机控制信号。运动控制部分是控制系统的核心,处于十 分重要的地位,这里采用 DSP+FPGA 典型运动控制平台来实现机器人的运动控制, DSP 采用状态机方式接收上位机信息,这样可大大降低机器人运动出现错误的机率,然后对 命令进行解析,并把解析后的数据通过外部接口 XINTF 传递给 FPGA FPGA 主要负责 采集传感器信息和控制 8 组直流无刷电机,并把传感器信息通过 XINTF 外部接口传回 DSP DSP 再把这些传感器信息传回给上位机。 机械手控制部分:这部分主要完成排爆机器人的辅助部分,利用机械手抓取一定质 量的物体,本设计采用由 6 路舵机组成的机械手,利用 DSP ePWM 模块来完成机械 手的控制,机械手的控制主要分为手动模式和自动模式。手动模式中,上位机可以单独 控制某一个关节转动的角度。在自动模式中,上位机控制机械手末端的位置和姿态, DSP 根据机器人逆运动学的理论知识求解出机械手各个关节的关节角,最后 DSP 控制各个 舵机的运动以达到末端期望目标的位姿。 视频采集部分:此部分是搭建一个基于 Zedboard 的无线局域网, Zedboard 是一款 基于 Xilinx 新出的 Zynq-7000 系列的 SOC 的开发板, PC 机通过 WIFI 接入到该无线局 域网, PC 机通过 IP 地址可以访问到 Zedboard 开发板,这样就可以将 Zedboard 采集的 视频传回给 PC 机,这样上位机操作者可以根据排爆机器人周围的信息,发出下一个机 器人运动的命令 [11]

1 评估板简介

  • 基于 TI KeyStone C66x 多核定点/浮点 DSP TMS320C665x + Xilinx Artix-7 FPGA 处理器;
  • TMS320C665x 主频为 1.0G/1.25GHz,单核运算能力高达 40G MACS 和 20G FLOPS,FPGA XC7A100T 逻辑单元 101K 个,DSP Slice 240 个; Ø
  • TMS320C665x 与 FPGA 通过 uPP、EMIF、I2C、PCIe、SRIO 等通讯接口连接,其中 PCIe、 SRIO 每路传输速度最高可达到 5 GBaud; Ø
  • FPGA 采集卡支持双通道 250MSPS*12Bit 高速高精度 ADC,一路 175MSPS*12Bit 高速高精度 DAC,满足多种数据采集需求;
  • 支持千兆网口,可接工业网络摄像机,同时支持 I2C、SPI、UART、McBSP 等常见接口; Ø
  • 支持 CameraLink 输入输出、VGA 输出等拓展模块;
  • 支持裸机和 SYS/Bios 操作系统。

 

 

图1 开发板实物

深圳信迈基于 TI 设计的XM-C665xF-EVM 是一款 DSP+FPGA 高速大数据采集处理架构,适用于高端图像处理、高速大数据传输和音视频等大数据采集处理领域。此设计通过 TMS320C665x 的 uPP、EMIF、I2C、PCIe、SRIO 等通信接口将板卡结合在一起,组成 DSP+FPGA 架构,实现了需求独特、灵活、功能强大的 DSP+FPGA 高速数据采集处理系统。

SOM-XM665xF 引出 CPU 全部资源信号引脚,二次开发极其容易,客户只需要专注上层运用,降低了开发难度和时间成本,让产品快速上市,及时抢占市场先机。不仅提供丰

富的 Demo 程序,还提供 DSP 核间通信开发教程,全面的技术支持,协助客户进行底板

设计和调试以及多核软件开发。

2 典型应用领域

  • 数据采集处理显示系统 Telecom Tower:远端射频单元(RRU)高速数据采集和生成
  • 高速数据采集处理系统
  • 高端图像处理设备
  • 高端音视频数据处理
  • 通信系统

3 软硬件参数

  • 前端由 FPGA 采集两路 AD 数据,AD 数据通过 uPP、EMIF 总线或者 PCIe、SRIO 接口等通信接口传输到 DSP。 Ø
  • AD 数据被 DSP 处理之后,可用于数据对比和分析、网络转发、SATA 硬盘存储等应用。
  • DSP 根据处理结果,将得到的逻辑控制命令送 FPGA,由 FPGA 控制板载 DA 实现逻辑输出,更新速率 175MSPS。

 

图 2 大数据采集原理框图

  1. 高速数据采集前端部分由 FPGA 同步采集两路 AD 模拟输入信号,可实现对 AD 数据进行预滤波处理,AD 采样率最高可达 250MSPS。另外一路 DAC 可输出任意幅值和任意波形的并行 DA 数据,更新速率 175MSPS。
  2. 高速数据传输部分由 EMIF、I2C、PCIe、SRIO 等通信接口构成。大规模吞吐量的 AD和 DA 数据,可通过 SRIO 和 PCIe 接口在 DSP 和 FPGA 之间进行高速稳定传输;DSP 可通过 EMIF 总线对 FPGA 进行逻辑控制和进行中等规模吞吐量的数据交换,同时可通过 I2C对 FPGA 端进行初始化设置和参数配置。

(3)高速数据处理部分由 DSP 核和算法库构成。可实现对 AD 和 DA 数据进行时域、频

域、幅值等信号参数进行实时变换处理(如 FFT 变换、FIR 滤波等)。

(4)视频采集、输出拓展部分由 CameraLink 输入输出模块、VGA 输出模块、千兆网等

部分构成。接口资源丰富,方案选择灵活方便,是高端图像处理系统的理想选择。

3.1 硬件参数

表 1 XM6678-EasyEVM 硬件参数

CPU

单核 TMS320C6655/双核 TMS320C6657,主频 1.0/1.25GHz

ROM

128/256MByte NAND FLASH

RAM

512M/1G Byte DDR3

EEPROM

1Mbit

FLASH

32/64Mbit SPI NOR FLASH

LED

1x 供电指示灯

1x 可编程指示灯

传感器

1x TMP102,核心板温度传感器,I2C 接口

连接器

2x 50pin 公头 B2B,2x 50pin 母头 B2B,间距 0.8mm,合高 5.0mm,共 200pin

1x 80pin 高速 B2B 连接器,间距 0.5mm,合高 5.0mm,信号速率可达 10GBaud

拓展 IO

2x 25pin IDC3 简易牛角座,间距 2.54mm,含 EMIF16 拓展信号

2x 25pin IDC3 简易牛角座,间距 2.54mm,含 SPI、I2C、TIMER、GPIO 等拓展信号

2x 25pin IDC3 简易牛角座,间距 2.54mm,含 TSIP 拓展信号

1x SRIO 2.1 TX,1x SRIO 2.1 RX,4 通道,每通道最高通信速率 5GBaud

1x PCIe 4x(Gen2),2 通道,每通道最高通信速率 5GBaud

1x HyperLink,最高通信速率 40GBaud,KeyStone 处理器间互连的理想接口

仿真器接口

1x 14pin TI Rev B JTAG 接口,间距 2.54mm

按键

2x 复位按键

1x 非屏蔽中断按键

1x 用户可编程按键

启动方式

1x 5bit 启动方式,选择拨码开关

网络

2x Ethernet,10/100/1000M 自适应

串口

1x UART0,USB 转串口,提供 4 针 TTL 电平测试端口

1x UART1,DB9 接口,提供 6 针 TTL 电平测试端口

风扇接口

1x FAN,12V 供电,间距 2.54mm

电源开关

 1x 电源拨码开关

电源接口

1x 12V 3A 直流输入 DC417 电源接口,外径 4.4mm,内径 1.65mm

备注:深圳信迈 SOM-XM6655、SOM-XM6657 核心板在硬件上 pin to pin 兼容。 

表 2 XM-A7HSAD 硬件参数

CPU

Xilinx Artix-7 XC7A100T FPGA

RAM

256Mbit NOR FLASH

ROM

2x 128M/256MByte DDR3

EEPROM

2KBit

网络

1x Ethernet,10/100/1000M 自适应

LED

2x 供电指示灯

3x 可编程指示灯

按键

2x 复位按键

2x 用户可编程按键

ADC

双通道,1.8Vp-p,12bit,最高 250MHz 采样率,LVDS 信号输出

DAC

175MHz,12bit,最大输出电流 5mA

XADC

双通道,12bit,1MHz,1.25Vp-p

拓展 IO

1x SRIO TX,1x SRIO RX,4 通道,单通道最高速率 5GBaud,HDMI 座

1x PCIe 4x(Gen2),2 通道,单通道最高通信速率 5GBaud

2x 48pin 欧式连接器,GPIO 拓展

1x I2C,HDMI 座

仿真器接口

启动方式

1x 14pin JTAG 接口,间距 2.00mm

1x 2bit 启动方式选择拨码开关

串口

1x UART,Micro USB 接口,提供 4 针 TTL 电平测试端口

电源开关

1x 电源拨码开关

电源接口

1x 12V 2A 直流输入 DC005 电源接口,外径 5.5mm,内径 2.1mm

3.2 软件参数

表3

DSP 端软件支持

裸机、SYS/BIOS 操作系统

CCS 版本号

CCS5.5

软件开发套件提供

MCSDK

Vivado 版本号

2015.2

4 开发资料

(1)提供核心板引脚定义、可编辑底板原理图、可编辑底板 PCB、芯片 Datasheet,缩短

硬件设计周期;

(2)提供丰富的 Demo 程序,包含 DSP 多核通信教程,完美解决多核开发瓶颈;

  1. 提供 DSP 与 FPGA 通过 PCIe、SRIO、I2C 等相关通讯例程;
  2. 提供完整的平台开发包、入门教程,节省软件整理时间,让应用开发更简单;

开发案例主要包括: Ø

  • 裸机开发例程
  • SYS/BIOS 开发例程
  • 多核开发例程
  • FPGA 开发例程

5 电气特性

核心板工作环境

环境参数

最小值

典型值

最大值

核心板工作温度

-40°C

/

85°C

核心板工作电压

/

5.0V

/

功耗测试

类别

电压典型值

电流典型值

功耗典型值

核心板

9.0v

390mA

3.5W

备注:功耗测试基于深圳信迈XM-C665xF-EVM 开发板进行。

6机械尺寸

表 4

核心板

评估底板

PCB 尺寸

80mm*58mm

200mm*106.5mm

固定安装孔数量

4

4

图 6 核心板机械尺寸图

图 7 评估板机械尺寸图

7技术服务

  1. 协助底板设计和测试,减少硬件设计失误;
  2. 协助解决按照用户手册操作出现的异常问题;
  3. 协助产品故障判定;
  4. 协助正确编译与运行所提供的源代码;
  5. 协助进行产品二次开发;
  6. 提供长期的售后服务。

8增值服务

  • 主板定制设计
  • 核心板定制设计
  • 嵌入式软件开发
  • 项目合作开发
  • 技术培训

以上是关于基于 DSP+FPGA 的排爆机器人控制系统设计与实现的主要内容,如果未能解决你的问题,请参考以下文章

基于C6657+国产FPGA的DSP+FPGA主控板设计方案在核电机器人的应用

基于DSP+FPGA的机载雷达伺服控制系统的硬件设计与开发

基于DSP+FPGA+AD9238的冲击波超压测试系统设计与实现

基于C6748 DSP+FPGA MIMO雷达验证系统模块化设计与实现

基于国产银河飞腾多核 DSP +FPGA的图像识别硬件设计与算法实现

基于国产银河飞腾多核 DSP +FPGA的图像识别硬件设计与算法实现