企业资质

厦门莫格电气自动化有限公司

普通会员8
|
企业等级:普通会员
经营模式:
所在地区:福建 厦门
联系卖家:
手机号码:
公司官网:
企业地址:
企业概况

厦门莫格电气自动化有限公司是一家专业提供工业自动化领域的备件服务商,产品品种齐全、价格合理,公司实力雄厚,重信用、守合同、保证产品质量,以多品种经营特色和薄利多销的原则,赢得了广大客户的信任。我们主营PLC可编程控制器模块,DCS卡件,ESD系统卡件,振动监测系统卡件,汽轮机控制系统模块,燃气发电机......

ABB原厂SPSED01

产品编号:165226706                    更新时间:2018-10-17
价格: ¥999.00
厦门莫格电气自动化有限公司

厦门莫格电气自动化有限公司

  • 主营业务:PLC可编程控制器模块,DCS卡件,ESD系统卡件,振动监测...
  • 公司官网:
  • 公司地址:

联系人名片:

联系时务必告知是在"产品网"看到的

产品详情

ABB SPSED01

 ◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆

【厦门莫格电气自动化有限公司】

【Xiamen Mogget Electric Automation Co.,Ltd】

【当天顺丰发货,欢迎***验货,不要犹豫,不要徘徊,错失良机,后悔晚矣】

【来电咨询:雷(女士)】

【销售***请点上面↑↑↑↑↑↑↑↑↑↑

【传真:0592-6514751 (请备注:雷琳收)】

【邮箱:1982497648@***.com 】

公司主营AB 、本特利、黑马、施耐德、 GE、 ABB【DSQC系列】ICS 英维思 西门子yokogawa横河 霍尼韦尔 福克斯波   Rosemount(罗斯蒙特) 德国EPRO(飞利浦) ENTEK(恩泰克) VIBRO-METER(韦伯)   Yaskawa(安川)  Motorola(摩托罗拉) Bosch Rexroth(博世力士乐) Woodward(伍德沃德) 等品牌

◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
全新原装现货:
ABB SPSED01
ABB SPSED01
ABB SPSED01

 

变频器:汇川MD380+MD380IO1[1],树莓派:3B+RS485/GPIOShield For RPi V3.0。

 

软件配置:

 

修改树莓派配置:关闭蓝牙,关闭控制台,使串口专用于Modbus通讯。操作系统:Linux,编程软件:python_3.4.2,通讯软件:Modbus_tk_0.5.4,界面编程软件:pyqt5

3代码编制

3.1配置 Modbus_tk

    设置modbus_rtu通讯模式,设置通讯参数:9600,8N1。读取变频器参数后,需要将数据存放在内存,以便后续处理,为此导入日志文件。

import serial

import modbus_tk

import fines as cst

from modbus_tk import modbus_rtu

PORT="/dev/ttyAMA0"

logger=modbus_tk.eate_logger('c***ole')

master=modbus_rtu.RtuMaster(rial(port=PORT,baudrate=9600,bytesize=8,

parity='N',stopbits=1,xonxoff=0))

t_timeout(0.5)

t_verbose(True)

("connected")

import logging

3.2分割日志文件

读取的变频器运行数据存放在日志文件中,随着时间的推移,文件变得日益庞大,***后使系统瘫痪,因此,需要对日志文件进行分割,所谓分割,就是保留一部分记录,其余抛弃,达到***目的。有2种分割方法①按文件大小分割②按时间间隔分割,本例按方法②分割,每2秒分割一次,***多保留5个文件。

下面的代码读取1#变频器起始地址为7000H的12个数据,存放在名称为“pzw”的日志文件中(分割后的日志文件及备份小于0.2MB),和程序文件放在同一文件夹内。

(master.execute(1,AD_HOLDING_REGISTERS,28672,12))

from logging.handlers import TimedRotatingFileHandler

if __name__=='__main__':

logFilePath='pzw'

logger=logging.getLogger('')

tLevel() handler=TimedRotatingFileHandler(logFilePath,       when='s',interval=2,backupCount=5)

formatter=logging.Formatter('%(asctime)s-%(message)s')

tFormatter(formatter)

logger.addHandler(handler)

              

3.3 处理日志文件

