PLC软runtime内核原理学习笔记

原创
2021/12/24 19:41
阅读数 1.8K

codesys ide 

组态和编译

编程语言:梯形图、功能图、流程图、顺序图

IL ST LD SFC FBD CFC

编译下装到runtime里去

语言特征:支持面向对象和面向过程

编译过程:

step1 --->IL

step2 IL----->对应指令集的机器码 mips looarch x86 arm

 

runtime 加载代码,对代码重定位,从而实现IO服务和PLC快速交互。

问题:

IOServer发给PLC的指令是什么?

PLC返回给IO服务数据包?

 

runtime都有什么?

 

CodePLC-Program

代码和函数表

 

DATA PLC-Program 

重载表

 

runtime 连接到实际的执行函数,通过函数指针方式,相当于二级链接

 

重点Runtime都有什么:

runtime称之为为ice容器

1、读文件到内存

2、读IO组态信息

3、读工程基础信息

4、PIG文件校验

5、浮动地址实例化

6、。。。

 

Runtime内核运行机制

学习操作系统的runtime

1、IEC 任务的运行和调度

PRG Task POUS

2、外部IO的访问

各类现场总线驱动集成

 

3、通信 串口和tcp

 

4、调试 断点 单步 调用栈

 

5、其他诊断 配置

 

总结:调度库  总线驱动库 通信库  调试库 诊断配置库

runtime=C库+驱动

上层有server+通信库+控制层+事件机制(IEC Tasks)

PLC软runtime=OS runtime/rtssys (rtssys 兼容各个指令集简介进行系统调用)+业务runtime=一个可执行程序

业务runtime/业务架构=IEC任务调度系统=纯业务架构,理解PLC的使用场景以及IO输入输出就很容易理解

主备切换:备用用来下载,然后同步。

 

IEC=static link+dynamic link+relocate 重定向

 

核心就是RtsSys以下是各个指令集的OS的runtime

RtsSys以上是业务架构

cnotrolTask:状态机周期性进行任务调度

 

 

 

词汇

Application PRG

Internal Lib

External Lib

system Func

All External reference

 

 

重新理解HC在做什么:

主导国内工控行业的基础设施,引领工控软硬生态发展方向。

 

疫情期间什么企业能够逆流而上,答案:

基础设施/越底层越好

 

未来什么企业最不可靠:

上层应用

 

什么地方来钱最快:

封口上层应用

 

所以你是想深造还是想挣快钱,选择也不会太难

 

 

 

 

 

 

 

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部