|
楼主 |
发表于 2009-5-17 08:22:49
|
显示全部楼层
heky的程序即描述了我的想法,但是假如PLC存在输入(以日系FX来说) X有256点,这样就存在512个位变量.占用64字节,Y也有256点,M有数千点,真去定义这么多变量么?我本来想定成char的数组,并且如heky所述存在一个bak的变量.我是用ATMEGA168来规划这个控制器,感觉SRAM(1KB)吃紧.
另外,我一直在应用PLC,用MCU是业余的.老想MCU是怎么来得及工作的.假定MCU以20M工作,并且达到20MIPS.
1,假定PLC开了二个通讯口,都以9600bps(一般PLC可以支持到115200bps),这样约每个通讯口隔约1ms就产生一次中断.假定两个通讯口正好错开,哪MCU在0.5ms产生一次中断,0.5msMCU仅可执行10K条指令.如通讯波特率提高到115200,则每次中断之间约能执行1K条指令.
2,FX PLC有6点高速计数器,PLC的高速计数器分软件中断和硬件两种,软件中断高速计数器可达到10KHz,假定6路高速脉冲无冲突的情况下,每两次计数脉冲间能执行1.6K条指令.
3,如以上说的中断同时发生,MCU又当如何工作?
4,PLC还有高速脉冲或PWM输出功能,我想也会遇到中断的问题?
5,PLC还得较实时的完成控制任务.
基于以上考虑,怎样强大的MCU才能完成一台强大的PLC?据我所知,台达的PLC仅采用了H8 MCU,一些台湾产中型PLC采用RDC(类似80186),来得及么? |
|