没有项目描述

metacloud的Python项目详细描述


metacloud是mbientlab提供的云服务,为传感器数据提供数据存储、可视化和分析。

为了运行本教程中的示例代码,您需要有一个活动订阅。如果需要创建帐户,请按照 关于这个page开始3天免费试用的说明。

安装

使用pip安装metacloudpackage。

pip install metacloud --process-dependency-links

如果要同步来自mbientlab的某个传感器板的数据,请安装附加metawear的包。

pip install metacloud[metawear] --process-dependency-links

用法

安装完所有必需的包后,在您喜爱的文本编辑器中打开一个新的python文件,导入metawearmetacloud 模块,并创建MetaWearClientSession对象。Session构造函数需要几个描述设备的属性 以及您的应用程序:

  1. 固件版本
  2. MAC地址
  3. 型号名称
  4. 识别设备的友好名称
  5. 应用程序名称
  6. 应用修订版

如果没有应用程序名或修订版,只需使用__file__变量作为应用程序名,使用"1.0.0"变量作为应用程序修订版。

fromctypesimportcast,c_char_pfrommbientlab.metacloudimportSessionfrommbientlab.metawearimportMetaWear,libmetawear,parse_valuefrommbientlab.metawear.cbindingsimport*mac="D4:5E:82:E1:15:01"metawear=MetaWear(mac)metawear.connect()libmetawear.mbl_mw_settings_set_connection_parameters(metawear.board,7.5,7.5,0,6000)raw=libmetawear.mbl_mw_metawearboard_get_model_name(metawear.board)model_name=cast(raw,c_char_p).value.decode("ascii")session=Session(metawear.info["firmware"],mac,model_name,"Device #1","metacloud_py_tutorial","1.0.0")

从设备启动数据流并将接收到的值添加到Session对象。在这里,我们将流加速计数据,因此将向前 它指向add_acc_data方法。

# Stream data at 100Hzlibmetawear.mbl_mw_acc_set_range(metawear.board,16.0)libmetawear.mbl_mw_acc_set_odr(metawear.board,100.0)libmetawear.mbl_mw_acc_write_acceleration_config(metawear.board)defdata_handler(ptr):value=parse_value(ptr)session.add_acc_data(ptr.contents.epoch,value.x,value.y,value.z)data_handler_fn=FnVoid_DataP(data_handler)signal=libmetawear.mbl_mw_acc_get_acceleration_data_signal(metawear.board)libmetawear.mbl_mw_datasignal_subscribe(signal,data_handler_fn)libmetawear.mbl_mw_acc_enable_acceleration_sampling(metawear.board)libmetawear.mbl_mw_acc_start(metawear.board)

当您准备好同步数据时,停止加速计,然后使用sync方法将数据推送到metacloud。

# Stop the streamlibmetawear.mbl_mw_acc_stop(metawear.board)libmetawear.mbl_mw_acc_disable_acceleration_sampling(metawear.board)libmetawear.mbl_mw_datasignal_unsubscribe(signal)# Sync to MetaCloud, replace with actual login credentialssession.sync("username","password")

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

推荐PyPI第三方库


热门话题
相对于框架java窗口的鼠标位置错误   Java 8流peek api   java将数据附加到文件中   java使用ExoPlayer 2.8播放播放列表中的特定文件   JavaSpring国际化:如何动态设置语言环境值   java如何在mysql中实现两个表之间的两个关联   java在gradle可执行jar文件中包含运行时参数   surefire插件中的java maven多套测试套件   java试图理解堆分析以确定内存泄漏或所需的大量内存   java识别字符串有数字   数组如何解决错误“java.lang.ArrayIndexOutOfBoundsException:5”   java Swt文件对话框选择的文件太多?   java此登录代码易受SQL注入攻击吗?   Java[3]中的文件<identifier>预期编译错误   java如何在spring webflux中发送列表   jar中未找到java文件异常   如何在java中合并2D数组?   java如何评测本机JNI库