我将Python脚本与热电偶和热电偶读取器结合使用。要与用C编写的热电偶读取器通信,我必须使用API。该API是PyDAQFlex。热电偶读取器还带有用C编写的测试程序脚本。我试图从热电偶读取器中获取温度读数,但它仅输出CJC值。
我的代码:
import daqflex
d = daqflex.USB_2001_TC()
def get_temperature():
return float(d.send_message("?AI{0}:CJC/DEGC").encode("utf-8"))
我的代码的输出:
u'AI{0}:CJC/DEGC=23.8'
注意:23.8不是温度。该值是CJC,如下面的测试程序脚本的命令行输出所示。这是相关的,但与我寻找的价值无关。
测试器脚本的代码:
http://pastebin.com/Atsdy7X0(要获取温度,我先按“ t”再按“ k”,因为我有一个K型热电偶)。
测试器脚本的命令行输出:
http://pastebin.com/jq4Rr4QX(这里的温度是准确的。这就是我要插入脚本的温度。)
PyDAQFlex脚本:
https://github.com/torfbolt/PyDAQFlex/blob/master/daqflex/devices.py(请参阅第105行)
热电偶读取器的C代码:
http://pastebin.com/rEDR9efR(不完整,仅包括相关部分。)
我很努力地在这里看到我的错误。这个exact piece of code似乎在PyDAQFlex Github页面上为其他人工作过,所以我感到非常困惑。我已经给该软件的创建者发送电子邮件,该人在Github中与我有类似的问题,并且我刚刚在各种IRC聊天中花费了6个小时。请帮我。如果有帮助,我使用了this教程的一部分来安装热电偶读取器的驱动程序和相关内容。非常感谢。
最佳答案
如果与23.8相关,但与正确的温度无关,那么这是一个校准问题。校准时,您能打印出什么原始测试仪程序和pydaqflex从设备发送和接收?
关于python - 无法通过Python API使用C库:我在做什么错?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35420430/