基于ARM7与FPGA组成的可编程控制器
1 引言
可编程控制器(Programmable Logic Controller)具有抗干扰强、可靠性高、编程简单的特点,被广泛应用于工业控制领域。但是传统小型可编程控制器难以将智能控制算法嵌入到控制系统中。本文以嵌入式微处理器S3C44B0X+FPGA为核心设计通用小型的可编程控制器,论述了PLC主机各功能模块通过CAN总线与S3C44B0X连接的接口电路和主机程序设计及执行过程。通过FPGA配置I/O口和嵌入先进的智能控制算法,如PID、模糊控制、神经网络算法等,这些控制算法作为控制模块嵌入PLC的梯形图程序中作为功能模块调用,各个模块之间通过CAN总线连接,用户根据被控对象现场的需求可以选择多个人机界面装置,提供监控控制系统运行状态的便利。
2 PLC系统的总体设计
系统采用32位嵌入式微处理器S3C44B0X作为可编程控制器的CPU,以此为核心扩展系统需要的存储器;通过FPGA扩展PLC所需要的I/O口,完成相应输入输出模块的设计;系统通过微处理器的SPI接口扩展CAN总线,用于连接上位机、主控机、编程器、以及液晶显示与触摸屏等功能模块进行通信,用户根据被控对象现场需求可以选择多个人机界面装置,这些装置作为扩展模块挂接在CAN总线上;实现智能控制算法的FPGA与主机微处理器S3C44B0X的I/O口连接。用户使用手持编程器编写指令表程序后,通过CAN总线传输到控制主机的存储器中,以便CPU执行这些程序;系统运行的状态参数通过CAN总线传输到监控系统中,在监控系统中显示系统运行的状态;FPGA实现的智能控制算法作为控制模块嵌入PLC梯形图程序中作为功能模块调用。系统的结构框图如图1所示:
3 PLC主控器的设计
3.1系统存储器的扩展
3.1.1 存储器Nor Flash 的扩展
可编程控制器需要掉电保存系统启动的引导程序、梯形图或指令表程序,以及解释梯形图或指令表的解释程序,而S3C44B0X微处理器内部没有存储器。闪速存储器(Flash Memory)具有非易失性,并且可轻易擦写,在嵌入式系统中得到广泛的应用。所以本课题采用了2MB的SST39VF1601存储器来存储上面提到的引导程序、解释程序及用户程序。该存储器采用标准的总线接口与处理器交互,对它的读取不需要任何特殊的代码。由于系统启动的引导程序储存在Flash ROM,要把其映射在处理器的Bank0地址空间,这样系统上电复位后,处理器就自动从0x00000000地址处开始取得指令运行。Flash与S3C44B0X的接口电路图如图2所示。处理器ADDR20~1对应着Flash ROM的A19~0,偏移了1位,这是由于S3C44B0X是按照字节编址的,而Flash ROM是以16位为一个存储单元。
相关文章
- 2022-12-26基于SPCE061A的汽车倒车防撞报警器设计与研究
- 2022-06-02MIC-2031-2FCAN转以太网虚拟总线网关在工业控制中的解决方案
- 2023-08-18一种现场γ射线能谱测量仪的研制
- 2024-03-15风冷节能装置的应用探讨
- 2024-02-08油类的自动计量
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。