阅读设置

20
18

第497章 工业计算机的骨架 (2/4)

李怀德把烟掐灭,靠在椅背上,若有所思。

赵老师开口了:“吕辰,你说的这些,我同意。但体系不是喊出来的,是设计出来的。你的架构,到底怎么支撑这个体系?”

吕辰点点头,转身在黑板上画了一个更大的图。

“好,那我来讲架构。”

他在黑板上画了五个方块,从上到下排列,每个方块旁边写着名字。

“我的设计思路,延续了之前编程机的模块化、总线化、标准化思路。但工业控制计算机和编程机不一样。编程机是给工程师用的,工业控制计算机是给生产线用的。所以,要在之前的基础上,做针对性强化。”

他在第一个方块旁边写下‘模块化’三字。

“模块化要做到骨头里。不是‘分几个模块’就完了,而是每一块板卡都能独立更换、独立升级。中央处理器板坏了,换中央处理器板;i/o板坏了,换i/o板。不用整机拆下来,不用等厂家派人来修。厂里的电工就能干。”

他又写下两个字:冗余。

“冗余是必须要做的。生产线不能停机。停一分钟,可能就是几吨废钢。所以电源要冗余,一个坏了另一个无缝切换。控制核心要冗余,主核死机,辅核在毫秒级接管。甚至i/o模块都要冗余,关键的传感器,接两个模块,一个坏了另一个顶上。”

他顿了顿,写下三个字:实时性。

“工业控制不是科学计算。科学计算等几分钟出结果没关系,但生产线等不了。飞剪的控制指令,必须在毫秒级内发出。晚了,钢板就切废了。所以必须用硬中断、优先级抢占。控制程序永远排在最高优先级,其他任务靠边站。”

他又写下三个字:抗干扰。

“车间的电磁环境有多恶劣,在座的各位比我清楚。大电机启动的瞬间,电压能掉下去几十伏。电焊机工作时,电磁干扰能把收音机变成噪音源。普通计算机扛不住,但我们的工业计算机必须扛住。这是生存底线。”

最后,他写下四个字:可扩展性。

“现在可能只控制一条线,但三年后呢?五年后呢?可能要控制十条线联动的车间。所以架构要留足余量。总线带宽、cpu算力、i/o通道数,都要有升级空间。不能做出来就用死了。”

他放下粉笔,转过身。

“这五个原则,是工业控制计算机的骨架。下面我来讲具体模块。”

他在黑板上画了一张新的图,这次是五个方块排成一排,每个方块下面画了几条线,连到底下的一根总线上。

“工业控制计算机,我把它拆成五个核心模块。”

他指着第一个方块。

“第一,中央处理模块。这是机器的‘大脑’。它运行控制程序,做逻辑判断和算术运算。双核心冗余,主核跑程序,辅核负责监控。主核死机,辅核在几毫秒内接管,生产线不会停。”

他顿了顿,补充道:“指令集要精简。只保留工业控制需要的指令,如顺序控制、连锁保护、pid调节、定时器、计数器。不需要浮点运算,不需要向量指令。精简了,芯片面积就小了,成本就低了,可靠性就高了。”

他的手指移到第二个方块。

“第二,i/o模块。这是机器的‘眼睛’和‘手’。它连接所有传感器和执行机构。”

他在方块下面画了两条分支。

“数字量i/o,用光电隔离。车间里的高压和计算机隔开,保护机器也保护人。开关量、脉冲量,都走这条路。模拟量i/o,用高精度adc。温度、压力、流量这些连续变化的物理量,变成数字信号给cpu处理。”

他抬起头,看着赵老师。

“i/o模块也要模块化。一条生产线需要多少路输入输出,就插多少块板子。不够了再加,多了就减。标准化、积木化。但不再是每次重新设计电路,而是插拔板子。”

他又补充了一句:“i/o模块要支持热插拔。坏了不停机就能换。生产线在跑,电工把坏板子拔下来,插上新板子,系统自动识别、自动恢复。这叫不停机维修。”

赵老师在笔记本上飞快地记着,点了点头。

吕辰的手指移到第三个方块。

“第三,存储模块分三类存储器。”

他在方块下面画了三个小方块。

“程序存储器。用只读存储器,存操作系统和控制程序。写进去就不改了,防止程序被意外破坏或者被人篡改。”

“数据存储器。用存储芯片,存生产过程的实时数据。温度、压力、速度,每秒钟记一次,记在循环缓冲区里。满了就写到磁带上。出了事故,翻数据就知道当时发生了什么。”

“参数存储器。用可擦写存储器,存工艺参数。不同的钢材、不同的规格,参数不一样。工人插一张二维卡,机器就把参数加载进来。”

他顿了顿,看着在座的人。

“三类存储分离,各司其职。程序是固化的,数据是临时的,参数是可变的。这种架构,比混在一起可靠得多。”

他的手指移到第四个方块。

“第四,电源模块单单独做。”

他在方块下面画了两条线。