JouleScope™主机驱动程序和实用程序

joulescope的Python项目详细描述


焦耳镜

欢迎来到JouleScope™!焦耳镜是一种负担得起的,精确的直流电能。 使您能够构建更好的产品的分析器。 JouleScope™精确同时测量电压和电流 提供给目标设备,然后计算功率和能量。 有关焦耳镜的详细信息,请参见 www.joulescope.com

这个pyjoulescope python包包含驱动程序和命令行 在主机上运行并与焦耳镜通信的实用程序 USB设备。你可以使用这个软件包自动编写焦耳镜脚本 操作。也可以将焦耳镜合并到自定义应用程序中。 大多数用户将运行图形用户界面,该界面位于 pyjoulescope_ui包。 大部分代码都是用Python3.6+编写的,但也有一小部分是 为了更好的表现。

这个软件包在windows 10、linux(ubuntu已经测试)和mac os x下运行。 在Windows上,USB通信使用 WinUSB, 它包含在Windows 10中。 在Linux和MacOSX上,USB通信使用 libusb-1.0

有关按版本更改的列表,请参见Changelog

如果你只是想用焦耳镜,你可以 download应用程序。

快速启动

安装Python3.6+64位。如果你已经有了 已安装python,请验证3.6+和64位:

python3 -V

从pypi安装这个python包:

pip3 install joulescope

joulescope python包包括命令行工具:

python3 -m joulescope --help

例如,要捕获1秒的连续数据:

python3 -m joulescope capture --contiguous 1.0 mycapture.jls

您还可以在自己的程序中导入joulescope python包。 例如,这个脚本打开焦耳镜仪器,读取1/4秒 ,然后显示平均值:

import joulescope
import numpy as np

js = joulescope.scan_require_one()
js.open()
try:
    js.parameter_set('source', 'on')
    js.parameter_set('i_range', 'auto')
    data = js.read(contiguous_duration=0.25)
finally:
    js.close()

current, voltage = np.mean(data, axis=0)
print(f'{current} A, {voltage} V')

显影剂

安装Python3.6+64位。

配置virtualenv

虽然不是必需的,但是开发人员建议使用 virtualenv

首先安装virtualenv:

pip3 install virtualenv

然后创建一个新的虚拟环境。

virtualenv ~/venv/joulescope

每次启动时都需要激活虚拟环境 一个新的终点站。

在POSIX上(Linux、带自制程序的Mac OS X):

source ~/venv/joulescope/bin/activate

在Windows上:

virtualenv c:\venv\joulescope
source c:\venv\joulescope\Scripts\activate

配置包

安装开发依赖项:

pip3 install -r requirements.txt

使用焦耳镜

JouleScope包含必须使用 赛顿。您可以使用设置脚本允许就地开发:

python3 setup.py build_ext --inplace

然后您应该能够执行焦耳镜:

python3 -m joulescope --help

如果您希望构建和安装焦耳镜:

python setup.py sdist
pip3 install dist/joulescope_[version].tar.gz

许可证

所有pyjoulescope代码都是在许可的apache 2.0许可下发布的。 有关详细信息,请参见License File

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么web dashboard在部署流或任务后如此缓慢   泛型如何获取java参数化集合类的类型?   java如何在安卓 studio中从SQLite检索图像   java热部署到Jetty的最佳解决方案是什么?   java使用ApacheHttpClient是否可以永久保持http连接?   java Android listview,带有seekbar |始终返回最后一个位置   spring如何在java中实现二维数组?   java Post多部分文件和Rest Assured中的JSON   Java,有没有一种方法可以使用servlet outputstream而不是覆盖来附加字节数组?   用于IPhone和Android的GluonHQ上的java USB通信?   在Eclipse中使用Selenium WebDriver和java运行phantomjs   从服务器发送的java消息在发送到ServerHandler外部时未被客户端接收   如果标记包含目标,则标记之间的java正则表达式匹配   面向对象Java:避免重复代码   java如何根据JAXRS/JPA中的bean属性之前的值来验证它?   javascript如何创建搜索栏来搜索安卓中没有数据库的图像或文本?   java分级条值