程序控制PLC组态也会翻车
问题背景:不知道有没有小伙伴有没有这种苦恼。程序是一套程序,但是PLC模块组态比较丰富的,每次下载都要根据现场配置模块很繁琐。今天就来解决这问题,虽然成功但是也遇到翻车的事情了,分享给大家避坑。
西门子官方给的解决方案是这样的
http://www.ad.siemens.com.cn/productportal/prods/s7-1200_plc_easy_plus/smartsms/045.html
有兴趣的可以看看官方文档 比较详细
下面从我个人角度帮大家理解,顺便避坑。
1.再重复一下此方案是用来,解决一套程序多个PLC模块组态的问题。
2.比如我现在的模块是 3个RS485 、1个模拟量信号板、1215CPU、2个DIO16、1个8DO
3.我可以用组态控制 模拟量信号板对应1,DIO模块2、3、4等。
4.我们首先创建一个用户数据类型(UDT)名称可自定义,我这里定义为ControlDataRecord
5.数据内容
创建一个用于包含控制数据记录的PLC数据类型,其中前4个USInt变量用于存储组态控制信息,后面12个USInt变量对应于S7-1200最大组态时的各个插槽的实际状态。用颜色分割开来。
6.创建DB块
7.属性解读 注意数据类型无符号8位
Block_length :16 控制数据记录的长度,包括页眉
Block_ID:196 数据记录编号
Version:5 版本
Subversion:0次版本
上面4个值我们一般不用动,下面12个变量就是用来控制我们的组态有没有效的。
0:实际组态中不存在已组态的模块。 (插槽为空。)也就是模块程序组态有,但是实际组态我不用它。我又不想它报警模块组态错误。1 到 9,101 到 103: 已组态插槽的实际插槽位置,也就是我用程序控制实际组态的顺序。255:STEP 7 设备组态在此插槽中不包含模块。这个更好理解就是 我程序里面没模块的地方就填为255.Slot_1 :255 CPU附件的卡槽 通俗点就是CPU上面的小信号板模块 ,我这里组态有实际现场默认没有,所以配置为0
Slot_2:我这里填为2 就是2号模块和实际组态位置一样
Slot_3:我这里填为3 就是3号模块和实际组态位置一样
Slot_4:我这里填为0 就是4号模块虽然程序组态有,但是实际组态默认没有。
Slot_5:255 就是5号模块 程序组态没有实际也没有
Slot_6:255 就是6号模块 程序组态没有实际也没有
Slot_7:255 就是6号模块 程序组态没有实际也没有
Slot_8:255 就是8号模块 程序组态没有实际也没有
Slot_101:101就是101号模块 485通讯模块程序和实际组态都有
Slot_102:102就是102号模块 485通讯模块程序和实际组态都有
Slot_103:255就是103号模块 485通讯模块程序实际组态都没有。其实我需要程序员。
就是Slot_103模块翻车了,大家看看怎么翻车的。
8.我们接下来创建StartupOB块。并创建程序
9.程序解读:
判断是否使用信号板?如果有就把实际插槽位置写入这里为1,否则就是不用写为0判断第4个的8DO模块是否使用,如果使用就把实在插槽位置写入这里为4,否则就不用写0下面调用的是西门子WRREC写入数据指令吸入配置数据。如果没有写入完成,跳转到标签继续执行指令(当然用梯形图JMP跳转指令也可以)这里要注意 上电第一个扫描周期执行。9.其实这样已经成功了
但是控制左边的103通讯模块时翻车了,实际西门子目前还不能通过程序控制左边的通讯模块组态。
修改控制数据记录时请遵守以下准则:
组态控制不支持通信模块的位置更改。 插槽 101 到 103 的控制数据记录插槽位置必须与实际安装对应。 如果没有为插槽配置模块,请为该插槽位置输入 255。其实人家文档已经说明了 ,不支持的,本人草率了。
10 .抱有侥幸心理,试着问下西门子400工程师,其实他也以为左边的通讯模块时支持的。结果打脸了,阐述了测试经过,并告诉文档确实有说明(互相学习)。他也认可,并问到以后是否支持。他不清楚,这个属于德国研发工程师的工作,可以提这个需求。可以关注下西门子官方
11.分享下C#上位机组态效果(其他上位机也可以的)
控制组态背景图部分代码
以上,欢迎大佬指导交流
想学PLC但是工作没有技术含量、没事做、没人教怎么办?
1、如何度过没事做,没人教,工作没有技术含量的阶段。
刚进入这行工作的人经常会抱怨,自己很想去学习,但是在公司里的状态确是:想做事情领导不安排,想学东西没人教,一直重复着没技术含量的工作。
不单单是从事PLC技术这类工作,任何行业刚进入都会经过这个阶段。重复没技术含量的工作,不是因为工作没有技术含量,而是我们目前还担不起高技术工作。
没事做也不是因为领导不安排工作,而是担心把事情交给你,不能按期完成。
在这个阶段尽量做到以下几点:
没有安排具体工作,说明公司允许先学习再工作,一定好好珍惜这段时间,多请教多动手。 先把工作流程和工作内容搞明白,防止以后有任务了,却不知道如何下手工作。多向老同事请教,注意观察他们是怎么完成工作的,明确职责范围。 观察公司的业务,和部门职责,摸清楚那些工作自己有能力完成,那些没有经验。 无论是同事还是领导,他们都没义务教我们如何工作,身在职场千万不要抱怨没人教。该学什么,工作岗位需要哪些能力,自己私下努力,现在互联网这么发达,想找任何资料都不是难事。 没事做的情况有时也与公司管理有关,很多公司管理混乱,工作安排不明确,车间、办公室经常一锅粥。如果确认公司有问题,建议另寻他路,没必要在一艘烂船上浪费时间。 进入新行业或者新公司,每个人都会经历这个阶段,没什么好惶恐的,认真做好当下的事情即可。2、从事PLC技术工作是选择大城市还是小城市
大城市工作机会多,知名企业的总部一般都设在一线城市。所以没成家还有选择余地的朋友,首选一定是大城市。
当然大城市也有不好的地方,房价高,生活成本大,工作节奏快。
实在不喜欢一线城市的节奏,至少要选择二线城市工作。二线往下的城市,现在可能找到不错的工作,但是随着你技术和个人的成长,五年、十年后小城市还有能给你,提供相应职位的公司吗?如果没有,到时候又会面临选择。
选择城市时要把目光放远,我们不可能一直从事没技术含量的工作,也不可能在技术岗位上一直到退休,肯定会一步步努力往更好的职位上走,好的职位、更高的待遇在一线城市才更有希望找到。
小城市除了不能提供足够多的工作岗位,也不能提供足够的成长速度。同样的十年在一线城市工作,和在小城镇差的可能不止十年的经验。大城市好公司、技术牛人的浓度更高,在这样的环境里即便随波逐流也不会差到哪里去。
根据我的经历发现二线城市往下,很难找到不错的PLC技术岗位。如果你想从事PLC相关技术工作,那么记住:
努力选择一线城市,底线是二线城市。3、选择大公司还是小公司
在《怎样才能找到一份PLC的相关工作?》这篇文章中,我详细介绍了从事PLC技术工作的三类公司,建议没看过的朋友阅读一下。
选择公司就不像选择城市那样,好资源都在大城市,努力往大城市发展就行了,大公司虽然资源也相对较多,但是却不一定适合所有人。
建议新人尽量找大公司去工作,大公司稳定性好,能让你静下心来钻研一阵子技术。大公司里面技术高手也较多,有更多的机会向他们学习。
有规模的公司一般分工明确,每个人只要完成自己职责内的工作就行了,这样却容易造成技能单一,综合能力过低。所以即便现在在大公司里工作无忧,也要多上招聘网站,看看市场上需要哪些人才,防止与市场脱节。
在小规模公司里的好处是,你能接触到公司运作的各个方面,以做技术为例,可能签合同之前要做技术方案、与客户沟通技术细节,合同签订后要设计图纸、编写程序、组态上位机等等。这些工作虽然费时费心劳力,但是却能锻炼在职场中的各种能力,那天想自己创业了,马上就能上手这些工作。
大小公司各有优劣,在选择时一定要根据职业自己的规划,明确职业发展道路,有针对性的选择公司 。
想以后工作稳定,待遇福利牢靠就选择大点的公司。
希望自己人生多些可能,能力更加均衡,选择小公司或许更合适。
相关问答
为什么用组态控制PLC反应这么慢?
你用组态软件去控制PLC,肯定是没有直接PLC自己运行来的快的。但一般的组态软件不会那么慢的。你看看是否是通讯上有延迟,或者是你加载的驱动有问题。建议重新...
西门子300PLC如何硬件组态?
西门子300PLC硬件组态,最常用的就是用STEP7软件来组态,当然现在博图软件也可以用来给300PLC组态编程!今天答题,我还是说最常用的STEP7软件吧,因为博图一般还...
触摸屏、PLC和组态之间怎么建立联接?-ZOL问答
一般来说,多数触摸屏和组态软件不支持物理点,在PLC编程里,我们要用一些操作按钮或是切换开关等做为PLC的物理输入点(一般用I0.0,I0.1等来表示),而这些物理输入点...
PLC和触摸屏总是提到组态,请问组态到底是什么呀?我怎么理解_...
[最佳回答]使用工控软件中,我们经常提到组态一词,组态英文是“Configuration”,其意义究竟是什么呢?简单的讲,组态就是用应用软件中提供的工具、方法、完成工...
为何电脑安装不了组态王?-ZOL问答
学习的话用里面的仿真PLC就行,不用驱动的组态王软件好像这个两个都可以支持,,有空也可以试试紫金桥组态软件,,挺稳的,,虚拟机还是虚拟光驱难道是虚拟机里装的...
plc组态王如何重新组态?
关于这个问题,1.打开PLC组态王软件,点击“文件”菜单中的“新建”选项,创建一个新的空白项目。2.在项目中添加所需的设备和模块,例如输入输出模块、通信模...
组态王发了读的指令但是PLC无响应怎么办?
检查通讯设置,通讯上了应该能首先显示PLC内的数值。这样你发是指令PLC就都可以执行了。还要告诉你一个常识性的东西,组态王不管是在触摸屏还是用于电脑上都不...
plc与组态王怎样进行连接设置?
PLC(可编程逻辑控制器)与组态王(一种用于编程和监控PLC的软件)可以通过以下步骤进行连接设置:1.安装组态王软件:首先,在计算机上安装组态王软件。确保选...
PLC编程培训会不会太难学?
[回答]汇缘教育PLC编程培训学校继续剖析第二个环节:加强学习应用不一样PLC编程語言开展程序编写,HMI与PLC的通信组态软件,HMI智能监控网页页面制做,PLC根...
PLC和组态怎么放在一起编?
一般先完成PLC梯形图,调试完成后再做上位机组态。否则要改来改去。而且PLC完成后有些软件,比如AB的RSlogix系列可以将PLC用到的变量导成组态软件用的TAG.(标...