为了准确获取5台变频器的参数,需要对日志文件“pzw”进行分析:

2018-05-2519:42:11,200--> 1-3-112-0-0-12-95-15

2018-05-25 19:42:11,306-<-1-3-24-0-0-14-16-16-232-0-0-0-0-0-0-0-0-0-0-0-0-1-252-1-240-0-134-87-101< p="">

2018-05-2519:42:11,395-(0, 3600, 4328, 0, 0, 0, 0, 0, 0, 508, 496, 134)

2018-05-2519:42:11,396--> 2-3-112-0-0-12-95-60

2018-05-2519:42:11,485-<- 2-3-24-0-0-10-140-15-127-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-135-13-10

2018-05-2519:42:11,527-(0, 2700, 3967, 0, 0, 0, 0, 0, 0, 0, 0, 135)

2018-05-2519:42:11,528--> 3-3-112-0-0-12-94-237

2018-05-2519:42:11,614-<-3-3-24-0-0-10-240-15-217-0-0-0-0-0-0-0-0-0-0-0-0-0-2-0-1-0-32-7-88< p="">

2018-05-2519:42:11,655-(0, 2800, 4057, 0, 0, 0, 0, 0, 0, 2, 1, 32)

2018-05-2519:42:11,656--> 4-3-112-0-0-12-95-90

2018-05-2519:42:11,743-<-4-3-24-0-0-13-72-12-7-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-4-33-208-137< p="">

2018-05-2519:42:11,834-(0, 3400, 3079, 0, 0, 0, 0, 0, 0, 0, 0, 1057)

2018-05-2519:42:11,835--> 5-3-112-0-0-12-94-139

2018-05-2519:42:11,923-<-5-3-24-0-0-10-200-11-252-0-0-0-0-0-0-0-0-0-0-0-0-0-0-0-1-4-33-182-98< p="">

2018-05-2519:42:11,965-(0, 2760, 3068, 0, 0, 0, 0, 0, 0, 0, 1, 1057)

发现:①每条记录去掉头部日期时间后,第1个字符就是变频器的站号②含有变频器参数的记录的字符数远大于其他记录,根据这2个特点,编制如下代码:

with open( 'pzw') as file_object:

lines=adlines()     #逐行读文件,存到表lines中

n=len(lines)                       #获取表的长度

for i inrange(n):                 

lines[i]=(lines[i])[27:]        #截取表第27项到末尾,保存到表

iflen(lines[i])>63 and (lines[i])[0]=='1':#判断站号和是否是数据

abc1=lines[i]                #存放到表abc1中

a1=abc1[7:]                  #截取表abc1第7项到末尾,保存到表a1   

b1=a1.split('-')             #以‘-’为分隔符将字符串分割为新的表

u0_00_1=str(float(int(b1[0])*256+int(b1[1]))/100)   #变频器输出频率

self.tText(u0_00_1+' Hz')                    #标签显示

................

u0_11_1=str((int(b1[22])*256+int(b1[23]))/4)        #pt100左轴承温度

self.tText(u0_11_1+' ℃')

iflen(lines[i])>63 and (lines[i])[0]=='2':

..................

iflen(lines[i])>63 and (lines[i])[0]=='3':

..................

if len(lines[i])>63and (lines[i])[0]=='4':

.................

if len(lines[i])>63 and (lines[i])[0]=='5':

...................................

上述代码对n条记录按照①②特点逐条进行判断,***后用5个if语句,获取文件“pzw”中所有满足条件的记录,代码充分展示了python语言强大的表处理能力,是整个应用程序的核心。

3.4 获取变频器参数值

上述矩形框内代码的作用是:对满足条件①②的记录进一步处理:抛弃前端7个字符(例1-3-24-)后余下26个字节就是变频器参数值和校验码,按表1即可编制读数程序[1

表1:

 

厦门莫格电气自动化有限公司电话:传真:联系人:

地址:主营产品:PLC可编程控制器模块,DCS卡件,ESD系统卡件,振动监测...

Copyright © 2025 版权所有: 产品网店铺主体:厦门莫格电气自动化有限公司

免责声明:以上所展示的信息由企业自行提供,内容的真实性、准确性和合法性由发布企业负责。产品网对此不承担任何保证责任。