(8)python使用pyepics 實現對ioc的查詢與存入mysql

準備工作

安裝mysql

隨機參考網上安裝的文章即可

安裝mysqlworkbench

https://blog.csdn.net/weixin_42066185/article/details/106522156

安裝pyepics

在這裏插入圖片描述

或者直接pip

安裝pymysql

與上面安裝pyqpics 一樣

新建一個mysql數據庫表

直接採用mysql workbench 進行建立

選擇要建立在的數據庫,右鍵新建table,然後輸入要建立的table 的名稱,然後然後輸入兩行,一個是id,作爲主鍵,並且自增.另個選擇voltage,表示要監控的電壓的名稱,選擇double類型.
在這裏插入圖片描述

點擊apply實現數據庫表建立

在這裏插入圖片描述

再次點擊apply 執行建立的sql語句

出現下面的結果表示建立完成
在這裏插入圖片描述

編寫與epics 相關的腳本

腳本如下:

import time

import epics
import pymysql

pv = epics.PV('scottar:voltage:ai')
conn = pymysql.connect(host='192.168.127.200', port=3306, user='root', passwd='wangsai', db='nis_hsdd', charset='utf8')
cur = conn.cursor()

# 遍歷pv,獲取pv中的值
for i in range(1000):
    a=pv.value
    print('PV_Value 第',i,'次 is:',a)

    sql = "insert into test_table(voltage) values(%f)" %(a)
    # 執行SQL, new_list是執行參數, 用於替換上面SQL中的佔位符%s,%s,%s
    cur.execute(sql)
    conn.commit()
    time.sleep(1)


功能介紹

實現對epics 運行的變量的監控,並且實時的將讀取得到的數據放到mysql 數據庫當中去

實現的結果

命令行打印的結果

在這裏插入圖片描述

通過mysql workbench 查詢的結果

在這裏插入圖片描述

結論

該篇blog 描述的內容是能夠通過python腳本對所建立的ioc 進行通過ca 協議進行訪問,並且實現-將得到的數據放到數據庫中.整套流程實現一個epics 應用場景中的最基礎的功能.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章