我正在将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中的一个人与我有类似的问题,我只花了6个小时进行各种IRC聊天。请帮我。如果它有帮助,我使用this教程的部分内容来安装热电偶读卡器的驱动程序和东西。非常感谢你。
答案 0 :(得分:0)
如果23.8是相关的,但不是正确的温度,那么这是一个校准问题。在校准时,您可以打印原始测试仪程序和pydaqflex从设备发送和接收的内容吗?