0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

深度剖析关于SoPC的智能巡迹小车的设计

电子工程师 来源:电子技术应用 作者:纪金水,刘彩虹 2021-04-28 10:16 次阅读

摘要: 本设计以SoPC套件E-Play-1c12上配置的Cyclone系列FPGA芯片EP1C12Q240C8为控制单元,加以直流电机光电传感器、超声波传感器和电源电路以及其他电路构成。控制小车在寻轨区能够沿黑线行驶,并能在相应的区域加/减速,进入寻光区后开始在光源的引导下到达终止线停止。同时,在小车行驶过程中车首点阵式液晶滚动显示字幕,实时显示小车行驶的时间及路程。

SoPC(System on a Programmable Chip)是一种特殊的嵌入式系统。首先它是片上系统,即由单个芯片完成整个系统的主要逻辑功能;其次,它是可编程系统,具有灵活的设计方式,可裁剪、可扩充、可升级,并具备软硬件在系统可编程的功能[1]。SoPC技术是将尽可能大而完整的电子系统(包括嵌入式处理器系统、接口系统、硬件协处理器或加速系统、数字通信系统、存储电路以及普通数字系统等)在单一FPGA中嵌入实现。因此,可以使得整个设计在规模、可靠性、体积、功耗、功能、上市周期、开发成本、产品维护及其硬件升级等多方面实现最优化[2]。从未来电子系统设计技术走势上看,SoPC技术更具发展性和前瞻性,被称为“半导体产业的未来”[3-4]。

1 系统总体设计方案

系统设计要求小车由起始端出发沿黑线行驶,在测到第一条黑线后有明显的加速,测到第二条黑线后有明显的减速,测到第三条黑线后开始寻光,测到第四条黑线后停止。在行驶过程中,车首液晶显示屏实时显示小车运行的时间和路程。下面给出两种方案:

(1)方案1:使用8051系列的单片机芯片。8051系列的单片机芯片使用多年,在市面上应用广泛。各种电路也比较成熟,但其速度相对较慢,指令都是串行执行,在增加液晶显示等模块后使得CPU检测电路的扫描变慢。

(2)方案2:使用E-Play-SoPC开发套件上的Cyclone系列FPGA芯片EP1C12Q240C8。FPGA运算速度很快,且其进程以并列的形式执行,即使增加更多的功能模块(在FPGA芯片的资源范围内)也丝毫不影响对检测信号的响应速度[5]。

比较两种方案,为使小车平稳运行且功能更加智能化,选择了方案2。

系统整体框图如图1所示,主要由控制核心FPGA、寻轨电路、寻光电路、测障电路、液晶显示模块、电机驱动电路、LED指示灯指示模块、语音提示模块和点阵显示模块组成[6]。

o4YBAGCIxOyARFxoAAGBTSwiZhg562.png

2 硬件设计

2.1 寻轨电路

寻轨电路采用两对红外线传感器,当传感器未检测到黑线时,红外线接收管相当于短路,比较器负向端的电位在4 V左右;当检测到黑线时,红外线接收管相当于开路,比较器负向端的电位在2 V左右。因此,将比较器正向端电位器的比较电位调到3 V即可实现对黑线的检测。未检测到黑线时电路输出低电平,检测到黑线时输出高电平。其实现电路如图2所示。

5009725934327.gif

2.3 电机驱动电路

小车采用双轮驱动,使用驱动芯片L293D,其工作电压为9 V。电机驱动电路如图4所示,引脚1和引脚9分别是电机输出的控制引脚,当引脚1或引脚9为低电平时,无论引脚2、引脚7、引脚10、引脚15的输入为何值,引脚3、引脚6、引脚11、引脚14的输出都为低电平;当引脚1或引脚9为高电平时,引脚3、引脚6、引脚11、引脚14输出的电平与引脚2、引脚7、引脚10、引脚15输入电平的高低相应。

5010218909599.gif

3 软件设计

