999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Python 的設備動態智能監測系統開發

2021-03-23 03:19:28黃初敏
現代制造技術與裝備 2021年2期
關鍵詞:數據庫利用智能

黃初敏

(東風柳州汽車有限公司,柳州 545000)

Python 作為人工智能領域的熱門計算機編程語言,具有語言簡潔易上手、可移植性強以及擴展庫豐富等優勢,被廣泛應用于前端開發、后端開發、爬蟲開發、人工智能、大數據以及物聯網等領域。Python 具有豐富而強大的庫,常被稱為膠水語言,能夠把用其他語言編寫的各種模塊(尤其是C/C++)輕松集成在一起。智能制造注重信息化與自動化的深度融合。Python 對工業控制的兼容性極強,但目前行業內將Python 應用于工業自動化控制領域的成熟應用案例較少[1]。本項目將基于Python 編程語言,配合智能傳感元件和工業控制PLC,開發用于監測設備動態的智能監測系統。

1 功能設計

項目實施方案如圖1 所示,具體方案及步驟包括以下5 個方面。第一,在重點設備上安裝智能傳感器(震動、溫度、電流等),通過IO-LINK 模塊或RS422/485 模塊采集傳感器數據。數據經過PLC 初步處理后,以浮點型(real)數據格式存儲在PLC 的DB 數據塊內。浮點型數據可存儲帶小數點的數據,數據準確性較高。第二,利用Python 調用第三方模塊編寫讀取PLC DB 數據塊的程序,再利用封裝好的SQL 指令將數據轉存至上位機內的MySQL 數據庫內。數據以序號、數值以及采集時間的格式按序存儲在表內,便于調取和追溯。第三,從MySQL 數據庫讀取數據,利用Matlab 模塊繪制數據曲線,以不同顏色區分不同數據,可實現放大、縮小以及拖動等常規操作。第四,對歷史數據進行大數據分析形成算法。利用數據分析的方法可以提煉收集的各種形式的數據,從數據中發現規律,進而利用發現的規律預測數據的走向,從而幫助人們進行生產經營或者其他決策[2]。第五,利用自學習算法實現設備重大故障預警和智能預測功能。

圖1 項目實施方案示意圖

2 程序設計

項目試點對象為東風柳州汽車有限公司商用車總裝車間一線主線的主傳動軸,需要監測主軸的震動、溫度及變頻器電流數據。在開展程序設計前,需要安裝如表1 所示的軟件及Python 程序。

表1 軟件/組件需求表

2.1 傳感器數據采集

由于主線采用西門子S315-2PN/DP PLC 作為主控單元,現場采用profinet 工業以太網通信,傳感器連接在IOLINK模塊上。傳感器及模塊安裝完畢后,需要在step7 組態界面對IOLINK 模塊進行組態。以震動數據為例,利用梯形圖編程,將震動數據處理后存儲在PLC DB1000.DBD6 內,數據格式為real,即浮點型數據。

2.2 讀取PLC 數據

Python 支持開源第三方庫程序的調用,利用snap7 工具可實現PC 直接通過TCP 網口連接PLC,無需額外的OPC 軟件進行中轉。

通過以下指令可測試PLC 連接及數據讀取。

import snap7 #導入第三方模塊

plc=snap7.client.Client()

plc.connect("192.168.8.1",0,2) #連接PLC

data=plc.read_area(0x84,1000,6,4)#讀取DB1000.DBD6數據

……

其中,plc.connect("192.168.8.1",0,2) 代碼中的IP 地址為PLC IP 地址;“0”代表PLC 機架號;“2”代表PLC插槽號。西門子S300 系列PLC 的機架號為0,插槽號為2。而data=plc.read_area(0x84,1000,6,4)代碼中,“0x84”代表訪問的對象是PLC 的DB 塊(I 點為0x81,Q 點為0x82,M 點為0x83),“1000”為DB 塊編號,“6”為DB 塊起始地址,“4”代表讀取數據長度(real 為4,word 為2,dword 為4,bit 則為1)。代碼執行后若可正常讀出數據,說明通信及數據讀取正常。

2.3 創建數據庫及數據表

傳感器數據讀取程序寫在PLC 的OB35 系統塊內,系統默認掃描周期為100ms,即每0.1s 反饋一個實時數據,數據量龐大。Python 的元祖、列表以及字典皆無法滿足龐大的數據存儲需求,故需要將讀取的數據存儲到MySQL 數據庫中,并設置固定的數據格式,程序如下(部分)。

import pymysql#導入pymysql 模塊

conn=pymysql.connect(……user=’root’,passwd=’xx xx’,db=’plc_data’) #連接數據庫

cur=conn.cursor() #獲取游標

