1
我试图创建一个程序,可以通过USB到串行连接从连接到树莓派的CAN总线设备读取DTC代码。我正在使用已连接的NeoVi Fire进行测试,目前我能够向设备发送和读取串行信号,以通过所述串行端口控制汽车座椅加热和制冷单元。NeoVi火与树莓派与Python
现在我需要扩展我从CAN单元请求代码的内容,以便看到如果Python-CAN可以做我所需要的(因为我的程序的其余部分全部用Python编写)。
因为我使用NeoVi单元,所以我也去安装了PyNeoVi库,并且在尝试使用PyNeoVi存储库时使用其中一个测试文件时遇到问题。这是测试文件代码:
import neovi.neodevice as neodevice
import neovi.ecu as ecu
import neovi.spec as spec
import neovi.neovi as neovi
import json
neodevice.init_api()
dev = neodevice.find_devices(neovi.NEODEVICE_FIRE)[0]
dev.open()
input_file = open('vehicle.spec', 'rt')
data = json.load(input_file, object_hook = spec.from_json)
hvac = ecu.ECU(data['ECUs']['HVAC'], dev)
wanted_values = ['Blower Speed Output', 'External Ambient Temperature', 'Left Solar Radiation Sensor', 'Cabin Temperature']
for value_name in wanted_values:
result = hvac.read_data_by_id(value_name)['value']
print("%s = %.1f %s" % (value_name, result[0], result[1]))
dev.close()
我得到的错误是:
OSError: libicsneoAPI.so.0.1.3: cannot open shared object file: No such file or directory
这听起来像我缺少的依赖,但我不知道在哪里下载说依赖性不从。