手机网站 网站地图 招生城市 文章 资讯 湖南长沙阳光PLC编程培训学校是一家以plc技术为核心的plc程控编程培训学校,主营湖南plc培训,长沙plc培训。学校的主要课程有PLC培训,PLC编程培训,plc自动化培训,欢迎全国各地学员来我校学习plc自动化编程技术。学校常年开设:plc培训,plc编程培训,plc自动化培训,PLC编程入门,线下PLC培训,PLC学习,西门子PLC培训,三菱PLC培训,机器人培训,中山PLC培训,固原PLC培训,银川PLC培训,玉树,海东,陇南PLC培训,酒泉PLC培训,张掖PLC培训,天水PLC培训,金昌PLC培训,兰州PLC培训,榆林PLC培训,延安PLC培训,渭南PLC培训,铜川PLC培训,阿里,山南,拉萨PLC培训,怒江,文山州,楚雄州,普洱PLC培训,昭通PLC培训,玉溪PLC培训,昆明PLC培训,毕节,铜仁,遵义PLC培训,贵阳PLC培训,甘孜州,资阳PLC培训,达州PLC培训,宜宾PLC培训,南充PLC培训,遂宁PLC培训,绵阳PLC培训,泸州PLC培训,自贡PLC培训,三亚PLC培训,崇左PLC培训,河池PLC培训,玉林PLC培训,钦州PLC培训,梧州PLC培训,柳州PLC培训,梅州PLC培训,肇庆PLC培训,湛江PLC培训,佛山PLC培训,珠海PLC培训,韶关PLC培训,湘西州,怀化PLC培训,郴州PLC培训,张家界PLC培训,邵阳PLC培训,株洲PLC培训,仙桃PLC培训,随州PLC培训,荆州PLC培训,荆门PLC培训,襄樊PLC培训,黄石PLC培训,驻马店PLC培训,信阳PLC培训,南阳PLC培训,漯河PLC培训,中卫PLC培训,石嘴山PLC培训,海西PLC培训,海南PLC培训,黄南PLC培训,海北PLC培训,甘南PLC培训,庆阳PLC培训,平凉PLC培训,武威PLC培训,白银PLC培训,嘉峪关PLC培训,安康PLC培训,汉中PLC培训,咸阳PLC培训,宝鸡PLC培训,林芝PLC培训,日喀则PLC培训,昌都PLC培训,迪庆PLC培训,德宏PLC培训,大理PLC培训,西双版纳PLC培训,红河PLC培训,临沧PLC培训,丽江PLC培训,保山PLC培训,曲靖PLC培训,黔东PLC培训,黔西PLC培训,安顺PLC培训,六盘水PLC培训,凉山PLC培训,阿坝PLC培训,雅安PLC培训,广安PLC培训,眉山PLC培训,内江PLC培训,广元PLC培训,德阳PLC培训,攀枝花PLC培训,成都PLC培训,海口PLC培训,来宾PLC培训,百色PLC培训,贵港PLC培训,北海PLC培训,桂林PLC培训,南宁PLC培训,云浮PLC培训,揭阳PLC培训,潮州PLC培训,清远PLC培训,阳江PLC培训,汕尾PLC培训,惠州PLC培训,茂名PLC培训,江门PLC培训,汕头PLC培训,深圳PLC培训,广州PLC培训,娄底PLC培训,永州PLC培训,益阳PLC培训,岳阳PLC培训,湘潭PLC培训,长沙PLC培训,恩施PLC培训,黄冈PLC培训,孝感PLC培训,鄂州PLC培训,十堰PLC培训,武汉PLC培训,周口PLC培训,商丘PLC培训,三门峡PLC培训,许昌PLC培训,焦作PLC培训,安阳PLC培训,鹤壁PLC培训,平顶山PLC培训,开封PLC培训,郑州PLC培训,聊城PLC培训,滨州PLC培训,德州PLC培训,莱芜PLC培训,日照PLC培训,泰安PLC培训,烟台PLC培训,潍坊PLC培训,东营PLC培训,淄博PLC培训,上饶PLC培训,济南PLC培训,抚州PLC培训,宜春PLC培训,赣州PLC培训,新余PLC培训,九江PLC培训,景德镇PLC培训,宁德PLC培训,南平PLC培训,泉州PLC培训,莆田PLC培训,厦门PLC培训,宣城PLC培训,亳州PLC培训,六安PLC培训,宿州PLC培训,黄山PLC培训,滁州PLC培训,安庆PLC培训,淮北PLC培训,马鞍山PLC培训,蚌埠PLC培训,芜湖PLC培训,合肥PLC培训,丽水PLC培训,舟山PLC培训,衢州PLC培训,金华PLC培训,湖州PLC培训,嘉兴PLC培训,宁波PLC培训,宿迁PLC培训,镇江PLC培训,盐城PLC培训,连云港PLC培训,苏州PLC培训,徐州PLC培训,南京PLC培训,绥化PLC培训,牡丹江PLC培训,佳木斯PLC培训,大庆PLC培训,鹤岗PLC培训,哈尔滨PLC培训,白城PLC培训,白山PLC培训,辽源PLC培训,吉林PLC培训,葫芦岛PLC培训,铁岭PLC培训,盘锦PLC培训,阜新PLC培训,锦州PLC培训,本溪PLC培训,鞍山PLC培训,沈阳PLC培训,锡林郭勒盟PLC培训,通辽PLC培训,乌海PLC培训,吕梁PLC培训,忻州PLC培训,晋中PLC培训,晋城PLC培训,阳泉PLC培训,太原PLC培训,廊坊PLC培训,承德PLC培训,保定PLC培训,邯郸PLC培训,唐山PLC培训,宁夏PLC培训,甘肃PLC培训,西藏PLC培训,贵州PLC培训,重庆PLC培训,广西PLC培训,湖南PLC培训,河南PLC培训,江西PLC培训,安徽PLC培训,江苏PLC培训,黑龙江PLC培训,辽宁PLC培训,山西PLC培训,天津PLC培训,四平PLC培训,内蒙古,吴忠PLC培训,果洛,西宁PLC培训,定西PLC培训,商洛PLC培训,西安PLC培训,那曲,黔南州,巴中PLC培训,乐山PLC培训,贺州PLC培训,防城港PLC培训,东莞PLC培训,河源PLC培训,常德PLC培训,衡阳PLC培训,咸宁PLC培训,宜昌PLC培训,濮阳PLC培训,新乡PLC培训,洛阳PLC培训,菏泽PLC培训,临沂PLC培训,威海PLC培训,济宁PLC培训,枣庄PLC培训,青岛PLC培训,吉安PLC培训,鹰潭PLC培训,萍乡PLC培训,南昌PLC培训,龙岩PLC培训,漳州PLC培训,三明PLC培训,福州PLC培训,池州PLC培训,巢湖PLC培训,阜阳PLC培训,铜陵PLC培训,淮南PLC培训,台州PLC培训,绍兴PLC培训,温州PLC培训,杭州PLC培训,泰州PLC培训,扬州PLC培训,淮安PLC培训,南通PLC培训,常州PLC培训,无锡PLC培训,大兴安岭PLC培训,黑河PLC培训,七台河PLC培训,伊春PLC培训,双鸭山PLC培训,鸡西PLC培训,齐齐哈尔PLC培训,延边,松原PLC培训,通化PLC培训,长春PLC培训,朝阳PLC培训,辽阳PLC培训,营口PLC培训,丹东PLC培训,抚顺PLC培训,大连PLC培训,阿拉善盟PLC培训,兴安盟PLC培训,乌兰察布PLC培训,巴彦淖尔PLC培训,呼伦贝尔PLC培训,鄂尔多斯PLC培训,赤峰PLC培训,包头PLC培训,呼和浩特PLC培训,临汾PLC培训,运城PLC培训,朔州PLC培训,长治PLC培训,大同PLC培训,衡水PLC培训,沧州PLC培训,张家口PLC培训,邢台PLC培训,秦皇岛PLC培训,石家庄PLC培训,青海PLC培训,陕西PLC培训,云南PLC培训,四川PLC培训,海南PLC培训,广东PLC培训,湖北PLC培训,山东PLC培训,福建PLC培训,浙江PLC培训,上海PLC培训,吉林PLC培训,河北PLC培训,北京PLC培训。
PLC培训,PLC编程培训学校
PLC培训,PLC编程培训学校
PLC培训,PLC编程培训学校
毕业学员的真情感言
当前位置: > PLC编程培训
PLC串口在获取传感器数据中的应用
PLC串口在获取传感器数据中的应用
时间:2021-02-27 15:48:46 采集:PLC培训,PLC编程培训学校 主题:PLC串口在获取传感器数据中的应用 浏览:

 

  摘要:介绍了用西门子s7—200 plc可编程控制器通过rs一485串口连接两个传感器测量转速与角度,从中获取转速和角度数据,并进行数据处理。

  关键词:plc;s7—200;rs一485;串口通信

  0引言

  s7—200是西门子公司研制的一种新型可编程控制器,它工作可靠,功能强,存储容量大,编程方便,抗干扰能力强,并且有较强的通信功能。因此可以通过它的串口与计算机或其他智能装置进行联网及通信,现代工业设备大都具有智能化、模块化的特点,往往只需要上位机发出一条指令就可以独自完成工作,并将结果通过总线返回给上位机,在其工作期间不需要任何其它设备的干预,这就给上位机留有时间来完成其它工作,对于保障系统的稳定性起到了重要作用。本文介绍的系统由s7—200通过rs一485总线连接速度和角度传感器,角度和速度传感器分布于工业现场的不同位置,plc向它们发送测量指令,传感器收到指令后向plc回传含有速度和角度值的数据,并由plc完成数据处理任务。

  1系统硬件构成

  本系统主要由电源模块、plc、两个分布在不同场地的旋转变压器、fb900c及fb900v变送器构成,如图1所示。电源模块向plc提供24 v直流电,市电向fb900c、fb900v提供220 v交流电,plc上rs一485口的3、8是数据a、b端,而fb900c/v的8、9是rs一485的数据a、b端,因此fb900c/v串口的8、9分别与plc串口的3、8相连。fb900c/v上的端子号从左至右依次为1—7.其中l、2为供电端口,3、4为fb900c/v向旋转变压器提供的8 v交流电,5、6、7为旋转变压器向fb900c/v提供的信号。

  2软件设计总体思路

  fb900c/v将旋转变压器传来的信号分别转换成角度和速度数据,通过rs一485总线传向plc再由plc对其进行处理。为了避免数据传输过程中发生数据冲突,将fb900c/v设置成指令传送模式,fb900c/v收到相应的指令就会向rs一485总线上传含有角度和速度的数据,没有收到相应的指令就不会发送数据。一为了避免数据冲突,采用分时读取fb900c和fb900v数据方式,即plc先发送读取速度数据指令,fb900v收到后就立即向总线上传送速度数据,plc收到总线上的数据后将其存储下来并对其进行处理,完成数据处理后plc再发送读取角度数据指令,fb900c收到指令后立即向总线上传送角度数据,plc收到总线上的数据后将其存储下来并对其进行处理,完成数据处理后plc再发送读取角度速度数据指令,依次不断循环下去。分时工作由plc的定时器t32和t96完成,t32定时则 t96复位,如果196定时,则132复位,依次循环。

  它们的周期都为40 ms,t32等于40 ms时,plc发送读取速度指令,并打开中断事件25,fb900v传送速度数据后,plc响应字符中断接收完数据后就将其处理完毕,接着将132复位。再打开i"96直到1"96等于40 ms,plc发送读取角度指令,并打开中断事件25,fb900c传送角度数据后,plc响应字符中断接收完数据后就将其处理完毕,接着将196复位并打开132,如此不断循环。流程图如图2所示。

  在流程图中两个定时器依次打开和复位,当每个定时器计时到40 ms,就触发程序发送相应的读数指令,响应字符接收中断接收传感器发送过来的数据,处理接收到的数据。定时器132、196起到了作为采集速度、角度数据标志信号的作用,此外还可以通过更改定时器的延时值来控制采集传感器信号的周期。发送指令、接收数据及数据处理在文章的后续部分作详细介绍,主程序流程中就不作叙述了。

  3 plc及fb900c/v串口参数的设定

  smb30和smbl30是s7—200的通信控制字,用来设置通信的波特率,奇偶校验位、停止位和字符长度。smb30对应端口0,smbl30对应端口l。smb30和smbl30的各位及含义如表l所示。

  其中,校验方式:00和11均为无校验、01为偶校验、10为奇校验;字符长度:0为传送字符有效数据是8位、1为有效数据是7位;波特率:000为38 400、001为19 200、010为9 600、011为4 800、100为2 400、101为l 200、110为600、111为300;通信协议:00为ppl协议从站模式、01为自由口协议、lo为ppi协议主站模式、11为保留,缺省设置为ppi协议从站模式。

  fb900v/c变送器的信号采用波特率为9 600,数据位为7位,校验方式为偶校验,它们的设定通过购买时自带的软件来设定。plc的通讯协议采用自由口协议。为了实现plc与fb900v/c之间能够传送数据,寄存器smbl30的各位的值的设定如表2所示,从表2中可得出smbl30对应的16进制数为69。

  4数据的发送与接收

  fb900c/v的读数指令格式如表3所示。

  fb900c/v读取速度和角度数据指令的字符位都是52h,结束位都是0dh(厂家规定值),模块编号可以根据需要自行设定。fb900v的模块编号设为30h、32h负责传送速度数据,fb00c的模块编号设为30h、31h负责传送角度数据。fb900v速度变送器的数据输入指令格式如表4所示。

  fb900c角度变送器的数据输人指令格式如表5所示。

  plc发送指令(xmt)激活发送数据缓冲区(tbl)。数据缓冲区第一个数据指明了要发送的字节数,最大数为255个。port指定了用于发送的端口。发送读取速度数据指令,就将04、52、30、32、od(都为16进制)填入发送缓冲区,发送读取角度数据指令,就将04、52、30、31、0d(都为16进制)填人发送缓冲区。发送完后打开字符接收中断,本系统中用的是端口1,对应的中断号是25。每接收一个字符产生一次中断,中断链接到中断处理程序,中断处理程序将接收到存储在smb2中的字符,再转存到plc里的存储区。

  传感器发送数据格式如表6所示,1是开始位,2、3是变送器编号,4是状态位(指输出数据的状态其中d=角度数据,v=速度数据,e=变送器出错)5为数据的符号,6位以后为数据(角度数据最多为8位数据+l位小数点,速度数据最多为4位数据+l位小数点),最后一位为结束位cr(0dh)。

  表中都是16进制的角度数据,并且变送器编号为01,输出角度为268。。对应字符(asc ii码)如表7所示。


 速度数据格式如表8所示。

  表中都是16进制的速度数据,并且变送器编号为02,输出速度数据为12.0时,对应字符(asc ii码)如表9所示。

  plc接收传感器发送来的数据以是否收到02h为开始,如果没有收到02h则中断返回,收到02h则将后续字符转移到plc所指定的存储单元并检验是否接受到0dh,接收到结束位0dh就开始对所收到的数据进行处理。数据的接收流程如图3所示,在数据接收流程中,每接收一个字符就会产生一次字符接收中断,inld和intl都是中断服务程序。在没有收到起始字符时int0为产生的字符中断服务,into中先判断收到的字符是否是02h,若是,就将字符缓冲区的第一个字节vbl00清零,调用子程序2将02h存入vbl00之后的存储单元中,接着就将intl连接到字符中断,这时intl为产生的字符中断服务(into不起作用)。在收到起始字符后产生的每次字符中断,中断服务程序intl都调用子程序2,将收到的字符存人起始字符的后续单元中。本文来自 plc网www.plcs.cn

  intl在存储收到的字符后还判断收到的是否为结束字符,若收到,就调用子程序3进行数据处理并将into再次连接到字符中断(此时intl不起作用),准备进行下一组数据的接收。

  子程序2代码如下:

  ld smo.0//装载指令

  incb vbl00//字符计数器加1

  incd vd86//指针vd86加1

  movb smb2,}vd86//字符存入指针所指单元子程序3为数据处理程序,在后面的文字中将作详细介绍并配有流程图。

  5数据处理

  从传感器接收过来的数据只是从02h一0dh之间的一组16进制字符,还无法直接将其中所包含的角度和速度值以一个数的形式来使用。本文所讲的数据处理,只是从接收过来的一组字符中取出所包含的速度和角度值。数据处理的关键在于找出02h一0dh之间的数据位和符号位,并将其按照:y=±(xl一30h)×l+(x2—30h)×10+(x3—30h)×100+(x4—30h)×1000+(x5—30h)×10000??,计算出对应的十进制值。x1为0dh前的第一个字符,)【2为0dh前的第二个字符,】【3为0dh前的第三个字符,依次类推直至符号位后面的第一个字符,本文中对数据精度的要求不需要精确到小数位,所以若0dh前的第二个字符为2e,则令xl为0dh前的第三个字符,)【2为0dh前的第四个字符,)【3为0dh前的第五个字符依次类推直至符号位后面的第一个字符。软件实现时指针vd96、vd86都指向odh,vd76指向02h,vd86一vd76—6为含有数据位的个数,若个数大于6则继续执行后续指令,否则收到的字符组中不含有数据(这种情况下起始字符、模块编号、状态位、符号位加结束字符不会超过6位),返回即可。vw520存放了数据结果,符号位为“一”时只需用o减去vw520结果再存入vw520即可,符号位为“+”时不需要作任何变化。软件处理流程如图4所示。流程图中,指针vd86和vd96都指向结束字符,vd76在数据接收流程中已指向起始字符,vd86一vd76可求出接收缓冲区字符的个数,移动指针vd96可依次找出个位、十位、百位等对应的字符。vw60里是传感器所测数据有效数据的个数,用来判断乘累加是否结束,vw600里是传感器所测数据有效位对应的十进制数乘以权值后所得的结果,vw500存放乘累加的结果,vw510存放的是有效数据位个位、十位、百位等对应的权值,在乘累加过程中vw510的值会依次为l、10、100、1000等,vw400、vw420里都存放了由指针vd96所取出的字符,vw410里存放了由ascii码转换的十进制数,vw520保存了上一次十进制所测的数据。

  6结语

  综上所述,本系统在80 ms的周期内分别对角度和速度值各采集一次,并将它们转换成十进制,为plc后续工作提供了数据来源。经实践证明,可靠性、稳定性比较好,能够满足实时性要求不是较高的工业应用场合。

  参考文献

  [1]刘万忠,刘明芹.电器于plc控制技术[m].北京:化学工业出版社,2003.

  [2 ]廖常初.plc编程及应用[m].北京:机械工业出版社,2003.

  [3] 北京飞博尔电子有限公司.fbgoov角位速度变送使用说明[m].北京飞博尔电子有限公司,2005.

PLC串口在获取传感器数据中的应用
    推荐文章


    PLC培训,PLC编程培训学校
    PLC培训,PLC编程培训学校
    PLC培训,PLC编程培训学校
    PLC培训,PLC编程培训学校