根据@DaveTheAI的要求,我在这里分享我如何解决这个问题:
我能够使用 pyODBC 连接器从 AspenTech 历史学家那里读取数据。首先,您需要确保安装了所需的 ODBC 驱动程序(我使用的是 Windows)。这里重要的一点是拥有与您的 python/anaconda 版本兼容的驱动程序:32/64 位
在那之后:
import pyodbc
#---- Connect to IP21
conn = pyodbc.connect("DRIVER={AspenTech ODBC driver for Production Record Manager};HOST=hostname;PORT=port")
#---- Query string
tag = 'YOUR_TAG'
start = '2019-01-01 12:00:00'
end = '2019-01-02 12:00:00'
sql = "select TS,VALUE from HISTORY "\
"where NAME='%s'"\
"and PERIOD = 60*10"\
"and REQUEST = 2"\
"and REQUEST=2 and TS between TIMESTAMP'%s' and TIMESTAMP'%s'" % (tag, start, end)
data = pd.read_sql(sql,conn) # Pandas DataFrame with your data!
Run Code Online (Sandbox Code Playgroud)