摘要:本设计采用XILINX Spartan-3E系列FPGA芯片,在基于FPGA(现场可编程门阵列)器件的设计中,状态机是目前应用最普遍的设计方法之一。
常用的状态机分为Moore型和Mealy型,鉴于智能小车的控制状态需要对传感器采集到的参数做出实时响应,所以需要与时钟相同步,因此采用了Moore型状态机的设计方法,如图1所示。
超市智能小车的应用环境及需求不同,对小车的控制也对应着多种不同的控制模式,这里以小车的三大功能进行多模式控制转换的说明,分别是:手动驾驶模式、红外跟踪模式以及摄像头识别跟踪模式。
不同的操作模式用到了不同的信号作为电机的驱动单元,为了使每个控制模式都能独立行使相应的功能,又不致使信号驱动发生混乱,小车需要对以上三种不同的控制模式做出切换,以确保小车的控制单元可以接收到正确的信号。另外,除了以上三个不同的控制状态,还应该定义一个空闲状态,当小车空闲时或紧急停止时可以快速切换到空闲状态。这些状态之间的切换关系也应该是无障碍的自由切换,状态转换图如图2所示。
为了实现状态转换图所示的控制效果,需要定义一些状态转移的输入信号,来对应各状态连线上的数字“0”或“1”所对应的转移条件,这里面的输入信号是通过一些特定的指令来实现的,指令输出与状态之间的对应关系如表1所示。