PLC构架设计
最近在预言一个PLC开发项目,使用MCU和FPGA结合做一款中端产品。FPGA主要负责PLC基本逻辑运算功能块运行,单片机负责通信等复杂指令,可以有效提高PLC功能块运行速度,技术难度比较大。现公司开发的PLC都属低端产品,价格便宜,但功能块跑起来特别慢,单片机的解释执行能力还是有限,目前项目还没有开始,想和大家讨论一下关于MCU和FPGA同步以及通信的问题。
通信总线接口上初步拟定使用MCU并口,FPGA对外扩的RAM和FLASH有第一使用权限,MCU有第二使用权限,当MCU访问RAM和FLASH时,会对FPGA发出请求信号,当FPGA接到请求信号时,会交出总线给MCU使用,这样在通信上就能大大节省时间。
FPGA中主要包括总线控制单元、PLC软核、以及PLC的IO驱动,IO驱动主要包包括整个PLC的DI、DO、AI、AQ的驱动,如果PLC单元像西门子S7-300那样不带输入输出点,也可以加入一些硬件IO扩展协议,用来外扩IO设备。
以上讲的只是最近思考的一个大体构架,至于每一步的详细设计,还有待于进一步的讨论。大家有做PLC算法的可以一起交流学习。
今天就到这里了,下期再详细讨论。 占个位子
占个位子+ 直接上定点DSP怎样? 这才靠谱,现在PLC很多都是定制开发的MCU,技术门槛在提高 spacefram 发表于 2014-1-5 19:37
直接上定点DSP怎样?
DSP对功能块的执行方式是一样的,解释执行,速度还是上不来,现在的DSP对通信处理能力不够,比如以太网、RS485等,中型的PLC网口都是两个,串口要求三四个,DSP资源有点少啊! 我觉得lz弄反了,你要用fpga做指令解析估计很难,应该是用fpga这块负责脉冲发生等很耗单片机时间的部分应用指令,以及负责扩展模块的通讯管理,让单片机一心一意的做指令的解析,尽量减轻单片机的负担! 我在用艾默生的EC10plc控制伺服时,需要用da给三角波,手册上说是2ms刷新一次,程序在中断里面,用示波器看,da输出速度太慢了,刷新一次大概在10ms左右,即使是2ms我觉得也太慢了,类似这种高级的应用指令,通用型plc还是不行啊!我觉得应该用fpga干这方面的活比较合适! {:victory:}{:victory:}{:victory:} bobo你猜我是谁 有必要嫩快吗? 讨论得咋个呢?
页:
[1]