微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > fpga设计与应用:智能小车设计方案

fpga设计与应用:智能小车设计方案

时间:04-17 来源:网络整理 点击:

   前言:智能监控机器人是近年来机器人应用工程中一项前沿性的题目,智能化探测小车是智能行走机器人的一种。智能监控机器小车就是针对上述情况,在参考 了目前大多数智能机器人的基础上,以降低成本为原则设计的。小车具备温湿度和环境监测、无线通信、躲避障碍物以及无线遥控等功能。此智能监控机器小车与目 前已有的同类设计相比,有性价比高、操作方便、可靠性好、功耗小等优点。

    系统结构及硬件设计

  整个系统由发送端(智能小车部分)和接收端(控制台:控制和显示部分)组成,如图1所示。系统由传感器系统、动力及转向系统、CCD图像传感器模块、 LCD显示、温度和湿度测量电路和供电系统等组成,整个系统的控制核心以2片Altera公司的EP2C20F484为核心,在Altera公司的 QuartusⅡ和SoPC Builder开发环境中完成。根据系统硬件结构添加所需要的外围模块并生成NiosⅡCPU。

  

  1.1 供电系统

  小车安装了两块充电电池,分别为FPGA开发板(FPGA控制电路)和小车运动提供能量,电池置于车身底部。

  1.2 传感器系统

  系统采用了6个红外对射传感器,通过FPGA配置的NiosⅡCPU来检测传感器信号实现小车躲避障碍物的功能。漫反射型红外对射传感器也称光电开关, 是一种集发射器和接收器于一体的传感器,多用于检测障碍物。原理是由光电开关辐射出来的调制红外光束被检测物体反射回来,红外线经同步选通接收,由电子开 关线路驱动回路,从而来检测物体的有或无。当被检测物体的表面光亮或其反光率极高时,漫反射式的光电开关是首选的检测模式。这种电路模块体积小,信号容易 转化为标准电平。

  1.3 动力及转向系统

  本小车有左右轮两个电机及龟机驱动。驱 动电路采用了CT Microelecttonics公司的大功率直流电机驱动芯片L298,最高支持50 V电压,最大电流为5 A,满足大功率电动机的要求,外围电路简单,同时,由于该芯片为双路结构,分别控制左右电动机,增加了电路的可靠性,减少了复杂性。电机控制采用PWM脉 冲宽度调制方式来控制汽车的前进速度。由NiosⅡCPU写入控制字,可得到不同占空比的PWM驱动信号,此PWM信号送入电机驱动芯片的控制端来调节速 度。

  1.4 小车自动避障系统

  小车自动避障系统采用Verilog HDL语言编写驱动电路。该模块(见图2中的MOTOR)和一个数据选择器(见图2中的select_2)相连来实现自动避障与人工遥控之间的切换。当小 车上NiosⅡCPU的SEL管脚输出低电平时,数据选择器将把该模块的输出作为电机的控制指令。这样设计的好处在于设计具有响应迅速,不需要NiosⅡ CPU参与,提高了CPU处理湿度、温度数据并控制无线模块收发数据的效率。该逻辑电路的工作原理是根据红外传感器发回来的数据,经过逻辑判断来控制电机 的工作状态。

  

  1.5 小车的人工控制

  小车的人工控制和自动避障之间的转换由一个数据选择器控制,当小车上NiosⅡCPU的SEL管脚输出高电平时,数据选择器将把无线模块所发送过来的指令作为电机的控制指令,实现了对小车的无线控制。

  1.6 温度和湿度测量

  在温度测量系统中,采用抗干扰能力强的新型数字温度传感器DS18B20,该系统设计中将DS18B20的1,3引脚分别接于FPGA板的GND 和+3.3 V管脚,2引脚接FPGA的I/O脚,传输控制及数据信号。DS18B20最高可用12位表示温度值,最高5位为符号位。

  采用HS1101湿度传感器,具有响应速度快,工作温区宽(-40~+100℃),测量范围大(0%~100%RH),可靠性高,稳定性好,功耗低,外围电路简单等优点。

  工作原理为:用HS1101传感器与TLC555构成多谐振荡器,HS1101传感器内部电容会随湿度的变化而变化,从而使输出频率发生变化。编写VHDL程序在FPGA设计一个频率计可精确的测出频率值,通过输出频率与湿度的关系便可得到湿度值。

  1.7 无线收发系统

  系统采用PTR4000无线嵌入式模块,工作频率为2.4 GHz,最高工作速率可达1 Mb/s,高效GMSK调制,且有CRC检错功能。具有低功耗,抗干扰能力强,体积小等优点。主要有三种工作模式,分别为:配置模式、 ShockBurst发送模式和ShockBurst接收模式。

  软件设计和调试

采用NiosⅡ进行C语言编程。NiosⅡ集成开发环境(IDE)是NlosⅡ系列嵌入式处理器的基本软件开发工具。所有软件开发任务都可以在Nios ⅡIDE下完成,包括编辑、编译和调试程序。NiosⅡIDE是基于开放式的、可扩展Eclipse IDE project工程以及EclipseC/C++开发工具(CDT)工程,NiosⅡIDE为GCC编译器提供了一个图形化用户界面,

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top