文章目錄
準備工作
安裝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 應用場景中的最基礎的功能.