按道理, 这里有个数据结构 , 叫做队列, 也就是先进先出 。 可以自己实现队列算法,如果有现成的也可以。
简单的可以如下,不算队列算法,具体的启停逻辑,我下面是不对的啊.
把 A/B/C/D 用数字1/2/3/4 分别放到存储器 D1,D2,D3,D4 中,标识这四个风机。 多的话用数组和循环,比如100个风机。 Y1 Y2 Y3 Y4 表示输出。
第一步要设置 D0 D1 D2 D3的值。 比如2341; / 1234 / 3412/ step的转换条件 就是 时间到 step:=step+1;
case step of
1 :
IF D1=1 THEN
Y1:=TRUE; // Y1通10S 停2s
ELSE IF D1=2 THEN
Y2:=TRUE; // Y2通10S 停2s
ELSE IF D1=3 THEN
Y3:=TRUE; // Y3通10S 停2s
ELSE IF D1=4 THEN
Y4:=TRUE; // Y4通10S 停2s
END IF;
2 :
IF D2=1 THEN
Y1:=TRUE;
ELSE IF D2=2 THEN
Y2:=TRUE;
ELSE IF D2=3 THEN
Y3:=TRUE;
ELSE IF D2=4 THEN
Y4:=TRUE;
END IF;
3:
4:
end case;
[ 此帖被flyfeky在2024-03-25 22:00重新编辑 ]