先自我介绍一下,我是学生,之前接触过多种单片机,所以下面的内容如果用一个单片机来做,是很容易的。我之前对PLC也有一些了解,但没有实战过,写过PLC开关控制,感觉和数电差不多,都是与或非,可是现在要用PLC做一个模拟量控制系统。
最近在做一个课题,控制对象在计算机里仿真实现,PLC则做控制算法
PLC的输入输出不再是依靠I/O模块读写,而是从串口收发4、关于通信。因为PLC作为控制器,系统要求只有当PLC需要读取数据时,PLC发送一个需要读取的指令,系统仿真器收到指令才能发送数据。而据我初略了解,PLC在与PC的通信中,很多模式下PC是作为主从模块的“主机”,PLC作为“从机”,而本系统要把这情况颠倒过来。由于PLC都是模块集成的,相对于MCU来讲,拓展性差了不少(稳定性大大提高),敢问西门子S7-200能否胜任上面的控制要求?
我请教过一些工程人员,他们说平时都用S7-200做流程控制,很少做模拟量,即使是PID也是直接调用里面做好的PID模块,可是我这个课题需要自己实现这些算法,所以我想知道,S7-200能否符合我的要求。
谢谢各位的帮助。
引用 yashe1990 的回复内容:先谢谢ls两位老师工程上肯定不是这么做了,只是现实系统很庞大,组建费用大,为了研究方便,所以只好仿真实现了。您们讲的“慢”,应当是说PLC计算比较慢吧?在通信上只是发送简单的几组数据,传输量不大,延时应该很小。
首先 ,S7-200 完全恩满足你的要求, 但你提出的几个问题 实际情况可能和想像的不同,有以下几点:
1. 控制系统的数据大多都是浮点的,也就是说,PLC在一个扫描周期需要做下面几件事
回答: PLC 的通讯 读取和扫描周期执行 是异步进行的,通讯的发送和接收通过中断方式执行,不一定在一个扫描周期能完成一次通讯的,所以你要求读取完成数据后,在进行数据计算,这个流程要你通过程序控制。
2. 关于通信。因为PLC作为控制器,系统要求只有当PLC需要读取数据时,PLC发送一个需要读取的指令,系统仿真器收到指令才能发送数据。而据我初略了解,PLC在与PC的通信中,很多模式下PC是作为主从模块的“主机”,PLC作为“从机”,而本系统要把这情况颠倒过来。
回答: PLC 既可以做主站,也可以做从站,这个由你自己来设计。
疑问: 你说了半天 并没有说具体的仕么算法? 顺便提醒一下 小数据量的浮点计算 PLC 还是能胜任的。