机械自动化专业转 PLC 还是单片机,路会更好走一些?
大家好,我是无际。
我是电气工程专业转的单片机开发。
一、浅谈机械
说到机械自动化行业,我虽然没有做过,但是有时候做产品需要跟做机械的哥们打交道。
一回生二回熟,我们聊天基本也会相互调戏,说真羡慕你做这个啊,不像我们做这个行业怎么怎么样…
虽然很多是玩笑话,但从话里看出了对方的心酸,工作环境差,妹子少,还整天受气。
做个7,8年才勉强过万,很多刚入行的新人看到老师傅的情况就没有继续干下去的动力。
主要又是传统行业,如果现在的年轻人进去很难有竞争优势,而且发展的瓶颈很明显。
千万别听学校吹的这块多么有前景,这种话最不靠谱,学校很多时候考虑的是就业率,而不是就业质量,简单来说就是卖猪仔。
我算是过来人了,包括最近有个学嵌入式的小伙伴找我咨询说学校安排了个大公司给他去做测试,该不该去?
我的个人建议是坚决不去,应届生第一份工作是定方向,我觉得还是挺重要的。
一个学开发的,去做测试,这明显不合理,测试有什么技术含量?
应届生对这块是很迷茫的,总是幻想着先做测试啥的底层工作,然后慢慢进入研发的职位。
如果是大公司这种几率还是比较小的,大公司工作是细分化的,你一个做测试的,基本就是负责做测试,不会让你做别的,更接触不到产品的核心技术。
当初我自学单片机的时候,找了很久也找不到工作,对这个技术找什么职位也不是很清楚。
后面降低了自己的要求,测试也先进去做着算了。
然后就找到了一家做DVD测试的,每天像个机器人一样,听歌看MV,测试DVD有没有问题,压根接触不到技术的东西。
还好,上了一周班我果断离职了,这根本跟我所学不符。
所以,即便当下找不到合适的工作,也不要将就着去上班,工作不合适频繁换反而更浪费时间。
如果你妥协了,再转行就难了,人都是有惰性的。
千万不要明明一副好牌被你打得稀巴烂。
二、PLC和单片机怎么选?
曾经也有几个自动化专业的研究生来咨询我,选PLC还是嵌入式单片机方向。
其实我觉得研究生的底子去做PLC有点浪费 ,在我看来PLC初中生就能学会。
而且PLC的产品应用还是有一定的局限性,灵活性不高。
做PLC有时候也会经常出差,待遇这块没有嵌入式这么香。
如果是我,我会选择嵌入式单片机方向,不管是现在还是未来都将是很不错的行业。
嵌入式开发是前沿的技术,结合物联网、人工智能未来充满无限想象。
嵌入式的细分方向也有很多,主流有做单片机开发,有做Linux驱动和应用的,也有走人工智能路线的。
这几个方向各有各的优势和缺点,不同的方向产品定位不一样,不存在哪个比哪个更好。
就拿单片机开发来说,很多人说做单片机开发很简单,不值得去学习,建议直接学Linux驱动或者应用。
我们无际单片机编程团队2个导师都是从事了单片机开发10年以上的资深工程师。
对于这种说法还是不赞同的,不是你做的东西看起来越高端越复杂,你技术就越牛逼。
很多高端和复杂的东西都是集成化的,根本不需要你接触底层的东西,简单来说就是会调库侠。
往往是越底层的东西越复杂,含金量越高,你觉得是写Linux系统内核代码牛逼,还是写基于Linux系统应用代码牛逼呢?
毫无疑问肯定是系统内核代码。
所以那些说做单片机开发简单的,基本都是对这个行业理解不深的,只把眼光局限在单片机这个芯片上。
我从事了这个单片机开发10年,做了很多产品,也写过一些复杂的程序。
像内存管理、回调函数、链表、任务管理、队列算法这些都亲力亲为写过。
并且基于这些高级技巧原创了一套轻量级的系统程序架构。
对这个有兴趣的可以直接找无际单片机编程要,手把手视频教程和源码都是开源的。
学完以后你会发现,这些都是操作系统底层的东西。
比如说链表配合内存管理可以用来做操作系统的邮箱功能。
再比如说回调函数可以用来传递硬件层和应用层的数据,真正实现硬件驱动和应用程序模块化。
这些技术,用在没经验的人手里就是秀技术,最后把自己坑了,典型的就是c语言的指针。
而用在有经验的人手里,就是一把利刃,助你在开发复杂产品的时候过关斩将,解决一个个难题痛点。
这些东西,如果没人教你,够你研究10年了,你还觉得做单片机开发简单吗?
除此以外,不同领域的产品还涉及到行业以外的知识,比如物理学、生物学、化学。
当你技术到达这一步,做Linux驱动开发的未必有你牛逼。
这就是我经常说做ARM+Linux工资不一定比做单片机开发高的原因。
什么RTOS、Linux对你来说都是浮云,因为你已经很熟悉操作系统的底层逻辑了。
学习无非就是看别人怎么用巧妙的代码思路实现这些逻辑而已。
DCS系统与PLC哪个好?DCS与PLC的优劣对比
PLC和DCS在工业自动化控制中占有举足轻重的地位,而工业自动化控制是国家工业发展战略的核心。PLC以及DCS在工业控制的各个环节中不断的升级、完善,已经成为现代工业生产制造中不可或缺的工具。
1、DCS和PLC的定义
DCS控制系统,在国内自控行业又称之为集散控制系统。即所谓的分布式控制系统,是相对于集中控制系统而言的一种新型计算机控制系统,它是在集中控制系统的基础上发展、演变而来的。
DCS作为一个集过程控制和过程监控为一体的计算机综合系统,在通信网络的不断带动下,DCS系统已经成为了一个综合计算机,通信、显示和控制等4C技术的完整体系。其主要特点是分散控制、集中操作、分级管理、配置灵活以及组态方便。
现如今的DCS系统可以广泛地用于工业装置的生产控制和经营管理,在化工、电力、冶金等流程自动化领域的应用已经十分普及。
PLC,即逻辑可编程控制器,是一种数字运算操作的电子系统,专为在工业环境应用而设计的。它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计数与算术操作等面向用户的指令,并通过数字或模拟式输入/输出控制各种类型的机械或生产过程,是工业控制的核心部分。
2、DCS和PLC控制器的差别
DCS和PLC控制器的主要差别是在开关量和模拟量的运算上,即使后来两者相互有些渗透,但是仍然有区别。80年代以后,PLC除逻辑运算外,也增加了一些控制回路算法,但要完成一些复杂运算还是比较困难,PLC用梯形图编程,模拟量的运算在编程时不太直观,编程比较麻烦。但在解算逻辑方面,表现出快速的优点。而DCS使用功能块封装模拟运算和逻辑运算,无论是逻辑运算还是复杂模拟运算的表达形式都非常清晰,但相对PLC来说逻辑运算的表达效率较低。
3、DCS和PLC在火电厂的应用
在火电厂热工自动化领域,DCS和PLC是两个完全不同而又有着千丝万缕联系的概念。DCS和PLC都是计算机技术与工业控制技术相结合的产物,火电厂主机控制系统用的是DCS,而PLC主要应用在电厂辅助车间。DCS和PLC都有操作员站提供人机交互的手段、都依靠基于计算机技术的控制器完成控制运算、都通过I/O卡件完成与一次元件和执行装置的数据交换、都具备称之为网络的通信系统。
随着国内电厂装机容量的不断扩大及电力系统改革的推进,对辅助车间控制的要求也不断提高,在这个大环境,DCS系统进入辅助车间控制已成为趋势。NT6000DCS因其综合的技术经济优势,已经并将继续在辅助车间控制方面发挥越来越大的作用。
在辅助车间应用广泛的PLC也并不会就此退出热工自动化的历史舞台,前所未有的竞争压力,将会促使PLC厂商在技术上向DCS标准靠拢,在价格上作出更大的努力。DCS和PLC市场竞争的结果,将会使用户获得更大的利益。
4、DCS和PLC的控制处理能力
一个PLC的控制器,往往能够处理几千个I/O点(最多可达8000多个I/O)。而DCS的控制器,一般只能处理几百个I/O点(不超过500个I/O)。
从集散体系的要求来说,不允许有控制集中的情况出现,太多点数的控制器在实际应用中是毫无用处的,DCS开发人员根本就没有开发带很多I/O点数控制器的需要驱动,他们的主要精力在于提供体系的可靠性和灵活性。而PLC不一样,作为一个独立的柔性控制装置,带点能力越强当然也就代表其技术水平越高了,至于整个控制体系的应用水平呢,这主要是工程商和用户的事情,而不是PLC制造商的核心目标。控制处理能力的另一个指标,运算速度,在人们印象当中PLC也比DCS要快很多。
新型的DCS控制器学习了大型PLC的设计,在控制周期方面的表现获得了大幅度的提高。以NT6000DCS的T2550控制器为例。控制器可以设置四个不同优先级的任务,最小运算周期可以设为10ms,配合高速I/O卡件,控制周期能够达到15~20ms。而模拟量运算设置在其它周期较长的任务中。
5、DCS和PLC的市场情况和发展方向
在热工自动化领域,主厂房控制系统基本上毫无例外地使用DCS。而在辅助车间才使用PLC。其主要原因是早期的DCS系统非常昂贵,人们认为辅助车间的运行可以间断,可靠性要求不是很高,且模拟量控制要求较少,从降低成本的角度出发,往往选择PLC来构建控制系统。而锅炉、汽机和发电机的控制系统,要求长期稳定可靠地运行,信号中含有相当比例的模拟量,从系统的性能出发,人们不得不选择了昂贵的DCS。
另外,分析一下主厂房DCS和辅助车间控制系统的市场竞争情况,我们会发现一个有趣的现象。主厂房DCS的竞争往往在不同品牌的供应商或代理商之间展开,竞争激烈,DCS的价格不断下调。而辅助车间控制系统的竞争往往在同一品牌PLC的各个工程商之间进行,门槛较低,竞争更加激烈,但是PLC的价格下调幅度却并不如DCS明显。主要原因是DCS的生产商直接参与竞争,在巨大的市场压力下,不断下调设备制造费用和工程实施费用。而PLC的生产商不直接参与竞争,各个工程商只能下调自身有限的工程费用,空间有限。从现在情况看来,DCS与高档PLC的价格差距已不明显,辅助车间仍然较多地采用PLC,是市场的惯性使然。
PLC和DCS产品市场可谓风起云涌、竞争激烈。纵观PLC市场群星璀璨:世界上有200多家公司生产400多个品种系列的PLC,应用于电力、石油石化、冶金、材料、包装、造纸、汽车和市政各个行业。从行业角度来看,国外厂商占山为王,有着属于各自的势力范围。
DCS市场与PLC相差无几,基本由国外业内强者所把持,可喜的是一批本土厂商如Hollysys、Supcon、Xinhua等企业逐渐发展壮大。由于DCS技术含量高,很多对产品的需求都建立在项目的基础上,这样对DCS的需求也将是一个周期性较长的过程,因此DCS市场格局短时间内难有较大改变。当然,由于行业发展速度的不规律性,侧重行业不同的公司可能会因此而发生一些变化。
在今后的控制系统的发展中,我们将会看到DCS和PLC技术逐渐融合的局面,这对它们各自的发展以及各行各业的发展都有种促进的作用
PLC和DCS的区别
1、从发展的方面来说:
DCS从传统的仪表盘监控系统发展而来。因此,DCS从先天性来说较为侧重仪表的控制,比如我们使用的YOKOGAWA CS3000 DCS系统甚至没有PID数量的限制(PID,比例微分积分算法,是调节阀、变频器闭环控制的标准算法,通常PID的数量决定了可以使用的调节阀数量)。PLC从传统的继电器回路发展而来,最初的PLC甚至没有模拟量的处理能力,因此,PLC从开始就强调的是逻辑运算能力。
2、从系统的可扩展性和兼容性的方面来说:
市场上控制类产品繁多,无论DCS还是PLC,均有很多厂商在生产和销售。对于PLC系统来说,一般没有或很少有扩展的需求,因为PLC系统一般针对于设备来使用。一般来讲,PLC也很少有兼容性的要求,比如两个或以上的系统要求资源共享,对PLC来讲也是很困难的事。而且PLC一般都采用专用的网络结构,比如西门子的MPI总线性网络,甚至增加一台操作员站都不容易或成本很高。
DCS在发展的过程中也是各厂家自成体系,但大部分的DCS系统,比如横河YOKOGAWA、霍尼维尔、ABB等等,虽说系统内部(过程级)的通讯协议不尽相同,但操作级的网络平台不约而同的选择了以太网络,采用标准或变形的TCP/IP协议。diangon.com这样就提供了很方便的可扩展能力。在这种网络中,控制器、计算机均作为一个节点存在,只要网络到达的地方,就可以随意增减节点数量和布置节点位置。另外,基于windows系统的OPC、DDE等开放协议,各系统也可很方便的通讯,以实现资源共享。
3、从数据库来说:
DCS一般都提供统一的数据库。换句话说,在DCS系统中一旦一个数据存在于数据库中,就可在任何情况下引用,比如在组态软件中,在监控软件中,在趋势图中,在报表中……而PLC系统的数据库通常都不是统一的,组态软件和监控软件甚至归档软件都有自己的数据库。为什么常说西门子的S7 400要到了414以上才称为DCS?因为西门子的PCS7系统才使用统一的数据库,而PCS7要求控制器起码到S7 414-3以上的型号。
4、从时间调度上来说:
PLC的程序一般不能按事先设定的循环周期运行。PLC程序是从头到尾执行一次后又从头开始执行。(现在一些新型PLC有所改进,不过对任务周期的数量还是有限制)而DCS可以设定任务周期。比如,快速任务等。同样是传感器的采样,压力传感器的变化时间很短,我们可以用200ms的任务周期采样,而温度传感器的滞后时间很大,我们可以用2s的任务周期采样。这样,DCS可以合理的调度控制器的资源。
5、从网络结构发面来说:
一般来讲,DCS惯常使用两层网络结构,一层为过程级网络,大部分DCS使用自己的总线协议,比如横河的Modbus、西门子和ABB的Profibus、ABB的 CAN bus等,这些协议均建立在标准串口传输协议RS232或RS485协议的基础上。现场IO模块,特别是模拟量的采样数据(机器代码,213/扫描周期)十分庞大,同时现场干扰因素较多,因此应该采用数据吞吐量大、抗干扰能力强的网络标准。基于RS485串口异步通讯方式的总线结构,符合现场通讯的要求。
IO的采样数据经CPU转换后变为整形数据或实形数据,在操作级网络(第二层网络)上传输。因此操作级网络可以采用数据吞吐量适中、传输速度快、连接方便的网络标准,同时因操作级网络一般布置在控制室内,对抗干扰的要求相对较低。因此采用标准以太网是最佳选择。TCP/IP协议是一种标准以太网协议,一般我们采用100Mbit/s的通讯速度。
PLC系统的工作任务相对简单,因此需要传输的数据量一般不会太大,所以常见的PLC系统为一层网络结构。过程级网络和操作级网络要么合并在一起,要不过程级网络简化成模件之间的内部连接。PLC不会或很少使用以太网。
6、从应用对象的规模上来说:
PLC一般应用在小型自控场所,比如设备的控制或少量的模拟量的控制及联锁,而大型的应用一般都是DCS。当然,这个概念不太准确,但很直观,习惯上我们把大于600点的系统称为DCS,小于这个规模叫做PLC。我们的热泵及QCS、横向产品配套的控制系统一般就是称为PLC。
相关问答
PLC与PIC有什么区别?
C是可编程逻辑控制器(ProgrammableLogicController)的简写,而PIC则是一款单片机的牌子,PLC类似于简单的计算机系统,通过使用专用的梯形图软件编写控制流程...
PIC单片机用plc编程还是c语言?
PIC单片机可以用PLC,也可以用C语言编程。应该说用C语言来开发更多。在实际应用中,用C编程有极大的优点。能否用C语言来开发,就看有否相应有C编译器,Microchip...
电气工程师PIC编程?
先说一下,是PLC,不是PIC,呵呵这是一个可编程控制器,就是实现信号的自动处理,相当于DCS,不过功能没有DCS那么强大,比DCS简单一些建议买一本关于PLC编程的...
pLC和p|C有什么区别?
PLC是可编程序控制器,PIC是一款单片机。都是可以工业控制的,一个可以直接接功率器件,一个注重运算控制小型器件PLC是可编程序控制器,PIC是一款单片机。都是...
plc编程累还是调试累?
plc编程和调试都差不多。plc编程和调试都是在自动化系统中非常重要的一环。plc编程是控制自动化系统的关键,它依靠周围的传感器和执行器的数据来控制系统,从而...
ic在plc怎么作用?
PLC是工控控制器,主要用在工厂设备控制。(简称可编程控制器)PIC是单片机的一种,一般是16F系列的他们都可以写入程序,区别大点就是PLC更稳定。PLC是工控控...
PIC什么?
pic的意思是:中断控制器。PIC中文为可编程中断控制器,是微处器与外设之间的中断处理的桥梁,用于处理由外设发出的中断请求。较常见的可编程中断控制器有8259A...
pic有什么用途?
PLC是可编程逻辑控制器,它采用一类可编程的存储器,用于其内部存储程序,执行逻辑运算、顺序控制、定时、计数与算术操作等面向用户的指令,并通过数字或模拟式...
自学plc要多久啊-懂得
我给你介绍一些心得,满意请采纳!PLC不难学,PLC就是面对一线工程技术人员的利器,只要有电工基础,学习起来很简单推荐先读《电机和电气控制》,最好找...
trustplc编程用西门子兼容吗?
这个是不兼容的,每种pic都有自己品牌的编程软件,不可以兼容通用的。这个是不兼容的,每种pic都有自己品牌的编程软件,不可以兼容通用的。