设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
西门子PLC中手动程序编辑模板(上)
返回列表
发新帖
[西门子]
西门子PLC中手动程序编辑模板(上)
[复制链接]
228
|
0
|
2024-8-16 08:39:11
|
显示全部楼层
|
阅读模式
本文主要讲解我们经常遇到的手动程序的编程思路和方法,通过这篇文章你将了解到真正的手动程序,比我们书本上学的要复杂的多,需要考虑方方面面的因素,才能适应生产现场的要求,下面我们具体看一下都有哪些?
一、西门子_部件手动模式FB块编辑
1、软件配置
①软件配置
名称
版本
博图
V16
2、建立FB块
在编辑手动程序前应该建立手动程序的FB块,FB块的建立内容如下图所示
①FB块的输入接口
Input:
FB块的输入接口,将下拉列表中的数据应用于该FB块所编辑的程序中。
NO:当前部件的编号,由于在设备中有多个部件,为了精准的控制到每一个部件,所以对每个部件都给一个编号。
假如设备中有10个部件要进行操控,我们对其进行”1-10”的编号处理,其中”某部件名称X”是第6个,我们可以将”NO”的值设定为”6”。
HomePos:当前部件的原位到位信号,经常用输入信号”I”点来表示,如果该部件没有输入信号”I”点,也可用其他方式来表达。
WorkPos:当前部件的工作位到位信号,经常用输入信号”I”点来表示,如果该部件没有输入信号”I”点,也可用其他方式来表达。
OutMode:当前部件的动作方式,当该部件需要执行到”原位动作”或”工作位动作”时,通过”OutMode”的设定值来决定哪种动作方式。
目前有5种动作方式
1、部件如何操作都不会执行任何动作。(部件不执行输出动作)
2、当部件满足某个执行动作的条件后,会一直执行该动作。(部件会一直执行某个输出动作)
3、当部件执行动作后,如果中途执行动作的条件不满足,则会立即停止该动作。但是当部件的动作执行到位后,会一直执行该动作。
(部件执行输出动作后,中途能够停止;但是当动作到位后,部件会一直执行该输出动作)
4、当部件执行动作后,如果中途执行动作的条件不满足,则会立即停止该动作。(部件执行输出动作后,中途能够停止)
5、当部件执行动作后,如果中途执行动作的条件不满足,则会立即停止该动作,当部件动作执行到位后,会立即停止执行中的动作。
(部件执行输出动作后,中途能够停止,当动作到位后,部件会立即停止执行该输出动作).
ErrorMode:当前部件报警模式,通过”ErrorMode”的设定值来决定报警模式的选择。
目前有5报警模式
1、部件不会出现任何报警.
2、部件在执行某个动作前,如果不满足执行该动作的安全条件,则会触发”安全互锁”报警.
3、部件在执行某个动作前,如果不满足执行该动作的安全条件,则会触发”安全互锁”报警;部件在执行某个动作后,如果执行该动作的时间超过,设定的报警时间”ErrorTime”,则会触发”动作超时报警”。
4、部件在执行某个动作前,如果不满足执行该动作的安全条件,则会触发”安全互锁”报警;
部件在执行某个动作后,如果执行该动作的时间超过,设定的报警时间”ErrorTime”,则会触发”动作超时报警”;部件的原位到位信号和工作位到位信号同时”ON”,则会触发部件的”原位工作位双ON”报警。
5、部件在执行某个动作前,如果不满足执行该动作的安全条件,则会触发”安全互锁”报警;
部件在执行某个动作后,如果执行该动作的时间超过,设定的报警时间”ErrorTime”,则会触发”动作超时报警”;
部件的原位到位信号和工作位到位信号同时”ON”,则会触发部件的”原位工作位双ON”报警;部件在动作执行完成后,会生成一个到位状态用来表示已到达原位或工作位,在该状态存在期间如果丢失了到位信号,则会触发部件的”到位信号丢失”报警。
ErrorCode:当前部件报警的起始编号,根据”ErrorCode”的值,当前的报警程序编号规律如下:
Alarm2[ErrorCode+0].该部件的”原位动作安全互锁不满足”报警
Alarm2[ErrorCode+1].该部件的”工作位动作安全互锁不满足”报警
Alarm2[ErrorCode+2].该部件的”原位动作超时”报警
Alarm2[ErrorCode+3].该部件的”工作位动作超时”报警
Alarm2[ErrorCode+4].该部件的”原位工作位双ON”报警
Alarm2[ErrorCode+5].该部件的”原位到位信号丢失”报警
Alarm2[ErrorCode+6].该部件的”工作位到位信号丢失”报警
假设”ErrorCode”的值为60,那么
Alarm2[60].该部件的”原位动作安全互锁不满足”报警
Alarm2[61].该部件的”工作位动作安全互锁不满足”报警
Alarm2[62].该部件的”原位动作超时”报警
Alarm2[63].该部件的”工作位动作超时”报警
Alarm2[64].该部件的”原位工作位双ON”报警
Alarm2[65].该部件的”原位到位信号丢失”报警
Alarm2[66].该部件的”工作位到位信号丢失”报警
ErrorTime:当前部件报警时间,当部件执行动作的时间超过”ErrorTime”时,该部件则会触发”动作超时报警”。
OPMode:当前设备的运行模式。
②FB块输出接口
Output :FB块的输出接口,将下拉列表中的数据应用于该FB块所编辑的程序中。
HomeAck:当前部件的原位动作输出引脚,当”HomeAck”ON后则会导通其引脚后的线圈。
WorkAck:当前部件的工作位动作输出引脚,当”WorkAck”ON后则会导通其引脚后的线圈。
Static:FB块中运用到的变量,将下拉列表中的数据应用于该FB块所编辑的程序中。
sTempBit:FB块的数组,由10个整数类型的缓存区构成,每个单独的缓存区都可以当做做一个”D区”来使用,下拉内容有:
sTempNO:FB块的数组,由10个整数类型的缓存区构成,每个单独的缓存区都可以当做做一个”D区”来使用,下拉内容有:
3、FB块程序的构建
①部件到位信号
正常情况下,每个部件都有一个”原位到位信号_HomePos”和”工作位到位信号_WorkPos”,
我们通常都会使用外部传感器的信号传递”到位信号”。
然而有些情况下,某些部件会没有外部传感器来传递”到位信号”,所以我们只能通过程序手段来表达部件已经动作到位。
上图的程序中,我们用到了”ErrorMode”中的值来判断该部件是否有外部传感器来传递”到位信号”,当”ErrorMode”的值为”11”时,我们认为该部件没有外部传感器来传递”到位信号”,当”ErrorMode”的值不为”11”,该部件由外部传感器来传递”到位信号”。
②部件动作模式
由于每种部件的功能不同,有的部件需要一直有动作输出,有的部件需要到位后保持输出,有的部件需要随时停止动作输出,这些状况我们可以理解为部件的”动作模式”不同,根据”部件动作模式”的不同,我们要对部件的动作程序进行编辑。
这里我们可以用”OutMode”中的”值”来表示”部件动作模式”,以此来编辑程序。
1、”OutMode”值为”0”时,部件不会产生任何动作
2、”OutMode”值为”1”时,部件在执行某个动作后【"DB3100_Manual".Manual[#NO].Code】值会变为”1”或”3”,会一直执行这个动作。
3、”OutMode”值为”2”时,部件在执行某个动作后【"DB3100_Manual".Manual[#NO].Code】值会变为”2”或”4”,该动作在没钱到位前,中途可以停止。
如果动作执行到位后【"DB3100_Manual".Manual[#NO].Code】值会变为”1”或”3”。
4、”OutMode”值为”3”时,部件在执行某个动作后【"DB3100_Manual".Manual[#NO].Code】值会变为”2”或”4”,可以随时停止执行该动作。
5、”OutMode”值为”4”时,部件在执行某个动作后【"DB3100_Manual".Manual[#NO].Code】值会变为”2”或”4”,如果动作执行到位后【"DB3100_Manual".Manual[#NO].Code】值会变为”0”。
下图程序表示:【"DB3100_Manual".Manual[#NO].Code】的值在不同的情况下,该部件”动作输出”信号的变化。
下图程序表示:当设备出现1级报警时,【"DB3100_Manual".Manual[#NO].Code】的值变为”0”,此时该部件的动作将全部停止。
下图程序表示:
当【"DB3100_Manual".Manual[#NO].Code】的值为”2”或”4”时,将其值变为”0”。
当操作者在触发部件动作时,【"DB3100_Manual".Manual[#NO].Code】的值仍会变为”2”或”4”这段程序的目的是,在【"DB3100_Manual".Manual[#NO].Code】的值为”2”或”4”的情况下操作者停止触发动作后,将【"DB3100_Manual".Manual[#NO].Code】的值变为”0”动作将终止。
下图程序表示:该部件的输出动作都设定为”FALSE”,而外部输出接口”#HomeAck”和”#WorkAck”的状态由下图程序中的状态决定。
只有当【"DB3100_Manual".Manual[#NO].Code】的值变为”1”或”2”或”3”或”4”时,该部件才会有相应的动作。这段程序的目的是,【"DB3100_Manual".Manual[#NO].Code】的值的变更,能够决定执行哪个动作或者终止哪个动作。
未完待续!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
工控无忧
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』