本文设计的小车中,基本运行程序可分为黑线计数模块、寻轨模块、寻光模块以及计时模块、路程测量模块、液晶显示模块、LED指示灯指示模块等辅助功能模块。其行驶程序流程图如图6所示。

pIYBAGCIxSSAQdbTAAC_-pE8oW0871.png

(1)寻轨模块:在黑线数为0、1、2时执行此模块。当车底左端的传感器检测到黑线时,小车的左轮停止转动,右轮按原速转动;若右端的传感器检测到黑线,则反之。当黑线数为0、2时小车为减速状态,通过对电机驱动芯片L293D的控制引脚输出占空比为25%的方波信号实现。当黑线数为1时,小车运行在加速状态,此时直接电机驱动芯片L293D的控制引脚输出高电平。

(2)寻光模块:当黑线数为3时运行本模块,当光强检测电路的检测信号为高电平时认为左端的光照较强,小车左拐,反之右拐。

(3)路程测量模块:在小车的车轮上有黑、白相间且间距相同的扇形花纹,当车轮转动时车轮内侧的光电传感器产生高低变化的电信号,经过比较器比较产生脉冲信号,控制芯片通过对脉冲计数并与标定的数值相乘得出小车行驶的路程。

(4)LED指示灯指示模块,车首两端分别有3个颜色分别为红、黄、绿的LED指示灯指示小车的速度,绿灯亮时小车行驶在高速区,黄灯亮时小车行驶在低速区,红灯亮时小车到达终点停止。车前部两侧各有一个LED指示灯指示小车拐动方向,左拐时左灯亮,右拐时右灯亮。车尾有4个LED指示灯指示小车已测黑线的数量,每测一条黑线增加一个LED指示灯亮。

4 抗干扰措施

需要对黑线检测和障碍物检测的信号采取抗干扰措施。具体如下:当检测到黑线或障碍物时,延时一段时间后再次检测,若还是黑线或障碍物,则确定其为黑线或障碍物,否则认为其为干扰不予理睬[7]。具体实现程序如下:

PROCESS(a,clk)

VARIABLE m1,m2 : INTEGER RANGE 0 TO 8191;

BEGIN

IF clk=′1′ AND clk‘EVENT THEN

IF a=″00″ THEN

m2:=0;

IF m1=8190 THEN

m1:=0;

IF a=″00″ THEN

r1《=′1′;

END IF;

ELSE

m1:=m1+1;

END IF;

ELSE

m1:=0;

IF m2=8190 THEN

m2:=0;

r1《=′0′;

ELSE

m2:=m2+1;

END IF;

END IF;

END IF;

END PROCESS;

5 仿真测试

仿真测试时序如图7所示。其中,A所指示的位置为车底的两个光电传感器同时检测到黑线,经过去抖处理后黑线数目加1;B所指示的区域为高速区,小车高速行驶在此区域,当车底一侧的光电传感器检测到黑线时,小车相应地调整轨迹使其沿黑线行驶;C所指示的区域为减速区,小车在此区域中行驶的速度较慢,约为高速区的1/4。

此区域中存在很多弯道,当车底一侧的光电传感器检测到黑线时,小车也相应地调整轨迹沿黑线行驶;D所指示的区域为寻光区,小车进入此区域后立刻开始寻光并朝光线较强的方向行驶,小车在此区域中的速度与低速区相同;E所指示的位置为终点,当小车检测到终点线后停止运行。由仿真图可知,小车在理想情况下可顺利地通过高速寻轨区、低速寻轨区、寻光区,并在检测到终点线后停止运行。

5010739943480.gif

FPGA的运算速度非常快,保证了小车的平稳运行,且其并行执行过程让点阵式液晶显示更加方便。FPGA在程序并行控制方面充分显示了其优越性,并且运行准确。今后将会对本设计进行扩展以及更进一步的开发。

参考文献

