用PLC控制称重,其实很容易,5分钟学会S7-200称重编程和校称
原创不易,请勿抄袭!
我知道这么写一点意义都没有,我也不可能去追究别人盗版我文章的责任,但我希望我写了近6个小时的文章会有人真心喜欢,会有人能够学到文章里的知识点,并应用到工业中,这样我的目的就达到了,然后希望大家能支持我一下,点赞收藏并分享,让更多的人看到这篇写之不易的文章,谢谢。
上篇文章我们讲了PLC连接称重传感器的几种方法以及这几种方法的优缺点,今天我们说一下如何使用西门子S7-200编写称重程序。下篇文章我们会再讲一下西门子S7-300的称重程序;本文提到的所有程序实例,手册和库文件还有称重模块的详细信息以及校称软件等等我都已打包好,有需要的在评论区留下邮箱,我会一一发送。
1 称重传感器+二次表+模拟量输入的方式比较简单,只需要识别好模拟量输入通道,然后将模拟量输入转换为需要的数值范围就可以。
2 称重传感器+二次表+通讯的方式,需要选择带232/485通讯接口的PLC,设置好通讯参数后,从接收口读到的数值就是称重的实际数值,然后进行换算即可,232/485通讯也是PLC使用的一个知识点,大家有兴趣的话可以在下方留言,我可以给大家讲解。
3 我们主要讲讲这个最经典的方式吧,那就是重传感器+接线盒+称重模块。
要想使用这种方式称量的话,我们需要编写PLC程序,并且通过软件设置称重模块参数,并进行校称等操作。
一首先我们先说说PLC编程,其实称重系统的编程学起来非常难,但应用起来非常简单。为什么这么说呢?
举个例子,1+1=2大家都知道,但是要问1加1为什么等于2那就复杂多了。
所以大家想用PLC控制称重系统的话,只需要把我给大家做的例子按照现场实际设备简单修改一下,然后下到PLC里就可以使用,下载后有疑问的话再去测试各个点的功能,多用几次后就熟练了。(几乎所有人的第一套PLC程序都是抄袭别人的,一点一点探索然后自己才有思路。)
但是为了让大家理解更深一些,我除了把程序发给你们让你们模仿外,还会将一些重要的信息列出来,让大家对称重系统有一个系统的了解,这样才能快速的学会称重的编程。
我们选用的PLC是CPU226.西门子S7-200其他型号也可以,但是需要注意:1不同PLC可以拓展的称重模块数量不同,2程序设置的起始位置可能有变化,因为有的PLC自带模拟量,所以接到PLC后的称重模块的起始值就不是AIW0,而称重模块前没有模拟量输入的一般起始地址就是AIW0.具体起始值以硬件监测到的为准,这个后文我们会说到。
然后按照接线图将传感器接到接线盒,再由接线盒接到PLC模块,然后检查下回路,没有问题后送电。
连线方式
SIWAREX MS称重模块
用西门子的专用编程电缆连接到PLC,以前说过西门子PLC的区别,S7-200没有以太网口,S7-200smart不能拓展称重模块,有点尴尬,所以只能用这种特定电缆进行编程。
西门子称重模块可以理解成一种硬件,所以需要驱动,对西门子S7-200来说,这个驱动就是库文件,我们将库文件倒入程序中,库文件也打包在文件包里。
打开软件,添加库文件
添加成功
程序出现在库里
倒入后大家可以看到两个程序块,一个程序块是用来读取称重数值的,另一个是用来清零的,这两个程序块我们可以直接拉出来用。
连接好PLC后先将滤波功能去掉,以前的文章说过,滤波会导致称重有延迟,所以需要去掉。工业自动化的知识网络就是由一个一个知识点构成,我需要将整个知识网络拆分成一个一个知识点,大家需要一个一个知识点学习,然后构建自己的知识网络。
删除滤波功能
然后我们读取下PLC信息,可以看到状态是AIW0,图片为例子为截图,德国的E是输入I,A是输出Q的意思,所以有些德国图纸标记是E和A,大家了解一下就可以。
可以看出起始值是AIW0,和AQW0,后面程序设置会用到
然后我们进行编程。
第一行和第二行为数据转换,其中第一行的firstA为PLC硬件读到的地址,其他的依次后移一个字节;比如文中读到的地址是AIW0,AQW0参数设置就是AIW0,AIW2,AIW4,AIW6,AQW0,AQW2,AQW4,AQW6;如果读到的地址是AIW8,AQW8参数设置就是AIW8,AIW10,AIW12,AIW14,AQW8,AQW10,AQW12,AQW14。
FirstVB是数据转换的起始位置,以指针的形式,实际数据为后移一位,如果是&VB200,那实际读数就是VW202,这个数可以任意填写,只要不侵占其他程序就可以。
第三行和第四行是清零指令,按照上述程序即可实现清零,但需谨记,清零仅在称的重量小于一定数值以下才可,否则无法清零,我用的传感器的清零上限是50g。
PLC程序就是这样,因为VW是字的格式,不可以与数值作比较,需要转换到可计算的数据格式,所以例子程序转换为VD1000,VD1000就是可以比较的最终重量数值,如果需要以设定值控制外部设备的话就用VD1000做数值比较就可以。
二除了PLC程序,我们还需要按照称重传感器设置称重模块参数。我们需要用到的软件是Siwatool_V4或者Siwatool_MS,这两个软件的区别就在于Siwatool_V4可以针对多个称重模块,Siwatool_MS只对应一种模块,所以我一般两个都装,哪个好用用哪个,用法大致一样。
我们需要一根线连接称重模块和安装以上软件的电脑;
两侧各为9针串口,称重模块上有串口接口,电脑侧如果没有的话需要串口转USB转换器。
连接之后。
点击Module name,选择SIWAREX MS
然后点击Online按钮,软件与模块建立通信,如果通讯不上的话,切换一下COM口就可以了。
PC列参数表示SIWATOOL软件中的参数设置,SIWAREX列为称重模块内实际设置的参数,当二者不一致时,参数为红色。
将鼠标点击
第二步:称重模块参数设置
Adjustment weight 1:标定砝码重量,因为SIWAREX MS只能通过一个Word来存储重量,无法显示小数点,所以此处输入砝码重量时需要考虑小数点个数。此处输出2000,如果小数点个数为2,那么代表标定砝码重量为20.00
Decimal place for the remote display:小数点个数
Weighing range:称量范围,指容器或者秤台上被称量的物料的最大重量,而不是传感器量程。当重量大于此处设置的称量范围时,称重模块的MAX指示灯会变为红色。
第三步:将参数发送到称重模块中
完成上述参数设置后,将鼠标点击Adjustment parameter (DR3) 上,鼠标右键,选择Send data record,将DR3中的所有参数写入到称重模块中。
第四步:零点标定
将秤清空,然后执行零点标定,此时重量显示为0。
第五步:砝码标定
将标定砝码(重量与第二步设定的砝码重量一致)放在秤上,然后执行砝码标定,此时显示砝码重量。
第六步:参数备份。
点击Receive all data按钮,将称重模块参数全部上载,然后单击Save as按钮,将参数保存为文件。如果需要更换新模块时,只需要将该文件打开,通过Send all data,将参数下载到新模块中即可,无法重新进行标定。
西门子有多种称重模块,软件也有多个,但都大同小异,只要我们熟悉一个效称软件,其他的就非常容易了。
最后提醒大家一下,无论是更换称重模块还是更换称重传感器我们都需要重新效称,然后即使不坏的话,传感器使用时间过长也需要重新效称才能保持准确度。
六小时的心血啊,希望大家喜欢,分享知识是我最大的快乐!想要资料的留下邮箱。
(如果喜欢这篇文章,请点赞并关注,以便优秀文章在第一时间收到推送)
PLC如何使用模拟量?接线加程序实例讲解,轻松学好PLC
首先我们了解一下什么是数字量和模拟量?为什么PLC需要使用模拟量?
数字量
数字量是物理量的一种。它们的变化在时间上是不连续的,总是发生在一系列离散的瞬间。这一类物理量叫做 数字量。也就是离散量,指得是分散开来的、不存在中间值的量。
模拟量
模拟量是指变量在一定范围连续变化的量;也就是在一定范围(定义域)内可以取任意值(在值域内)。
数字量是分立量,而不是连续变化量,只能取几个分立值,如二进制数字变量只能取两个值。
那么对于实际的工业应用而言,数字量和模拟量都是必不可少的。
因为在工厂的自动化控制中,我们需要对温度,压力,液位,深度等等数据进行监控并控制。
比如说一个锅炉的控制,我们需要水烧到一定温度,一般来说该温度是可调的,比如说50摄氏度,或者70摄氏度,而数字量则不能满足这些条件。
再举个例子,一些化工企业需要测量液体的酸碱度,那么酸碱度不可以用数字量的0或者1表示,只能使用模拟量,PH6.5,PH7.0等等才可以清晰的描绘出实际的数据。
那么学习模拟量其实应该学习两部分内容;
一硬件;
硬件包括选型和接线,选型就是针对不同的工况选择不同的模拟量以及PLC,比如说模拟量使用0-10V,4-20ma还是0-20ma还是特殊的热电偶信号等等。
其次就是接线,大家不要小瞧了接线,针对不同的PLC有不同的接线方法。
对于西门子S7-300系列来说,我们需要使用拓展模块,打开西门子STEP7,徐楠则合适的PLC和模拟量模块,并将模块添加进去。
对于PLC而言,每一个模拟量都有一个固定的地址,这个地址是可以在程序中进行识别并计算的,续智能则合适的地址并添加进去。
根据现场设备,选择合适的量程,如果是测量温度的话需要使用特定的温度模块,并选择合适的温度信号。对于温度的控制,我们以前文章有介绍过,需要的朋友可以去寻找。
对于电压信号,有多种可选类型,可根据实际设备的信号类型进行选择。比如说-10V—10V,-5V—5V,-1V—1V,1-5V。
当然,西门子系列的模拟量拓展模块有很多,除了文中所用到的,还有很多其他的电压信号应用在不同领域。如下图所示。
对于电流信号则分为二线制和四线制,需要按照实际仪表去选择。
如上图所示,选择好模拟量输入类型后需要将硬件的量程卡也切换到相应的位置。
记得拆模块前先断电,调整完以后上电并下载硬件组态。
而对于其他的PLC而言就没有更换量程卡这一步骤,只需要将线直接接到PLC模拟量输入模块即可。
二软件编程;
对于初学PLC编程的人来说,模拟量输入、输出模块的编程要比用位变量进行一般的程序控制难的多,因为它不仅仅是程序编程,而且还涉及到模拟量的转换公式推导与使用的问题。不同的传感变送器,通过不同的模拟量输入输出模块进行转换,其转换公式是不一样的,如果选用的转换公式不对,编出的程序肯定是错误的。
其实对于PLC而言,它可以接受的都是-32767-32767数据,我们需要对这个数据转换成为我们需要的实际数据。
我做了一张图去区分电流和电压信号的区分。
它的意思是将模拟量通道为304的数据转化为量程是0-500的实际数据,并将数据赋给MW104.
模拟量输出则相反,将数据从MW104转化为0-100%的模拟量数据,比如说如果外部信号PQW320是0-10V,则对应0V-10V。
改图是模拟量输出的表达形式,大家可以保存下来。方便查找。
最后给大家一个简单的实例讲解;
这时一个不太复杂的加料程序中的一部分,程序很容易理解,是一个在大料仓里面的雷达料位机,该项目中雷达料位计的特点是可以检测0.5-10米的原料料位,因为生产的原因该料仓需要保证一直有原料。
所以我们需要在该料仓低于大概2米的时候进行补料以保证该料仓的原料充足,并且在达到9米的时候停止避免原料堆积到外面。
好了,模拟量输入输出你看懂了吗?
更多好文章请关注我的头条号!
相关问答
信捷plc计数器程序怎么写?
在信捷PLC中编写计数器程序,首先需要创建一个计数器变量,并设置初始值。接着,在主程序中使用一个循环结构,或者一个指令将计数器自增,每次循环时将计数器的...
plc打印机编程步骤?
不管什么打印机(常用的办公打印机类的都要安装驱动的)你觉得PLC可能控制的到吗?一,如果你是很牛逼的打印机。那么,首先你要了解你的打印机是什么样的数据...
台达高速计数器计编码器的程序怎么写,我的PLC是台达DVP16EH00T2,主要是怎么启动高速计算器那一段,谢谢?
C241检测主机X0的脉冲信号,具体设置介绍如下:1.倍频设置有D1225决定,D1225的值决定对应的倍频,1,2,3或4出厂.默认为22.计数模式设置由M1241决定,ON为减...
PLC的单步控制梯形图怎么写?
单步程序和自动程序一样,只要在自动程序转换步的条件中加上单步运行按钮就可以了,再用自动条件短路这个按钮就可以了,自动时单步不起作用,单步时每按一次按钮...
plc编程第一步怎么写?
不同的PLC使用不同的编程软件。但是对于任何一种软件来说,编程前的第一步就是进行硬件组态,根据实际PLC的类型建立硬件配置及相应的通讯配置。硬件组态完成后...
plc打点步骤?
1,先按电气接线图完成接线工作。2,检查线路,确认接线无误。3,确认线路无误后合控制电源。4,打开编程软件,连接pLC,确认通讯正常。5,新建监控表,把需...1,...
温度传感器plc程序怎么写?
需要的材料1.温度传感器2.西门子PLC3.西门子模拟量模块,模块的量程要与你的温度传感器对应上。程序S7-200PLC模拟量对应数字量0-32000smart200对应0...
plc编程时间怎么写?
PLC编程时间的书写通常遵循特定的格式:小时:分钟:秒。例如,8小时30分钟20秒的编程时间可以表示为"08:30:20"。在PLC编程中,时间常用于指定程序的延时、定时和...
信捷plc程序编好怎么编译?
编译PLC程序需要使用软件,一般情况下需要按照以下步骤进行:1.打开信捷PLC编程软件;2.导入编写好的PLC程序;3.进行语法检查,确保程序没有错误;4.进行编...
用编码器和三菱plc计米,现在偶尔会出现计米不准,设定值是10m,偶尔会出现不足十米的情况,请问各?
应该不是程序问题应该是硬件有松动如果一直有问题可以用程序去弥补不到10米的情况应该不是程序问题应该是硬件有松动如果一直有问题可以用程序去弥补不到...