cur.execute(‘drop table if exists plcdata") #創建plcdata 表

sql=”””CREATE TABLE IF NOT EXISTS`plcdata`……”””

cur.execute(sql)

通過上述代碼可在MySQL 中創建名為“plc_data”的數據庫,并創建名為“plcdata”,列名為“序號”“數值”“采集時間”的表。其中,“采集時間”可利用datetime 模塊獲取系統時間。數據庫創建完畢后已具備數據寫入條件,利用sql=”insert into plcdata values(%s,%s,%s)”指令可將從PLC 采集的數據用SQL 指令寫入創建好的表內。

2.4 趨勢圖繪制

數據存儲到MySQL 后,需要把數據以趨勢圖的方式展現出來,此時需要用到第三模塊Matplotlib。Matplotlib 是Python 中最常用的可視化工具之一,可以非常方便地創建高質量的不同類型的2D 圖表和一些基本的3D 圖表[3]。通過讀取數據庫的數據,利用圖譜工具繪制出運行曲線,所有代碼最終執行結果如圖2 所示(圖2 中利用navicat 查看數據庫信息)。

圖2 項目最終效果

3 結語

本項目設計的一種基于Python 的設備動態智能監測系統,可實現車間重點設備的震動、溫度以及電流等核心參數動態監測。監測數據實時存儲在MySQL 數據庫內,可實現歷史數據追溯,借助Matplotlib 第三方模塊可實現圖譜分析,最后配合大數據算法實現設備故障預警功能,輔助企業最終實現智能制造。

猜你喜歡
數據庫利用智能
利用min{a,b}的積分表示解決一類絕對值不等式
中等數學(2022年2期)2022-06-05 07:10:50
利用一半進行移多補少
智能前沿
文苑(2018年23期)2018-12-14 01:06:06
智能前沿
文苑(2018年19期)2018-11-09 01:30:14
智能前沿
文苑(2018年17期)2018-11-09 01:29:26
智能前沿
文苑(2018年21期)2018-11-09 01:22:32
利用數的分解來思考
Roommate is necessary when far away from home
數據庫
財經(2017年2期)2017-03-10 14:35:35
數據庫
財經(2016年15期)2016-06-03 07:38:02
主站蜘蛛池模板: 91在线视频福利| 99久久精品免费看国产电影| 久久婷婷国产综合尤物精品| 日韩精品无码不卡无码| 毛片免费视频| 欧美精品啪啪| 久久永久精品免费视频| 亚洲天堂在线视频| 视频国产精品丝袜第一页| 国产aⅴ无码专区亚洲av综合网| 国产成人精品高清不卡在线 | 91极品美女高潮叫床在线观看| 18禁高潮出水呻吟娇喘蜜芽| 欧洲极品无码一区二区三区| 国产青榴视频| 国产一级视频久久| 亚洲码一区二区三区| 四虎亚洲精品| 99视频精品全国免费品| 57pao国产成视频免费播放| 免费人欧美成又黄又爽的视频| 亚洲一区二区约美女探花| 综合色亚洲| 久久网综合| 国产精品区网红主播在线观看| 久久综合成人| 中文字幕亚洲综久久2021| 狠狠色成人综合首页| 国产尹人香蕉综合在线电影 | 激情无码字幕综合| 91精品伊人久久大香线蕉| 日本三区视频| 亚洲欧美日韩天堂| 91精品网站| 乱人伦视频中文字幕在线| 亚洲国产精品日韩欧美一区| 日本免费福利视频| 欧洲高清无码在线| 国产91精品最新在线播放| 波多野结衣视频网站| 亚洲欧洲日韩综合| 国产精品女熟高潮视频| 99久久精品国产精品亚洲| 99视频在线看| 久久婷婷五月综合97色| 欧美伊人色综合久久天天| 99在线观看视频免费| 婷婷色一区二区三区| 亚洲精品日产AⅤ| 亚洲成人在线网| 男人天堂亚洲天堂| av无码一区二区三区在线| 99re免费视频| 99在线视频精品| 中文字幕人妻无码系列第三区| 国产免费久久精品99re不卡| 国产午夜一级毛片| 亚洲狼网站狼狼鲁亚洲下载| 国产精品美女自慰喷水| 欧美日韩精品在线播放| 天堂成人在线| 中文字幕av一区二区三区欲色| 中文字幕日韩久久综合影院| 精品人妻无码区在线视频| 香蕉视频在线观看www| 国产精品天干天干在线观看| 国产特级毛片| 日韩AV手机在线观看蜜芽| 亚洲欧美日韩天堂| 婷婷开心中文字幕| 亚洲精品成人片在线观看| 九色视频线上播放| 日本手机在线视频| 亚洲va在线观看| 国产男女XX00免费观看| 在线国产你懂的| 国产麻豆永久视频| 国产在线观看人成激情视频| 99国产精品一区二区| 国产女人18水真多毛片18精品| 国产一级二级三级毛片| 看av免费毛片手机播放|