[1] 何伟,秦江云,张玲,等。基于SoPC的多用途无线监控报 警系统[J]。电子技术应用,2011,37(2):33-35.

[2] 周渝斌。基于FPGA+DSP的智能车全景视觉系统[J]。电子技术应用,2011,37(3):38-41.

[3] POUSSIER S,RABAH H,WEBER S.SoPC-based embedded smart strain gage sensor[C].12th International Conference, FPL 2002 Montpellier,France,2002:1131-1134.

[4] Cao Liting,Jiang Wei,Zhang Zhaoli.Automatic meter reading system based on wireless mesh networks and SoPC technology[C].Intelligent Networks and Intelligent Systems,ICINIS’09,Second International Conference,2009:142-145.

[5] 雷伏容.VHDL电路设计[M].北京:清华大学出版社,2007.

[6] 徐惠民,安德宁.数字逻辑设计与VHDL语言描述[M].北京:机械工业出版社,2010.

[7] 薛小刚,葛毅敏.Xilinx ISE9.x FPGA/CPLD设计指南[M]。北京:人民邮电出版社,2007.

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19130

    浏览量

    228899
  • 电路
    +关注

    关注

    172

    文章

    5829

    浏览量

    171821
  • 单片机
    +关注

    关注

    6030

    文章

    44502

    浏览量

    632295
  • 嵌入式系统
    +关注

    关注

    41

    文章

    3554

    浏览量

    129149
