发表于:2019/7/19 9:50:58
#0楼
作者:万泉河
从事电气自动化工作十几年了,从开始的时候,学会用PLC编程,梯形图,语句表,会控制一个电机阀门的启停,到后来运行状态可以显示在触摸屏,WINCC上,很兴奋。
后来,学会了各种通讯协议, MODBUS , PROFIBUS, PROFINET , TCPIP, 485, 以太网, WIFI, 学会了用通讯的方法连接PLC和变频器,仪表,搞定了通过电话线,乃至INTERNET远程下载和监控程序,节约各种硬件成本和差旅成本,也降低了自己的劳动强度,觉得很自豪。
再后来,可以在PLC上做出全自动的逻辑程序,学会了数据库,可以在WINCC上做出数据统计生产报表,可以帮助生产工艺部门统计历史数据, 分析工艺过程, 优化工艺参数,节省能源,提高效益,很欣慰。
再再后来,项目不断做, 千篇一律,每一个项目都从头做起,变量从0用起,程序调试从头开始,每一步都不能省,就开始感觉很乏味,没意思。
而且,这技术要说含量高吧,大部分的时间都耗费在一些旁枝末节的小事上面,以及大量的时间耗在出差现场。空开,熔断,开关电源, 继电器,接触器,变频器,开关,输入输出模块,通道,绝对地址,符号表,变量交叉索引…..。
而要说含量不高呢,一个项目干了还必须自己干下去,如果自己有事情走不开, 半路甩给其他人做,他更难上手。毕竟每个人的思路,习惯都不一样。
另一方面,做这方面的工作需要长时间的出差。随着年龄增长,就不大想一辈子一直这样重复的无价值的工作。就想转型,希望能有机会转型做管理,或者其他的工作。
但转型何尝容易!如果转型彻底离开技术岗位,完全去做人的工作,会发现跟人打交道难度更大,更复杂。也更没有自由。 甚至很多时候需要放弃尊严弯下腰,甚至跪着去讨好他人。论起来还没有做技术自由自在呢!至少跟冷冰冰的机器打交道,自己的人格是自由的。
所以慢慢地就反思自己, 以往做的工作是否合理,是否可以更优化一些,可以封装到模块化,可以重复使用,也可以传承给其他人使用。这样工作可以分工给其他人,大家一起合作工作,也可以自由地换人,需要轮换的时候不需要太多的交接工作,一个人做的工作,另外的人拿到很容易就可以接上继续干。
就像是高速公路的收费员,一个人下班休息了,另一个人瞬间可以无缝交接,零切换成本。
同时,把工作分工切割好了,就可以培训现场的工人和新毕业的学生,简单繁琐的工作,可以交给他们来做。而主力工程师,可以专注于只做重要的难度系数高的工作。
这就需要设计工作标准化,模块化。模块与模块之间,通过约定的标准接口衔接,而同类的模块,则保证其互换性,那么在不同的项目,以及项目有变更的时候,可以通过堆积木的方式,简单替换就可以完成设计工作的更改。
这样的工作才最高效,也最省力。
而回过头来审视一下,发现,其实在工控行业,电气自动化设备方面,模块的标准化工作已经做的相当好了。 很多产品之间的互换,也非常便利。
比如低压电器的空开,继电器,端子,开关电源等,是完全可以互换的。 你可以使用schneider,ABB,SIEMENS, 也可以使用德力西,正泰,甚至不知名的温州小厂的产品。设计之初可以随便选,安装过程中也可以随意换。 甚至你调试完成后,用户也可以随意替代备件。
它们的安装尺寸(接口),通常都是统一的,互相兼容的。
再比如变频器,不管是ABB, 施家,还是西家,以及众多新晋国产品牌的变频器,也都大致可以互换的。不管是端子接口还是通讯方式,也基本可以实现了可全互换。
而甚至于在PLC层面,各厂家的同级别的产品线之间,也可以互相作为备选的。所以他们才互相成为市场的竞争对手。比如一面小型控制柜,需要选用一个小型PLC,使用欧姆龙还是西门子S7-200,性能上安装上都差不多的。
唯一明显的区别是,欧姆龙的DI端子在上部,DO在下部。 而S7-200的DO在上部,DI在下部。遇到过很多这样的场合,现场运行的控制柜,因为各种原因,厂家希望把欧姆龙换为S7-200,或者倒过来把S7-200换为OMRON。唯一的障碍是,已有的布线没法倒过来,不好改。
如果不是因为这个原因,过去十年中,全国范围内,不知道有多少已经运行的OMRON被换为了S7-200,同时也有相同体量的S7-200被替换成了OMRON。
但不管是西门子还是欧姆龙,都不可以把这种没有技术含量的互换障碍当成保护伞。因为保护自己的同时,也阻挡了自己的进步。
所以我们可以看到,等西门子推出新一代的S7-200 SMART的时候,它已经偷偷地把DI/DO端子的方位倒过来了!
所以我们可以看到,在硬件级别上,西门子和欧姆龙,已经可以无缝互换了。
这标准化的统一,是不是来的无声无息?
而软件呢, 程序呢?一套设备从一个厂家的PLC换为另一个厂家,程序需要重新写,重新调试,需要耗费多少大脑细胞? who care?
说实话,没人关心!
从上到下,都没人关心。 从甲方到乙方,到PLC厂家的销售代表,代理商,一概无人关心。
对于甲方:这个设备如果很值钱,甲方的老板会问一句,价格相比怎么样,性能相比怎么样,售后服务怎么样,如果都差不多,无所谓!如果不值钱,这个问题都到不了老板那儿,基层的设备经理就有选择权,就可以拍板了。
乙方:即承揽了电气配套项目的小公司老板。假如有机会,比如老板突然想起来库房还有一个以前买的OMRON的PLC,可以用在这个小项目上。 而对于这种变更,甲方不会有异议。那么老板肯定会跟工程师提出换PLC。 而如果你工程师提出说,我图纸已经出好了,程序已经开始写了,做了一大半了。 老板会在乎吗?他会说,没事,扔掉改改重来吧!
代理商和生产商,如果发现这个客户有挖掘的价值,有变更为自家产品的可能性,那更会想尽一切办法说服甲方和乙方了。 至于工程师的意见?拿到市场最重要。 如果工程师拒绝配合,他们会帮着甲方乙方找个新的工程师来做这个事儿。至于设计的系统工艺是否合理,是否最优,都放一边了。 抢市场最重要。
所以我们看到了,在这种有可能涉及到编程工作量的场合,工程师们能得到的同情,只有我们这些同行。只有同为同行的工程师才能将心比心的理解到这种工作的繁琐与无奈。
那么解决的方案是什么呢?
还是标准化。 如果你手里有标准化的程序框架模板,各种品牌的模板都搞上一套,那设计编程工作就简单多了,换个CPU,也就堆积木的方式堆一下即可。接近于硬件上更换的时候端子重新接一回线。
就很爽了。
当然,最爽的是,如果所有PLC品牌用的编程语言都是通用的,就好了。 写一套程序,所有PLC都可以直接下载使用。 目前火爆的CODESYS就在向这个方向努力呢!但貌似短时间内还很难做到编程的统一。至少,只要西门子,施耐德,AB,三菱,这些一线公司不倒闭,就绝无可能有CODESYS一统天下的那一天。从市场利益的分配格局出发,西门子, AB就不会允许。
所以,我们能做的,是一边学习储备CODESYS编程,一边把各品牌的标准化做起来,做成通用的平台,才是正路。
我基于标准化PLC编程的思考,在2018年,连续发表了几篇文章,其中,引起较大争议的两篇分别是:
《【万泉河】好的PLC程序和坏的PLC程序的比较标准》http://www.ad.siemens.com.cn/club/bbs/PostStory.aspx?a_id=1479565&b_id=82&s_id=&num=174#anch
《【万泉河】我现在告诉你们不用M和T的程序好在哪里》http://www.ad.siemens.com.cn/club/bbs/PostStory.aspx?a_id=1484028&b_id=82&s_id=&num=188#anch
与人争议其实不是我的本意,与我而言也没有什么益处。我主要是通过文章发表之后的反馈情况在调研,观察行业从业人员的理解程度。
调研的结果是,有少数人认可,也觉得可行。 更有个别高手一直在坚持做标准化的工作。
但更多的人,表达出来的想法是,因为自己不能做,所以认为客观上做不出来,所以认为是天方夜谭,所以情愿保持现状,或者认为保持现状就是最好的。
哦,其实对我自己来说,我经过多年的技术储备,我当然知道可行性没有任何问题。 之前做PCS7的项目,以及离开PCS7之后自己模仿PCS7做项目,已经积累了一些经验。 在纯的PLC环境下,需要的只是合适的项目作为契机而已。
所以在后面的工作中,借着2个项目的机会,分别作了S7-1500和SMART 200 两个项目的标准化应用示范项目,尤其是后一个小型PLC也可以实现标准化编程,坚定了我更大范围内推广标准化编程理念的信心。
在可预期的未来,我计划招募有同样志向的合作者,一起开发各个品牌的PLC的标准化程序框架,并在此基础上,针对流行的各种控制产品,伺服,变频器,二次仪表, 都开发具有标准接口的库函数。可以随时调用。
这规模可谓巨大。打个比方,一款新的变频器厂家的新产品,跟各个品牌的PLC,都需要有标准库,一个触摸屏型号,可以跟多个PLC品牌通讯,在标准架构下,可以做到简单组态就可以完成品牌切换的话,也需要有标准化的接口来支撑。
再打个比方,比方一个新功能,比如微信通知,二维码识别,人脸AI识别,等等, 普通工控人员不可能全部掌握,如果我们可以提供标准接口,由专业人士开发功能,我们给做成嵌入到个PLC系统内的解决方案,就可以极大提升自动化产品与IT新技术的衔接。
但这些都是巨大的工作量。
工作量巨大的同时,其实也代表了存在巨大的市场需求。 本来,最好的方式是,硬件厂商在推出硬件时,就顺带推出面向各PLC品牌的应用库函数包,方便集成到各系统中。 但PLC品牌实在太多,硬件厂商显然能力跟不上。 而且对他们来说,投入产出不成比例。
而对于PLC厂家来说,也是存在同样的问题。 他们只关心卖出多少台产品,而工控软件工程师受多少苦,做多少无用功,他们不感兴趣。 同时, 市面上那么多配套产品,让他们来做出接口模块,好像也根本没有可能性。
所以如果我们能建立一个中间的平台, 甚至和苹果商店一样,建立一个APP市场,那相信会受到各方的欢迎,这里面具有无限的想象力的空间。不知道是否会有有识之士跟我有同样的想法,甚至提出更好的建议和目标,我们一起来把这个事情做大?
这就是我所说的,PLC标准化编程才刚刚起步,永无止境, 永远在路上!
从事电气自动化工作十几年了,从开始的时候,学会用PLC编程,梯形图,语句表,会控制一个电机阀门的启停,到后来运行状态可以显示在触摸屏,WINCC上,很兴奋。
后来,学会了各种通讯协议, MODBUS , PROFIBUS, PROFINET , TCPIP, 485, 以太网, WIFI, 学会了用通讯的方法连接PLC和变频器,仪表,搞定了通过电话线,乃至INTERNET远程下载和监控程序,节约各种硬件成本和差旅成本,也降低了自己的劳动强度,觉得很自豪。
再后来,可以在PLC上做出全自动的逻辑程序,学会了数据库,可以在WINCC上做出数据统计生产报表,可以帮助生产工艺部门统计历史数据, 分析工艺过程, 优化工艺参数,节省能源,提高效益,很欣慰。
再再后来,项目不断做, 千篇一律,每一个项目都从头做起,变量从0用起,程序调试从头开始,每一步都不能省,就开始感觉很乏味,没意思。
而且,这技术要说含量高吧,大部分的时间都耗费在一些旁枝末节的小事上面,以及大量的时间耗在出差现场。空开,熔断,开关电源, 继电器,接触器,变频器,开关,输入输出模块,通道,绝对地址,符号表,变量交叉索引…..。
而要说含量不高呢,一个项目干了还必须自己干下去,如果自己有事情走不开, 半路甩给其他人做,他更难上手。毕竟每个人的思路,习惯都不一样。
另一方面,做这方面的工作需要长时间的出差。随着年龄增长,就不大想一辈子一直这样重复的无价值的工作。就想转型,希望能有机会转型做管理,或者其他的工作。
但转型何尝容易!如果转型彻底离开技术岗位,完全去做人的工作,会发现跟人打交道难度更大,更复杂。也更没有自由。 甚至很多时候需要放弃尊严弯下腰,甚至跪着去讨好他人。论起来还没有做技术自由自在呢!至少跟冷冰冰的机器打交道,自己的人格是自由的。
所以慢慢地就反思自己, 以往做的工作是否合理,是否可以更优化一些,可以封装到模块化,可以重复使用,也可以传承给其他人使用。这样工作可以分工给其他人,大家一起合作工作,也可以自由地换人,需要轮换的时候不需要太多的交接工作,一个人做的工作,另外的人拿到很容易就可以接上继续干。
就像是高速公路的收费员,一个人下班休息了,另一个人瞬间可以无缝交接,零切换成本。
同时,把工作分工切割好了,就可以培训现场的工人和新毕业的学生,简单繁琐的工作,可以交给他们来做。而主力工程师,可以专注于只做重要的难度系数高的工作。
这就需要设计工作标准化,模块化。模块与模块之间,通过约定的标准接口衔接,而同类的模块,则保证其互换性,那么在不同的项目,以及项目有变更的时候,可以通过堆积木的方式,简单替换就可以完成设计工作的更改。
这样的工作才最高效,也最省力。
而回过头来审视一下,发现,其实在工控行业,电气自动化设备方面,模块的标准化工作已经做的相当好了。 很多产品之间的互换,也非常便利。
比如低压电器的空开,继电器,端子,开关电源等,是完全可以互换的。 你可以使用schneider,ABB,SIEMENS, 也可以使用德力西,正泰,甚至不知名的温州小厂的产品。设计之初可以随便选,安装过程中也可以随意换。 甚至你调试完成后,用户也可以随意替代备件。
它们的安装尺寸(接口),通常都是统一的,互相兼容的。
再比如变频器,不管是ABB, 施家,还是西家,以及众多新晋国产品牌的变频器,也都大致可以互换的。不管是端子接口还是通讯方式,也基本可以实现了可全互换。
而甚至于在PLC层面,各厂家的同级别的产品线之间,也可以互相作为备选的。所以他们才互相成为市场的竞争对手。比如一面小型控制柜,需要选用一个小型PLC,使用欧姆龙还是西门子S7-200,性能上安装上都差不多的。
唯一明显的区别是,欧姆龙的DI端子在上部,DO在下部。 而S7-200的DO在上部,DI在下部。遇到过很多这样的场合,现场运行的控制柜,因为各种原因,厂家希望把欧姆龙换为S7-200,或者倒过来把S7-200换为OMRON。唯一的障碍是,已有的布线没法倒过来,不好改。
如果不是因为这个原因,过去十年中,全国范围内,不知道有多少已经运行的OMRON被换为了S7-200,同时也有相同体量的S7-200被替换成了OMRON。
但不管是西门子还是欧姆龙,都不可以把这种没有技术含量的互换障碍当成保护伞。因为保护自己的同时,也阻挡了自己的进步。
所以我们可以看到,等西门子推出新一代的S7-200 SMART的时候,它已经偷偷地把DI/DO端子的方位倒过来了!
所以我们可以看到,在硬件级别上,西门子和欧姆龙,已经可以无缝互换了。
这标准化的统一,是不是来的无声无息?
而软件呢, 程序呢?一套设备从一个厂家的PLC换为另一个厂家,程序需要重新写,重新调试,需要耗费多少大脑细胞? who care?
说实话,没人关心!
从上到下,都没人关心。 从甲方到乙方,到PLC厂家的销售代表,代理商,一概无人关心。
对于甲方:这个设备如果很值钱,甲方的老板会问一句,价格相比怎么样,性能相比怎么样,售后服务怎么样,如果都差不多,无所谓!如果不值钱,这个问题都到不了老板那儿,基层的设备经理就有选择权,就可以拍板了。
乙方:即承揽了电气配套项目的小公司老板。假如有机会,比如老板突然想起来库房还有一个以前买的OMRON的PLC,可以用在这个小项目上。 而对于这种变更,甲方不会有异议。那么老板肯定会跟工程师提出换PLC。 而如果你工程师提出说,我图纸已经出好了,程序已经开始写了,做了一大半了。 老板会在乎吗?他会说,没事,扔掉改改重来吧!
代理商和生产商,如果发现这个客户有挖掘的价值,有变更为自家产品的可能性,那更会想尽一切办法说服甲方和乙方了。 至于工程师的意见?拿到市场最重要。 如果工程师拒绝配合,他们会帮着甲方乙方找个新的工程师来做这个事儿。至于设计的系统工艺是否合理,是否最优,都放一边了。 抢市场最重要。
所以我们看到了,在这种有可能涉及到编程工作量的场合,工程师们能得到的同情,只有我们这些同行。只有同为同行的工程师才能将心比心的理解到这种工作的繁琐与无奈。
那么解决的方案是什么呢?
还是标准化。 如果你手里有标准化的程序框架模板,各种品牌的模板都搞上一套,那设计编程工作就简单多了,换个CPU,也就堆积木的方式堆一下即可。接近于硬件上更换的时候端子重新接一回线。
就很爽了。
当然,最爽的是,如果所有PLC品牌用的编程语言都是通用的,就好了。 写一套程序,所有PLC都可以直接下载使用。 目前火爆的CODESYS就在向这个方向努力呢!但貌似短时间内还很难做到编程的统一。至少,只要西门子,施耐德,AB,三菱,这些一线公司不倒闭,就绝无可能有CODESYS一统天下的那一天。从市场利益的分配格局出发,西门子, AB就不会允许。
所以,我们能做的,是一边学习储备CODESYS编程,一边把各品牌的标准化做起来,做成通用的平台,才是正路。
我基于标准化PLC编程的思考,在2018年,连续发表了几篇文章,其中,引起较大争议的两篇分别是:
《【万泉河】好的PLC程序和坏的PLC程序的比较标准》http://www.ad.siemens.com.cn/club/bbs/PostStory.aspx?a_id=1479565&b_id=82&s_id=&num=174#anch
《【万泉河】我现在告诉你们不用M和T的程序好在哪里》http://www.ad.siemens.com.cn/club/bbs/PostStory.aspx?a_id=1484028&b_id=82&s_id=&num=188#anch
与人争议其实不是我的本意,与我而言也没有什么益处。我主要是通过文章发表之后的反馈情况在调研,观察行业从业人员的理解程度。
调研的结果是,有少数人认可,也觉得可行。 更有个别高手一直在坚持做标准化的工作。
但更多的人,表达出来的想法是,因为自己不能做,所以认为客观上做不出来,所以认为是天方夜谭,所以情愿保持现状,或者认为保持现状就是最好的。
哦,其实对我自己来说,我经过多年的技术储备,我当然知道可行性没有任何问题。 之前做PCS7的项目,以及离开PCS7之后自己模仿PCS7做项目,已经积累了一些经验。 在纯的PLC环境下,需要的只是合适的项目作为契机而已。
所以在后面的工作中,借着2个项目的机会,分别作了S7-1500和SMART 200 两个项目的标准化应用示范项目,尤其是后一个小型PLC也可以实现标准化编程,坚定了我更大范围内推广标准化编程理念的信心。
在可预期的未来,我计划招募有同样志向的合作者,一起开发各个品牌的PLC的标准化程序框架,并在此基础上,针对流行的各种控制产品,伺服,变频器,二次仪表, 都开发具有标准接口的库函数。可以随时调用。
这规模可谓巨大。打个比方,一款新的变频器厂家的新产品,跟各个品牌的PLC,都需要有标准库,一个触摸屏型号,可以跟多个PLC品牌通讯,在标准架构下,可以做到简单组态就可以完成品牌切换的话,也需要有标准化的接口来支撑。
再打个比方,比方一个新功能,比如微信通知,二维码识别,人脸AI识别,等等, 普通工控人员不可能全部掌握,如果我们可以提供标准接口,由专业人士开发功能,我们给做成嵌入到个PLC系统内的解决方案,就可以极大提升自动化产品与IT新技术的衔接。
但这些都是巨大的工作量。
工作量巨大的同时,其实也代表了存在巨大的市场需求。 本来,最好的方式是,硬件厂商在推出硬件时,就顺带推出面向各PLC品牌的应用库函数包,方便集成到各系统中。 但PLC品牌实在太多,硬件厂商显然能力跟不上。 而且对他们来说,投入产出不成比例。
而对于PLC厂家来说,也是存在同样的问题。 他们只关心卖出多少台产品,而工控软件工程师受多少苦,做多少无用功,他们不感兴趣。 同时, 市面上那么多配套产品,让他们来做出接口模块,好像也根本没有可能性。
所以如果我们能建立一个中间的平台, 甚至和苹果商店一样,建立一个APP市场,那相信会受到各方的欢迎,这里面具有无限的想象力的空间。不知道是否会有有识之士跟我有同样的想法,甚至提出更好的建议和目标,我们一起来把这个事情做大?
这就是我所说的,PLC标准化编程才刚刚起步,永无止境, 永远在路上!
[此贴子已经被作者于2019/7/19 14:41:15编辑过]
PLC标准化编程