PLC通常使用梯形图开发,可是梯形图适合电工使用而不是程序员使用,对咱们来讲开发困难,门槛高,幸亏PLC的开发标准还带了类pascal的高级语言,在西门子这里叫SCL语言,这对于咱们程序员来讲门槛就很低了。程序员
要开发好复杂PLC逻辑,梯形图困难重重,市场上要价颇高,而使用SCL语言则很是合适处理复杂逻辑以及运算。spa
在博图软件的项目视图中,便有添加新快,双击3d
推荐使用FB模块,便于存放变量,语言选择SCLblog
在打开FB模块后,上方就是变量定义区开发
Input则是输入参数,Output是返回值或者理解为C# out关键字的输出变量,InOut则是相似Ref的既输入又输出的,Static变量才是咱们能够保留的变量,Temp 至关于方法内的局部变量,此次执行事后会被重设文档
咱们的代码会被放在一个方法块内class
不用担忧用Static后每次调用使用这个变量会冲突,每一个使用它的地方都会新建一套数据块副本,至关于实例化一个类,调用实例方法,并不是彻底静态的变量。变量
要写代码固然要会访问各个能访问的变量,软件
FB里面定义的变量用#开头来访问date
访问地址用%开头,
变量表里的变量至关于全局静态变量
咱们给一些地址起了名字,既能够用 %I0.0 也能够用Btn1,最终都会变成”Btn1”。
访问别的实例的DB块中的变量则使用DB快的名字在用 . 进行访问,好比第一张图中块的 "块_2_DB_1".BtnPress
大部分的变量类型你们基本都认识了,比较搞得是时间类型,简单说下
Time 至关于TimeSpan,表示一段时间 好比 T#5s表示5秒,再好比 T#10h2m
LTime 长的Time,表达的时间更长
Date 日期
Date And Time DT类型,也就是datetime
Time Of Day TOD 就是时间部分了
博图的帮助中也提供了详细的解释,帮助文档也是比较全面的
下期讲解在梯形图中重要且复杂难用又难以组合的,定时器,在SCL中如何处理