收藏 人收藏

    评论

    相关推荐

    基于龙芯处理器的储NAS落地某公安局

    近日,基于龙芯处理器的储NAS凭借其操作流畅、性能强劲、稳定高效等特性,落地江苏省某公安局,完成国产化替代。储NAS经过使用方的严格检测,可满足公安系统电子化、智能化、可视化的现代化管理需求,以优质服务助力高质量发展再上新台
    的头像 发表于 10-16 11:00 330次阅读

    自适应蓝牙控制智能小车

    、火灾现场、甚至是战场。这时如果使用智能机器人进行环境探测或者现场勘探,付出的代价成本会小很多。如今出现了无人机,无人小车,无人舰艇等等。这些设备的诞生都是为了解决特殊领域的需求。 本系统是一款硬件上
    发表于 10-07 23:08

    19.3-星曈科技 openmv Hopenmv发送五个uchar Openmv+STM32F103C8T6视觉线小车 STM32循迹小车系列教程

    19.3-【星曈科技】openmv Hopenmv发送五个uchar Openmv+STM32F103C8T6视觉线小车 STM32循迹小车系列教程 使用OpenMV循迹 openMV寻迹与
    的头像 发表于 08-20 11:32 768次阅读
    19.3-星曈科技 openmv Hopenmv发送五个uchar Openmv+STM32F103C8T6视觉<b class='flag-5'>巡</b>线<b class='flag-5'>小车</b> STM32循迹<b class='flag-5'>小车</b>系列教程

    第19.2章-星曈科技 openmv H7 plus openmv视觉循迹功能-完成视觉识别指定区域 OpenMV视觉模块循迹 STM32F103C8T6视觉线

    第19.2章-【星曈科技】openmv H7 plus openmv视觉循迹功能-完成视觉识别指定区域 OpenMV视觉模块循迹_线功能 STM32F103C8T6视觉线小车
    的头像 发表于 08-20 11:28 423次阅读

    19.4-STM32接收数据-状态显示在屏幕 openMV寻迹与小车控制 Openmv+STM32F103C8T6视觉线小车

    19.4-STM32接收数据-状态显示在屏幕 openMV寻迹与小车控制 Openmv+STM32F103C8T6视觉线小车
    的头像 发表于 08-20 11:12 752次阅读
    19.4-STM32接收数据-状态显示在屏幕 openMV寻迹与<b class='flag-5'>小车</b>控制 Openmv+STM32F103C8T6视觉<b class='flag-5'>巡</b>线<b class='flag-5'>小车</b>

    20.3-使用两个通道进行电磁循迹 智能车竞赛 电磁杆原理图 电磁循迹小车 STM32电磁小车 电磁循迹算法

    20.3-使用两个通道进行电磁循迹 智能车竞赛 电磁杆原理图 电磁循迹小车 智能车电磁组 STM32电磁小车 电磁循迹小车 电磁循迹算法
    的头像 发表于 08-20 10:56 631次阅读
    20.3-使用两个通道进行电磁循迹 <b class='flag-5'>智能</b>车竞赛 电磁杆原理图 电磁循迹<b class='flag-5'>小车</b> STM32电磁<b class='flag-5'>小车</b> 电磁循迹算法

    MEMS 可编程振荡器的卓越代表:SiT9121 系列(1 to 220 MHZ)深度剖析

    MEMS 可编程振荡器的卓越代表:SiT9121 系列(1 to 220 MHZ)深度剖析
    的头像 发表于 08-13 10:56 395次阅读
    MEMS 可编程振荡器的卓越代表:SiT9121 系列(1 to 220 MHZ)<b class='flag-5'>深度</b><b class='flag-5'>剖析</b>

    探索巅峰性能 | 迅为RK3588开发板深度剖析

    探索巅峰性能 | 迅为RK3588开发板深度剖析
    的头像 发表于 08-12 14:07 731次阅读
    探索巅峰性能 | 迅为RK3588开发板<b class='flag-5'>深度</b><b class='flag-5'>剖析</b>

    表面贴装低相位噪音晶体振荡器 DSO531SHH 深度剖析

    表面贴装低相位噪音晶体振荡器 DSO531SHH 深度剖析
    的头像 发表于 07-26 14:12 326次阅读
    表面贴装低相位噪音晶体振荡器 DSO531SHH <b class='flag-5'>深度</b><b class='flag-5'>剖析</b>

    线机器人电路图 线机器人的工作原理和应用领域

    线机器人,作为一种先进的智能巡检设备,近年来在多个领域得到了广泛应用。它以移动机器人为载体,搭载多种检测仪器,通过机器视觉、电磁场、GPS、GIS等多场信息融合技术,实现自主移动、自主巡检与数据
    的头像 发表于 07-04 17:02 1138次阅读
    <b class='flag-5'>巡</b>线机器人电路图 <b class='flag-5'>巡</b>线机器人的工作原理和应用领域

    基于STM32的智能循迹小车

    初学者的智能小车
    的头像 发表于 05-08 14:43 3158次阅读
    基于STM32的<b class='flag-5'>智能</b>循迹<b class='flag-5'>小车</b>

    如何设计一款四轮智能小车

    如何设计一款四轮智能小车 此部分共分为五个小节,通过这个 Part 的学习,我们将了解机器人的概念和组成,对机器人的整体设计有一个明确的思路,然后通过机械结构、驱动系统、传感系统、控制系统四大
    的头像 发表于 03-26 10:58 687次阅读
    如何设计一款四轮<b class='flag-5'>智能</b><b class='flag-5'>小车</b>

    基于51单片机的智能小车驱动MAX7219控制点阵屏显示小车运动状态?

    智能小车点阵屏显示 个人是小白,想求各位大佬帮忙!!!用51单片机控制小车运动,并驱动MAX7219控制点阵屏显示小车运动状态,就是当小车
    发表于 02-05 00:50

    首次提出R2X 普渡科技携手云科技共塑行业新生态

    1月24日,全球商用服务机器人领导者普渡科技(以下简称普渡科技)与北京云科技有限公司(以下简称云科技)达成战略合作。
    的头像 发表于 01-24 13:56 583次阅读

    深度剖析 IGBT 栅极驱动注意事项

    深度剖析 IGBT 栅极驱动注意事项
    的头像 发表于 11-24 14:48 661次阅读
    <b class='flag-5'>深度</b><b class='flag-5'>剖析</b> IGBT 栅极驱动注意事项