没有项目描述

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中未按预期工作   JavaSpringWebClient:自动计算主体的HMAC签名并将其作为头传递   foreach是否有一个Java等效的foreach循环和一个引用变量?   java如何在Eclipse中导入jar   使用特定第三方或java时lombok触发错误。*方法或构造函数   安卓 java将对象数组转换为int数组   java使一定百分比的JUnit测试通过   java Android:将Seekbar的一个值与另一个值进行比较   java将int数组(图像数据)写入文件的最佳方式是什么   java取代了系统。yml的构造函数内的getProperty   sqlite Java将公钥和私钥转换为字符串,然后再转换回字符串   安卓获取白色像素并将其保存到java opencv中的数组中   java为什么是ServerSocket。setSocketFactory静态?   Java数组似乎在不直接修改的情况下更改值